0227工资条上线备份
parent
20cbdc1e31
commit
a8bee65e79
@ -0,0 +1,108 @@
|
|||||||
|
package com.weaver.seconddev.sxjg.controller;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONArray;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.alibaba.fastjson.parser.Feature;
|
||||||
|
import com.weaver.seconddev.sxjg.util.NccApiUtil;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
public class PayslipPageTestController {
|
||||||
|
@org.junit.Test
|
||||||
|
public void test() throws Exception {
|
||||||
|
Map<String,String> rs = new HashMap<>();
|
||||||
|
JSONObject r1 = new JSONObject();
|
||||||
|
JSONArray r2 = new JSONArray();
|
||||||
|
JSONObject r3 = new JSONObject();
|
||||||
|
r3.put("pk_psndoc","0001A2100000006CWEBW");
|
||||||
|
r2.add(r3);
|
||||||
|
r1.put("data",r2);
|
||||||
|
NccApiUtil nccApiUtil = new NccApiUtil();
|
||||||
|
nccApiUtil.init();
|
||||||
|
String token = nccApiUtil.getToken();
|
||||||
|
String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/payslipSync/entry";
|
||||||
|
String rs11 = nccApiUtil.doJsonPost(url,token,r1.toJSONString());
|
||||||
|
JSONObject rsf = JSONObject.parseObject(rs11, Feature.OrderedField);
|
||||||
|
if("1000000000".equals(rsf.getString("code"))) {
|
||||||
|
JSONArray dataarr = rsf.getJSONArray("data");
|
||||||
|
JSONArray dataguolv = new JSONArray();
|
||||||
|
if(dataarr.size()>0) {
|
||||||
|
for(int i = 0; i <dataarr.size();i++) {
|
||||||
|
JSONObject ra = dataarr.getJSONObject(i);
|
||||||
|
Boolean flag= judegNy(ra,"2024-02","2024-02","陕西建工集团数字科技有限公司(在册)薪资方案");
|
||||||
|
if(flag) {
|
||||||
|
dataguolv.add(ra);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//按照日期排序
|
||||||
|
List<JSONObject> list = new ArrayList<>();
|
||||||
|
for (int i=0; i < dataguolv.size(); i++) {
|
||||||
|
list.add(dataguolv.getJSONObject(i));
|
||||||
|
}
|
||||||
|
// 创建日期比较器
|
||||||
|
Comparator<JSONObject> dateComparator = new Comparator<JSONObject>() {
|
||||||
|
@Override
|
||||||
|
public int compare(JSONObject obj1, JSONObject obj2) {
|
||||||
|
try {
|
||||||
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
|
||||||
|
Date date1 = sdf.parse(obj1.getString("year"));
|
||||||
|
Date date2 = sdf.parse(obj2.getString("year"));
|
||||||
|
return date2.compareTo(date1);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// 根据日期进行排序
|
||||||
|
Collections.sort(list, dateComparator);
|
||||||
|
String s = JSON.toJSONString(list);
|
||||||
|
System.out.println(s);
|
||||||
|
// 将排好序的 List 转换为 JSONArray
|
||||||
|
JSONArray r = new JSONArray();
|
||||||
|
for(JSONObject js : list) {
|
||||||
|
r.add(js);
|
||||||
|
}
|
||||||
|
System.out.println(r.toJSONString());
|
||||||
|
rsf.put("data",r);
|
||||||
|
}else {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断年月在日期之间
|
||||||
|
*/
|
||||||
|
private boolean judegNy(JSONObject obj, String beingdate1, String enddate1, String name){
|
||||||
|
String ny1 = obj.getString("year");
|
||||||
|
boolean flag = false;
|
||||||
|
ny1 = ny1+"-05";
|
||||||
|
beingdate1 = beingdate1+"-05";
|
||||||
|
enddate1 = enddate1+"-05";
|
||||||
|
String famc = obj.getString("name");//方案名称
|
||||||
|
// 定义要转换的字符串格式
|
||||||
|
try {
|
||||||
|
boolean flag2 = false;
|
||||||
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
|
Date ny = dateFormat.parse(ny1);
|
||||||
|
Date beingdate = dateFormat.parse(beingdate1);
|
||||||
|
Date enddate = dateFormat.parse(enddate1);
|
||||||
|
long ny2 =ny.getTime();
|
||||||
|
long beingdate2 =beingdate.getTime();
|
||||||
|
long enddate2 =enddate.getTime();
|
||||||
|
if(ny2>=beingdate2 && ny2<=enddate2) {
|
||||||
|
flag2 = true;
|
||||||
|
}
|
||||||
|
if((!"null".equals(name)) && flag2) {
|
||||||
|
if(famc.equals(name)) {
|
||||||
|
flag = true;
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
flag = flag2;
|
||||||
|
}
|
||||||
|
}catch (Exception e){};
|
||||||
|
return flag;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue