| | |
| | | import com.core.annotations.AppAuth; |
| | | import com.core.common.*; |
| | | import com.core.exception.CoolException; |
| | | import com.google.common.collect.Lists; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.entity.param.*; |
| | | import com.zy.asrs.service.LocDetlService; |
| | |
| | | import com.zy.common.model.DetlDto; |
| | | import com.zy.common.model.LocDetlDto; |
| | | import com.zy.common.model.enums.WorkNoType; |
| | | import com.zy.common.utils.Synchro; |
| | | import com.zy.common.web.BaseController; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | return R.ok().add(openService.pakinOrderComplete(param)); |
| | | } |
| | | |
| | | /** |
| | | * 添加出库单 |
| | | */ |
| | | @PostMapping("/order/pakout/default/v1") |
| | | @AppAuth(memo = "添加订单出库") |
| | | public synchronized R pakoutOrderCreate(@RequestHeader(required = false) String appkey, |
| | | @RequestBody OpenOrderPakoutParam param, |
| | | HttpServletRequest request) { |
| | | auth(appkey, param, request); |
| | | if (Cools.isEmpty(param)) { |
| | | return R.parse(BaseRes.PARAM); |
| | | } |
| | | if (Cools.isEmpty(param.getOrderNo())) { |
| | | return R.error("单据编号[orderNo]不能为空"); |
| | | } |
| | | if (Cools.isEmpty(param.getOrderType())) { |
| | | return R.error("单据类型[orderType]不能为空"); |
| | | } |
| | | if (Cools.isEmpty(param.getOrderDetails())) { |
| | | return R.error("单据明细[orderDetails]不能为空"); |
| | | } |
| | | openService.pakoutOrderCreate(param); |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 出库单回写 |
| | |
| | | * 托盘就绪状态查询 |
| | | */ |
| | | @PostMapping("/arm/task/loc_status") |
| | | @AppAuth(memo = "托盘就绪状态查询") |
| | | // @AppAuth(memo = "托盘就绪状态查询") |
| | | public synchronized R TaskArmLocStatus(@RequestHeader(required = false) String appkey, |
| | | @RequestBody ArmOKParam param, |
| | | HttpServletRequest request) { |
| | |
| | | * 异常上报 |
| | | */ |
| | | @PostMapping("/armAbnormalOperation") |
| | | @AppAuth(memo = "异常上报") |
| | | // @AppAuth(memo = "异常上报") |
| | | public synchronized R ArmAbnormalOperation(@RequestHeader(required = false) String appkey, |
| | | @RequestBody TaskArmErrorParam param, |
| | | HttpServletRequest request) { |
| | |
| | | * 订单完成上报 |
| | | */ |
| | | @PostMapping("/arm/task/order_result") |
| | | @AppAuth(memo = "订单完成上报") |
| | | // @AppAuth(memo = "订单完成上报") |
| | | public synchronized R TaskArmWorkOrderStatus(@RequestHeader(required = false) String appkey, |
| | | @RequestBody OrderArmEndParam param, |
| | | HttpServletRequest request) { |
| | |
| | | */ |
| | | @PostMapping("/comb/auth") |
| | | public synchronized R comb(@RequestBody ArrayList<MesToCombParam> param){ |
| | | List<MesToCombReturnParam> errorComb = Lists.newArrayList(); |
| | | for (MesToCombParam mesToCombParam : param) { |
| | | // 判断是否有相同条码的数据 |
| | | if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>(). |
| | | eq("zpallet", mesToCombParam.getPalletId()).eq("io_status", "N")) > 0) { |
| | | return R.error(mesToCombParam.getPalletId()+"-该托盘码已经存在组托档中"); |
| | | } |
| | | |
| | | if (mesToCombParam.getPalletId().length() != 8) { |
| | | return R.error(mesToCombParam.getPalletId()+"-该托盘码不为8位"); |
| | | } |
| | | // if (mesToCombParam.getPalletId().length() != 8) { |
| | | // return R.error(mesToCombParam.getPalletId()+"-该托盘码不为8位"); |
| | | // } |
| | | // if (param.getCombMats().size()>1){ |
| | | // throw new CoolException("不允许混料===>>" + param.getBarcode()); |
| | | // } |
| | |
| | | int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", mesToCombParam.getPalletId())); |
| | | // int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getPalletId())); |
| | | if (countLoc > 0 || countWrk > 0) { |
| | | return R.error(mesToCombParam.getPalletId()+"-工作档/库存条码数据已存在"); |
| | | MesToCombReturnParam mesToCombReturnParam = new MesToCombReturnParam(); |
| | | Synchro.Copy(mesToCombParam, mesToCombReturnParam); |
| | | errorComb.add(mesToCombReturnParam); |
| | | // return R.error(mesToCombParam.getPalletId()+"-工作档/库存条码数据已存在"); |
| | | } |
| | | // 判断是否有相同条码的数据 |
| | | if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>(). |
| | | eq("zpallet", mesToCombParam.getPalletId()).eq("io_status", "N")) > 0) { |
| | | waitPakinService.delete(new EntityWrapper<WaitPakin>().eq("zpallet", mesToCombParam.getPalletId())); |
| | | } |
| | | } |
| | | for (MesToCombParam mesToCombParam : param) { |
| | | openService.mesToComb(mesToCombParam); |
| | | } |
| | | // TODO:待测试 |
| | | if(errorComb.size() > 0) { |
| | | return R.error("托盘已在库存中/已开始入库").add(errorComb); |
| | | } |
| | | |
| | | return R.ok(); |
| | |
| | | |
| | | @PostMapping("/outOrder") |
| | | public synchronized R outOrder (@RequestBody ArrayList<OutTaskParam> params){ |
| | | List<OutTaskReturnParam> errorOutOrders = Lists.newArrayList(); |
| | | for (OutTaskParam outTaskParam : params) { |
| | | openService.outOrder(outTaskParam); |
| | | // TODO:待測試,校驗庫存信息,不存在則返回 |
| | | int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", outTaskParam.getPalletId())); |
| | | if (countLoc == 0){ |
| | | OutTaskReturnParam outTaskReturnParam = new OutTaskReturnParam(); |
| | | Synchro.Copy(outTaskParam, outTaskReturnParam); |
| | | errorOutOrders.add(outTaskReturnParam); |
| | | |
| | | params.remove(outTaskParam); |
| | | } |
| | | } |
| | | |
| | | for (OutTaskParam outTaskParam : params) { |
| | | R r = openService.outOrder(outTaskParam); |
| | | if (!r.get("code").equals(200)){ |
| | | return r; |
| | | } |
| | | } |
| | | |
| | | if(errorOutOrders.size() > 0) { |
| | | return R.error("库存中不存在该托盘").add(errorOutOrders); |
| | | } |
| | | |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * pause out order |
| | | */ |
| | | @PostMapping("/order/pakout/pause/default/v1") |
| | | public synchronized R pakoutOrderPause(@RequestBody OpenOrderPakoutPauseParam param){ |
| | | if (Cools.isEmpty(param) || Cools.isEmpty(param.getOrderId())) { |
| | | return R.error("orderNo is empty"); |
| | | } |
| | | return openService.pakoutOrderPause(param); |
| | | } |
| | | } |
| | | |