From 67da83c698e77ccf178669a31e4bd3a4e8fc1ca7 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期二, 03 八月 2021 16:10:05 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/LocNormalServiceImpl.java | 254 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 239 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/LocNormalServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocNormalServiceImpl.java index 6c22d71..20eacbe 100644 --- a/src/main/java/com/zy/asrs/service/impl/LocNormalServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/LocNormalServiceImpl.java @@ -1,20 +1,24 @@ package com.zy.asrs.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; -import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.core.common.Cools; import com.core.exception.CoolException; +import com.zy.asrs.entity.LocNormalLog; import com.zy.asrs.entity.LocNormal; import com.zy.asrs.entity.WaitPakin; import com.zy.asrs.entity.WaitPakinLog; import com.zy.asrs.entity.param.ERPselectParam; import com.zy.asrs.mapper.LocNormalMapper; import com.zy.asrs.mapper.OutStockMapper; +import com.zy.asrs.service.LocNormalLogService; import com.zy.asrs.service.LocNormalService; import com.zy.asrs.service.WaitPakinLogService; import com.zy.asrs.service.WaitPakinService; +import com.zy.asrs.utils.VersionUtils; +import com.zy.common.service.erp.ErpService; import com.zy.common.service.erp.ErpSqlServer; import com.zy.common.service.erp.entity.CPICMO; import com.zy.common.service.erp.entity.OutStockBillEntry; @@ -41,6 +45,10 @@ WaitPakinService waitPakinService; @Autowired WaitPakinLogService waitPakinLogService; + @Autowired + ErpService erpService; + @Autowired + LocNormalLogService locNormalLogService; @Override public List<LocNormal> getLocNormalData() { @@ -55,11 +63,35 @@ @Override public void outLocNormal(String matnr, Long modiUser, Date modiTime, Integer id) { baseMapper.outLocNormal(matnr, modiUser, modiTime, id); + LocNormal data = locNormalService.selectOne(new EntityWrapper<LocNormal>().eq("id", id)); + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, data); + locLog.setAnfme(data.getAnfme().doubleValue()); + locLog.setIoType(2); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(modiUser); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍑哄簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } } @Override public void removeLocNormal(String matnr, Long modiUser, Date modiTime, Integer id) { baseMapper.removeLocNormal(matnr, modiUser, modiTime, id); + LocNormal data = locNormalService.selectOne(new EntityWrapper<LocNormal>().eq("id", id)); + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, data); + locLog.setAnfme(data.getAnfme().doubleValue()); + locLog.setIoType(4); // 鍒犻櫎 + locLog.setCreateTime(new Date()); + locLog.setCreateUser(modiUser); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨搴撳瓨鍒犻櫎璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } } @Override @@ -83,6 +115,17 @@ // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 custWaitPakinToLog(list.get(i), updateAnfme); } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(updateAnfme); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } } else { // erp鏇存柊 updateCPICMO(list.get(i)); @@ -92,6 +135,17 @@ // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 custWaitPakinToLog(list.get(i), list.get(i).getAnfme().doubleValue()); } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(list.get(i).getAnfme().doubleValue()); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } } } else { // throw new CoolException("閫氱煡鍗曞彿涓嶅彲涓虹┖"); 閫氱煡鍗曞彿绌虹殑鎯呭喌涓嬶紝寰�CPICMO琛ㄦ彃鍏ユ墜鍔ㄥ叆搴撴暟鎹� @@ -100,13 +154,139 @@ if (!Cools.isEmpty(oldLocList)) { // erp鏇存柊 if (Cools.isEmpty(list.get(i).getSupplier())) { - String maxKeySql = "select max(FInterID) as num from CPICMO"; + String maxKeySql = "select min(FInterID) as num from CPICMO"; List<ERPselectParam> maxKeyList = erpSqlServer.select(maxKeySql, ERPselectParam.class); Integer maxKey = maxKeyList.get(0).getNum(); - String ErpSql = "insert into CPICMO(FBrNo, FSourceBillNo, FBillNo, FTranType, FStatus, FMRP, FItemID, FQty, FCommitQty, FSourceEntryID, FClosed, FUnitID, FAuxCommitQty, FCancellation, FQtyFinish, FQtyScrap, FQtyLost, FAuxQtyFinish, FAuxQtyScrap, FAuxQtyLost, FMrpClosed, FBomInterID, FQtyPass, FAuxQtyPass, FQtyBack, FAuxQtyBack, FFinishTime, FReadyTIme, FPowerCutTime, FFixTime, FWaitItemTime, FWaitToolTime, FTaskID, FWorkTypeID, FCostObjID, FStockQty, FAuxStockQty, FSuspend, FReleasedQty, FReleasedAuxQty, FUnScheduledQty, FUnScheduledAuxQty, FSubEntryID, FScheduleID, FPlanOrderInterID, FProcessPrice, FProcessFee, FGMPBatchNo, FGMPCollectRate, FGMPItemBalance, FGMPBulkQty, FCustID, FMRPLockFlag, FHandworkClose, FInHighLimit, FInHighLimitQty, FInLowLimit, FInLowLimitQty, FChangeTimes, FCheckCommitQty, FAuxCheckCommitQty, FPlanConfirmed, FPlanMode, FMTONo, FPrintCount, FFinClosed, FStockFlag, FStartFlag, FVchBillNo, FVchInterID, FCardClosed, FHRReadyTime, FSourceTranType, FSourceInterId, FInterID, FAuxQty, FAuxInHighLimitQty, FAuxInLowLimitQty, Fnumber, FWorkShop) values (0, 0, '0', 85, 0, 1052, 0, 0, 0, 0, 0, 250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '0', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14036, '0', 0, 0, 14215, 0, '0', 0, 1059, 0, 0, 0, 0, {0,number,#}, {1,number,#}, {2,number,#}, {3,number,#}, ''{4}'', 11378)"; - ErpSql = MessageFormat.format(ErpSql, maxKey + 1, list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getMatnr()); + String ErpSql = "insert into CPICMO(FBrNo, FSourceBillNo, FBillNo, FTranType, FStatus, FMRP, FItemID, FQty, FCommitQty, FSourceEntryID, FClosed, FUnitID, FAuxCommitQty, FCancellation, FQtyFinish, FQtyScrap, FQtyLost, FAuxQtyFinish, FAuxQtyScrap, FAuxQtyLost, FMrpClosed, FBomInterID, FQtyPass, FAuxQtyPass, FQtyBack, FAuxQtyBack, FFinishTime, FReadyTIme, FPowerCutTime, FFixTime, FWaitItemTime, FWaitToolTime, FTaskID, FWorkTypeID, FCostObjID, FStockQty, FAuxStockQty, FSuspend, FReleasedQty, FReleasedAuxQty, FUnScheduledQty, FUnScheduledAuxQty, FSubEntryID, FScheduleID, FPlanOrderInterID, FProcessPrice, FProcessFee, FGMPBatchNo, FGMPCollectRate, FGMPItemBalance, FGMPBulkQty, FCustID, FMRPLockFlag, FHandworkClose, FInHighLimit, FInHighLimitQty, FInLowLimit, FInLowLimitQty, FChangeTimes, FCheckCommitQty, FAuxCheckCommitQty, FPlanConfirmed, FPlanMode, FMTONo, FPrintCount, FFinClosed, FStockFlag, FStartFlag, FVchBillNo, FVchInterID, FCardClosed, FHRReadyTime, FSourceTranType, FSourceInterId, FInterID, FAuxQty, FAuxInHighLimitQty, FAuxInLowLimitQty, Fnumber, FWorkShop) values (0, ''{6}'', '0', 85, 0, 1052, 0, 0, 0, 0, 0, 250, {5,number,#}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '0', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14036, '0', 0, 0, 14215, 0, '0', 0, 1059, 0, 0, 0, 0, {0,number,#}, {1,number,#}, {2,number,#}, {3,number,#}, ''{4}'', 11378)"; + ErpSql = MessageFormat.format(ErpSql, maxKey - 1, list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getMatnr(), list.get(i).getAnfme(), list.get(i).getMnemonic()); erpSqlServer.update(ErpSql); } + Double updateAnfme = new Double(list.get(i).getAnfme().doubleValue()); + // 骞充粨鍏ュ簱锛堟洿鏂帮級閫昏緫 + list.get(i).setAnfme(oldLocList.getAnfme().add(list.get(i).getAnfme())); + updateList.add(list.get(i)); + if (baseMapper.withoutSupplierLocNormalUpdate(updateList) > 0) { + // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 +// custWaitPakinToLog(list.get(i), updateAnfme); + } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(updateAnfme); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } + } else { + // erp鏇存柊 + if (Cools.isEmpty(list.get(i).getSupplier())) { + String maxKeySql = "select min(FInterID) as num from CPICMO"; + List<ERPselectParam> maxKeyList = erpSqlServer.select(maxKeySql, ERPselectParam.class); + Integer maxKey = maxKeyList.get(0).getNum(); + String ErpSql = "insert into CPICMO(FBrNo, FSourceBillNo, FBillNo, FTranType, FStatus, FMRP, FItemID, FQty, FCommitQty, FSourceEntryID, FClosed, FUnitID, FAuxCommitQty, FCancellation, FQtyFinish, FQtyScrap, FQtyLost, FAuxQtyFinish, FAuxQtyScrap, FAuxQtyLost, FMrpClosed, FBomInterID, FQtyPass, FAuxQtyPass, FQtyBack, FAuxQtyBack, FFinishTime, FReadyTIme, FPowerCutTime, FFixTime, FWaitItemTime, FWaitToolTime, FTaskID, FWorkTypeID, FCostObjID, FStockQty, FAuxStockQty, FSuspend, FReleasedQty, FReleasedAuxQty, FUnScheduledQty, FUnScheduledAuxQty, FSubEntryID, FScheduleID, FPlanOrderInterID, FProcessPrice, FProcessFee, FGMPBatchNo, FGMPCollectRate, FGMPItemBalance, FGMPBulkQty, FCustID, FMRPLockFlag, FHandworkClose, FInHighLimit, FInHighLimitQty, FInLowLimit, FInLowLimitQty, FChangeTimes, FCheckCommitQty, FAuxCheckCommitQty, FPlanConfirmed, FPlanMode, FMTONo, FPrintCount, FFinClosed, FStockFlag, FStartFlag, FVchBillNo, FVchInterID, FCardClosed, FHRReadyTime, FSourceTranType, FSourceInterId, FInterID, FAuxQty, FAuxInHighLimitQty, FAuxInLowLimitQty, Fnumber, FWorkShop) values (0, ''{6}'', '0', 85, 0, 1052, 0, 0, 0, 0, 0, 250, {5,number,#}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '0', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14036, '0', 0, 0, 14215, 0, '0', 0, 1059, 0, 0, 0, 0, {0,number,#}, {1,number,#}, {2,number,#}, {3,number,#}, ''{4}'', 11378)"; + ErpSql = MessageFormat.format(ErpSql, maxKey - 1, list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getMatnr(), list.get(i).getAnfme(), list.get(i).getMnemonic()); + erpSqlServer.update(ErpSql); + } + // 骞充粨鍏ュ簱閫昏緫 + addList.add(list.get(i)); + if (baseMapper.pdaLocNormalIn(addList) > 0) { + // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 +// custWaitPakinToLog(list.get(i), list.get(i).getAnfme().doubleValue()); + } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(list.get(i).getAnfme().doubleValue()); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } + } + } + } + } + } + + @Override + public void locNormalInSource(List<LocNormal> list) { + // 骞充粨鍏ュ簱鍚庢洿鏂颁腑闂磋〃鏁版嵁锛孎flag_finish鏀逛负1锛岃〃绀哄钩浠撳叆搴撴垚鍔� + if (list.size() > 0) { + for (Integer i = 0; i < list.size(); i++) { + List<LocNormal> addList = new ArrayList<>(); + List<LocNormal> updateList = new ArrayList<>(); + if (!Cools.isEmpty(list.get(i).getSupplier())) { // 瀛樺湪鍏ュ簱鍗曞彿鐨勬墠杩涜erp鏇存柊 + // 鍒ゆ柇鍘熷厛骞充粨鏄惁瀛樺湪鏈夎揣,濡傛灉鏈夎揣鏁伴噺杩涜绱姞 + LocNormal oldLocList = locNormalService.selectOne(new EntityWrapper<LocNormal>().eq("supplier", list.get(i).getSupplier()).and().eq("state", "1").eq("warehouse", list.get(i).getWarehouse()).and().eq("matnr", list.get(i).getMatnr())); + if (!Cools.isEmpty(oldLocList)) { + Double updateAnfme = new Double(list.get(i).getAnfme().doubleValue()); + // 骞充粨鍏ュ簱锛堟洿鏂帮級閫昏緫 + BigDecimal increaseAnfme = new BigDecimal(String.valueOf(list.get(i).getAnfme())); + list.get(i).setAnfme(oldLocList.getAnfme().add(list.get(i).getAnfme())); + updateList.add(list.get(i)); + if (baseMapper.pdaLocNormalUpdate(updateList) > 0) { + // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 + custWaitPakinToLog(list.get(i), updateAnfme); + } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + if (Cools.isEmpty(locLog.getMemo())) { + locLog.setMemo("鍘熸潗鏂�"); + } + locLog.setAnfme(increaseAnfme.doubleValue()); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鏉愭枡鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } + // erp鏇存柊 InStockbill鍜孖nStockBillEntry + erpService.incrementPakIn(list.get(i).getSupplier(), list.get(i).getMatnr(), increaseAnfme.doubleValue()); + } else { + // 骞充粨鍏ュ簱閫昏緫 + addList.add(list.get(i)); + if (baseMapper.pdaLocNormalIn(addList) > 0) { + // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 + custWaitPakinToLog(list.get(i), list.get(i).getAnfme().doubleValue()); + } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(list.get(i).getAnfme().doubleValue()); + if (Cools.isEmpty(locLog.getMemo())) { + locLog.setMemo("鍘熸潗鏂�"); + } + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鏉愭枡鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } + // erp鏇存柊 InStockbill鍜孖nStockBillEntry + erpService.incrementPakIn(list.get(i).getSupplier(), list.get(i).getMatnr(), list.get(i).getAnfme().doubleValue()); + } + } else { + // throw new CoolException("閫氱煡鍗曞彿涓嶅彲涓虹┖"); 閫氱煡鍗曞彿绌虹殑鎯呭喌涓嬶紝寰�CPICMO琛ㄦ彃鍏ユ墜鍔ㄥ叆搴撴暟鎹� + // 鍒ゆ柇鍘熷厛骞充粨鏄惁瀛樺湪鏈夎揣,濡傛灉鏈夎揣鏁伴噺杩涜绱姞 + LocNormal oldLocList = locNormalService.selectOne(new EntityWrapper<LocNormal>().eq("matnr", list.get(i).getMatnr()).and().eq("warehouse", list.get(i).getWarehouse()).and().eq("mnemonic", list.get(i).getMnemonic()).and().eq("state", "1")); + if (!Cools.isEmpty(oldLocList)) { + // erp鏇存柊 +// if (Cools.isEmpty(list.get(i).getSupplier())) { +// String maxKeySql = "select max(FInterID) as num from CPICMO"; +// List<ERPselectParam> maxKeyList = erpSqlServer.select(maxKeySql, ERPselectParam.class); +// Integer maxKey = maxKeyList.get(0).getNum(); +// String ErpSql = "insert into CPICMO(FBrNo, FSourceBillNo, FBillNo, FTranType, FStatus, FMRP, FItemID, FQty, FCommitQty, FSourceEntryID, FClosed, FUnitID, FAuxCommitQty, FCancellation, FQtyFinish, FQtyScrap, FQtyLost, FAuxQtyFinish, FAuxQtyScrap, FAuxQtyLost, FMrpClosed, FBomInterID, FQtyPass, FAuxQtyPass, FQtyBack, FAuxQtyBack, FFinishTime, FReadyTIme, FPowerCutTime, FFixTime, FWaitItemTime, FWaitToolTime, FTaskID, FWorkTypeID, FCostObjID, FStockQty, FAuxStockQty, FSuspend, FReleasedQty, FReleasedAuxQty, FUnScheduledQty, FUnScheduledAuxQty, FSubEntryID, FScheduleID, FPlanOrderInterID, FProcessPrice, FProcessFee, FGMPBatchNo, FGMPCollectRate, FGMPItemBalance, FGMPBulkQty, FCustID, FMRPLockFlag, FHandworkClose, FInHighLimit, FInHighLimitQty, FInLowLimit, FInLowLimitQty, FChangeTimes, FCheckCommitQty, FAuxCheckCommitQty, FPlanConfirmed, FPlanMode, FMTONo, FPrintCount, FFinClosed, FStockFlag, FStartFlag, FVchBillNo, FVchInterID, FCardClosed, FHRReadyTime, FSourceTranType, FSourceInterId, FInterID, FAuxQty, FAuxInHighLimitQty, FAuxInLowLimitQty, Fnumber, FWorkShop) values (0, ''{6}'', '0', 85, 0, 1052, 0, 0, 0, 0, 0, 250, {5,number,#}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '0', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14036, '0', 0, 0, 14215, 0, '0', 0, 1059, 0, 0, 0, 0, {0,number,#}, {1,number,#}, {2,number,#}, {3,number,#}, ''{4}'', 11378)"; +// ErpSql = MessageFormat.format(ErpSql, maxKey + 1, list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getMatnr(), list.get(i).getAnfme(), list.get(i).getMnemonic()); +// erpSqlServer.update(ErpSql); +// } // Double updateAnfme = new Double(list.get(i).getAnfme().doubleValue()); // 骞充粨鍏ュ簱锛堟洿鏂帮級閫昏緫 list.get(i).setAnfme(oldLocList.getAnfme().add(list.get(i).getAnfme())); @@ -117,14 +297,14 @@ } } else { // erp鏇存柊 - if (Cools.isEmpty(list.get(i).getSupplier())) { - String maxKeySql = "select max(FInterID) as num from CPICMO"; - List<ERPselectParam> maxKeyList = erpSqlServer.select(maxKeySql, ERPselectParam.class); - Integer maxKey = maxKeyList.get(0).getNum(); - String ErpSql = "insert into CPICMO(FBrNo, FSourceBillNo, FBillNo, FTranType, FStatus, FMRP, FItemID, FQty, FCommitQty, FSourceEntryID, FClosed, FUnitID, FAuxCommitQty, FCancellation, FQtyFinish, FQtyScrap, FQtyLost, FAuxQtyFinish, FAuxQtyScrap, FAuxQtyLost, FMrpClosed, FBomInterID, FQtyPass, FAuxQtyPass, FQtyBack, FAuxQtyBack, FFinishTime, FReadyTIme, FPowerCutTime, FFixTime, FWaitItemTime, FWaitToolTime, FTaskID, FWorkTypeID, FCostObjID, FStockQty, FAuxStockQty, FSuspend, FReleasedQty, FReleasedAuxQty, FUnScheduledQty, FUnScheduledAuxQty, FSubEntryID, FScheduleID, FPlanOrderInterID, FProcessPrice, FProcessFee, FGMPBatchNo, FGMPCollectRate, FGMPItemBalance, FGMPBulkQty, FCustID, FMRPLockFlag, FHandworkClose, FInHighLimit, FInHighLimitQty, FInLowLimit, FInLowLimitQty, FChangeTimes, FCheckCommitQty, FAuxCheckCommitQty, FPlanConfirmed, FPlanMode, FMTONo, FPrintCount, FFinClosed, FStockFlag, FStartFlag, FVchBillNo, FVchInterID, FCardClosed, FHRReadyTime, FSourceTranType, FSourceInterId, FInterID, FAuxQty, FAuxInHighLimitQty, FAuxInLowLimitQty, Fnumber, FWorkShop) values (0, 0, '0', 85, 0, 1052, 0, 0, 0, 0, 0, 250, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '0', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14036, '0', 0, 0, 14215, 0, '0', 0, 1059, 0, 0, 0, 0, {0,number,#}, {1,number,#}, {2,number,#}, {3,number,#}, ''{4}'', 11378)"; - ErpSql = MessageFormat.format(ErpSql, maxKey + 1, list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getMatnr()); - erpSqlServer.update(ErpSql); - } +// if (Cools.isEmpty(list.get(i).getSupplier())) { +// String maxKeySql = "select max(FInterID) as num from CPICMO"; +// List<ERPselectParam> maxKeyList = erpSqlServer.select(maxKeySql, ERPselectParam.class); +// Integer maxKey = maxKeyList.get(0).getNum(); +// String ErpSql = "insert into CPICMO(FBrNo, FSourceBillNo, FBillNo, FTranType, FStatus, FMRP, FItemID, FQty, FCommitQty, FSourceEntryID, FClosed, FUnitID, FAuxCommitQty, FCancellation, FQtyFinish, FQtyScrap, FQtyLost, FAuxQtyFinish, FAuxQtyScrap, FAuxQtyLost, FMrpClosed, FBomInterID, FQtyPass, FAuxQtyPass, FQtyBack, FAuxQtyBack, FFinishTime, FReadyTIme, FPowerCutTime, FFixTime, FWaitItemTime, FWaitToolTime, FTaskID, FWorkTypeID, FCostObjID, FStockQty, FAuxStockQty, FSuspend, FReleasedQty, FReleasedAuxQty, FUnScheduledQty, FUnScheduledAuxQty, FSubEntryID, FScheduleID, FPlanOrderInterID, FProcessPrice, FProcessFee, FGMPBatchNo, FGMPCollectRate, FGMPItemBalance, FGMPBulkQty, FCustID, FMRPLockFlag, FHandworkClose, FInHighLimit, FInHighLimitQty, FInLowLimit, FInLowLimitQty, FChangeTimes, FCheckCommitQty, FAuxCheckCommitQty, FPlanConfirmed, FPlanMode, FMTONo, FPrintCount, FFinClosed, FStockFlag, FStartFlag, FVchBillNo, FVchInterID, FCardClosed, FHRReadyTime, FSourceTranType, FSourceInterId, FInterID, FAuxQty, FAuxInHighLimitQty, FAuxInLowLimitQty, Fnumber, FWorkShop) values (0, ''{6}'', '0', 85, 0, 1052, 0, 0, 0, 0, 0, 250, {5,number,#}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '0', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14036, '0', 0, 0, 14215, 0, '0', 0, 1059, 0, 0, 0, 0, {0,number,#}, {1,number,#}, {2,number,#}, {3,number,#}, ''{4}'', 11378)"; +// ErpSql = MessageFormat.format(ErpSql, maxKey + 1, list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getAnfme(), list.get(i).getMatnr(), list.get(i).getAnfme(), list.get(i).getMnemonic()); +// erpSqlServer.update(ErpSql); +// } // 骞充粨鍏ュ簱閫昏緫 addList.add(list.get(i)); if (baseMapper.pdaLocNormalIn(addList) > 0) { @@ -136,7 +316,6 @@ } } } - /** * 鎴愬搧鍏ュ簱鍗曟爣璁板畬鎴� */ @@ -167,6 +346,18 @@ // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 custWaitPakinToLog(list.get(i), updateAnfme); } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(updateAnfme); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } + } else { // erp鏇存柊 updateCPICMO(list.get(i)); @@ -175,6 +366,17 @@ if (baseMapper.pdaLocNormalIn(addList) > 0){ // cust_wait_pakin杞琧ust_wait_pakin_log锛屽苟鏇存柊鏁伴噺 custWaitPakinToLog(list.get(i), list.get(i).getAnfme().doubleValue()); + } + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(list.get(i).getAnfme().doubleValue()); + locLog.setIoType(1); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍏ュ簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); } } } else { @@ -270,10 +472,32 @@ for (Integer i = 0; i < list.size(); i++) { if (list.get(i).getAnfme().equals(list.get(i).getAnfmeOut())) { baseMapper.pdaLocNormalOut1(list.get(i).getId(), list.get(i).getMatnr(), list.get(i).getModiUser(), list.get(i).getModiTime(), list.get(i).getWarehouse()); + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme(list.get(i).getAnfmeOut().doubleValue()); + locLog.setIoType(2); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍑哄簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } } if (list.get(i).getAnfmeOut().compareTo(list.get(i).getAnfme()) == -1) { BigDecimal diff = (list.get(i).getAnfme()).subtract(list.get(i).getAnfmeOut()); baseMapper.pdaLocNormalOut2(list.get(i).getId(), list.get(i).getMatnr(), diff, list.get(i).getModiUser(), list.get(i).getModiTime(), list.get(i).getWarehouse()); + // 鐢熸垚骞充粨鍑哄叆搴撹褰� + LocNormalLog locLog = new LocNormalLog(); + VersionUtils.setLocNormalLog(locLog, list.get(i)); + locLog.setAnfme((list.get(i).getAnfmeOut()).doubleValue()); + locLog.setIoType(2); + locLog.setCreateTime(new Date()); + locLog.setCreateUser(list.get(i).getAppeUser()); + if (!locNormalLogService.insert(locLog)) { + String logStr = JSON.toJSONString(locLog); + log.info("骞充粨鍑哄簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr); + } } } } @@ -289,12 +513,12 @@ } @Override - public List<LocNormal> queryLocNorlMatnr(String fbillNo) { + public List<LocNormal> queryLocNorlMatnr(String fbillNo, String mnemonic) { List<OutStockBillEntry> matList = outStockMapper.queryMatnrWithBillNo(fbillNo); List<LocNormal> locNormal = new ArrayList<>(); List<LocNormal> locNormalResult = new ArrayList<>(); for (Integer i = 0; i < matList.size(); i++) { - locNormal = baseMapper.queryLocNorlMatnr(matList.get(i).getFnumber()) ; + locNormal = baseMapper.queryLocNorlMatnr(matList.get(i).getFnumber(), mnemonic) ; if (locNormal.size() > 0) { for (LocNormal e:locNormal) { LocNormal obj = new LocNormal(); -- Gitblit v1.9.1