diff --git a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/CustomTeAction.java b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/CustomTeAction.java index d8d4bfd..da9f3e4 100644 --- a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/CustomTeAction.java +++ b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/action/CustomTeAction.java @@ -1,6 +1,7 @@ package com.weaver.seconddev.interfaces.workflow.action; import com.alibaba.fastjson.JSON; +import com.linkage.netmsg.NetMsgclient; import com.weaver.authority.api.rest.RemoteAuthorityRoleService; import com.weaver.common.base.entity.result.WeaResult; import com.weaver.common.hrm.util.HrmContextUtil; @@ -9,6 +10,7 @@ import com.weaver.ebuilder.form.client.ebform.data.EbFormDataDubboService; import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; import com.weaver.framework.rpc.annotation.RpcReference; import com.weaver.seconddev.interfaces.prop.ConfigProp; +import com.weaver.seconddev.interfaces.workflow.message.ReceiveDemo; import com.weaver.seconddev.interfaces.workflow.util.CommonDevUtil; import com.weaver.teams.domain.user.SimpleEmployee; import com.weaver.verupgrade.conn.CONN_TYPE; @@ -49,7 +51,7 @@ public class CustomTeAction extends BaseBean implements Action, EsbServerlessRpc @Value("${weaver.swagger.basePackage}") private String basePackage; private static final org.slf4j.Logger logger = LoggerFactory.getLogger(CustomTeAction.class); - + private static NetMsgclient client = null; @Override public WeaResult> execute(Map params) { @@ -64,8 +66,14 @@ public class CustomTeAction extends BaseBean implements Action, EsbServerlessRpc RequestInfo request = requestInfoTemp.getRequestInfo(requestIdTemp, userIdTemp); try { - - RecordSet rs = I18nContextUtil.getBean(RecordSet.class); + client = new NetMsgclient(); + ReceiveDemo receiveDemo = new ReceiveDemo(); + client = client.initParameters("202.102.41.101", 9005, "0512C00119026", "htjt6800", receiveDemo); + client.anthenMsg(client); + String str = client.sendMsg(client, 1, "1585856015", "test", 1); + System.out.println(str); + client.closeConn(); +// RecordSet rs = I18nContextUtil.getBean(RecordSet.class); // // String sql = "select count(1) sl from ATDPERSONCARDEXVIEW where extype='未刷卡' and SHOULDDATE>='2024-10-01' and SHOULDDATE<='2024-12-30'"; // logger.error("sql == " + sql ); @@ -99,44 +107,44 @@ public class CustomTeAction extends BaseBean implements Action, EsbServerlessRpc // logger.error("url = " + testProp.getAccountUrl()); - SimpleEmployee currentEmployee = HrmContextUtil.getCurrentUser(); - - String tenantKey = HrmContextUtil.getCurrentTenantKey(); - logger.error("tenantKey = " + tenantKey); - -// RecordSet rs = I18nContextUtil.getBean(RecordSet.class); - // String sql1 = "select field1 from e10_common.dbo.uf_CustomFlow where field1 = 5 and delete_type = 0"; - - String tablename = "hrmemployeedefined"; - if("t6kj9c07jr".equals(tenantKey)){ - tablename = "hrmemployeedefined"; - }else if("tttit1yc38".equals(tenantKey)){//光电 - tablename = "hrmemployeedefined_12"; - }else if("tejiddakia".equals(tenantKey)){//华海 - tablename = "hrmemployeedefined_11"; - } - String sql1 = "select id,field3 from eteams.dbo." + tablename + " where FORM_DATA_ID= '100005650000063120' "; -// String sql1 = "select field3 from eteams.dbo.hrmemployeedefined where FORM_DATA_ID= '100005650000000052'"; - - String poolname = CONN_TYPE.hrm.getType(); - - logger.error("sql1 =" + sql1); - logger.error("poolname =" + poolname); - - try { - rs.executeSql(sql1, poolname); - } catch (Exception e) { - logger.error("rs-------", e); - logger.error("getExecuteResult =" + rs.getExecuteResult()); - } - - - logger.error("执行rs.executeSql成功"); - - if (rs.next()) { - String field3 = rs.getString("id"); - logger.error("field3 = " + field3); - } +// SimpleEmployee currentEmployee = HrmContextUtil.getCurrentUser(); +// +// String tenantKey = HrmContextUtil.getCurrentTenantKey(); +// logger.error("tenantKey = " + tenantKey); +// +//// RecordSet rs = I18nContextUtil.getBean(RecordSet.class); +// // String sql1 = "select field1 from e10_common.dbo.uf_CustomFlow where field1 = 5 and delete_type = 0"; +// +// String tablename = "hrmemployeedefined"; +// if("t6kj9c07jr".equals(tenantKey)){ +// tablename = "hrmemployeedefined"; +// }else if("tttit1yc38".equals(tenantKey)){//光电 +// tablename = "hrmemployeedefined_12"; +// }else if("tejiddakia".equals(tenantKey)){//华海 +// tablename = "hrmemployeedefined_11"; +// } +// String sql1 = "select id,field3 from eteams.dbo." + tablename + " where FORM_DATA_ID= '100005650000063120' "; +//// String sql1 = "select field3 from eteams.dbo.hrmemployeedefined where FORM_DATA_ID= '100005650000000052'"; +// +// String poolname = CONN_TYPE.hrm.getType(); +// +// logger.error("sql1 =" + sql1); +// logger.error("poolname =" + poolname); +// +// try { +// rs.executeSql(sql1, poolname); +// } catch (Exception e) { +// logger.error("rs-------", e); +// logger.error("getExecuteResult =" + rs.getExecuteResult()); +// } +// +// +// logger.error("执行rs.executeSql成功"); +// +// if (rs.next()) { +// String field3 = rs.getString("id"); +// logger.error("field3 = " + field3); +// } // // // String sql2 = "update e10_common.dbo.uf_CustomFlow set field2 = '修改后数据' where field1 = 2 and delete_type = 0 "; @@ -145,13 +153,13 @@ public class CustomTeAction extends BaseBean implements Action, EsbServerlessRpc // // // //rpc新增建模数据 - Long uf_CustomFlow_formId = commonDevUtil.getObjId("uf_CustomFlow"); - logger.error("uf_CustomFlow_formId = " + uf_CustomFlow_formId); - Long recodId = ebFormDataDubboService.addEmptyData(uf_CustomFlow_formId, currentEmployee);// 获取插入的空的建模id - String sql3 = "update e10_common.dbo.uf_CustomFlow set field2 = '添加数据' where id = " + recodId + " and delete_type = 0 "; - boolean b1 = rs.executeSql(sql3, poolname); - logger.error("sql3 = " + sql3); - logger.error("添加 = " + b1); +// Long uf_CustomFlow_formId = commonDevUtil.getObjId("uf_CustomFlow"); +// logger.error("uf_CustomFlow_formId = " + uf_CustomFlow_formId); +// Long recodId = ebFormDataDubboService.addEmptyData(uf_CustomFlow_formId, currentEmployee);// 获取插入的空的建模id +// String sql3 = "update e10_common.dbo.uf_CustomFlow set field2 = '添加数据' where id = " + recodId + " and delete_type = 0 "; +// boolean b1 = rs.executeSql(sql3, poolname); +// logger.error("sql3 = " + sql3); +// logger.error("添加 = " + b1); logger.error("stop CustomTeAction"); Map res = new HashMap<>(); diff --git a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsServiceImpl.java b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsServiceImpl.java index bd7213f..eda8e8f 100644 --- a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsServiceImpl.java +++ b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsServiceImpl.java @@ -1,15 +1,99 @@ package com.weaver.seconddev.interfaces.workflow.message; +import com.linkage.netmsg.NetMsgclient; +import com.linkage.netmsg.server.ReceiveMsg; import com.weaver.common.base.entity.result.WeaResult; +import com.weaver.common.i18n.tool.autocheck.util.RecordSet; import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.io.BufferedReader; +import java.io.IOException; import java.util.Map; +import java.util.StringTokenizer; +import java.util.Vector; @Service("Message") +@Slf4j public class SmsServiceImpl implements EsbServerlessRpcRemoteInterface { + + private static NetMsgclient client = null; + + private RecordSet rSet = null; + + BufferedReader in = null; + +// public static boolean init() { +// this.client = new NetMsgclient(); +//// ReceiveDemo receiveDemo = new ReceiveDemo(); +// ReceiveMsg receiveMsg = null; +// this.rSet = new RecordSet(); +// this.client = this.client.initParameters("202.102.41.101", 9005, "0512C00119026", "htjt6800", receiveMsg); +// return true; +// } + + public static boolean init() { + client = new NetMsgclient(); + ReceiveDemo receiveDemo = new ReceiveDemo(); + client = client.initParameters("202.102.41.101", 9005, "0512C00119026", "htjt6800", receiveDemo); + return true; + } + + + public boolean sendSMS(String paramString1, String paramString2, String paramString3) { + if (paramString2 == null || paramString3 == null) + return false; + if (!init()) + return false; +// String str1 = Util.passwordBuilderNo(6); +// this.rSet.executeSql("update SMS_Message set smsCode = '" + str1 + "' where id =" + paramString1); + Vector vector = new Vector(); + StringTokenizer stringTokenizer = new StringTokenizer(paramString2, ","); + while (stringTokenizer.hasMoreElements()) { + String str = (String)stringTokenizer.nextElement(); + if (str.indexOf("-") != -1) { + long l1 = Long.parseLong(str.substring(0, str.indexOf("-"))); + long l2 = Long.parseLong(str.substring(str.indexOf("-") + 1)); + long l3 = l1; + while (l3 <= l2) { + vector.addElement(Long.toString(l3)); + l3++; + } + continue; + } + vector.addElement(str); + } + int i = vector.size(); + String[] arrayOfString = new String[i]; + String str2 = ""; + try { + boolean bool = this.client.anthenMsg(this.client); + for (byte b = 0; b < i; b++) { + arrayOfString[b] = (String) vector.elementAt(b); + this.log.info("====mobiles[i]====" + arrayOfString[b]); + String str = this.client.sendMsg(this.client, 1, arrayOfString[b], paramString3, 1); + this.log.info("====returnvalue====" + str); + } + this.client.closeConn(); + } catch (Exception exception) { + exception.printStackTrace(); + } + return true; + } + @Override public WeaResult> execute(Map params) { return null; } + + public static void main(String[] args) throws IOException { + client = new NetMsgclient(); + ReceiveDemo receiveDemo = new ReceiveDemo(); + client = client.initParameters("202.102.41.101", 9005, "0512C00119026", "htjt6800", receiveDemo); + client.anthenMsg(client); + String str = client.sendMsg(client, 1, "1585856015", "test", 1); + System.out.println(str); + client.closeConn(); + } } diff --git a/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsTestAction.java b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsTestAction.java new file mode 100644 index 0000000..b0d724b --- /dev/null +++ b/secondev-history-action/src/main/java/com/weaver/seconddev/interfaces/workflow/message/SmsTestAction.java @@ -0,0 +1,43 @@ +package com.weaver.seconddev.interfaces.workflow.message; + +import com.linkage.netmsg.NetMsgclient; +import com.weaver.common.base.entity.result.WeaResult; +import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.util.Map; + +/** + * @Author: calyrex + * @CreateTime: 2025-07-01 + * @Description: 短信服务测试 + */ + +@Service("workflow_action_SmsTestAction") +@Slf4j +public class SmsTestAction implements EsbServerlessRpcRemoteInterface { + + private NetMsgclient client = null; + @Override + public WeaResult> execute(Map params) { + String bs = String.valueOf(params.getOrDefault("bs", -1)); + String fsr = String.valueOf(params.getOrDefault("fsr", -1)); + String jsr = String.valueOf(params.getOrDefault("jsr", -1)); + String nr = String.valueOf(params.getOrDefault("nr", -1)); + log.info("bs:"+bs+" fsr:"+fsr+" jsr:"+jsr+" nr:"+nr); + client = new NetMsgclient(); + ReceiveDemo receiveDemo = new ReceiveDemo(); + client = client.initParameters("202.102.41.101", 9005, "0512C00119026", "htjt6800", receiveDemo); + try { + client.anthenMsg(client); + } catch (IOException e) { + throw new RuntimeException(e); + } + String str = client.sendMsg(client, 1, "1585856015", "test", 1); + log.info("str====="+str); + client.closeConn(); + return WeaResult.success(); + } +} diff --git a/secondev-ww-action/src/main/java/com/weaver/secondev/action/approval/PayApplicationApprovalAction.java b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/approval/PayApplicationApprovalAction.java similarity index 92% rename from secondev-ww-action/src/main/java/com/weaver/secondev/action/approval/PayApplicationApprovalAction.java rename to secondev-ww-action/src/main/java/com/weaver/seconddev/action/approval/PayApplicationApprovalAction.java index e89a31d..f919e51 100644 --- a/secondev-ww-action/src/main/java/com/weaver/secondev/action/approval/PayApplicationApprovalAction.java +++ b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/approval/PayApplicationApprovalAction.java @@ -1,11 +1,11 @@ -package com.weaver.secondev.action.approval; +package com.weaver.seconddev.action.approval; import com.alibaba.fastjson.JSONObject; import com.weaver.common.base.entity.result.WeaResult; import com.weaver.ebuilder.datasource.api.enums.SourceType; import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; -import com.weaver.secondev.util.DataOperateUtil; -import com.weaver.secondev.util.ThirdInfoUtil; +import com.weaver.seconddev.util.DataOperateUtil; +import com.weaver.seconddev.util.ThirdInfoUtil; import com.weaver.verupgrade.interfaces.workflow.action.Action; import com.weaver.verupgrade.soa.workflow.request.RequestInfo; import lombok.extern.slf4j.Slf4j; @@ -48,6 +48,7 @@ public class PayApplicationApprovalAction implements EsbServerlessRpcRemoteInter String tableName = requestinfo.getRequestManager().getBillTableName(); String formDataId = dataOperateUtil.getFormDataId(String.valueOf(requestIdTemp)); String sql = "select pk,billtype from " + tableName + " where form_data_id = " + formDataId; + log.error("ReimbursementInfoAction execute sql : " + sql); String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-workflow-report-serviceworkflowreport"; Map datas = dataOperateUtil.executeForQuery(sourceType, groupId, sql); @@ -66,10 +67,11 @@ public class PayApplicationApprovalAction implements EsbServerlessRpcRemoteInter if ("1".equals(status)){ url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/uapbd/approveoaapi/Approve"; }else { - url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/uapbd/approveoaapi/UnApprove"; + url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/uapbd/unapproveoaapi/UnApprove"; } JSONObject tokenInfo = thirdInfoUtil.getToken(); - if (tokenInfo.get("success").equals("true")){ + log.info("tokenInfo--"+tokenInfo); + if (tokenInfo.getString("success").equals("true")){ JSONObject data = tokenInfo.getJSONObject("data"); String token = data.getString("access_token"); Boolean result = thirdInfoUtil.transferStatusInfo(url, token, jsonObject); diff --git a/secondev-ww-action/src/main/java/com/weaver/secondev/action/approval/ReimbursementApprovalAction.java b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/approval/ReimbursementApprovalAction.java similarity index 87% rename from secondev-ww-action/src/main/java/com/weaver/secondev/action/approval/ReimbursementApprovalAction.java rename to secondev-ww-action/src/main/java/com/weaver/seconddev/action/approval/ReimbursementApprovalAction.java index 5b741a9..bd9686b 100644 --- a/secondev-ww-action/src/main/java/com/weaver/secondev/action/approval/ReimbursementApprovalAction.java +++ b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/approval/ReimbursementApprovalAction.java @@ -1,11 +1,11 @@ -package com.weaver.secondev.action.approval; +package com.weaver.seconddev.action.approval; import com.alibaba.fastjson.JSONObject; import com.weaver.common.base.entity.result.WeaResult; import com.weaver.ebuilder.datasource.api.enums.SourceType; import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; -import com.weaver.secondev.util.DataOperateUtil; -import com.weaver.secondev.util.ThirdInfoUtil; +import com.weaver.seconddev.util.DataOperateUtil; +import com.weaver.seconddev.util.ThirdInfoUtil; import com.weaver.verupgrade.interfaces.workflow.action.Action; import lombok.extern.slf4j.Slf4j; import com.weaver.verupgrade.soa.workflow.request.RequestInfo; @@ -37,8 +37,8 @@ public class ReimbursementApprovalAction implements EsbServerlessRpcRemoteInterf @Override public WeaResult> execute(Map params) { - log.error("ReimbursementApprovalAction execute start"); - log.error("ReimbursementApprovalAction execute params : " + params); + log.info("ReimbursementApprovalAction execute start"); + log.info("ReimbursementApprovalAction execute params : " + params); try { Map weaverResultMap = new HashMap<>(); Long requestIdTemp = Long.parseLong(String.valueOf(params.getOrDefault("requestid", -1))); @@ -48,6 +48,7 @@ public class ReimbursementApprovalAction implements EsbServerlessRpcRemoteInterf String tableName = requestinfo.getRequestManager().getBillTableName(); String formDataId = dataOperateUtil.getFormDataId(String.valueOf(requestIdTemp)); String sql = "select pk,billtype from " + tableName + " where form_data_id = " + formDataId; + log.info("ReimbursementApprovalAction sql--" + sql); String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-workflow-report-serviceworkflowreport"; Map datas = dataOperateUtil.executeForQuery(sourceType, groupId, sql); @@ -56,12 +57,8 @@ public class ReimbursementApprovalAction implements EsbServerlessRpcRemoteInterf if (records.size()>0){ Map map = records.get(0); String pk = String.valueOf(map.get("pk")); - String billtype = String.valueOf(map.get("billtype")); - String usercode = dataOperateUtil.getConfig("third_usercode"); JSONObject jsonObject = new JSONObject(); - jsonObject.put("pk", pk); - jsonObject.put("usercode", usercode); - jsonObject.put("billtype", billtype); + jsonObject.put("pk_payablebill", pk); String url = ""; if ("1".equals(status)){ url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/arap/payablebill/commit"; @@ -69,7 +66,7 @@ public class ReimbursementApprovalAction implements EsbServerlessRpcRemoteInterf url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/arap/payablebill/uncommit"; } JSONObject tokenInfo = thirdInfoUtil.getToken(); - if (tokenInfo.get("success").equals("true")){ + if (tokenInfo.getString("success").equals("true")){ JSONObject data = tokenInfo.getJSONObject("data"); String token = data.getString("access_token"); Boolean result = thirdInfoUtil.transferStatusInfo(url, token, jsonObject); diff --git a/secondev-ww-action/src/main/java/com/weaver/secondev/action/info/PurchaseRequisitionInfoAction.java b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/info/PurchaseRequisitionInfoAction.java similarity index 86% rename from secondev-ww-action/src/main/java/com/weaver/secondev/action/info/PurchaseRequisitionInfoAction.java rename to secondev-ww-action/src/main/java/com/weaver/seconddev/action/info/PurchaseRequisitionInfoAction.java index 2d6e777..ddcffa8 100644 --- a/secondev-ww-action/src/main/java/com/weaver/secondev/action/info/PurchaseRequisitionInfoAction.java +++ b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/info/PurchaseRequisitionInfoAction.java @@ -1,4 +1,4 @@ -package com.weaver.secondev.action.info; +package com.weaver.seconddev.action.info; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -6,14 +6,16 @@ import com.weaver.common.base.entity.result.WeaResult; import com.weaver.ebuilder.datasource.api.enums.SourceType; import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; import com.weaver.file.ud.api.FileDownloadService; -import com.weaver.secondev.util.DataOperateUtil; -import com.weaver.secondev.util.ThirdInfoUtil; +import com.weaver.seconddev.util.DataOperateUtil; +import com.weaver.seconddev.util.ThirdInfoUtil; import com.weaver.verupgrade.interfaces.workflow.action.Action; import com.weaver.verupgrade.soa.workflow.request.RequestInfo; import lombok.extern.slf4j.Slf4j; +import okhttp3.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -53,27 +55,28 @@ public class PurchaseRequisitionInfoAction implements EsbServerlessRpcRemoteInte String tableName = requestinfo.getRequestManager().getBillTableName(); String wokflowId = requestinfo.getWorkflowid(); String formDataId = dataOperateUtil.getFormDataId(String.valueOf(requestIdTemp)); - String sql = "select * from " + tableName + " where formdataid = " + formDataId; - log.error("ReimbursementInfoAction execute sql : " + sql); + String sql = "select * from " + tableName + " where form_data_id = " + formDataId; + log.error("PurchaseRequisitionInfoAction execute sql : " + sql); String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-workflow-report-serviceworkflowreport"; Map datas = dataOperateUtil.executeForQuery(sourceType, groupId, sql); + JSONArray responseBody = new JSONArray(); JSONObject responseJson = new JSONObject(); if(String.valueOf(datas.get("status")).equals("OK")){ List> records = (List>)datas.get("records"); if (records.size()>0){ JSONObject po_praybill = new JSONObject(); String ccurrencyid = "CNY"; - String pk_org = dataOperateUtil.null2String(records.get(0).get("pk_org")); - String pk_org_v = dataOperateUtil.null2String(records.get(0).get("pk_org_v")); - String dbilldate = dataOperateUtil.null2String(records.get(0).get("dbilldate")); - String ctrantypeid = "D1"; + String pk_org = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(records.get(0).get("pk_org"))).toString(); + String pk_org_v = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(records.get(0).get("pk_org_v"))).toString(); + String dbilldate = dataOperateUtil.null2String(records.get(0).get("dbilldate"))+" 00:00:00"; + String ctrantypeid = dataOperateUtil.null2String(records.get(0).get("ctrantypeidnew")); String pk_planpsn = dataOperateUtil.getJobNum(dataOperateUtil.null2String(records.get(0).get("pk_planpsn"))).toString(); String pk_plandept = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(records.get(0).get("pk_plandept"))).toString(); String fbillstatus = dataOperateUtil.null2String(records.get(0).get("fbillstatus")); String vmemo = dataOperateUtil.null2String(records.get(0).get("vmemo")); String billmaker = dataOperateUtil.getJobNum(dataOperateUtil.null2String(records.get(0).get("billmaker"))).toString(); - String dmakedate = dataOperateUtil.null2String(records.get(0).get("dmakedate")); + String dmakedate = dataOperateUtil.null2String(records.get(0).get("dmakedate"))+" 00:00:00"; po_praybill.put("ccurrencyid", ccurrencyid); po_praybill.put("pk_org", pk_org); po_praybill.put("pk_org_v", pk_org_v); @@ -95,7 +98,7 @@ public class PurchaseRequisitionInfoAction implements EsbServerlessRpcRemoteInte return WeaResult.fail("ReimbursementInfoAction execute error--主表数据查询失败"); } List detailTableNameList = dataOperateUtil.getDetailTableName(wokflowId); - String detailTableName = detailTableNameList.get(0); + String detailTableName = detailTableNameList.get(1); String detailTableSql = "select * from " + detailTableName + " where form_data_id = " + formDataId; log.error("ReimbursementInfoAction execute sql : " + detailTableSql); Map detailDatas = dataOperateUtil.executeForQuery(sourceType, groupId, detailTableSql); @@ -112,12 +115,13 @@ public class PurchaseRequisitionInfoAction implements EsbServerlessRpcRemoteInte String vchangerate = dataOperateUtil.null2String(detailMap.get("vchangerate")); String cunitid = dataOperateUtil.null2String(detailMap.get("cunitid")); String nnum = dataOperateUtil.null2String(detailMap.get("nnum")); - String dreqdate = dataOperateUtil.null2String(detailMap.get("dreqdate")); - String dsuggestdate = dataOperateUtil.null2String(detailMap.get("dsuggestdate")); + String dreqdate = dataOperateUtil.null2String(detailMap.get("dreqdate")) + " 00:00:00"; + String dsuggestdate = dataOperateUtil.null2String(detailMap.get("dsuggestdate")) + " 00:00:00"; String pk_employee = dataOperateUtil.getJobNum(dataOperateUtil.null2String(detailMap.get("pk_employee"))).toString(); String pk_suggestsupplier = dataOperateUtil.null2String(detailMap.get("pk_suggestsupplier")); - String pk_purchaseorg = dataOperateUtil.null2String(detailMap.get("pk_purchaseorg")); + String pk_purchaseorg = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(detailMap.get("pk_purchaseorg"))).toString(); detailJson.put("pk_material", pk_material); + detailJson.put("pk_srcmaterial",pk_material); detailJson.put("castunitid", castunitid); detailJson.put("nastnum", nastnum); detailJson.put("vchangerate", vchangerate); @@ -131,12 +135,15 @@ public class PurchaseRequisitionInfoAction implements EsbServerlessRpcRemoteInte po_praybill_b.add(detailJson); } responseJson.put("po_praybill_b", po_praybill_b); - String url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/nccloud/api/pu/praybillext/add"; + responseBody.add(responseJson); + String url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/pu/praybillext/add"; JSONObject tokenInfo = thirdInfoUtil.getToken(); - if (tokenInfo.get("success").equals("true")){ + log.info("tokenInfo--"+tokenInfo); + if (tokenInfo.getString("success").equals("true")){ JSONObject data = tokenInfo.getJSONObject("data"); String token = data.getString("access_token"); - JSONObject request = thirdInfoUtil.transferInfo(url, token, responseJson); + log.info("token--"+token); + JSONObject request = thirdInfoUtil.transferInfo(url, token, responseBody); String success = request.get("success").toString(); if ("true".equals(success)){ return WeaResult.success(thirdInfoUtil.getResultMapForAction(weaverResultMap, "result", Action.SUCCESS, requestinfo.getRequestManager())); diff --git a/secondev-ww-action/src/main/java/com/weaver/secondev/action/info/ReimbursementInfoAction.java b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/info/ReimbursementInfoAction.java similarity index 76% rename from secondev-ww-action/src/main/java/com/weaver/secondev/action/info/ReimbursementInfoAction.java rename to secondev-ww-action/src/main/java/com/weaver/seconddev/action/info/ReimbursementInfoAction.java index f14dd7a..0bfeeec 100644 --- a/secondev-ww-action/src/main/java/com/weaver/secondev/action/info/ReimbursementInfoAction.java +++ b/secondev-ww-action/src/main/java/com/weaver/seconddev/action/info/ReimbursementInfoAction.java @@ -1,4 +1,4 @@ -package com.weaver.secondev.action.info; +package com.weaver.seconddev.action.info; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -7,9 +7,8 @@ import com.weaver.ebuilder.datasource.api.enums.SourceType; import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface; import com.weaver.eteams.file.client.file.FileData; import com.weaver.file.ud.api.FileDownloadService; -import com.weaver.secondev.util.DataOperateUtil; -import com.weaver.secondev.util.ThirdInfoUtil; -import com.weaver.verupgrade.file.ImageFileManager; +import com.weaver.seconddev.util.DataOperateUtil; +import com.weaver.seconddev.util.ThirdInfoUtil; import com.weaver.verupgrade.interfaces.workflow.action.Action; import com.weaver.verupgrade.soa.workflow.request.RequestInfo; import lombok.extern.slf4j.Slf4j; @@ -17,7 +16,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.io.InputStream; -import java.lang.reflect.Array; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -47,8 +45,8 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface @Override public WeaResult> execute(Map requestInfoMap) { - log.error("ReimbursementInfoAction execute start"); - log.error("ReimbursementInfoAction execute params : " + requestInfoMap); + log.info("ReimbursementInfoAction execute start"); + log.info("ReimbursementInfoAction execute params : " + requestInfoMap); try { Map weaverResultMap = new HashMap<>(); Long requestIdTemp = Long.parseLong(String.valueOf(requestInfoMap.getOrDefault("requestid", -1))); @@ -58,7 +56,7 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface String tableName = requestinfo.getRequestManager().getBillTableName(); String formDataId = dataOperateUtil.getFormDataId(String.valueOf(requestIdTemp)); String sql = "select * from " + tableName + " where form_data_id = " + formDataId; - log.error("ReimbursementInfoAction execute sql : " + sql); + log.info("ReimbursementInfoAction execute sql : " + sql); String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-workflow-report-serviceworkflowreport"; Map datas = dataOperateUtil.executeForQuery(sourceType, groupId, sql); @@ -67,15 +65,16 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface if(String.valueOf(datas.get("status")).equals("OK")){ List> records = (List>)datas.get("records"); if (records.size()>0){ - String pk_org_v = dataOperateUtil.null2String(records.get(0).get("pk_org_v")); - String pk_org = dataOperateUtil.null2String(records.get(0).get("pk_org")); + String pk_org_v = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(records.get(0).get("pk_org_v"))).toString(); + String pk_org = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(records.get(0).get("pk_org"))).toString(); String billdate = dataOperateUtil.null2String(records.get(0).get("billdate")); String busidate = dataOperateUtil.null2String(records.get(0).get("busidate")); String objtype = "3"; - String pk_tradetypeid = "D1"; +// String pk_tradetypeid = "D3"; + String pk_tradetype = dataOperateUtil.null2String(records.get(0).get("pk_tradetypenew")); String pk_busitype = "AP01"; String scomment = dataOperateUtil.null2String(records.get(0).get("scomment")); - String billmaker = dataOperateUtil.null2String(records.get(0).get("billmaker")); + String billmaker = dataOperateUtil.getJobNum(dataOperateUtil.null2String(records.get(0).get("billmaker"))).toString(); String def21 = wokflowId; String def22 = String.valueOf(requestIdTemp); String pu_org = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(records.get(0).get("pu_org"))).toString(); @@ -96,7 +95,8 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface responseJson.put("billdate", billdate); responseJson.put("busidate", busidate); responseJson.put("objtype", objtype); - responseJson.put("pk_tradetypeid", pk_tradetypeid); +// responseJson.put("pk_tradetypeid", pk_tradetypeid); + responseJson.put("pk_tradetype", pk_tradetype); responseJson.put("pk_busitype", pk_busitype); responseJson.put("scomment", scomment); responseJson.put("billmaker", billmaker); @@ -123,9 +123,9 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface } List detailTableNameList = dataOperateUtil.getDetailTableName(wokflowId); - String detailTableName = detailTableNameList.get(0); + String detailTableName = detailTableNameList.get(1); String detailTableSql = "select * from " + detailTableName + " where form_data_id = " + formDataId; - log.error("ReimbursementInfoAction execute sql : " + detailTableSql); + log.info("ReimbursementInfoAction execute sql : " + detailTableSql); Map detailDatas = dataOperateUtil.executeForQuery(sourceType, groupId, detailTableSql); if(String.valueOf(detailDatas.get("status")).equals("OK")){ List> detailRecords = (List>)detailDatas.get("records"); @@ -135,7 +135,7 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface JSONObject detailJson = new JSONObject(); Map detailMap = detailRecords.get(i); String project = dataOperateUtil.null2String(detailMap.get("project")); - String objtype = dataOperateUtil.null2String(detailMap.get("objtype")); + String objtype = "3"; String pk_deptid_v = dataOperateUtil.getDepartmentCode(dataOperateUtil.null2String(detailMap.get("pk_deptid_v"))).toString(); String pk_psndoc = dataOperateUtil.getJobNum(dataOperateUtil.null2String(detailMap.get("pk_psndoc"))).toString(); String pk_subjcode = dataOperateUtil.null2String(detailMap.get("pk_subjcode")); @@ -157,7 +157,7 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface String globalcrebit = dataOperateUtil.null2String(detailMap.get("globalcrebit")); String quantity_cr = "1"; String price = dataOperateUtil.null2String(detailMap.get("price")); - String taxcodeid = dataOperateUtil.null2String(detailMap.get("taxcodeid")); +// String taxcodeid = dataOperateUtil.null2String(detailMap.get("taxcodeid")); detailJson.put("project", project); detailJson.put("objtype", objtype); detailJson.put("pk_deptid_v", pk_deptid_v); @@ -181,44 +181,58 @@ public class ReimbursementInfoAction implements EsbServerlessRpcRemoteInterface detailJson.put("globalcrebit", globalcrebit); detailJson.put("quantity_cr", quantity_cr); detailJson.put("price", price); - detailJson.put("taxcodeid", taxcodeid); +// detailJson.put("taxcodeid", taxcodeid); items.add(detailJson); } responseJson.put("items", items); String url = dataOperateUtil.getConfig("ip_address") + "/nccloud/api/arap/payablebill/insert"; JSONObject tokenInfo = thirdInfoUtil.getToken(); - if (tokenInfo.get("success").equals("true")){ + if (tokenInfo.getString("success").equals("true")){ JSONObject data = tokenInfo.getJSONObject("data"); String token = data.getString("access_token"); JSONObject request = thirdInfoUtil.transferInfo(url, token, responseJson); - String success = request.get("success").toString(); + String success = request.getString("success"); if ("true".equals(success)){ JSONObject data1 = request.getJSONObject("data"); String pk_bill = data1.getString("pk_bill"); List xgfjList = Arrays.asList(xgfj.split(",")); - for (String fileId : xgfjList) { - FileData fileData = fileDownloadService.downloadFileLazy(Long.valueOf(fileId)); - InputStream inputStream = fileData.getInputStream(); - String fileName = dataOperateUtil.getFileName(fileId); - Boolean isUpdate = thirdInfoUtil.updateFile(pk_bill, fileName, inputStream); - if (!isUpdate){ - log.info("updateFile error:上传附件失败"); - return WeaResult.fail("上传附件失败"); + log.info("xgfjList--" + xgfjList); + if (xgfjList.size()>0){ + for (String fileId : xgfjList) { + FileData fileData = fileDownloadService.downloadFileLazy(Long.valueOf(fileId)); + InputStream inputStream = fileData.getInputStream(); + String fileName = dataOperateUtil.getFileName(fileId); + Boolean isUpdate = thirdInfoUtil.updateFile(pk_bill, fileName, inputStream); + if (!isUpdate){ + log.info("updateFile error:上传附件失败"); + return WeaResult.fail("上传附件失败"); + } } } + String updateSql = " update " + tableName + " set pk = '" + pk_bill + "' where form_data_id = " + formDataId; + log.info("updateSql--" + updateSql); + Map updateStatus = dataOperateUtil.executeForQuery(sourceType, groupId, updateSql); + if(String.valueOf(updateStatus.get("status")).equals("OK")){ + return WeaResult.success(thirdInfoUtil.getResultMapForAction(weaverResultMap, "result", Action.SUCCESS, requestinfo.getRequestManager())); + }else { + log.info("ReimbursementInfoAction error:{} pk更新失败"); + return WeaResult.fail("pk更新失败"); + } }else { - log.info("transferInfo error:{}", request); - return WeaResult.fail("推送表单数据失败"); + log.info("transferInfo error:{}"+ request); + return WeaResult.fail("推送表单数据失败:"+request.getString("message")); } + }else { + log.info("getToken error:{} token获取失败"); + return WeaResult.fail("token获取失败"); } - return WeaResult.success(thirdInfoUtil.getResultMapForAction(weaverResultMap, "result", Action.SUCCESS, requestinfo.getRequestManager())); }else { - log.info("getToken error:明细表为空" ); + log.info("ReimbursementInfoAction error:明细表为空" ); return WeaResult.fail("明细表为空"); } }else { - log.info("getToken error:查询数据失败"); - return WeaResult.fail("查询数据失败"); + log.info("ReimbursementInfoAction error:明细表数据查询数据失败"); + return WeaResult.fail("明细表数据查询数据失败"); } } catch (Exception e) { log.error("ReimbursementInfoAction execute error", e); diff --git a/secondev-ww-action/src/main/java/com/weaver/secondev/util/DataOperateUtil.java b/secondev-ww-action/src/main/java/com/weaver/seconddev/util/DataOperateUtil.java similarity index 95% rename from secondev-ww-action/src/main/java/com/weaver/secondev/util/DataOperateUtil.java rename to secondev-ww-action/src/main/java/com/weaver/seconddev/util/DataOperateUtil.java index 7736346..484e0f4 100644 --- a/secondev-ww-action/src/main/java/com/weaver/secondev/util/DataOperateUtil.java +++ b/secondev-ww-action/src/main/java/com/weaver/seconddev/util/DataOperateUtil.java @@ -1,4 +1,4 @@ -package com.weaver.secondev.util; +package com.weaver.seconddev.util; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -33,7 +33,7 @@ public class DataOperateUtil { String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-basic-schedule-service"; try { - String sql = "select table_name from ecology10.dbo.form_table where form_id in (select id from ecology10.dbo.sub_form where form_id in (select relatekey from ecology10.dbo.wfp_relateform where workflowid = '"+workflowId+"'))"; + String sql = "select table_name from ecology10.dbo.form_table where form_id in (select id from ecology10.dbo.sub_form where form_id in (select relatekey from ecology10.dbo.wfp_relateform where workflowid = '"+workflowId+"')) and delete_type = 0 "; log.info("getDetailFormId sql-->" + sql); Map datas = executeForQuery(sourceType, groupId, sql); // log.info("getConfig datas-->" + datas); @@ -71,7 +71,7 @@ public class DataOperateUtil { } public String getJobNum(String jobId){ - String sql = "select job_num from eteams.dbo.job where id = " + jobId; + String sql = "select job_num from eteams.dbo.employee where id = " + jobId; String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-hrm-service"; Map stringObjectMap = executeForQuery(sourceType, groupId, sql); @@ -87,6 +87,7 @@ public class DataOperateUtil { public String getFileName(String fileId){ String sql = " select name from fileobj where id = " + fileId; + log.info("getFileName sql--" + sql); String sourceType = String.valueOf(SourceType.LOGIC); String groupId = "weaver-file-service"; Map stringObjectMap = executeForQuery(sourceType, groupId, sql); @@ -126,6 +127,7 @@ public class DataOperateUtil { if(String.valueOf(datas.get("status")).equals("OK")){ List> records = (List>)datas.get("records"); Map map = records.get(0); +// log.info("getConfig config_value--"+map.get("config_value").toString()); return map.get("config_value").toString(); }else { log.info("getConfig status-->"+ datas.get("status")); @@ -145,7 +147,7 @@ public class DataOperateUtil { executeSqlEntity.setSourceType(SourceType.valueOf(sourceType)); // log.info("executeForQuery executeSqlEntity-->"+executeSqlEntity.getSql()+"-->"+executeSqlEntity.getGroupId()+"-->"+executeSqlEntity.getSourceType()); Map datas = dataSetService.executeSql(executeSqlEntity); - log.info("executeForQuery datas-->" + datas); +// log.info("executeForQuery datas-->" + datas); TenantRpcContext.removeTargetTenantKey(); return datas; } diff --git a/secondev-ww-action/src/main/java/com/weaver/secondev/util/ThirdInfoUtil.java b/secondev-ww-action/src/main/java/com/weaver/seconddev/util/ThirdInfoUtil.java similarity index 69% rename from secondev-ww-action/src/main/java/com/weaver/secondev/util/ThirdInfoUtil.java rename to secondev-ww-action/src/main/java/com/weaver/seconddev/util/ThirdInfoUtil.java index e260b8e..30a536d 100644 --- a/secondev-ww-action/src/main/java/com/weaver/secondev/util/ThirdInfoUtil.java +++ b/secondev-ww-action/src/main/java/com/weaver/seconddev/util/ThirdInfoUtil.java @@ -1,4 +1,5 @@ -package com.weaver.secondev.util; +package com.weaver.seconddev.util; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import cn.hutool.http.HttpRequest; import com.weaver.verupgrade.workflow.request.RequestManager; @@ -25,22 +26,31 @@ public class ThirdInfoUtil { @Autowired private DataOperateUtil dataOperateUtil; - public JSONObject getToken(){ + public JSONObject getToken() throws IOException { String ipAddress = dataOperateUtil.getConfig("ip_address"); String bizCenter = dataOperateUtil.getConfig("biz_center"); String grantType = dataOperateUtil.getConfig("grant_type"); String clientId = dataOperateUtil.getConfig("client_id"); String clientSecret = dataOperateUtil.getConfig("client_secret"); String signature = dataOperateUtil.getConfig("signature"); - String url = ipAddress + "/nccloud/opm/accesstoken?grant_type=" + grantType + "&client_id=" + clientId + "&client_secret=" + clientSecret + "&signature=" + signature + "&biz_center=" + bizCenter; - String body = HttpRequest.post(url) - .header("Content-Type", "application/x-www-form-urlencoded") - .execute().body(); - JSONObject result = JSONObject.parseObject(body); + OkHttpClient client = new OkHttpClient().newBuilder() + .build(); + MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded"); + RequestBody body = RequestBody.create(mediaType, "biz_center="+bizCenter+"&grant_type="+grantType+"&client_id="+clientId+"&signature="+signature); + Request request = new Request.Builder() + .url(ipAddress + "/nccloud/opm/accesstoken?client_secret="+clientSecret) + .method("POST", body) + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .build(); + Response response = client.newCall(request).execute(); + String responseBody = response.body().string(); + log.info("response.body().string()--"+responseBody); + JSONObject result = JSONObject.parseObject(responseBody); return result; } public Boolean transferStatusInfo(String url, String token, JSONObject body){ + log.info("transferStatusInfo body--"+body); String request = HttpRequest.post(url) .header("Content-Type", "application/json") .header("client_id", dataOperateUtil.getConfig("client_id")) @@ -50,12 +60,28 @@ public class ThirdInfoUtil { .header("repeat_check", "y") .body(String.valueOf(body)) .execute().body(); - log.info("transferInfo request:{}", request); + log.info("transferInfo request:{}"+ request); boolean result = Boolean.parseBoolean(JSONObject.parseObject(request).get("success").toString()); return result; } public JSONObject transferInfo(String url, String token, JSONObject body){ + log.info("transferInfo body--"+body); + String request = HttpRequest.post(url) + .header("Content-Type", "application/json") + .header("client_id", dataOperateUtil.getConfig("client_id")) + .header("signature", dataOperateUtil.getConfig("signature")) + .header("access_token", token) + .header("ucg_flag", "Y") + .header("repeat_check", "y") + .body(String.valueOf(body)) + .execute().body(); + log.info("transferInfo request:{}" + request); + return JSONObject.parseObject(request); + } + + public JSONObject transferInfo(String url, String token, JSONArray body){ + log.info("transferInfo body--"+body); String request = HttpRequest.post(url) .header("Content-Type", "application/json") .header("client_id", dataOperateUtil.getConfig("client_id")) @@ -65,14 +91,15 @@ public class ThirdInfoUtil { .header("repeat_check", "y") .body(String.valueOf(body)) .execute().body(); - log.info("transferInfo request:{}", request); + log.info("transferInfo request:{}" + request); return JSONObject.parseObject(request); } public Boolean updateFile(String parentPath,String imageFileName, InputStream inputStream) throws IOException { + log.info("updateFile start!"); OkHttpClient client = new OkHttpClient().newBuilder().build(); MediaType mediaType = MediaType.parse("text/plain"); - String url = dataOperateUtil.null2String(dataOperateUtil.getConfig("oa_address")) + "/service/FileUpLoad"; + String url = dataOperateUtil.null2String(dataOperateUtil.getConfig("ip_address")) + "/service/FileUpLoad"; RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM) .addFormDataPart("file1",imageFileName, // RequestBody.create(MediaType.parse("application/octet-stream"), new File("D:\\works\\fwsz\\管委会\\test.pdf"))) @@ -88,6 +115,7 @@ public class ThirdInfoUtil { Response response = client.newCall(request).execute(); String string = response.body().string(); JSONObject result = JSONObject.parseObject(string); + log.info("updateFile result--"+result); return result.getBoolean("success"); }