|  |  |  | 
|---|
|  |  |  | import com.core.common.SnowflakeIdWorker; | 
|---|
|  |  |  | import com.core.exception.CoolException; | 
|---|
|  |  |  | import com.zy.asrs.entity.*; | 
|---|
|  |  |  | import com.zy.asrs.entity.param.EmptyPlateOutParam; | 
|---|
|  |  |  | import com.zy.asrs.entity.param.FullStoreParam; | 
|---|
|  |  |  | import com.zy.asrs.entity.param.LocDetlAdjustParam; | 
|---|
|  |  |  | import com.zy.asrs.entity.param.StockOutParam; | 
|---|
|  |  |  | import com.zy.asrs.entity.param.*; | 
|---|
|  |  |  | import com.zy.asrs.service.*; | 
|---|
|  |  |  | import com.zy.asrs.utils.Utils; | 
|---|
|  |  |  | import com.zy.common.model.*; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private WrkDetlLogService wrkDetlLogService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SnowflakeIdWorker snowflakeIdWorker; | 
|---|
|  |  |  | private ManLocDetlService manLocDetlService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderService orderService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | 
|---|
|  |  |  | private SlaveProperties slaveProperties; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private WaitPakinService waitPakinService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private LocOwnerService locOwnerService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | 
|---|
|  |  |  | assert ioType != null; | 
|---|
|  |  |  | // 获取库位 | 
|---|
|  |  |  | LocMast locMast = locMastService.selectById(dto.getLocNo()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Integer outSta = staNo.getDevNo(); | 
|---|
|  |  |  | //            //2号堆垛机全板出库站指定为204站,拣料站指定为202 | 
|---|
|  |  |  | //            if(locMast.getCrnNo()==2){ | 
|---|
|  |  |  | //                outSta = ioType == 101 ? 204 : 202; | 
|---|
|  |  |  | //            } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 获取路径 | 
|---|
|  |  |  | StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), staNo.getDevNo()); | 
|---|
|  |  |  | StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), outSta); | 
|---|
|  |  |  | // 生成工作号 | 
|---|
|  |  |  | int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); | 
|---|
|  |  |  | // 生成工作档 | 
|---|
|  |  |  | 
|---|
|  |  |  | // 生成工作档明细 | 
|---|
|  |  |  | for (LocDetlDto detlDto : dto.getLocDetlDtos()) { | 
|---|
|  |  |  | if (detlDto.getCount()==null || detlDto.getCount() <= 0.0D) {continue;} | 
|---|
|  |  |  | String uuid = String.valueOf(System.currentTimeMillis()); | 
|---|
|  |  |  | WrkDetl wrkDetl = new WrkDetl(); | 
|---|
|  |  |  | wrkDetl.sync(detlDto.getLocDetl()); | 
|---|
|  |  |  | wrkDetl.setOrderNo(""); // 手动出库不需要带出库存中的单据编号 | 
|---|
|  |  |  | 
|---|
|  |  |  | wrkDetl.setAppeUser(userId); | 
|---|
|  |  |  | wrkDetl.setModiTime(now); | 
|---|
|  |  |  | wrkDetl.setModiUser(userId); | 
|---|
|  |  |  | wrkDetl.setUuid(uuid); | 
|---|
|  |  |  | wrkDetl.setOwner(detlDto.getLocDetl().getOwner()); | 
|---|
|  |  |  | wrkDetl.setPayment(detlDto.getLocDetl().getPayment()); | 
|---|
|  |  |  | if (!wrkDetlService.insert(wrkDetl)) { | 
|---|
|  |  |  | throw new CoolException("保存工作档明细失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | LocMast locMast = locMastService.selectById(taskDto.getLocNo()); | 
|---|
|  |  |  | // 获取路径 | 
|---|
|  |  |  | int ioType = taskDto.isAll() ? 101 : 103; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | StaDesc staDesc = staDescService.queryCrnStnAuto(ioType, locMast.getCrnNo(), staNo.getDevNo()); | 
|---|
|  |  |  | // 生成工作号 | 
|---|
|  |  |  | int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); | 
|---|
|  |  |  | 
|---|
|  |  |  | for (LocDto locDto : taskDto.getLocDtos()) { | 
|---|
|  |  |  | if (locDto.getAnfme()==null || locDto.getAnfme() <= 0.0D) { continue; } | 
|---|
|  |  |  | OrderDetl orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), locDto.getBatch()); | 
|---|
|  |  |  | if (orderDetl == null) { | 
|---|
|  |  |  | orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), null); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //            if (orderDetl == null) { | 
|---|
|  |  |  | //                orderDetl = orderDetlService.selectItem(locDto.getOrderNo(), locDto.getMatnr(), null); | 
|---|
|  |  |  | //            } | 
|---|
|  |  |  | String uuid = String.valueOf(System.currentTimeMillis()); | 
|---|
|  |  |  | WrkDetl wrkDetl = new WrkDetl(); | 
|---|
|  |  |  | wrkDetl.sync(orderDetl); | 
|---|
|  |  |  | wrkDetl.setZpallet(wrkMast.getBarcode()); | 
|---|
|  |  |  | 
|---|
|  |  |  | wrkDetl.setAppeUser(userId); | 
|---|
|  |  |  | wrkDetl.setModiTime(now); | 
|---|
|  |  |  | wrkDetl.setModiUser(userId); | 
|---|
|  |  |  | wrkDetl.setUuid(uuid); | 
|---|
|  |  |  | wrkDetl.setOwner(orderDetl.getOwner()); | 
|---|
|  |  |  | wrkDetl.setPayment(orderDetl.getPayment()); | 
|---|
|  |  |  | if (!wrkDetlService.insert(wrkDetl)) { | 
|---|
|  |  |  | throw new CoolException("保存工作档明细失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public WrkMast emptyPlateOut(EmptyPlateOutParam param) { | 
|---|
|  |  |  | WrkMast wrkMast = new WrkMast(); | 
|---|
|  |  |  | if (Cools.isEmpty(param.getOutSite())) { | 
|---|
|  |  |  | throw new CoolException("站点不存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for (String locNo : param.getLocNos()) { | 
|---|
|  |  |  | // 获取工作号 | 
|---|
|  |  |  | int workNo = commonService.getWorkNo(0); | 
|---|
|  |  |  | // 获取库位 | 
|---|
|  |  |  | LocMast locMast = locMastService.selectById(locNo); | 
|---|
|  |  |  | if (Cools.isEmpty(locMast)) { | 
|---|
|  |  |  | throw new CoolException(locNo+"库位不存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 获取源站 | 
|---|
|  |  |  | Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() | 
|---|
|  |  |  | .eq("type_no", 110) | 
|---|
|  |  |  | .eq("stn_no", param.getOutSite()) | 
|---|
|  |  |  | .eq("crn_no", locMast.getCrnNo()); | 
|---|
|  |  |  | StaDesc staDesc = staDescService.selectOne(wrapper); | 
|---|
|  |  |  | Integer sourceStaNo = staDesc.getCrnStn(); | 
|---|
|  |  |  | if (Cools.isEmpty(sourceStaNo)) { | 
|---|
|  |  |  | throw new CoolException("检索源站失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Date now = new Date(); | 
|---|
|  |  |  | // 保存工作档 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | wrkMast.setWrkNo(workNo); | 
|---|
|  |  |  | wrkMast.setIoTime(now); | 
|---|
|  |  |  | wrkMast.setWrkSts(11L); // 工作状态:11.生成出库ID | 
|---|
|  |  |  | wrkMast.setIoType(110); // 入出库状态: 110.空板出库 | 
|---|
|  |  |  | wrkMast.setIoPri(10D); | 
|---|
|  |  |  | wrkMast.setSourceStaNo(sourceStaNo); // 源站 | 
|---|
|  |  |  | wrkMast.setStaNo(param.getOutSite()); // 目标站 | 
|---|
|  |  |  | wrkMast.setCrnNo(locMast.getCrnNo()); | 
|---|
|  |  |  | wrkMast.setSourceLocNo(locNo); // 源库位 | 
|---|
|  |  |  | wrkMast.setFullPlt("N"); // 满板:Y | 
|---|
|  |  |  | wrkMast.setPicking("N"); // 拣料 | 
|---|
|  |  |  | wrkMast.setExitMk("N"); // 退出 | 
|---|
|  |  |  | wrkMast.setEmptyMk("Y"); // 空板 | 
|---|
|  |  |  | wrkMast.setLinkMis("N"); | 
|---|
|  |  |  | wrkMast.setAppeUser(1L); | 
|---|
|  |  |  | wrkMast.setAppeTime(now); | 
|---|
|  |  |  | wrkMast.setModiUser(1L); | 
|---|
|  |  |  | wrkMast.setModiTime(now); | 
|---|
|  |  |  | wrkMast.setMemo("生成自动空板出库"); | 
|---|
|  |  |  | boolean res = wrkMastService.insert(wrkMast); | 
|---|
|  |  |  | if (!res) { | 
|---|
|  |  |  | throw new CoolException("保存工作档失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 更新库位状态 D.空板 -> R.出库预约 | 
|---|
|  |  |  | if (locMast.getLocSts().equals("D")){ | 
|---|
|  |  |  | locMast.setLocSts("R"); | 
|---|
|  |  |  | locMast.setModiUser(1L); | 
|---|
|  |  |  | locMast.setModiTime(now); | 
|---|
|  |  |  | if (!locMastService.updateById(locMast)) { | 
|---|
|  |  |  | throw new CoolException("更新库位状态失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return wrkMast; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public void locCheckOut(StockOutParam param, Long userId) { | 
|---|
|  |  |  | // 目标站点状态检测 | 
|---|
|  |  |  | BasDevp staNo = basDevpService.checkSiteStatus(param.getOutSite()); | 
|---|
|  |  |  | 
|---|
|  |  |  | wrkDetl.setAppeUser(userId); | 
|---|
|  |  |  | wrkDetl.setModiTime(now); | 
|---|
|  |  |  | wrkDetl.setModiUser(userId); | 
|---|
|  |  |  | wrkDetl.setOwner(locDetl.getOwner()); | 
|---|
|  |  |  | wrkDetl.setPayment(locDetl.getPayment()); | 
|---|
|  |  |  | if (!wrkDetlService.insert(wrkDetl)) { | 
|---|
|  |  |  | throw new CoolException("保存工作档明细失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //取消入库工作档时,查询组托表,如果有将状态改为待处理 | 
|---|
|  |  |  | if(wrkMast.getIoType() == 1) { | 
|---|
|  |  |  | WaitPakin waitPakin = waitPakinService.selectOne(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode())); | 
|---|
|  |  |  | if (!Cools.isEmpty(waitPakin)) { | 
|---|
|  |  |  | waitPakin.setIoStatus("N"); | 
|---|
|  |  |  | waitPakinService.update(waitPakin, new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode())); | 
|---|
|  |  |  | List<WaitPakin> waitPakins=waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode())); | 
|---|
|  |  |  | for (WaitPakin waitPakin:waitPakins){ | 
|---|
|  |  |  | if (!Cools.isEmpty(waitPakin)) { | 
|---|
|  |  |  | waitPakin.setIoStatus("N"); | 
|---|
|  |  |  | waitPakin.setLocNo(""); | 
|---|
|  |  |  | waitPakinService.update(waitPakin, new EntityWrapper<WaitPakin>() | 
|---|
|  |  |  | .eq("order_no", waitPakin.getOrderNo()) | 
|---|
|  |  |  | .eq("matnr", waitPakin.getMatnr()) | 
|---|
|  |  |  | .eq("batch", waitPakin.getBatch())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //取消出库工作档时,查询单据管理表,回滚作业中数量 | 
|---|
|  |  |  | if(wrkMast.getIoType() == 101 || wrkMast.getIoType() == 103) { | 
|---|
|  |  |  | List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); | 
|---|
|  |  |  | for (WrkDetl wrkDetl : wrkDetls) { | 
|---|
|  |  |  | 
|---|
|  |  |  | // 获取目标站 | 
|---|
|  |  |  | Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() | 
|---|
|  |  |  | .eq("type_no", wrkMast.getIoType() - 50) | 
|---|
|  |  |  | .eq("stn_no", wrkMast.getStaNo()) // 作业站点 = 拣料出库的目标站 | 
|---|
|  |  |  | //速腾特有捡料, 11站是出库站, 然后手动走到15站进行再入库 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .eq("stn_no", 15) // 作业站点 = 拣料出库的目标站 | 
|---|
|  |  |  | .eq("crn_no", wrkMast.getCrnNo()); // 堆垛机号 | 
|---|
|  |  |  | StaDesc staDesc = staDescService.selectOne(wrapper); | 
|---|
|  |  |  | if (Cools.isEmpty(staDesc)) { | 
|---|
|  |  |  | 
|---|
|  |  |  | // 更新工作档数据状态 | 
|---|
|  |  |  | wrkMast.setIoType(wrkMast.getIoType() - 50); // 入出库类型: 103->53,104->54,107->57 | 
|---|
|  |  |  | wrkMast.setWrkSts(2L); // 工作状态: 2.设备上走 | 
|---|
|  |  |  | wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 源站 | 
|---|
|  |  |  | wrkMast.setSourceStaNo(staDesc.getStnNo()); // 源站 | 
|---|
|  |  |  | wrkMast.setStaNo(staNo); // 目标站 | 
|---|
|  |  |  | wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 目标库位 = 出库时的源库位 | 
|---|
|  |  |  | wrkMast.setSourceLocNo(""); // 源库位清空 | 
|---|
|  |  |  | 
|---|
|  |  |  | return targetLoc.getLocNo(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public void turnOverOut(EmptyPlateOutParam param, Long userId) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | if (Cools.isEmpty(param.getOwnerId())) { | 
|---|
|  |  |  | throw new CoolException("客户名称不能为空"); | 
|---|
|  |  |  | }else if (param.getLocDetls().size()<=0){ | 
|---|
|  |  |  | throw new CoolException("请提取明细"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ArrayList<String> locNos = new ArrayList<>(); | 
|---|
|  |  |  | String[][] locNos2 =new String[param.getLocDetls().size()][2]; | 
|---|
|  |  |  | int i=0; | 
|---|
|  |  |  | for (EmptyPlateOutParam.LocDetl locDetl : param.getLocDetls()){ | 
|---|
|  |  |  | if (!locNos.contains(locDetl.getLoc_no())){ | 
|---|
|  |  |  | locNos.add(locDetl.getLoc_no()); | 
|---|
|  |  |  | locNos2[i][0]=locDetl.getLoc_no(); | 
|---|
|  |  |  | locNos2[i][1]=locDetl.getManu(); | 
|---|
|  |  |  | i++; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | LocOwner locOwner = locOwnerService.selectById(param.getOwnerId()); | 
|---|
|  |  |  | param.setOwner(locOwner.getOwner()); | 
|---|
|  |  |  | String lgort = ""; | 
|---|
|  |  |  | String owner=""; | 
|---|
|  |  |  | List<DetlDto> detlDtos = new ArrayList<>(); | 
|---|
|  |  |  | for (String[] locNo1 : locNos2) { | 
|---|
|  |  |  | String locNo = locNo1[0]; | 
|---|
|  |  |  | if (locNo1[1].equals("平库")){ | 
|---|
|  |  |  | List<ManLocDetl> manLocDetls = manLocDetlService.selectList(new EntityWrapper<ManLocDetl>().eq("loc_no", locNo)); | 
|---|
|  |  |  | for (ManLocDetl manLocDetl:manLocDetls){ | 
|---|
|  |  |  | if (Cools.isEmpty(owner)) { | 
|---|
|  |  |  | owner = manLocDetl.getOwner$(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | detlDtos.add(new DetlDto(manLocDetl.getMatnr(), manLocDetl.getBatch(), manLocDetl.getAnfme())); | 
|---|
|  |  |  | manLocDetl.setOwner(param.getOwnerId()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | manLocDetlService.update(manLocDetl,new EntityWrapper<ManLocDetl>().eq("loc_no", locNo).eq("matnr",manLocDetl.getMatnr())); | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | throw new Exception("更新库存明细拥有者字段信息出错了"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else if (locNo1[1].equals("立库")){ | 
|---|
|  |  |  | List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locNo)); | 
|---|
|  |  |  | for (LocDetl locDetl:locDetls){ | 
|---|
|  |  |  | if (Cools.isEmpty(lgort)) { | 
|---|
|  |  |  | lgort = locDetl.getOrigin(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(owner)) { | 
|---|
|  |  |  | owner = locDetl.getOwner$(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | detlDtos.add(new DetlDto(locDetl.getMatnr(), locDetl.getBatch(), locDetl.getAnfme())); | 
|---|
|  |  |  | locDetl.setOwner(param.getOwnerId()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | locDetlService.update(locDetl,new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr",locDetl.getMatnr())); | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | throw new Exception("更新库存明细拥有者字段信息出错了"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | throw new Exception("更新库位拥有者字段信息出错了"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | throw new CoolException("移交作业出错了:"+e); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public void turnOverOutPayment(EmptyPlateOutParam param, Long userId) { | 
|---|
|  |  |  | if (Cools.isEmpty(param.getPayment())){ | 
|---|
|  |  |  | throw new CoolException("请选择目标货物形态"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | log.info("更新货物形态:目标货物形态:"+param.getPayment$(param.getPayment())+";更改货物信息:"+param.getLocDetls()); | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | if (param.getLocDetls().size()<=0){ | 
|---|
|  |  |  | throw new CoolException("请提取明细"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ArrayList<String> locNos = new ArrayList<>(); | 
|---|
|  |  |  | String[][] locNos2 =new String[param.getLocDetls().size()][2]; | 
|---|
|  |  |  | int i=0; | 
|---|
|  |  |  | for (EmptyPlateOutParam.LocDetl locDetl : param.getLocDetls()){ | 
|---|
|  |  |  | if (!locNos.contains(locDetl.getLoc_no())){ | 
|---|
|  |  |  | locNos.add(locDetl.getLoc_no()); | 
|---|
|  |  |  | locNos2[i][0]=locDetl.getLoc_no(); | 
|---|
|  |  |  | locNos2[i][1]=locDetl.getManu(); | 
|---|
|  |  |  | i++; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for (String[] locNo1 : locNos2) { | 
|---|
|  |  |  | String locNo = locNo1[0]; | 
|---|
|  |  |  | if (locNo1[1].equals("平库")){ | 
|---|
|  |  |  | List<ManLocDetl> manLocDetls = manLocDetlService.selectList(new EntityWrapper<ManLocDetl>().eq("loc_no", locNo)); | 
|---|
|  |  |  | for (ManLocDetl manLocDetl:manLocDetls){ | 
|---|
|  |  |  | manLocDetl.setPayment(param.getPayment()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | manLocDetlService.update(manLocDetl,new EntityWrapper<ManLocDetl>().eq("loc_no", locNo).eq("matnr",manLocDetl.getMatnr())); | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | throw new Exception("更新库存明细货物形态字段信息出错了"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else if (locNo1[1].equals("立库")){ | 
|---|
|  |  |  | List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locNo)); | 
|---|
|  |  |  | for (LocDetl locDetl:locDetls){ | 
|---|
|  |  |  | locDetl.setPayment(param.getPayment()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | locDetlService.update(locDetl,new EntityWrapper<LocDetl>().eq("loc_no", locNo).eq("matnr",locDetl.getMatnr())); | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | throw new Exception("更新库存明细货物形态字段信息出错了"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | throw new Exception("更新库位货物形态字段信息出错了"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | throw new CoolException("货物形态转换出错了:"+e); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|