#weaver-sxjg-04# 附件接口优化

main
shilei 1 year ago
parent de63450c1c
commit e37dcca978

@ -2,16 +2,16 @@ package com.weaver.seconddev.sxjg.controller;
/** /**
* *
*/ */
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.weaver.common.authority.annotation.WeaPermission; import com.weaver.common.authority.annotation.WeaPermission;
import com.weaver.seconddev.sxjg.util.NccApiUtil; import com.weaver.seconddev.sxjg.util.NccApiUtil;
import com.weaver.seconddev.sxjg.util.PersondataQueryUtil; import com.weaver.seconddev.sxjg.util.PersondataQueryUtil;
import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger;
import org.apache.commons.lang3.StringUtils; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.ServletOutputStream; import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@ -20,14 +20,13 @@ import java.util.*;
@RestController @RestController
@RequestMapping("/papi/secondev/nccloud/api/hrtrn/openAPI") @RequestMapping("/papi/secondev/nccloud/api/hrtrn/openAPI")
@Slf4j
public class EmployeeSelfServiceController { public class EmployeeSelfServiceController {
private static final Logger log = LoggerFactory.getLogger(EmployeeSelfServiceController.class);
@Autowired @Autowired
private PersondataQueryUtil persondataQueryUtil; private PersondataQueryUtil persondataQueryUtil;
/** /**
* use: * use:
*/ */
@ -43,6 +42,7 @@ public class EmployeeSelfServiceController {
// JSONObject resJsonObject = JSONObject.parseObject(rs11); // JSONObject resJsonObject = JSONObject.parseObject(rs11);
// if("1000000000".equals(resJsonObject.getString("code"))) { // if("1000000000".equals(resJsonObject.getString("code"))) {
// JSONArray dataArrayOne = resJsonObject.getJSONArray("data"); // JSONArray dataArrayOne = resJsonObject.getJSONArray("data");
// //先给query接口加字段isExamine默认false不审核
// if(dataArrayOne!=null && dataArrayOne.size() > 0) { // if(dataArrayOne!=null && dataArrayOne.size() > 0) {
// for(int i = 0; i<dataArrayOne.size();i++) { // for(int i = 0; i<dataArrayOne.size();i++) {
// JSONObject jsonObjectone = dataArrayOne.getJSONObject(i); // JSONObject jsonObjectone = dataArrayOne.getJSONObject(i);
@ -71,9 +71,19 @@ public class EmployeeSelfServiceController {
// JSONObject dataObj21 = dataObj2.getJSONObject("data"); // JSONObject dataObj21 = dataObj2.getJSONObject("data");
// //如果是基本信息查询 // //如果是基本信息查询
// if("bd_psndoc".equals(r3.getString("tableCode"))) { // if("bd_psndoc".equals(r3.getString("tableCode"))) {
// JSONArray afterdata = null; // JSONArray afterdata = new JSONArray();
// if(dataObj21 != null && dataObj21.containsKey("afterData") && dataObj21.get("afterData") != null) { // JSONArray changedataArray = dataObj21.getJSONArray("changedata");
// afterdata = dataObj21.getJSONArray("afterData"); // if(changedataArray!=null && changedataArray.size()>0) {
// for(int i = 0;i<changedataArray.size();i++) {
// JSONObject changeobj = changedataArray.getJSONObject(i);
// JSONArray afterdata1 = changeobj.getJSONArray("afterData");
// if(afterdata1!=null &&afterdata1.size()>0) {
// for(int i1 = 0;i1 < afterdata1.size();i1++) {
// JSONObject jsonObjecti1 = afterdata1.getJSONObject(i1);
// afterdata.add(jsonObjecti1);
// }
// }
// }
// } // }
// if(afterdata != null && afterdata.size() > 0) { // if(afterdata != null && afterdata.size() > 0) {
// dataArrayOne = resJsonObject.getJSONArray("data"); // dataArrayOne = resJsonObject.getJSONArray("data");
@ -91,8 +101,12 @@ public class EmployeeSelfServiceController {
// JSONObject afertObj = afterdata.getJSONObject(x); // JSONObject afertObj = afterdata.getJSONObject(x);
// String columnValue = afertObj.getString("columnValue"); // String columnValue = afertObj.getString("columnValue");
// String columnKey = afertObj.getString("columnKey"); // String columnKey = afertObj.getString("columnKey");
// String columnLabel = afertObj.getString("columnLabel");
// if(columnKey!=null && columnKey.length()>0 && columnKey.equals(re5.getString("key"))) { // if(columnKey!=null && columnKey.length()>0 && columnKey.equals(re5.getString("key"))) {
// re5.put("isExamine",true); // //将待审核的内容覆盖的原值,前端展示
// re5.put("isExamine",true);//isExaminetrue为待审核状态
// re5.put("label",columnLabel);
// re5.put("value",columnValue);
// } // }
// } // }
// } // }
@ -134,6 +148,7 @@ public class EmployeeSelfServiceController {
// } // }
// } // }
// } // }
// return resJsonObject;
String resJsonStr = persondataQueryUtil.queryNccloudPersondata(body); String resJsonStr = persondataQueryUtil.queryNccloudPersondata(body);
@ -141,14 +156,50 @@ public class EmployeeSelfServiceController {
} }
@WeaPermission(publicPermission = true)
@PostMapping("/persondata/query1")
public JSONObject persondataQuery1(
@RequestBody String body
) throws Exception {
JSONObject r3 = JSONObject.parseObject(body);
NccApiUtil nccApiUtil = new NccApiUtil();
nccApiUtil.init();
String token = nccApiUtil.getToken();
String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/persondata/query";
String rs11 = nccApiUtil.doJsonPost(url,token,r3.toJSONString());
JSONObject resJsonObject = JSONObject.parseObject(rs11);
return resJsonObject;
}
@WeaPermission(publicPermission = true) @WeaPermission(publicPermission = true)
@PostMapping("/persondata/query2") @PostMapping("/persondata/query2")
public String persondataQuery2(@RequestBody String body) throws Exception { public JSONObject persondataQuery2(@RequestBody String body) throws Exception {
JSONObject r3 = JSONObject.parseObject(body);
NccApiUtil nccApiUtil = new NccApiUtil();
nccApiUtil.init();
String token = nccApiUtil.getToken();
String url = nccApiUtil.getBaseUrl()+"/nccloud/api/hrtrn/openAPI/psninfoedit/approvelist";
String rs11 = nccApiUtil.doJsonPost(url,token,r3.toJSONString());
JSONObject resJsonObject = JSONObject.parseObject(rs11);
return resJsonObject;
}
String resJsonStr = persondataQueryUtil.queryNccloudPersondata(body);
return resJsonStr; @WeaPermission(publicPermission = true)
@PostMapping("/persondata/query3")
public JSONObject persondataQuery3(@RequestBody String body) throws Exception {
JSONObject r3 = JSONObject.parseObject(body);
NccApiUtil nccApiUtil = new NccApiUtil();
nccApiUtil.init();
String token = nccApiUtil.getToken();
String url = nccApiUtil.getBaseUrl()+"/nccloud/api/hrtrn/openAPI/psninfoedit/approvelist";
String rs11 = nccApiUtil.doJsonPost(url,token,r3.toJSONString());
JSONObject resJsonObject = JSONObject.parseObject(rs11);
return resJsonObject;
} }
/** /**
* use: * use:
*/ */
@ -281,9 +332,7 @@ public class EmployeeSelfServiceController {
*/ */
@WeaPermission(publicPermission = true) @WeaPermission(publicPermission = true)
@PostMapping("/attachment/query") @PostMapping("/attachment/query")
public JSONObject attachmentQuery( public JSONObject attachmentQuery(@RequestBody String body) throws Exception {
@RequestBody String body
) throws Exception {
JSONObject requestbody = JSONObject.parseObject(body); JSONObject requestbody = JSONObject.parseObject(body);
String pk1 = requestbody.getString("pk"); String pk1 = requestbody.getString("pk");
JSONObject inter2 = new JSONObject(); JSONObject inter2 = new JSONObject();
@ -293,32 +342,51 @@ public class EmployeeSelfServiceController {
String token = nccApiUtil.getToken(); String token = nccApiUtil.getToken();
String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/attachment/query"; String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/attachment/query";
String rs11 = nccApiUtil.doJsonPost(url,token,requestbody.toJSONString()); String rs11 = nccApiUtil.doJsonPost(url,token,requestbody.toJSONString());
log.error("attachmentQuery-rs11:"+rs11);
try { try {
JSONObject resJsonObject = JSONObject.parseObject(rs11); JSONObject resJsonObject = JSONObject.parseObject(rs11);
String code = resJsonObject.getString("code"); String code = resJsonObject.getString("code");
if("1000000000".equals(code)) { if("1000000000".equals(code)) {
JSONObject dataObject = new JSONObject();
if(resJsonObject.containsKey("data")){
dataObject = resJsonObject.getJSONObject("data");
if(dataObject.keySet()!=null && dataObject.keySet().size()>0) {
for(String key1 : dataObject.keySet()) {
JSONArray keysz1 = dataObject.getJSONArray(key1);
for(int i = 0; i<keysz1.size();i++) {
JSONObject one = keysz1.getJSONObject(i);
one.put("isExamine",false);
one.put("file_state","0");
}
}
}
}
//详情接口合并 //详情接口合并
NccApiUtil nccApiUtil2 = new NccApiUtil(); NccApiUtil nccApiUtil2 = new NccApiUtil();
nccApiUtil2.init(); nccApiUtil2.init();
String token2 = nccApiUtil2.getToken(); String token2 = nccApiUtil2.getToken();
String url2 = nccApiUtil2.getBaseUrl()+"nccloud/api/hrtrn/openAPI/attachment/unreviewed"; String url2 = nccApiUtil2.getBaseUrl()+"nccloud/api/hrtrn/openAPI/attachment/unreviewed";
String rs12 = nccApiUtil2.doJsonPost(url2,token2,inter2.toJSONString()); String rs12 = nccApiUtil2.doJsonPost(url2,token2,inter2.toJSONString());
log.error("attachmentQuery-rs12:"+rs12);
JSONObject resJsonObject2 = JSONObject.parseObject(rs12); JSONObject resJsonObject2 = JSONObject.parseObject(rs12);
String code2 = resJsonObject2.getString("code"); String code2 = resJsonObject2.getString("code");
JSONObject dataObject = resJsonObject.getJSONObject("data");
if(dataObject.keySet()!=null && dataObject.keySet().size()>0) {
for(String key1 : dataObject.keySet()) {
JSONArray keysz1 = dataObject.getJSONArray(key1);
for(int i = 0; i<keysz1.size();i++) {
JSONObject one = keysz1.getJSONObject(i);
one.put("isExamine",false);
one.put("file_state","0");
}
}
}
//拼接待审核 //拼接待审核
if("1000000000".equals(code2)) { if("1000000000".equals(code2)) {
JSONArray data2 = resJsonObject2.getJSONArray("data"); JSONArray data2 = new JSONArray();
if(resJsonObject2.containsKey("data")){
String data = resJsonObject2.getString("data");
log.error("data:"+data);
boolean isArray = JSONUtil.isJsonArray(data);
log.error("isArray:"+isArray);
if (isArray) {
data2 = resJsonObject2.getJSONArray("data");
}
}
log.error("data2:"+data2.toJSONString());
// JSONArray data2 = resJsonObject2.getJSONArray("data");
if(data2!=null && data2.size()>0) { if(data2!=null && data2.size()>0) {
for(int i = 0; i < data2.size(); i++) { for(int i = 0; i < data2.size(); i++) {
JSONObject obj2 = data2.getJSONObject(i); JSONObject obj2 = data2.getJSONObject(i);
@ -326,7 +394,10 @@ public class EmployeeSelfServiceController {
String pk_annex_approve = obj2.getString("pk_annex_approve"); String pk_annex_approve = obj2.getString("pk_annex_approve");
String file_name = obj2.getString("file_name"); String file_name = obj2.getString("file_name");
String checkstatus = obj2.getString("checkstatus"); String checkstatus = obj2.getString("checkstatus");
String type = obj2.getString("type"); String type = "";
if(obj2.containsKey("type")) {
type = obj2.getString("type");
}
String file_state = obj2.getString("file_state"); String file_state = obj2.getString("file_state");
//仅checkstatus==0待审核时才展示 //仅checkstatus==0待审核时才展示
if("0".equals(checkstatus)) { if("0".equals(checkstatus)) {
@ -336,13 +407,41 @@ public class EmployeeSelfServiceController {
y2.put("path",""); y2.put("path","");
y2.put("file_state",file_state); y2.put("file_state",file_state);
y2.put("isExamine",true); y2.put("isExamine",true);
if(dataObject.containsKey(type)) { if("0".equals(file_state)) {//新增
JSONArray b1 = dataObject.getJSONArray(type); if(dataObject.containsKey(type)) {
b1.add(y2); String data = resJsonObject2.getString(type);
}else { log.error("data2:"+data);
JSONArray b2 = new JSONArray(); boolean isArray = JSONUtil.isJsonArray(data);
b2.add(y2); log.error("isArray2:"+isArray);
dataObject.put(type,b2); if (isArray) {
JSONArray b1 = dataObject.getJSONArray(type);
b1.add(y2);
}
}else {
JSONArray b2 = new JSONArray();
b2.add(y2);
dataObject.put(type,b2);
}
}else {//删除
JSONArray b1 = new JSONArray();
if(dataObject.containsKey(type)){
String data = resJsonObject2.getString(type);
log.error("data3:"+data);
boolean isArray = JSONUtil.isJsonArray(data);
log.error("isArray3:"+isArray);
if (isArray) {
b1 = dataObject.getJSONArray(type);
for(int u = 0;u<b1.size();u++) {
JSONObject u1 = b1.getJSONObject(u);
String filenameu = u1.getString("name");
if(filenameu.equals(file_name)) {
u1.put("isExamine",true);
u1.put("file_state",file_state);
u1.put("pk",pk_annex_approve);
}
}
}
}
} }
} }
} }
@ -355,6 +454,28 @@ public class EmployeeSelfServiceController {
} }
} }
/**
* use:
*/
@WeaPermission(publicPermission = true)
@PostMapping("/attachment/query1")
public JSONObject attachmentQuery1(
@RequestBody String body
) throws Exception {
JSONObject requestbody = JSONObject.parseObject(body);
NccApiUtil nccApiUtil = new NccApiUtil();
nccApiUtil.init();
String token = nccApiUtil.getToken();
String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/attachment/query";
String rs11 = nccApiUtil.doJsonPost(url,token,requestbody.toJSONString());
try {
JSONObject resJsonObject = JSONObject.parseObject(rs11);
return resJsonObject;
}catch (Exception e) {
throw new Exception(rs11);
}
}
/** /**

@ -4,6 +4,7 @@ package com.weaver.seconddev.sxjg.util;
import cn.hutool.json.JSONArray; import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject; import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -11,7 +12,7 @@ import org.springframework.stereotype.Component;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.UUID;
@Component @Component
@ -19,6 +20,211 @@ public class PersondataQueryUtil {
private final Logger log = LoggerFactory.getLogger(PersondataQueryUtil.class); private final Logger log = LoggerFactory.getLogger(PersondataQueryUtil.class);
// public String queryNccloudPersondata(String body){
//
// NccApiUtil nccApiUtil = new NccApiUtil();
// JSONObject resJsonObject = new JSONObject();
// try{
// JSONObject r3 = JSONUtil.parseObj(body);
// nccApiUtil.init();
// String token = nccApiUtil.getToken();
// log.error("nccApiUtil-token:"+token);
//
// String url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/persondata/query";
// String rs11 = nccApiUtil.doJsonPost(url,token,r3.toString());
// log.error("nccApiUtil-rs11:"+rs11);
//
// resJsonObject = JSONUtil.parseObj(rs11);
// if("1000000000".equals(resJsonObject.getStr("code"))) {
// JSONArray dataArrayOne = resJsonObject.getJSONArray("data");
// if(dataArrayOne!=null && dataArrayOne.size() > 0) {
// for(int i = 0; i<dataArrayOne.size();i++) {
// JSONObject jsonObjectone = dataArrayOne.getJSONObject(i);
// JSONArray dataArrayTwo = jsonObjectone.getJSONArray("data");
// if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
// for(int j = 0; j<dataArrayTwo.size();j++) {
// JSONObject re3 = dataArrayTwo.getJSONObject(j);
// for(Map.Entry<String, Object> re4 : re3.entrySet()){
// String key = re4.getKey();
// JSONObject re5 = re3.getJSONObject(key);
// re5.put("isExamine",false);
// }
// }
// }
// }
// }
// nccApiUtil = new NccApiUtil();
// nccApiUtil.init();
// token = nccApiUtil.getToken();
// log.error("approveDetailVO-token:"+token);
// url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/psninfoedit/approveDetailVO";
// rs11 = nccApiUtil.doJsonPost(url,token,r3.toString());
//
// log.error("approveDetailVO-rs11:"+rs11);
//
// JSONObject resJsonObject2= JSONUtil.parseObj(rs11);
// if("1000000000".equals(resJsonObject2.getStr("code"))) {
// JSONObject dataObj2 = resJsonObject2.getJSONObject("data");
// if(dataObj2.containsKey("data")) {
// JSONObject dataObj21 = dataObj2.getJSONObject("data");
// //如果是基本信息查询
// if("bd_psndoc".equals(r3.getStr("tableCode"))) {
// JSONArray afterdata = null;
// if(dataObj21 != null && dataObj21.containsKey("afterData") && dataObj21.get("afterData") != null) {
// afterdata = dataObj21.getJSONArray("afterData");
// }
// if(afterdata != null && afterdata.size() > 0) {
// dataArrayOne = resJsonObject.getJSONArray("data");
// if(dataArrayOne!=null && dataArrayOne.size() > 0) {
// for(int i = 0; i<dataArrayOne.size();i++) {
// JSONObject jsonObjectone = dataArrayOne.getJSONObject(i);
// JSONArray dataArrayTwo = jsonObjectone.getJSONArray("data");
// if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
// for(int j = 0; j<dataArrayTwo.size();j++) {
// JSONObject re3 = dataArrayTwo.getJSONObject(j);
// for(Map.Entry<String, Object> re4 : re3.entrySet()){
// String key = re4.getKey();
// JSONObject re5 = re3.getJSONObject(key);
// for(int x = 0;x < afterdata.size();x ++) {
// JSONObject afertObj = afterdata.getJSONObject(x);
// String columnValue = afertObj.getStr("columnValue");
// String columnKey = afertObj.getStr("columnKey");
// if(columnKey!=null && columnKey.length()>0 && columnKey.equals(re5.getStr("key"))) {
// re5.put("isExamine",true);
// }
// }
// }
// }
// }
// }
// }
// }
// }else {//子级信息查询
// if(dataObj21.containsKey("changeTypeMap")){
// JSONObject changeData= dataObj21.getJSONObject("changeTypeMap");
// List<String> shhs = new ArrayList<>();
// for(String key : changeData.keySet()) {
// shhs.add(key);
// }
// if(shhs!=null && shhs.size()>0) {
// if(dataArrayOne!=null && dataArrayOne.size() > 0) {
// for(int i = 0; i<dataArrayOne.size();i++) {
// JSONObject jsonObjectone = dataArrayOne.getJSONObject(i);
// String rowDataPk = jsonObjectone.getStr("rowDataPk");
// if(shhs.contains(rowDataPk)) {
// JSONArray dataArrayTwo = jsonObjectone.getJSONArray("data");
// if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
// for(int j = 0; j<dataArrayTwo.size();j++) {
// JSONObject re3 = dataArrayTwo.getJSONObject(j);
// for(Map.Entry<String, Object> re4 : re3.entrySet()){
// String key = re4.getKey();
// JSONObject re5 = re3.getJSONObject(key);
// re5.put("isExamine",true);
// }
// }
// }
// }
// }
// }
// }
// }
// }
//
//
// if(dataObj21.containsKey("changeData")){
// JSONArray changeDataArray = dataObj21.getJSONArray("changeData");
// JSONArray newArrayData = new JSONArray();
// for(int i=0;i<changeDataArray.size();i++){
// JSONObject changeDataObject = changeDataArray.getJSONObject(i);
// if(changeDataObject.containsKey("pk_psndoc_sub")){
// String pk_psndoc_sub = changeDataObject.getStr("pk_psndoc_sub");
// if(StringUtils.isBlank(pk_psndoc_sub)){
//
// JSONArray newdataArray = new JSONArray();
// JSONObject dataJson = new JSONObject();
//
// for(Map.Entry<String, Object> re4 : changeDataObject.entrySet()){
// String changeDataKey = re4.getKey();
// String changeDataValue = changeDataObject.getStr(changeDataKey);
//
// if(changeDataValue.startsWith("{") && changeDataValue.endsWith("}")){
// JSONObject itemDataObject = JSONUtil.parseObj(changeDataValue);
//
// String name = itemDataObject.getStr("name");
// String pk = itemDataObject.getStr("pk");
//
// JSONObject addDataObject = new JSONObject();
// addDataObject.set("isExamine",true);
// addDataObject.set("label",name);
// addDataObject.set("value",pk);
// addDataObject.set("key",changeDataKey);
//
// JSONObject newDataObject = new JSONObject();
// newDataObject.set(changeDataKey,addDataObject);
// newdataArray.add(newDataObject);
//
// }else{
//
// if("lasteducation".equalsIgnoreCase(changeDataKey) && "hi_psndoc_edu".equals(r3.getStr("tableCode"))){
// JSONObject addDataObject = new JSONObject();
// addDataObject.set("isExamine",true);
// if("Y".equalsIgnoreCase(changeDataValue)){
// changeDataValue = "是";
// }else if("N".equalsIgnoreCase(changeDataValue)){
// changeDataValue = "否";
// }
// addDataObject.set("label",changeDataValue);
// addDataObject.set("value",changeDataValue);
// addDataObject.set("key",changeDataKey);
//
// JSONObject newDataObject = new JSONObject();
// newDataObject.set(changeDataKey,addDataObject);
// newdataArray.add(newDataObject);
// }else{
// JSONObject addDataObject = new JSONObject();
// addDataObject.set("isExamine",true);
// addDataObject.set("label",changeDataValue);
// addDataObject.set("value",changeDataValue);
// addDataObject.set("key",changeDataKey);
//
// JSONObject newDataObject = new JSONObject();
// newDataObject.set(changeDataKey,addDataObject);
// newdataArray.add(newDataObject);
// }
//
// }
// }
//
// dataJson.set("data",newdataArray);
//
// String uuid = UUID.randomUUID().toString();
// dataJson.set("rowDataPk",uuid);
// newArrayData.add(dataJson);
// }
// }
// }
// log.error("newArrayData:"+newArrayData.toString());
//
// if(newArrayData !=null && newArrayData.size()>0){
// dataArrayOne.addAll(newArrayData);
// }
//
// log.error("dataArrayOne:"+dataArrayOne.toString());
// }
//
//
// }
// }
// }
// }catch (Exception e){
// e.printStackTrace();
// log.error("queryNccloudPersondata-e:"+e);
// }
//
// return resJsonObject.toString();
// }
public String queryNccloudPersondata(String body){ public String queryNccloudPersondata(String body){
NccApiUtil nccApiUtil = new NccApiUtil(); NccApiUtil nccApiUtil = new NccApiUtil();
@ -34,101 +240,248 @@ public class PersondataQueryUtil {
log.error("nccApiUtil-rs11:"+rs11); log.error("nccApiUtil-rs11:"+rs11);
resJsonObject = JSONUtil.parseObj(rs11); resJsonObject = JSONUtil.parseObj(rs11);
if("1000000000".equals(resJsonObject.getStr("code"))) { if(resJsonObject.containsKey("code")){
JSONArray dataArrayOne = resJsonObject.getJSONArray("data"); if("1000000000".equals(resJsonObject.getStr("code"))) {
if(dataArrayOne!=null && dataArrayOne.size() > 0) { JSONArray dataArrayOne = new JSONArray();
for(int i = 0; i<dataArrayOne.size();i++) { if(resJsonObject.containsKey("data")){
JSONObject jsonObjectone = dataArrayOne.getJSONObject(i);
JSONArray dataArrayTwo = jsonObjectone.getJSONArray("data"); String data = resJsonObject.getStr("data");
if(dataArrayTwo!=null && dataArrayTwo.size() >0) { log.error("nccApiUtil-rs11:"+data);
for(int j = 0; j<dataArrayTwo.size();j++) { boolean isArray = JSONUtil.isJsonArray(data);
JSONObject re3 = dataArrayTwo.getJSONObject(j); log.error("nccApiUtil-data:"+data);
for(Map.Entry<String, Object> re4 : re3.entrySet()){ if (isArray) {
String key = re4.getKey(); dataArrayOne = resJsonObject.getJSONArray("data");
JSONObject re5 = re3.getJSONObject(key); }
re5.put("isExamine",false); }
if(dataArrayOne!=null && dataArrayOne.size() > 0) {
for(int i = 0; i<dataArrayOne.size();i++) {
JSONObject jsonObjectone = dataArrayOne.getJSONObject(i);
JSONArray dataArrayTwo = new JSONArray();
if(jsonObjectone.containsKey("data")){
String data = jsonObjectone.getStr("data");
boolean isArray = JSONUtil.isJsonArray(data);
if (isArray) {
dataArrayTwo = jsonObjectone.getJSONArray("data");
}
if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
for(int j = 0; j<dataArrayTwo.size();j++) {
JSONObject re3 = dataArrayTwo.getJSONObject(j);
for(Map.Entry<String, Object> re4 : re3.entrySet()){
String key = re4.getKey();
JSONObject re5 = re3.getJSONObject(key);
re5.put("isExamine",false);
}
}
} }
} }
} }
} }
}
nccApiUtil = new NccApiUtil(); nccApiUtil = new NccApiUtil();
nccApiUtil.init(); nccApiUtil.init();
token = nccApiUtil.getToken(); token = nccApiUtil.getToken();
log.error("approveDetailVO-token:"+token); log.error("approveDetailVO-token:"+token);
url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/psninfoedit/approveDetailVO"; url = nccApiUtil.getBaseUrl()+"nccloud/api/hrtrn/openAPI/psninfoedit/approveDetailVO";
rs11 = nccApiUtil.doJsonPost(url,token,r3.toString()); rs11 = nccApiUtil.doJsonPost(url,token,r3.toString());
log.error("approveDetailVO-rs11:"+rs11);
log.error("approveDetailVO-rs11:"+rs11);
JSONObject resJsonObject2 = JSONUtil.parseObj(rs11);
JSONObject resJsonObject2= JSONUtil.parseObj(rs11); if(resJsonObject2.containsKey("code")){
if("1000000000".equals(resJsonObject2.getStr("code"))) { if("1000000000".equals(resJsonObject2.getStr("code"))) {
JSONObject dataObj2 = resJsonObject2.getJSONObject("data"); if(resJsonObject2.containsKey("data")){
if(dataObj2.containsKey("data")) { JSONObject dataObj2 = resJsonObject2.getJSONObject("data");
JSONObject dataObj21 = dataObj2.getJSONObject("data"); if(dataObj2.containsKey("data")) {
//如果是基本信息查询 JSONObject dataObj21 = dataObj2.getJSONObject("data");
if("bd_psndoc".equals(r3.getStr("tableCode"))) { //如果是基本信息查询
JSONArray afterdata = null; if("bd_psndoc".equals(r3.getStr("tableCode"))) {
if(dataObj21 != null && dataObj21.containsKey("afterData") && dataObj21.get("afterData") != null) { JSONArray afterdata = new JSONArray();
afterdata = dataObj21.getJSONArray("afterData");
} JSONArray changeDataArray = new JSONArray();
if(afterdata != null && afterdata.size() > 0) { if(dataObj21.containsKey("changedata")){
dataArrayOne = resJsonObject.getJSONArray("data"); String changedata = dataObj21.getStr("changedata");
if(dataArrayOne!=null && dataArrayOne.size() > 0) { boolean isArray = JSONUtil.isJsonArray(changedata);
for(int i = 0; i<dataArrayOne.size();i++) { log.error("nccApiUtil-changedata:"+changedata);
JSONObject jsonObjectone = dataArrayOne.getJSONObject(i); if (isArray) {
JSONArray dataArrayTwo = jsonObjectone.getJSONArray("data"); changeDataArray = dataObj21.getJSONArray("changedata");
if(dataArrayTwo!=null && dataArrayTwo.size() >0) { for(int i = 0; i<changeDataArray.size();i++) {
for(int j = 0; j<dataArrayTwo.size();j++) { JSONObject changeDataObject = changeDataArray.getJSONObject(i);
JSONObject re3 = dataArrayTwo.getJSONObject(j); if(changeDataObject.containsKey("afterData")){
for(Map.Entry<String, Object> re4 : re3.entrySet()){ JSONArray afterDataArray = new JSONArray();
String key = re4.getKey(); String afterData = dataObj21.getStr("afterData");
JSONObject re5 = re3.getJSONObject(key); boolean isArray2 = JSONUtil.isJsonArray(afterData);
for(int x = 0;x < afterdata.size();x ++) { if(isArray2){
JSONObject afertObj = afterdata.getJSONObject(x); afterDataArray = changeDataObject.getJSONArray("afterData");
String columnValue = afertObj.getStr("columnValue"); }
String columnKey = afertObj.getStr("columnKey"); for(int j=0;j<afterDataArray.size();j++){
if(columnKey!=null && columnKey.length()>0 && columnKey.equals(re5.getStr("key"))) { JSONObject afterDataObject = afterDataArray.getJSONObject(j);
re5.put("isExamine",true); afterdata.add(afterDataObject);
}
}
}
}
}
if(afterdata != null && afterdata.size() > 0) {
if(dataArrayOne!=null && dataArrayOne.size() > 0) {
for(int i = 0; i<dataArrayOne.size();i++) {
JSONObject jsonObjectOne = dataArrayOne.getJSONObject(i);
JSONArray dataArrayTwo = new JSONArray();
String data = jsonObjectOne.getStr("data");
boolean isArray = JSONUtil.isJsonArray(data);
if(isArray){
dataArrayTwo = jsonObjectOne.getJSONArray("data");
}
if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
for(int j = 0; j<dataArrayTwo.size();j++) {
JSONObject re3 = dataArrayTwo.getJSONObject(j);
for(Map.Entry<String, Object> re4 : re3.entrySet()){
String key = re4.getKey();
JSONObject re5 = re3.getJSONObject(key);
for(int x = 0;x < afterdata.size();x ++) {
JSONObject afertObj = afterdata.getJSONObject(x);
String columnValue = afertObj.getStr("columnValue");
String columnKey = afertObj.getStr("columnKey");
if(columnKey!=null && columnKey.length()>0 && columnKey.equals(re5.getStr("key"))) {
re5.put("isExamine",true);
}
}
}
}
}
}
}
}
}else {//子级信息查询
if(dataObj21.containsKey("changeTypeMap")){
JSONObject changeData= dataObj21.getJSONObject("changeTypeMap");
List<String> shhs = new ArrayList<>();
for(String key : changeData.keySet()) {
shhs.add(key);
}
if(shhs!=null && shhs.size()>0) {
if(dataArrayOne!=null && dataArrayOne.size() > 0) {
for(int i = 0; i<dataArrayOne.size();i++) {
JSONObject jsonObjectOne = dataArrayOne.getJSONObject(i);
String rowDataPk = jsonObjectOne.getStr("rowDataPk");
if(shhs.contains(rowDataPk)) {
String data = jsonObjectOne.getStr("data");
JSONArray dataArrayTwo = new JSONArray();
boolean isArray = JSONUtil.isJsonArray(data);
if(isArray){
dataArrayTwo = jsonObjectOne.getJSONArray("data");
}
if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
for(int j = 0; j<dataArrayTwo.size();j++) {
JSONObject re3 = dataArrayTwo.getJSONObject(j);
for(Map.Entry<String, Object> re4 : re3.entrySet()){
String key = re4.getKey();
JSONObject re5 = re3.getJSONObject(key);
re5.put("isExamine",true);
}
}
}
} }
} }
} }
} }
} }
} }
}
} if(!"bd_psndoc".equals(r3.getStr("tableCode"))){
}else {//子级信息查询 if(dataObj21.containsKey("changeData")){
if(dataObj21.containsKey("changeTypeMap")){ JSONArray changeDataArray = new JSONArray();
JSONObject changeData= dataObj21.getJSONObject("changeTypeMap"); String changeData = dataObj21.getStr("changeData");
List<String> shhs = new ArrayList<>(); boolean isArray = JSONUtil.isJsonArray(changeData);
for(String key : changeData.keySet()) { if(isArray){
shhs.add(key); changeDataArray = dataObj21.getJSONArray("changeData");
} }
if(shhs!=null && shhs.size()>0) {
if(dataArrayOne!=null && dataArrayOne.size() > 0) { JSONArray newArrayData = new JSONArray();
for(int i = 0; i<dataArrayOne.size();i++) { for(int i=0;i<changeDataArray.size();i++){
JSONObject jsonObjectone = dataArrayOne.getJSONObject(i); JSONObject changeDataObject = changeDataArray.getJSONObject(i);
String rowDataPk = jsonObjectone.getStr("rowDataPk"); if(changeDataObject.containsKey("pk_psndoc_sub")){
if(shhs.contains(rowDataPk)) { String pk_psndoc_sub = changeDataObject.getStr("pk_psndoc_sub");
JSONArray dataArrayTwo = jsonObjectone.getJSONArray("data"); if(StringUtils.isBlank(pk_psndoc_sub)){
if(dataArrayTwo!=null && dataArrayTwo.size() >0) {
for(int j = 0; j<dataArrayTwo.size();j++) { JSONArray newdataArray = new JSONArray();
JSONObject re3 = dataArrayTwo.getJSONObject(j); JSONObject dataJson = new JSONObject();
for(Map.Entry<String, Object> re4 : re3.entrySet()){
String key = re4.getKey(); for(Map.Entry<String, Object> re4 : changeDataObject.entrySet()){
JSONObject re5 = re3.getJSONObject(key); String changeDataKey = re4.getKey();
re5.put("isExamine",true); String changeDataValue = changeDataObject.getStr(changeDataKey);
if(changeDataValue.startsWith("{") && changeDataValue.endsWith("}")){
JSONObject itemDataObject = JSONUtil.parseObj(changeDataValue);
String name = itemDataObject.getStr("name");
String pk = itemDataObject.getStr("pk");
JSONObject addDataObject = new JSONObject();
addDataObject.set("isExamine",true);
addDataObject.set("label",name);
addDataObject.set("value",pk);
addDataObject.set("key",changeDataKey);
JSONObject newDataObject = new JSONObject();
newDataObject.set(changeDataKey,addDataObject);
newdataArray.add(newDataObject);
}else{
if("lasteducation".equalsIgnoreCase(changeDataKey) && "hi_psndoc_edu".equals(r3.getStr("tableCode"))){
JSONObject addDataObject = new JSONObject();
addDataObject.set("isExamine",true);
if("Y".equalsIgnoreCase(changeDataValue)){
changeDataValue = "是";
}else if("N".equalsIgnoreCase(changeDataValue)){
changeDataValue = "否";
}
addDataObject.set("label",changeDataValue);
addDataObject.set("value",changeDataValue);
addDataObject.set("key",changeDataKey);
JSONObject newDataObject = new JSONObject();
newDataObject.set(changeDataKey,addDataObject);
newdataArray.add(newDataObject);
}else{
JSONObject addDataObject = new JSONObject();
addDataObject.set("isExamine",true);
addDataObject.set("label",changeDataValue);
addDataObject.set("value",changeDataValue);
addDataObject.set("key",changeDataKey);
JSONObject newDataObject = new JSONObject();
newDataObject.set(changeDataKey,addDataObject);
newdataArray.add(newDataObject);
}
}
} }
dataJson.set("data",newdataArray);
String uuid = UUID.randomUUID().toString();
dataJson.set("rowDataPk",uuid);
newArrayData.add(dataJson);
} }
} }
} }
log.error("newArrayData:"+newArrayData.toString());
if(newArrayData !=null && newArrayData.size()>0){
dataArrayOne.addAll(newArrayData);
}
log.error("dataArrayOne:"+dataArrayOne.toString());
} }
} }
} }
} }
} }
} }
resJsonObject.set("data",dataArrayOne);
} }
} }
}catch (Exception e){ }catch (Exception e){

Loading…
Cancel
Save