From a69ea3cf4e427d9a42f3a346035bf7edaf0c4c2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=AD=A3=40=E7=94=A8=E5=8F=8B?= Date: Thu, 22 May 2025 19:56:30 +0800 Subject: [PATCH] =?UTF-8?q?5=E5=8D=95=E6=8D=AE=E6=8E=A8=E9=80=81=E9=94=90?= =?UTF-8?q?=E5=88=B6=5FV2=5Fsdlizheng?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pm/AfterApproceRuleSyncRZWMSProcess.java | 77 +++++++++++++------ .../rule/AfterSigningSynchronizeRuleRZ.java | 43 +++++++---- .../bp/rule/AfterApproveRuleSyncRZWMS.java | 45 ++++++++--- .../rule/AfterApprovingSynchronizeRuleRZ.java | 58 +++++++++----- .../AfterApprovingSynchronizeRuleRZ.java | 36 ++++----- .../uapbd/util/ThirdPartyPostRequestUtil.java | 4 +- 6 files changed, 175 insertions(+), 88 deletions(-) diff --git a/arap/src/private/nc/bs/sc/m61/referred/rule/pm/AfterApproceRuleSyncRZWMSProcess.java b/arap/src/private/nc/bs/sc/m61/referred/rule/pm/AfterApproceRuleSyncRZWMSProcess.java index fd22d1c..717ba68 100644 --- a/arap/src/private/nc/bs/sc/m61/referred/rule/pm/AfterApproceRuleSyncRZWMSProcess.java +++ b/arap/src/private/nc/bs/sc/m61/referred/rule/pm/AfterApproceRuleSyncRZWMSProcess.java @@ -51,40 +51,69 @@ public class AfterApproceRuleSyncRZWMSProcess implements IRule { } private void buildSyncData(SCOrderHeaderVO head, SCOrderItemVO[] bodys, JSONArray details) throws BusinessException { - + String vbillcode = head.getVbillcode(); + String pkOrder = head.getPk_order(); for (SCOrderItemVO body : bodys) { JSONObject singleObj = new JSONObject(); + + //htmx_wbid varchar(100) 第三方系统主键id 必填 + singleObj.put("htmx_wbid", pkOrder+"_"+body.getPk_order_b()); + + //cght_wbid varchar(100) 第三方系统合同ID 必填 + singleObj.put("cght_wbid", pkOrder); + //操作状态 1新增/修改、2删除(删除时只需上传wbid) singleObj.put("operate", 1); - // 单据类型 - singleObj.put("cgjh_wbid", body.getVsrctrantype()); // 第三方系统采购计划id - singleObj.put("cgxh", body.getVsrcrowno()); // 采购计划序号 - singleObj.put("cgbh", body.getVsrccode()); // 采购计划编号 - singleObj.put("bzsm", body.getVbmemo()); // 备注说明 - singleObj.put("cght_wbid", head.getVbillcode()); // 第三方系统合同ID - singleObj.put("htxsbh", head.getVbillcode()); // 合同编号 - // 供应商 - singleObj.put("zbxx_gycs_wbid", transferCodeByPk(SupplierVO.getDefaultTableName(), SupplierVO.CODE, SupplierVO.PK_SUPPLIER, head.getPk_supplier())); // 第三方系统厂商id - // 仓库 - singleObj.put("sdck", transferCodeByPk(StordocVO.getDefaultTableName(), StordocVO.CODE, StordocVO.PK_STORDOC, body.getPk_recvstordoc())); // 送达仓库 - // 物料 - singleObj.put("wlbm_wbid", transferCodeByPk(MaterialVO.getDefaultTableName(), MaterialVO.CODE, MaterialVO.PK_MATERIAL, body.getPk_material())); // 第三方系统材料id - UFDouble nqtunitnum = body.getNqtunitnum() == null ? UFDouble.ZERO_DBL : body.getNqtunitnum(); - singleObj.put("cgsl", nqtunitnum.getDouble()); // 采购数量 - if (body.getDplanarrvdate() != null) { - singleObj.put("jhrq", body.getDplanarrvdate().toString()); // 交货日期 - } + // zbxx_cglb_wbid varchar(100) 第三方系统采购类别id 必填 + singleObj.put("zbxx_cglb_wbid", head.getVtrantypecode()); + + //zbxx_cgrq datetime 采购日期 必填 表头采购日期 if (head.getDbilldate() != null) { singleObj.put("zbxx_cgrq", head.getDbilldate().toString()); // 采购日期 } + + //htxsbh varchar(100) 合同编号 + singleObj.put("htxsbh", head.getVbillcode()); + + // 合同序号 + singleObj.put("htxh", body.getCrowno()); + + // 第三方系统材料id + singleObj.put("wlbm_wbid", body.getPk_material()); + + // 采购数量 + UFDouble nqtunitnum = body.getNqtunitnum() == null ? UFDouble.ZERO_DBL : body.getNqtunitnum(); + singleObj.put("cgsl", nqtunitnum.getDouble()); + + // 采购日期 if (head.getDbilldate() != null) { - singleObj.put("cgrq", head.getDbilldate().toString()); // 采购日期 + singleObj.put("cgrq", head.getDbilldate().toString()); } - singleObj.put("htxh", body.getCrowno()); // 合同序号 - singleObj.put("zbxx_cgy_wbid", transferCodeByPk(PsndocVO.getDefaultTableName(), PsndocVO.CODE, PsndocVO.PK_PSNDOC, head.getCemployeeid())); // 第三方系统采购员id + // 第三方系统厂商id + singleObj.put("zbxx_gycs_wbid", head.getPk_supplier()); + //zbxx_cgy_wbid varchar(100) 第三方系统采购员id + singleObj.put("zbxx_cgy_wbid", head.getCemployeeid()); + + // 交货日期 + if (body.getDplanarrvdate() != null) { + singleObj.put("jhrq", body.getDplanarrvdate().toString()); + } + + singleObj.put("cgjh_wbid", body.getVsrctrantype()); // 第三方系统采购计划id + singleObj.put("cgxh", body.getVsrcrowno()); // 采购计划序号 + singleObj.put("cgbh", body.getVsrccode()); // 采购计划编号 + + singleObj.put("sdck", body.getPk_recvstordoc()); // 送达仓库 + + singleObj.put("bzsm", body.getVbmemo()); // 备注说明 + + //sdbj int 锁定标记 必填 上位单据审核传输,默认=1 + singleObj.put("sdbj", 1); + //qfbj int 签发标记 必填 上位单据审核传输,默认=1 + singleObj.put("qfbj", 1); details.add(singleObj); } @@ -96,7 +125,7 @@ public class AfterApproceRuleSyncRZWMSProcess implements IRule { String pkOrg = aggvo.getParentVO().getPk_org(); Integer fstatusflag = aggvo.getParentVO().getFstatusflag(); String orgCode = transferCodeByPk(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg); - if ("30401".equals(orgCode) && 3 == fstatusflag) { + if ("C022".equals(orgCode) && 3 == fstatusflag) { aggvoList.add(aggvo); } } @@ -128,6 +157,8 @@ public class AfterApproceRuleSyncRZWMSProcess implements IRule { JSONObject resultObj = JSONObject.parseObject(result); if ("false".equals(resultObj.getString("success"))) { throw new BusinessException("RZMOM同步失败,原因:" + resultObj.getString("msg")); + }else{ + log.error("RZMOM同步成功,返回参数【"+resultObj.toJSONString()+"】"); } } diff --git a/ic/src/private/nc/bs/ic/m4c/sign/rule/AfterSigningSynchronizeRuleRZ.java b/ic/src/private/nc/bs/ic/m4c/sign/rule/AfterSigningSynchronizeRuleRZ.java index 52a920d..0fe84f9 100644 --- a/ic/src/private/nc/bs/ic/m4c/sign/rule/AfterSigningSynchronizeRuleRZ.java +++ b/ic/src/private/nc/bs/ic/m4c/sign/rule/AfterSigningSynchronizeRuleRZ.java @@ -60,7 +60,7 @@ public class AfterSigningSynchronizeRuleRZ implements IRule { for(SaleOutVO aggvo:saleOutVOS){ String pkOrg = aggvo.getHead().getPk_org(); String orgCode = transferCodeByPk(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg); - if("30401".equals(orgCode)){ + if("C022".equals(orgCode)){ aggvoList.add(aggvo); } } @@ -92,6 +92,8 @@ public class AfterSigningSynchronizeRuleRZ implements IRule { JSONObject resultObj = JSONObject.parseObject(result); if("false".equals(resultObj.getString("success"))){ throw new BusinessException("RZMOM同步失败,原因:"+resultObj.getString("msg")); + }else{ + log.error("RZMOM同步成功,返回参数【"+resultObj.toJSONString()+"】"); } } @@ -100,7 +102,7 @@ public class AfterSigningSynchronizeRuleRZ implements IRule { String vbillcode = head.getVbillcode();//单据号 String vtrantypecode = head.getVtrantypecode();//出入库类型编码 //部门 - String cdptCode =transferCodeByPk(DeptVO.getDefaultTableName(), DeptVO.CODE,DeptVO.PK_DEPT,head.getCdptid()); +// String cdptCode =transferCodeByPk(DeptVO.getDefaultTableName(), DeptVO.CODE,DeptVO.PK_DEPT,head.getCdptid()); for(SaleOutBodyVO body:bodys){ JSONObject singleObj = new JSONObject(); @@ -111,31 +113,38 @@ public class AfterSigningSynchronizeRuleRZ implements IRule { String casscustid = body.getCasscustid();//客户 String cbodywarehouseid = body.getCbodywarehouseid();//仓库 UFDate dbizdate = body.getDbizdate();//出库日期 + singleObj.put("wbid",cgeneralhid+"_"+cgeneralbid+"_"+vtrantypecode);//第三方系统主键id + singleObj.put("wbpid",cgeneralhid);//第三方系统分组id + singleObj.put("operate",1);//operate int 操作状态 必填 1新增/修改、2删除(删除时只需上传wbid) + singleObj.put("djly",1013);//djly varchar(20) 来源单据 singleObj.put("djbh_id",cgeneralhid+"_"+cgeneralbid);//单据id singleObj.put("djbh",vbillcode);//单据编号 singleObj.put("djxh",crowno);//单据序号 singleObj.put("djrq",dbizdate.toString());//单据日期--出库日期 - singleObj.put("wbid",cgeneralhid);//第三方系统主键id - singleObj.put("wbpid",cgeneralbid);//第三方系统分组id + + //第三方系统物料名称id--编码 - singleObj.put("wlbm_wbid",transferCodeByPk(MaterialVO.getDefaultTableName(),MaterialVO.CODE,MaterialVO.PK_MATERIAL,cmaterialvid)); + singleObj.put("wlbm_wbid",cmaterialvid); + + //单据数量 + singleObj.put("djsl",body.getNshouldassistnum().getDouble()); + //第三方系统客户id--编码 - singleObj.put("khbh_wbid",transferCodeByPk(CustomerVO.getDefaultTableName(),CustomerVO.CODE,CustomerVO.PK_CUSTOMER,casscustid)); - //送达地点-code - String storeCode = transferCodeByPk(StordocVO.getDefaultTableName(), StordocVO.CODE, StordocVO.PK_STORDOC, cbodywarehouseid); - singleObj.put("sddd",storeCode); - //第三方系统仓库id -code - singleObj.put("ckbh_wbid",storeCode); - //部门 - singleObj.put("bzsm",cdptCode); - //签发标记 - singleObj.put("qfbj",1); + singleObj.put("khbh_wbid",casscustid); //订单编号 singleObj.put("ddbh",body.getVsourcebillcode()); //订单序号 singleObj.put("ddxh",body.getVsourcerowno()); - //单据数量 - singleObj.put("djsl",body.getNshouldassistnum().getDouble()); + //送达地点-code + singleObj.put("sddd",cbodywarehouseid); + //第三方系统仓库id -code + singleObj.put("ckbh_wbid",cbodywarehouseid); + //部门 + singleObj.put("bzsm",head.getCdptid()); + //签发标记 + singleObj.put("qfbj",1); + + //操作状态 1新增/修改、2删除(删除时只需上传wbid) singleObj.put("operate",1); details.add(singleObj); diff --git a/mmpac/src/private/nc/bs/mmpac/pickm/bp/rule/AfterApproveRuleSyncRZWMS.java b/mmpac/src/private/nc/bs/mmpac/pickm/bp/rule/AfterApproveRuleSyncRZWMS.java index a3913b1..5e3db68 100644 --- a/mmpac/src/private/nc/bs/mmpac/pickm/bp/rule/AfterApproveRuleSyncRZWMS.java +++ b/mmpac/src/private/nc/bs/mmpac/pickm/bp/rule/AfterApproveRuleSyncRZWMS.java @@ -48,22 +48,47 @@ public class AfterApproveRuleSyncRZWMS implements IRule { } private void buildSyncData(PickmHeadVO head, PickmItemVO[] bodys, JSONArray details) throws BusinessException { + Integer fsourcetype = head.getFsourcetype(); + if(fsourcetype!=0){ + return; + } for (PickmItemVO body : bodys) { JSONObject singleObj = new JSONObject(); String vsourcebillcode = head.getVsourcebillcode(); - String wlbm_wbid = transferCodeByPk(MaterialVO.getDefaultTableName(), MaterialVO.CODE, MaterialVO.PK_MATERIAL, body.getCbmaterialvid()); - String scgx_wbid = transferCodeByPk(RcVO.getDefaultTableName(), RcVO.VRCCODE, RcVO.CRCID, head.getVstdprocid()); - String wbid = vsourcebillcode + "_" + wlbm_wbid + "_" + scgx_wbid; + String wlbm_wbid =body.getCbmaterialvid(); + + String scgx_wbid =head.getVstdprocid(); + //wbid varchar (200) 第三方系统主键id + singleObj.put("wbid", head.getCpickmid()+"_"+body.getCpickm_bid()); // 第三方系统主键id + //wbzbid varchar (200) 第三方系统分组id + singleObj.put("wbzbid", head.getCpickmid()); + //operate int 操作状态 必填 1新增/修改、2删除(删除时只需上传wbid) + singleObj.put("operate", "1"); + + //wbqjpx varchar(2000) 全局排序 必填 BOM表物料行号 + singleObj.put("wbqjpx", body.getVrowno()); + + //scjh_wbid varchar(100) 第三方系统生产计划ID 必填 生产计划号外部ID,一般ERP系统的生产订单号。 + singleObj.put("scjh_wbid", head.getCsourcebillid()); + + //jhxh numeric(5) 计划序号 -生产订单行号 + singleObj.put("jhxh", head.getVsourcebillrowno()); + + singleObj.put("wlbm_wbid", wlbm_wbid); // 第三方系统材料id + + //bomlx int BOM类型 必填 默认=0,即传入生产BOM(1为包装BOM)。 + singleObj.put("bomlx", 0); - singleObj.put("scgx_wbid", scgx_wbid); // 第三方系统使用工序id - singleObj.put("scjh_wbid", vsourcebillcode); // 第三方系统生产计划ID singleObj.put("dwyl", body.getNplanoutastnum().getDouble()); // 单位用量 singleObj.put("djyl", body.getNplanoutastnum().getDouble()); // 单据用量 singleObj.put("clyl", body.getNplanoutastnum().getDouble()); // 材料用量 - singleObj.put("wlbm_wbid", wlbm_wbid); // 第三方系统材料id - singleObj.put("wbid", wbid); // 第三方系统主键id - singleObj.put("operate", "1"); + String rccode = transferCodeByPk(RcVO.getDefaultTableName(), RcVO.VRCCODE, RcVO.CRCID, head.getVstdprocid()); + singleObj.put("scgx_wbid", rccode); // 第三方系统使用工序id + //sdbj int 锁定标记 必填 默认1:正常业务ERP审核后,传输至锐制MOM + singleObj.put("sdbj", 1); + //shbj int 审核标记 必填 默认1:正常业务ERP审核后,传输至锐制MOM + singleObj.put("shbj", 1); details.add(singleObj); } @@ -74,7 +99,7 @@ public class AfterApproveRuleSyncRZWMS implements IRule { for (AggPickmVO aggvo : aggPickmVOS) { String pkOrg = aggvo.getParentVO().getPk_org(); String orgCode = transferCodeByPk(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg); - if ("30401".equals(orgCode)) { + if ("C022".equals(orgCode)) { aggvoList.add(aggvo); } } @@ -106,6 +131,8 @@ public class AfterApproveRuleSyncRZWMS implements IRule { if (resultObj == null || !"true".equals(resultObj.getString("success"))) { String errorMsg = resultObj == null ? "接口返回为空" : resultObj.getString("msg"); throw new BusinessException("RZ同步失败,原因:" + errorMsg); + }else{ + log.error("RZMOM同步成功,返回参数【"+resultObj.toJSONString()+"】"); } } diff --git a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApprovingSynchronizeRuleRZ.java b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApprovingSynchronizeRuleRZ.java index c604331..e252a75 100644 --- a/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApprovingSynchronizeRuleRZ.java +++ b/mmpac/src/private/nc/bs/mmpac/pmo/pac0002/bp/rule/AfterApprovingSynchronizeRuleRZ.java @@ -61,7 +61,7 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { String pkOrg = aggvo.getParentVO().getPk_org(); Integer fbillstatus = aggvo.getParentVO().getFbillstatus(); String orgCode = transferCodeByPk(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg); - if ("30401".equals(orgCode)&&1==fbillstatus) { + if ("C022".equals(orgCode) && 1 == fbillstatus) { aggvoList.add(aggvo); } } @@ -100,6 +100,8 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { JSONObject resultObj = JSONObject.parseObject(result); if ("false".equals(resultObj.getString("success"))) { throw new BusinessException("RZMOM同步失败,原因:" + resultObj.getString("msg")); + }else{ + log.error("RZMOM同步成功,返回参数【"+resultObj.toJSONString()+"】"); } } @@ -112,41 +114,59 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { for (PMOItemVO body : bodys) { JSONObject detailItem = new JSONObject(); // jhmx_wbid varchar(100) 第三方系统主键id 必填 上位系统后台唯一ID - detailItem.put("jhmx_wbid", head.getCpmohid()); - detailItem.put("scbh", vbillcode); - detailItem.put("scjh_wbid", vbillcode); - //jhxh numeric(5) 计划序号 必填 生产订单的产品行号,有按实际。 - //若无默认1。 - detailItem.put("scjh_wbid", body.getVrowno()); - detailItem.put("jhbhzdsc", 1);//如果直接把第三方系统的编号作为我们的计划编号传0,如果我们系统自己取号则传1。 + detailItem.put("jhmx_wbid", head.getCpmohid() + "_" + body.getCmoid()); +//计划ID 必填 用于标识哪些数据属于同一个生产计划下 cpmohid + detailItem.put("scjh_wbid", head.getCpmohid()); + +// 操作状态 必填 1新增/修改、2删除(删除时只需上传wbid) detailItem.put("operate", 1); + // 计划编号 必填 前台计划编号 + detailItem.put("jhbh", vbillcode); + //jhxh numeric(5) 计划序号 必填 生产订单的产品行号,有按实际。 + detailItem.put("jhxh", body.getVrowno()); // 第三方系统计划类别id detailItem.put("jhlb_wbid", head.getVtrantypecode()); + + + // 第三方系统产品ID 物料ID - detailItem.put("wlbm_wbid", transferCodeByPk(MaterialVO.getDefaultTableName(), MaterialVO.CODE, MaterialVO.PK_MATERIAL, body.getCmaterialvid())); +// detailItem.put("wlbm_wbid", transferCodeByPk(MaterialVO.getDefaultTableName(), MaterialVO.CODE, MaterialVO.PK_MATERIAL, body.getCmaterialvid())); + detailItem.put("wlbm_wbid", body.getCmaterialvid()); // 预计开工日期 - if(body.getTplanstarttime()!=null){ + if (body.getTplanstarttime() != null) { detailItem.put("sxrq", body.getTplanstarttime().toString()); } // 预计完工日期 - if(body.getTplanendtime()!=null){ + if (body.getTplanendtime() != null) { detailItem.put("wcrq", body.getTplanendtime().toString()); } +// bzsm varchar(400) 备注说明 + detailItem.put("bzsm", body.getVnote()); +// qfbj int 签发标记 默认0;上位ERP签发后传MOM时,签发仍=0; + detailItem.put("qfbj", body.getFitemstatus()); // 计划产出数量 detailItem.put("jhsl", body.getNmmastnum().getDouble()); + //jhlx int 计划类型 必填 0成品入库、1半成品入库 + //有销售订单号的默认为0;属于零部件生产计划的默认为1; +// detailItem.put("jhlx", body.getVsalebillcode() == null ? 1 : 0); + detailItem.put("jhlx", 1); // 入库仓库 - detailItem.put("sdck", transferCodeByPk(StordocVO.getDefaultTableName(), StordocVO.CODE, StordocVO.PK_STORDOC, body.getCinwarehouseid())); - detailItem.put("wlzdycs01", transferCodeByPk(StordocVO.getDefaultTableName(), StordocVO.CODE, StordocVO.PK_STORDOC, body.getCinwarehouseid())); +// detailItem.put("sdck", transferCodeByPk(StordocVO.getDefaultTableName(), StordocVO.CODE, StordocVO.PK_STORDOC, body.getCinwarehouseid())); + detailItem.put("sdck", body.getCinwarehouseid()); +// detailItem.put("wlzdycs01", transferCodeByPk(StordocVO.getDefaultTableName(), StordocVO.CODE, StordocVO.PK_STORDOC, body.getCinwarehouseid())); +// detailItem.put("wlzdycs01", body.getCinwarehouseid()); // 工作中心 生产部门ID - detailItem.put("scgc_wbid", transferCodeByPk(DeptVO.getDefaultTableName(), DeptVO.CODE, DeptVO.PK_DEPT, body.getCdeptid())); - // 订单序号 - detailItem.put("ddbh", body.getVsalebillcode()); - // 订单序号 - detailItem.put("khddh", null); - detailItem.put("ddxh", 1); +// detailItem.put("scgc_wbid", transferCodeByPk(DeptVO.getDefaultTableName(), DeptVO.CODE, DeptVO.PK_DEPT, body.getCdeptid())); + detailItem.put("scgc_wbid", body.getCdeptid()); + // 备注说明 detailItem.put("bzsm", body.getVnote()); + //zdscjhlyb int 自动生成计划来源表 必填 默认传1 1 + detailItem.put("zdscjhlyb", 1); + //如果直接把第三方系统的编号作为我们的计划编号传0,如果我们系统自己取号则传1。 + detailItem.put("jhbhzdsc", 0); + // 项目编号 detailItem.put("wlzdycs06", body.getVdef1()); details.add(detailItem); diff --git a/pu/src/private/nc/bs/pu/m21/action/rule/approve/AfterApprovingSynchronizeRuleRZ.java b/pu/src/private/nc/bs/pu/m21/action/rule/approve/AfterApprovingSynchronizeRuleRZ.java index cf80a18..cf0d68f 100644 --- a/pu/src/private/nc/bs/pu/m21/action/rule/approve/AfterApprovingSynchronizeRuleRZ.java +++ b/pu/src/private/nc/bs/pu/m21/action/rule/approve/AfterApprovingSynchronizeRuleRZ.java @@ -65,7 +65,7 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { String pkOrg = aggvo.getHVO().getPk_org(); Integer forderstatus = aggvo.getHVO().getForderstatus(); String orgCode = transferCodeByPk(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg); - if ("30401".equals(orgCode)&& 3==forderstatus) { + if ("C022".equals(orgCode) && 3 == forderstatus) { aggvoList.add(aggvo); } } @@ -109,6 +109,8 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { if ("false".equals(resultObj.getString("success"))) { throw new BusinessException("RZMOM同步失败,原因:" + resultObj.getString("msg")); + } else { + log.error("RZMOM同步成功,返回参数【" + resultObj.toJSONString() + "】"); } } @@ -129,14 +131,17 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { UFDate dbilldate = item.getDbilldate(); // 设置订单基本信息 // 第三方系统表体主键id - detailItem.put("htmx_wbid", item.getPk_order_b()); + detailItem.put("htmx_wbid", head.getPk_order() + "_" + item.getPk_order_b()); //第三方系统合同ID - detailItem.put("cght_wbid", head.getVbillcode()); + detailItem.put("cght_wbid", head.getPk_order()); //操作状态 1新增/修改、2删除(删除时只需上传wbid) detailItem.put("operate", OPERATION_ADD); + //zbxx_cglb_wbid varchar(100) 第三方系统采购类别id 必填 维护对应关系 + detailItem.put("zbxx_cglb_wbid", head.getVtrantypecode()); + + //zbxx_cgrq datetime 采购日期 必填 表头采购日期 + detailItem.put("zbxx_cgrq", head.getDbilldate().toString()); -// detailItem.put("zbxx_cglb_wbid", null); -// detailItem.put("zbxx_cglx", DEFAULT_PURCHASE_TYPE); // 设置合同信息 // 合同编号 必填 例如:采购订单编号:1001 @@ -145,20 +150,19 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { detailItem.put("htxh", item.getCrowno()); // 设置物料信息 - detailItem.put("wlbm_wbid",transferCodeByPk(MaterialVO.getDefaultTableName(),MaterialVO.CODE,MaterialVO.PK_MATERIAL,item.getPk_material())); + detailItem.put("wlbm_wbid", item.getPk_material()); // 设置数量信息 - UFDouble nastnum = item.getNastnum()==null?UFDouble.ZERO_DBL:item.getNastnum(); + UFDouble nastnum = item.getNastnum() == null ? UFDouble.ZERO_DBL : item.getNastnum(); detailItem.put("cgsl", nastnum.getDouble()); - //采购日期 必填 明细行的采购日期 if (dbilldate != null) { detailItem.put("cgrq", dbilldate.toString()); } - // 设置供应商和采购员信息 - detailItem.put("zbxx_gycs_wbid", transferCodeByPk(SupplierVO.getDefaultTableName(),SupplierVO.CODE,SupplierVO.PK_SUPPLIER,head.getPk_supplier())); - detailItem.put("zbxx_cgy_wbid", transferCodeByPk(PsndocVO.getDefaultTableName(), PsndocVO.CODE, PsndocVO.PK_PSNDOC,head.getCemployeeid())); - + // zbxx_gycs_wbid varchar(100) 第三方系统厂商id 必填 厂商名称的ID + detailItem.put("zbxx_gycs_wbid", head.getPk_supplier()); + //zbxx_cgy_wbid varchar(100) 第三方系统采购员id 维护对应关系 + detailItem.put("zbxx_cgy_wbid", head.getCemployeeid()); // 设置计划日期 // 交货日期 必填 明细行的交货日期 if (item.getDplanarrvdate() != null) { @@ -174,16 +178,12 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { detailItem.put("cgxh", item.getVsourcerowno()); // 设置仓库和备注信息 - detailItem.put("sdck",transferCodeByPk(StordocVO.getDefaultTableName(),StordocVO.CODE, StordocVO.PK_STORDOC,item.getPk_reqstordoc())); + detailItem.put("sdck", item.getPk_reqstordoc()); detailItem.put("bzsm", item.getVbmemo()); // 设置状态信息 detailItem.put("sdbj", STATUS_LOCKED); detailItem.put("qfbj", STATUS_ISSUED); - - // 设置单位信息 - detailItem.put("jldw", null); - details.add(detailItem); } } @@ -192,7 +192,7 @@ public class AfterApprovingSynchronizeRuleRZ implements IRule { * 根据主键查询编码 */ private String transferCodeByPk(String tableName, String selectField, String pkField, String pk) throws BusinessException { - if(StringUtils.isEmpty(pk)){ + if (StringUtils.isEmpty(pk)) { return null; } SqlBuilder sqlBuilder = new SqlBuilder(); diff --git a/uapbd/src/public/nc/bs/uapbd/util/ThirdPartyPostRequestUtil.java b/uapbd/src/public/nc/bs/uapbd/util/ThirdPartyPostRequestUtil.java index d8fffca..bb3db58 100644 --- a/uapbd/src/public/nc/bs/uapbd/util/ThirdPartyPostRequestUtil.java +++ b/uapbd/src/public/nc/bs/uapbd/util/ThirdPartyPostRequestUtil.java @@ -17,8 +17,8 @@ import java.net.URL; */ public class ThirdPartyPostRequestUtil { - private static final int DEFAULT_CONNECT_TIMEOUT = 30000; - private static final int DEFAULT_READ_TIMEOUT = 30000; + private static final int DEFAULT_CONNECT_TIMEOUT = 300000; + private static final int DEFAULT_READ_TIMEOUT = 300000; /** * 向第三方系统发送 POST 请求,并根据 HTTP 状态码返回数据