diff --git a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/EmployeeSelfServiceController.java b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/EmployeeSelfServiceController.java index 1a9fc17..991c370 100644 --- a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/EmployeeSelfServiceController.java +++ b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/EmployeeSelfServiceController.java @@ -48,5 +48,11 @@ public class EmployeeSelfServiceController { NccApiUtil nccApiUtil = new NccApiUtil(); nccApiUtil.init(); String token = nccApiUtil.getToken(); + JSONObject rucan = new JSONObject(); + rucan.put("pk_psndoc","0001B2100000007DN287"); + rucan.put("tableCode","bd_psndoc"); + String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/persondata/query"; + String rs11 = nccApiUtil.doJsonPost(url,token,rucan.toJSONString()); + System.out.println(rs11); } } \ No newline at end of file diff --git a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageController.java b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageController.java index c116940..0b5b2bd 100644 --- a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageController.java +++ b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageController.java @@ -2,15 +2,15 @@ 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.common.authority.annotation.WeaPermission; import com.weaver.common.base.entity.result.WeaResult; -import com.weaver.ebuilder.form.client.entity.obj.Obj; import com.weaver.seconddev.sxjg.config.EbDbDataSourceConfigResp; import com.weaver.seconddev.sxjg.util.NccApiUtil; import lombok.extern.slf4j.Slf4j; -import org.junit.Test; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -18,9 +18,7 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; +import java.util.*; @RestController @RequestMapping("/papi/secondev/sxjg") @@ -60,7 +58,7 @@ public class PayslipPageController { 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); + JSONObject rsf = JSONObject.parseObject(rs11, Feature.OrderedField); if("1000000000".equals(rsf.getString("code"))) { JSONArray dataarr = rsf.getJSONArray("data"); JSONArray dataguolv = new JSONArray(); @@ -73,7 +71,34 @@ public class PayslipPageController { } } } - rsf.put("data",dataguolv); + //按照日期排序 + List list = new ArrayList<>(); + for (int i=0; i < dataguolv.size(); i++) { + list.add(dataguolv.getJSONObject(i)); + } + // 创建日期比较器 + Comparator dateComparator = new Comparator() { + @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); + // 将排好序的 List 转换为 JSONArray + JSONArray r = new JSONArray(); + for(JSONObject js : list) { + r.add(js); + } + rsf.put("data",r); return WeaResult.success(rsf); }else { return WeaResult.fail(rsf.getString("msg")); diff --git a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageTestController.java b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageTestController.java new file mode 100644 index 0000000..cb39ebb --- /dev/null +++ b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/controller/PayslipPageTestController.java @@ -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 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 list = new ArrayList<>(); + for (int i=0; i < dataguolv.size(); i++) { + list.add(dataguolv.getJSONObject(i)); + } + // 创建日期比较器 + Comparator dateComparator = new Comparator() { + @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; + } +} diff --git a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/esb/TestDd.java b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/esb/TestDd.java index a3571d1..2cf9336 100644 --- a/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/esb/TestDd.java +++ b/陕建岗位申请规则校验(ecode服务)checkPositionNew/src/main/java/com/weaver/seconddev/sxjg/esb/TestDd.java @@ -15,20 +15,20 @@ public class TestDd { // String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrwa/customermanage/adjust/import"; // String rs11 = nccApiUtil.doJsonPost(url,token,str); // } -@Test -public void test1() throws Exception { - 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()); - System.out.println(rs11); - JSONObject rsf = JSONObject.parseObject(rs11); -} + @Test + public void test1() throws Exception { + 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()); + System.out.println(rs11); + JSONObject rsf = JSONObject.parseObject(rs11); + } }