diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java index 52c29dd..5f7013d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java @@ -5,6 +5,8 @@ import cn.hutool.core.convert.Convert; import cn.hutool.core.util.StrUtil; import com.ruoyi.bas.cargoSpace.domain.BasCargoSpace; import com.ruoyi.bas.cargoSpace.service.IBasCargoSpaceService; +import com.ruoyi.bas.containerDetails.domain.BasContainerDetails; +import com.ruoyi.bas.containerDetails.service.IBasContainerDetailsService; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.job.mydojob.domain.MydoJob; import com.ruoyi.job.mydojob.service.IMydoJobService; @@ -48,6 +50,8 @@ public class PdaServiceImp implements PdaService{ IInStockinDetailService inStockinDetailService; @Autowired ITrayMsgService trayMsgService; + @Autowired + private IBasContainerDetailsService basContainerDetailsService; /** * 空托盘入库 @@ -184,14 +188,32 @@ public class PdaServiceImp implements PdaService{ public AjaxResult outMakeSure(TrayCodeMakeSure trayCodeMakeSure) { //修改拣选数量 List mydoJobDetailList = trayCodeMakeSure.getMydoJobDetailList(); - for (MydoJobDetail mydoJobDetail : mydoJobDetailList) { - MydoJobDetail mydoJobDetailOld = mydoJobDetailService.selectMydoJobDetailByJobDetailId(mydoJobDetail.getJobDetailId()); - BigDecimal oldPickQuantity = Convert.toBigDecimal(mydoJobDetailOld.getPickQuantity()); - BigDecimal newPickQuantity = Convert.toBigDecimal(mydoJobDetail.getPickQuantity()); - mydoJobDetail.setPickQuantity(oldPickQuantity.add(newPickQuantity).toString()); - mydoJobDetailService.updateMydoJobDetail(mydoJobDetail); - } + if(CollUtil.isNotEmpty(mydoJobDetailList)){ + for (MydoJobDetail mydoJobDetail : mydoJobDetailList) { + MydoJobDetail mydoJobDetailOld = mydoJobDetailService.selectMydoJobDetailByJobDetailId(mydoJobDetail.getJobDetailId()); + BigDecimal oldPickQuantity = Convert.toBigDecimal(mydoJobDetailOld.getPickQuantity()); + BigDecimal newPickQuantity = Convert.toBigDecimal(mydoJobDetail.getPickQuantity()); + mydoJobDetailOld.setPickQuantity(oldPickQuantity.add(newPickQuantity).toString()); + mydoJobDetailService.updateMydoJobDetail(mydoJobDetailOld); + BasContainerDetails basContainerDetailsParam = new BasContainerDetails(); + basContainerDetailsParam.setContainerId(trayCodeMakeSure.getContainerCode()); + basContainerDetailsParam.setProductId(mydoJobDetailOld.getProductId()); + List basContainerDetails = basContainerDetailsService.selectBasContainerDetailsList(basContainerDetailsParam); + if (CollUtil.isNotEmpty(basContainerDetails)){ + BasContainerDetails oldBasContainerDetails = basContainerDetails.get(0); + oldBasContainerDetails.setQuantity(oldBasContainerDetails.getQuantity()+Convert.toLong(mydoJobDetail.getPickQuantity())); + basContainerDetailsService.updateBasContainerDetails(oldBasContainerDetails); + }else { + BasContainerDetails newBasContainerDetails = new BasContainerDetails(); + newBasContainerDetails.setContainerId(trayCodeMakeSure.getContainerCode()); + newBasContainerDetails.setProductId(mydoJobDetail.getProductId()); + newBasContainerDetails.setQuantity(Convert.toLong(mydoJobDetail.getPickQuantity())); + basContainerDetailsService.insertBasContainerDetails(newBasContainerDetails); + } + } + + } //查询当前任务是否已经全部拣选完成 MydoJob mydoJobParam = new MydoJob(); mydoJobParam.setTrayCode(trayCodeMakeSure.getTrayCode()); diff --git a/ruoyi-ui/src/views/system/role/index.vue b/ruoyi-ui/src/views/system/role/index.vue index bde79a5..3cb1c5f 100644 --- a/ruoyi-ui/src/views/system/role/index.vue +++ b/ruoyi-ui/src/views/system/role/index.vue @@ -308,8 +308,17 @@