| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.zy.asrs.common.utils.TreeUtils; |
| | | import com.zy.asrs.common.wms.entity.LocDetl; |
| | | import com.zy.asrs.common.wms.entity.LocMast; |
| | | import com.zy.asrs.common.wms.entity.Mat; |
| | | import com.zy.asrs.common.wms.entity.OrderDetl; |
| | | import com.zy.asrs.common.wms.service.LocDetlService; |
| | | import com.zy.asrs.common.wms.service.LocMastService; |
| | | import com.zy.asrs.common.wms.service.MatService; |
| | | import com.zy.asrs.common.wms.entity.*; |
| | | import com.zy.asrs.common.wms.service.*; |
| | | import com.zy.asrs.framework.annotations.ManagerAuth; |
| | | import com.zy.asrs.framework.common.Cools; |
| | | import com.zy.asrs.framework.common.R; |
| | |
| | | private LocDetlService locDetlService; |
| | | @Autowired |
| | | private LocMastService locMastService; |
| | | @Autowired |
| | | private WrkMastService wrkMastService; |
| | | @Autowired |
| | | private WrkDetlService wrkDetlService; |
| | | |
| | | @RequestMapping(value = "/mat/{id}/auth") |
| | | @ManagerAuth |
| | |
| | | } |
| | | OrderDetl orderDetl = new OrderDetl(); |
| | | orderDetl.sync(mat); |
| | | orderDetl.setBatch(""); |
| | | orderDetl.setAnfme(0.0D); |
| | | return R.ok().add(orderDetl); |
| | | } |
| | |
| | | return R.ok(locDetls); |
| | | } |
| | | |
| | | @GetMapping("/mat/synchronous") |
| | | @ManagerAuth |
| | | public R synchronous(){ |
| | | int wrkConut=wrkMastService.count(new LambdaQueryWrapper<WrkMast>()); |
| | | if(wrkConut>0){ |
| | | return R.error("有工作中的任務,禁止同步库存信息"); |
| | | } |
| | | List<Mat> mats=matService.list(); |
| | | for (Mat mat:mats |
| | | ) { |
| | | List<LocDetl>locDetls=locDetlService.list(new LambdaQueryWrapper<LocDetl>() |
| | | .eq(LocDetl::getMatnr,mat.getMatnr())); |
| | | for (LocDetl locDetl:locDetls |
| | | ) { |
| | | locDetl.setMaktx(mat.getMaktx()); |
| | | |
| | | if(!Cools.isEmpty(mat.getSpecs())){ |
| | | locDetl.setSpecs(mat.getSpecs()); |
| | | }else{ |
| | | locDetl.setSpecs(""); |
| | | } |
| | | if(!Cools.isEmpty(mat.getModel())){ |
| | | locDetl.setModel(mat.getModel()); |
| | | }else { |
| | | locDetl.setModel(""); |
| | | } |
| | | if(!Cools.isEmpty(mat.getSku())){ |
| | | locDetl.setSku(mat.getSku()); |
| | | }else { |
| | | locDetl.setSku(""); |
| | | } |
| | | //图号 |
| | | if(!Cools.isEmpty(mat.getImgNum())){ |
| | | locDetl.setItemNum(mat.getImgNum()); |
| | | }else { |
| | | locDetl.setItemNum(""); |
| | | } |
| | | // if(!Cools.isEmpty(mat.getWeight())){ |
| | | // locDetl.setWeight(Double.parseDouble(mat.getWeight())); |
| | | // }else { |
| | | // locDetl.setWeight(0.0); |
| | | // } |
| | | // if(!Cools.isEmpty(mat.getLength())){ |
| | | // locDetl.setLength(Double.parseDouble(mat.getLength())); |
| | | // }else { |
| | | // locDetl.setLength(0.0); |
| | | // } |
| | | locDetlService.updateById(locDetl); |
| | | } |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @PostMapping("/mat/sync") |
| | | @ManagerAuth |
| | | public R synchronous(@RequestBody Mat data) { |
| | | // 检查是否有任务中使用了该物料 |
| | | int wrkCount = wrkDetlService.count(new LambdaQueryWrapper<WrkDetl>() |
| | | .eq(WrkDetl::getMatnr, data.getMatnr())); |
| | | if (wrkCount > 0) { |
| | | return R.error("该物料正在被任务使用,禁止同步"); |
| | | } |
| | | |
| | | // 查询对应库存明细 |
| | | List<LocDetl> locDetls = locDetlService.list( |
| | | new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getMatnr, data.getMatnr()) |
| | | ); |
| | | |
| | | for (LocDetl locDetl : locDetls) { |
| | | locDetl.setMaktx(data.getMaktx()); |
| | | locDetl.setSpecs(Cools.isEmpty(data.getSpecs()) ? "" : data.getSpecs()); |
| | | locDetl.setModel(Cools.isEmpty(data.getModel()) ? "" : data.getModel()); |
| | | locDetl.setSku(Cools.isEmpty(data.getSku()) ? "" : data.getSku()); |
| | | locDetl.setItemNum(Cools.isEmpty(data.getImgNum()) ? "" : data.getImgNum()); |
| | | // 若需要同步重量和长度,取消注释 |
| | | // locDetl.setWeight(Cools.isEmpty(data.getWeight()) ? 0.0 : Double.parseDouble(data.getWeight())); |
| | | // locDetl.setLength(Cools.isEmpty(data.getLength()) ? 0.0 : Double.parseDouble(data.getLength())); |
| | | |
| | | locDetlService.updateById(locDetl); |
| | | } |
| | | |
| | | return R.ok(); |
| | | } |
| | | |
| | | } |