| | |
| | | alias="LC"; |
| | | }else if(Objects.equals(type, "返工")){ |
| | | alias="FG"; |
| | | }else if(Objects.equals(type, "调架")){ |
| | | alias="TJ"; |
| | | } |
| | | //查询当天的最大数量 |
| | | Integer maximum=finishedOperateLogMapper.getmaximum(type); |
| | |
| | | } |
| | | |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | itemmap.put("detail", finishedOperateLogMapper.getPrimaryListLimts(finishedOperateLog.getOrder().getCustomerName(),finishedOperateLog.getOrder().getProject(),finishedOperateLog.getRemarks())); |
| | | itemmap.put("detail", finishedOperateLogMapper.getPrimaryListLimts( |
| | | finishedOperateLog.getOrder().getCustomerId(), |
| | | finishedOperateLog.getOrder().getProject(), |
| | | finishedOperateLog.getRemarks())); |
| | | |
| | | List<Map<String, Object>> detailList = finishedOperateLogMapper.getDetailList2(finishedOperateLog.getOrderId(),finishedOperateLog.getProcessId(),finishedOperateLog.getRemarks()); |
| | | |
| | |
| | | if(delivery!=null){ |
| | | return "false1"; |
| | | } |
| | | if(!Objects.equals(existFinishedGoodsInventory.getQuantityAvailable(), finishedOperateLog.getQuantity())){ |
| | | if(existFinishedGoodsInventory.getQuantityAvailable()<finishedOperateLog.getQuantity()){ |
| | | return "false2"; |
| | | } |
| | | |
| | |
| | | return "true"; |
| | | } |
| | | |
| | | public Map<String,Object> changeRack(FinishedGoodsInventory finishedGoodsInventory) { |
| | | public Map<String,Object> changeRack(FinishedGoodsInventory finishedGoodsInventory, String user) { |
| | | Long id = finishedGoodsInventory.getId(); |
| | | Map<String,Object> map = new HashMap<>(); |
| | | FinishedGoodsInventory oldFinishedGoodsInventory = finishedGoodsInventoryMapper.selectById(finishedGoodsInventory.getId()); |
| | |
| | | .eq(FinishedGoodsInventory::getBoxNo, finishedGoodsInventory.getBoxNo()) |
| | | .last("limit 1") |
| | | ); |
| | | String operationOrderNumber = orderNumberSetting("调架"); |
| | | FinishedOperateLog finishedOperateLog = new FinishedOperateLog(); |
| | | finishedOperateLog.setOperationOrderNumber(operationOrderNumber); |
| | | finishedOperateLog.setOrderId(oldFinishedGoodsInventory.getOrderId()); |
| | | finishedOperateLog.setOperationNumber(oldFinishedGoodsInventory.getOrderNumber()); |
| | | finishedOperateLog.setProcessId(oldFinishedGoodsInventory.getProcessId()); |
| | | finishedOperateLog.setOperateType("调架"); |
| | | finishedOperateLog.setOperator(user); |
| | | //当成品箱号不存在,则新增 |
| | | if(existFinishedGoodsInventory==null){ |
| | | //当转移数量大于实际库存箱号时,则不能转移 |
| | |
| | | .eq(FinishedGoodsInventory::getId,id) |
| | | ) ; |
| | | finishedGoodsInventoryMapper.insert(finishedGoodsInventory); |
| | | |
| | | |
| | | //往操作日志表添加数据 |
| | | finishedOperateLog.setQuantity(finishedGoodsInventory.getQuantityAvailable()); |
| | | finishedOperateLog.setRemarks(oldFinishedGoodsInventory.getBoxNo()+"->"+finishedGoodsInventory.getBoxNo()); |
| | | finishedOperateLogMapper.insert(finishedOperateLog); |
| | | |
| | | map.put("code",1); |
| | | return map;//库存转移成功,新增箱号 |
| | | |
| | |
| | | .eq(FinishedGoodsInventory::getId,existFinishedGoodsInventory.getId()) |
| | | ) ; |
| | | |
| | | //往操作日志表添加数据 |
| | | finishedOperateLog.setQuantity(finishedGoodsInventory.getQuantityAvailable()); |
| | | finishedOperateLog.setRemarks(oldFinishedGoodsInventory.getBoxNo()+"->"+existFinishedGoodsInventory.getBoxNo()); |
| | | finishedOperateLogMapper.insert(finishedOperateLog); |
| | | |
| | | map.put("code",3); |
| | | List<String> list = new ArrayList<>(); |
| | | list.add(oldFinishedGoodsInventory.getBoxNo()); |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | public Map<String, Object> getInventoryPrints(List<FinishedGoodsInventory> finishedGoodsInventories) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//最终结果 |
| | | if (!finishedGoodsInventories.isEmpty()) { |
| | | Set<String> processedProcessIds = new HashSet<>(); |
| | | for (FinishedGoodsInventory finishedGoodsInventory : finishedGoodsInventories) { |
| | | String orderId = finishedGoodsInventory.getOrderId(); |
| | | String boxNo = finishedGoodsInventory.getBoxNo(); |
| | | |
| | | // 检查是否已经处理过该 OrderId,如果处理过则跳过 |
| | | if (processedProcessIds.contains(orderId) && processedProcessIds.contains(boxNo)) { |
| | | continue; |
| | | } |
| | | |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | List<Map<String, String>> detail = finishedGoodsInventoryMapper.getPrintTitleByBox( |
| | | finishedGoodsInventory.getOrder().getCustomerId(), |
| | | finishedGoodsInventory.getOrder().getProject(), |
| | | boxNo, |
| | | orderId |
| | | ); |
| | | |
| | | itemmap.put("detail",detail); |
| | | //获取库存里面此订单此箱号的所有产品信息 |
| | | List<Map<String, Object>> detailList = finishedGoodsInventoryMapper |
| | | .getorderProductByBoxNo(orderId,boxNo); |
| | | |
| | | List<Map<String, Object>> detailsmaplist = new ArrayList<Map<String, Object>>(); |
| | | |
| | | for(Map<String, Object> details:detailList){ |
| | | Map<String, Object> detailsmap = new HashMap<>(); |
| | | detailsmap.put("product_name",details.get("product_name").toString()); |
| | | //获取明细数据 |
| | | List<Map<String, Object>> orderDetailList = finishedGoodsInventoryMapper |
| | | .getPrintDetail( |
| | | orderId, |
| | | boxNo, |
| | | Integer.valueOf(details.get("product_id").toString()), |
| | | details.get("thickness").toString() |
| | | ); |
| | | |
| | | detailsmap.put("detailList",orderDetailList); |
| | | detailsmaplist.add(detailsmap); |
| | | |
| | | } |
| | | itemmap.put("detailList", detailsmaplist); |
| | | list.add(itemmap); |
| | | |
| | | |
| | | processedProcessIds.add(orderId); |
| | | processedProcessIds.add(boxNo); |
| | | } |
| | | } |
| | | map.put("data", list); |
| | | return map; |
| | | } |
| | | } |