From 37b364fbb078c14665be4704db097dfc43090688 Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Thu, 21 Jul 2022 14:23:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/service/impl/WmsToErpServiceImpl.java | 119 ++++++++++++++---- 1 file changed, 96 insertions(+), 23 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/ext/erp/service/impl/WmsToErpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/ext/erp/service/impl/WmsToErpServiceImpl.java index 99730f95..ae5a9516 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/ext/erp/service/impl/WmsToErpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/ext/erp/service/impl/WmsToErpServiceImpl.java @@ -405,8 +405,8 @@ public class WmsToErpServiceImpl implements WmsToErpService { for (int i = 0; i < ja.size(); i++) { JSONObject jo = ja.getJSONObject(i); - String CGENERALHID = jo.getString("CGENERALHID"); - JSONObject purchase = purchaseIn_wql.query("CGENERALHID = '"+CGENERALHID+"'").uniqueResult(0); + String CGENERALBID = jo.getString("CGENERALBID"); + JSONObject purchase = purchaseIn_wql.query("CGENERALBID = '"+CGENERALBID+"'").uniqueResult(0); if (ObjectUtil.isEmpty(purchase)){ purchase = new JSONObject(); purchase.put("CGENERALHID",jo.getString("CGENERALHID")); @@ -445,7 +445,63 @@ public class WmsToErpServiceImpl implements WmsToErpService { } if (jo.getString("FBILLFLAG").equals("3")){ //生成入库单 + JSONObject io_mst = new JSONObject(); + String iostorinv_id = IdUtil.getSnowflake(1, 1).nextId() + ""; + String bill_code = CodeUtil.getNewCode("IO_CODE"); + io_mst.put("iostorinv_id", iostorinv_id); + io_mst.put("bill_code", bill_code); + io_mst.put("buss_type", "0007"); + io_mst.put("io_type", "0"); + io_mst.put("bill_type", "000701"); + io_mst.put("biz_date", DateUtil.today()); + JSONObject stor_jo = WQLObject.getWQLObject("st_ivt_bsrealstorattr").query("is_attachment = '1'").uniqueResult(0); + io_mst.put("stor_id", stor_jo.getString("stor_id")); + io_mst.put("stor_code", stor_jo.getString("stor_code")); + io_mst.put("stor_name", stor_jo.getString("stor_name")); + io_mst.put("total_qty", purchase.getString("qty")); + io_mst.put("detail_count", "1"); + io_mst.put("bill_status", "10"); + io_mst.put("create_mode", "01"); + io_mst.put("input_optid", "1452555001116364823"); + io_mst.put("input_optname", "mes系统"); + io_mst.put("input_time", DateUtil.now()); + io_mst.put("update_optid", "1452555001116364823"); + io_mst.put("update_optname", "mes系统"); + io_mst.put("update_time", DateUtil.now()); + io_mst.put("is_delete", "0"); + io_mst.put("is_upload", "0"); + io_mst.put("sysdeptid", "1"); + io_mst.put("syscompanyid", "1"); + io_mst.put("bizdeptid", "1"); + WQLObject.getWQLObject("EM_BI_IOStorInv").insert(io_mst); + //插入明细表 + JSONObject io_dtl = new JSONObject(); + io_dtl.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + ""); + io_dtl.put("iostorinv_id", iostorinv_id); + io_dtl.put("seq_no", "1"); + io_dtl.put("bill_status", "10"); + JSONObject mater_jo = WQLObject.getWQLObject("md_me_materialbase").query("ext_id = '"+purchase.getString("ITEM_ID")+"'").uniqueResult(0); + if (ObjectUtil.isEmpty(mater_jo)){ + log.info("未查询到外部标识为:"+purchase.getString("ITEM_ID")+"的物料!"); + throw new BadRequestException("未查询到外部标识为:"+purchase.getString("ITEM_ID")+"的物料!"); + } + io_dtl.put("material_id",mater_jo.getString("material_id")); + io_dtl.put("pcsn",purchase.getString("VBATCHCODE")); + JSONObject qty_jo = WQLObject.getWQLObject("md_pb_measureunit").query("ext_id = '"+purchase.getString("UNIT")+"'").uniqueResult(0); + io_dtl.put("qty_unit_id",qty_jo.getString("measure_unit_id")); + io_dtl.put("qty_unit_name",qty_jo.getString("unit_name")); + io_dtl.put("plan_qty",purchase.getString("QTY")); + io_dtl.put("source_billdtl_id",purchase.getString("CGENERALBID")); + io_dtl.put("source_bill_type",purchase.getString("PO")); + io_dtl.put("source_bill_code",purchase.getString("VBILLCODE")); + io_dtl.put("source_bill_table",purchase.getString("EM_BI_ErpPurchaseIn")); + io_dtl.put("base_billdtl_id",purchase.getString("CGENERALBID")); + io_dtl.put("base_bill_type",purchase.getString("PO")); + io_dtl.put("base_bill_code",purchase.getString("VBILLCODE")); + io_dtl.put("base_bill_table",purchase.getString("EM_BI_ErpPurchaseIn")); + io_dtl.put("remark_ext",purchase.getString("CGENERALHID")); + WQLObject.getWQLObject("EM_BI_IOStorInvDtl").insert(io_dtl); } purchaseIn_wql.insert(purchase); }else { @@ -500,33 +556,50 @@ public class WmsToErpServiceImpl implements WmsToErpService { io_mst.put("stor_id", stor_jo.getString("stor_id")); io_mst.put("stor_code", stor_jo.getString("stor_code")); io_mst.put("stor_name", stor_jo.getString("stor_name")); - io_mst.put("total_qty", purchase.getString("QTY")); + io_mst.put("total_qty", purchase.getString("qty")); io_mst.put("detail_count", "1"); io_mst.put("bill_status", "10"); io_mst.put("create_mode", "01"); - io_mst.put("input_optid", currentUserId + ""); - io_mst.put("input_optname", nickName); - io_mst.put("input_time", now); - io_mst.put("update_optid", currentUserId + ""); - io_mst.put("update_optname", nickName); - io_mst.put("update_time", now); + io_mst.put("input_optid", "1452555001116364823"); + io_mst.put("input_optname", "mes系统"); + io_mst.put("input_time", DateUtil.now()); + io_mst.put("update_optid", "1452555001116364823"); + io_mst.put("update_optname", "mes系统"); + io_mst.put("update_time", DateUtil.now()); io_mst.put("is_delete", "0"); io_mst.put("is_upload", "0"); - JwtUserDto currentUser = (JwtUserDto) SecurityUtils.getCurrentUser(); - Long deptId = currentUser.getDeptId(); - io_mst.put("sysdeptid", deptId + ""); - io_mst.put("syscompanyid", deptId + ""); - io_mst.put("bizdeptid", deptId + ""); - for (int i = 0; i < rows.size(); i++) { - HashMap row = rows.get(i); - row.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + ""); - row.put("iostorinv_id", iostorinv_id); - row.put("seq_no", (i + 1) + ""); - row.put("bill_status", "10"); - WQLObject.getWQLObject("EM_BI_IOStorInvDtl").insert(row); - - } + io_mst.put("sysdeptid", "1"); + io_mst.put("syscompanyid", "1"); + io_mst.put("bizdeptid", "1"); WQLObject.getWQLObject("EM_BI_IOStorInv").insert(io_mst); + + //插入明细表 + JSONObject io_dtl = new JSONObject(); + io_dtl.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + ""); + io_dtl.put("iostorinv_id", iostorinv_id); + io_dtl.put("seq_no", "1"); + io_dtl.put("bill_status", "10"); + JSONObject mater_jo = WQLObject.getWQLObject("md_me_materialbase").query("ext_id = '"+purchase.getString("ITEM_ID")+"'").uniqueResult(0); + if (ObjectUtil.isEmpty(mater_jo)){ + log.info("未查询到外部标识为:"+purchase.getString("ITEM_ID")+"的物料!"); + throw new BadRequestException("未查询到外部标识为:"+purchase.getString("ITEM_ID")+"的物料!"); + } + io_dtl.put("material_id",mater_jo.getString("material_id")); + io_dtl.put("pcsn",purchase.getString("VBATCHCODE")); + JSONObject qty_jo = WQLObject.getWQLObject("md_pb_measureunit").query("ext_id = '"+purchase.getString("UNIT")+"'").uniqueResult(0); + io_dtl.put("qty_unit_id",qty_jo.getString("measure_unit_id")); + io_dtl.put("qty_unit_name",qty_jo.getString("unit_name")); + io_dtl.put("plan_qty",purchase.getString("QTY")); + io_dtl.put("source_billdtl_id",purchase.getString("CGENERALBID")); + io_dtl.put("source_bill_type",purchase.getString("PO")); + io_dtl.put("source_bill_code",purchase.getString("VBILLCODE")); + io_dtl.put("source_bill_table",purchase.getString("EM_BI_ErpPurchaseIn")); + io_dtl.put("base_billdtl_id",purchase.getString("CGENERALBID")); + io_dtl.put("base_bill_type",purchase.getString("PO")); + io_dtl.put("base_bill_code",purchase.getString("VBILLCODE")); + io_dtl.put("base_bill_table",purchase.getString("EM_BI_ErpPurchaseIn")); + io_dtl.put("remark_ext",purchase.getString("CGENERALHID")); + WQLObject.getWQLObject("EM_BI_IOStorInvDtl").insert(io_dtl); } purchaseIn_wql.update(purchase); }