| | |
| | | return R.ok("成功导入" + listener.getTotal() + "条物料信息"); |
| | | } |
| | | |
| | | /* 平仓入库 */ |
| | | /* 平仓入库 成品 */ |
| | | @RequestMapping(value = "/locNormal/in") |
| | | @ManagerAuth(memo = "平仓入库") |
| | | @Transactional |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /* 平仓入库-原材料 */ |
| | | @RequestMapping(value = "/locNormal/in/source") |
| | | @ManagerAuth(memo = "平仓入库-原材料") |
| | | @Transactional |
| | | public R locNormalInSource(@RequestBody LocNormalParam param) { |
| | | Long userId = getUserId(); |
| | | Date timeNow = new Date(); |
| | | for (Integer i = 0; i < param.getNormalList().size(); i++) { |
| | | param.getNormalList().get(i).setAppeUser(userId); |
| | | param.getNormalList().get(i).setAppeTime(timeNow); |
| | | } |
| | | locNormalService.locNormalIn(param.getNormalList()); |
| | | return R.ok(); |
| | | } |
| | | |
| | | /* pda入库 */ |
| | | @RequestMapping(value = "/locNormal/pda/in") |
| | | @ManagerAuth(memo = "平仓管理pda入库") |
| | |
| | | |
| | | public void locNormalIn(List<LocNormal> list); |
| | | |
| | | public void locNormalInSource(List<LocNormal> list); |
| | | |
| | | public void pdaLocNormalIn(List<LocNormal> list); |
| | | |
| | | public List<LocNormal> pdaLocNormalQuery(String matnr, String warehouse, String billNo); |
| | |
| | | import com.zy.asrs.service.LocNormalService; |
| | | import com.zy.asrs.service.WaitPakinLogService; |
| | | import com.zy.asrs.service.WaitPakinService; |
| | | 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; |
| | |
| | | WaitPakinService waitPakinService; |
| | | @Autowired |
| | | WaitPakinLogService waitPakinLogService; |
| | | @Autowired |
| | | ErpService erpService; |
| | | |
| | | @Override |
| | | public List<LocNormal> getLocNormalData() { |
| | |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void locNormalInSource(List<LocNormal> list) { |
| | | // 平仓入库后更新中间表数据,Fflag_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())); |
| | | if (!Cools.isEmpty(oldLocList)) { |
| | | 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.pdaLocNormalUpdate(updateList) > 0) { |
| | | // cust_wait_pakin转cust_wait_pakin_log,并更新数量 |
| | | custWaitPakinToLog(list.get(i), updateAnfme); |
| | | } |
| | | // erp更新 InStockbill和InStockBillEntry |
| | | erpService.incrementPakIn(list.get(i).getSupplier(), list.get(i).getMatnr(), list.get(i).getAnfme().doubleValue()); |
| | | } else { |
| | | // 平仓入库逻辑 |
| | | addList.add(list.get(i)); |
| | | if (baseMapper.pdaLocNormalIn(addList) > 0) { |
| | | // cust_wait_pakin转cust_wait_pakin_log,并更新数量 |
| | | custWaitPakinToLog(list.get(i), list.get(i).getAnfme().doubleValue()); |
| | | } |
| | | // erp更新 InStockbill和InStockBillEntry |
| | | 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())); |
| | | updateList.add(list.get(i)); |
| | | if (baseMapper.withoutSupplierLocNormalUpdate(updateList) > 0) { |
| | | // cust_wait_pakin转cust_wait_pakin_log,并更新数量 |
| | | // custWaitPakinToLog(list.get(i), updateAnfme); |
| | | } |
| | | } 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, ''{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转cust_wait_pakin_log,并更新数量 |
| | | // custWaitPakinToLog(list.get(i), list.get(i).getAnfme().doubleValue()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | /** |
| | | * 成品入库单标记完成 |
| | | */ |
| | |
| | | }); |
| | | |
| | | // 请求保存接口 |
| | | var areaType = getQueryVariable('areaType'); |
| | | if (areaType == 1) { |
| | | $.ajax({ |
| | | url: baseUrl + "/locNormal/in/source", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: JSON.stringify({ |
| | | normalList: data, |
| | | }), |
| | | contentType: 'application/json;charset=UTF-8', |
| | | method: 'POST', |
| | | async: false, |
| | | success: function (res) { |
| | | if (res.code === 200) { |
| | | reset(true); |
| | | tips("组托成功") |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl + "/pda"; |
| | | } else { |
| | | tips(res.msg, true) |
| | | } |
| | | }, |
| | | }); |
| | | } else { |
| | | $.ajax({ |
| | | url: baseUrl + "/locNormal/pda/in", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 根据通知单号查询物料详情 |