|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.common.domain.param.PickConfirmParam; | 
|---|
|  |  |  | import com.zy.asrs.common.domain.param.PickMatParam; | 
|---|
|  |  |  | import com.zy.asrs.common.openapi.entity.param.CombParam; | 
|---|
|  |  |  | import com.zy.asrs.common.openapi.entity.param.WarehouseOutMergeBoardManyParam; | 
|---|
|  |  |  | import com.zy.asrs.common.openapi.entity.param.WarehouseOutPickMergeParam; | 
|---|
|  |  |  | import com.zy.asrs.common.sys.service.StaDescService; | 
|---|
|  |  |  | import com.zy.asrs.common.web.BaseController; | 
|---|
|  |  |  | import com.zy.asrs.common.wms.entity.*; | 
|---|
|  |  |  | 
|---|
|  |  |  | return mobileService.WarehouseOut(combParam,getHostId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping("/pda/WarehouseOut/v1") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R WarehouseOutV1(@RequestBody CombParam combParam){ | 
|---|
|  |  |  | return mobileService.WarehouseOutV1(combParam,getHostId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping("/pda/WarehouseOutPickMerge/v1") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R WarehouseOutPickMergeV1(@RequestBody WarehouseOutPickMergeParam param){ | 
|---|
|  |  |  | return mobileService.WarehouseOutPickMergeV1(param, getHostId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping("/pda/WarehouseOutMergeBoardMany/v1") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R WarehouseOutMergeBoardManyV1(@RequestBody WarehouseOutMergeBoardManyParam param){ | 
|---|
|  |  |  | return mobileService.WarehouseOutMergeBoardMany(param, getHostId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping("/menu/pda/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R menuPda(){ | 
|---|
|  |  |  | 
|---|
|  |  |  | List<Long> collect = rolePermissions.stream().map(RolePermission::getPermissionId).distinct().collect(Collectors.toList()); | 
|---|
|  |  |  | List<Permission> permissions = permissionService.listByIds(collect); | 
|---|
|  |  |  | return R.ok().add(permissions); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 入库制令检测  -- 指令在库存里面借用批号字段batch | 
|---|
|  |  |  | * 1.可正常入库 | 
|---|
|  |  |  | * 2.库存包含相同制令货物,是否进行补货 | 
|---|
|  |  |  | * 3.工作档存在正在入库任务,拒绝入库 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/pda/decrees/check") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R pdaDecreesCheck(@RequestParam String decrees){ | 
|---|
|  |  |  | if (Cools.isEmpty(decrees)) { | 
|---|
|  |  |  | return R.error("制令不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Long hostId = getHostId(); | 
|---|
|  |  |  | //查询是否有库存 | 
|---|
|  |  |  | List<LocDetl> list = locDetlService.list(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getBatch, decrees)); | 
|---|
|  |  |  | //查询是否有正在工作的工作档 | 
|---|
|  |  |  | List<WrkDetl> wrkDetls = wrkDetlService.list(new LambdaQueryWrapper<WrkDetl>().eq(WrkDetl::getBatch, decrees)); | 
|---|
|  |  |  | HashMap<String, Object> map = new HashMap<>(); | 
|---|
|  |  |  | if(list.isEmpty() && wrkDetls.isEmpty()){ | 
|---|
|  |  |  | map.put("status", 1);//可正常入库 | 
|---|
|  |  |  | } else if (!wrkDetls.isEmpty()) { | 
|---|
|  |  |  | map.put("status", 3);//存在工作档,拒绝入库 | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | //获取库存最少的一条记录 | 
|---|
|  |  |  | Double anfme = 999999999D; | 
|---|
|  |  |  | LocDetl miniLocDetl = null; | 
|---|
|  |  |  | for (LocDetl locDetl : list) { | 
|---|
|  |  |  | if (locDetl.getAnfme() < anfme) { | 
|---|
|  |  |  | anfme = locDetl.getAnfme(); | 
|---|
|  |  |  | miniLocDetl = locDetl; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | map.put("status", 2);//库存包含相同制令货物,是否进行补货 | 
|---|
|  |  |  | map.put("data", miniLocDetl);//库存信息 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok().add(map); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping("/barcode/list/all") | 
|---|
|  |  |  | @ManagerAuth(memo = "并板入库途中拣料出库获取任务信息") | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public R orderOutListOrder(@RequestBody String barcode) { | 
|---|
|  |  |  | ArrayList<WrkMast> wrkMastArrayList = new ArrayList<>(); | 
|---|
|  |  |  | if (Cools.isEmpty(barcode) || barcode.isEmpty()){ | 
|---|
|  |  |  | List<WrkMast> wrkMasts = wrkMastService.list(new LambdaQueryWrapper<WrkMast>() | 
|---|
|  |  |  | .eq(WrkMast::getHostId, getHostId()) | 
|---|
|  |  |  | .eq(WrkMast::getWrkSts, 199L) | 
|---|
|  |  |  | .eq(WrkMast::getIoType, 104)); | 
|---|
|  |  |  | wrkMastArrayList.addAll(wrkMasts); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | List<WrkMast> wrkMasts = wrkMastService.list(new LambdaQueryWrapper<WrkMast>() | 
|---|
|  |  |  | .like(WrkMast::getBarcode, barcode) | 
|---|
|  |  |  | .eq(WrkMast::getHostId, getHostId()) | 
|---|
|  |  |  | .eq(WrkMast::getWrkSts, 199L) | 
|---|
|  |  |  | .eq(WrkMast::getIoType, 104) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | wrkMastArrayList.addAll(wrkMasts); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return R.ok().add(wrkMastArrayList); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping("/barcode/list/pick") | 
|---|
|  |  |  | @ManagerAuth(memo = "拣料入库途中并板") | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public R orderOutListOrderPick(@RequestBody String barcode) { | 
|---|
|  |  |  | ArrayList<WrkMast> wrkMastArrayList = new ArrayList<>(); | 
|---|
|  |  |  | if (Cools.isEmpty(barcode) || barcode.isEmpty()){ | 
|---|
|  |  |  | List<WrkMast> wrkMasts = wrkMastService.list(new LambdaQueryWrapper<WrkMast>() | 
|---|
|  |  |  | .eq(WrkMast::getHostId, getHostId()) | 
|---|
|  |  |  | .eq(WrkMast::getWrkSts, 199L) | 
|---|
|  |  |  | .eq(WrkMast::getIoType, 103)); | 
|---|
|  |  |  | wrkMastArrayList.addAll(wrkMasts); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | List<WrkMast> wrkMasts = wrkMastService.list(new LambdaQueryWrapper<WrkMast>() | 
|---|
|  |  |  | .like(WrkMast::getBarcode, barcode) | 
|---|
|  |  |  | .eq(WrkMast::getHostId, getHostId()) | 
|---|
|  |  |  | .eq(WrkMast::getWrkSts, 199L) | 
|---|
|  |  |  | .eq(WrkMast::getIoType, 103) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | wrkMastArrayList.addAll(wrkMasts); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return R.ok().add(wrkMastArrayList); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|