From c140603c72362f7a5b2a48030eff33558e24582c Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期一, 01 七月 2024 10:54:11 +0800
Subject: [PATCH] 添加报工新增界面复制功能,修改为点击次破数量列才能进入次破明细界面,改善流程卡打印排序功能
---
north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java | 101 ++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 88 insertions(+), 13 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java
index 0383287..ff634d8 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java
@@ -1,9 +1,11 @@
package com.example.erp.service.mm;
+import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.example.erp.entity.mm.*;
+import com.example.erp.entity.pp.OptimizeUse;
import com.example.erp.entity.sd.Delivery;
import com.example.erp.entity.sd.DeliveryDetail;
import com.example.erp.entity.sd.OrderDetail;
@@ -16,11 +18,14 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
+import java.util.List;
+import java.util.ArrayList;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
+import java.util.stream.Collectors;
@Service
@DS("mm")
@@ -56,6 +61,14 @@
for (MaterialOutboundDetail materialOutboundDetail : materialOutboundDetailLists) {
//杩樺師鐗╂枡搴撳瓨鏁�
materialInventoryMapper.updateMaterialInventoryAvailableInt(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity());
+ /*if(materialOutboundDetail.getUseId()!=null){
+ //杩樺師浼樺寲宸ョ▼搴撳瓨鏁�
+ materialInventoryMapper.updateMaterialInventoryAvailableOptInt(materialOutboundDetail.getUseId(), materialOutboundDetail.getOutboundQuantity());
+ }else{
+ //杩樺師鐗╂枡搴撳瓨鏁�
+ materialInventoryMapper.updateMaterialInventoryAvailableInt(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity());
+ }*/
+
}
}
//鍒犻櫎鏉愭枡鍑哄簱鏄庣粏鐨勬暟鎹�
@@ -77,8 +90,15 @@
//鏂板鏉愭枡鍑哄簱鏄庣粏鏁版嵁
materialInventoryMapper.insertMaterialOutboundDetail(materialOutboundDetail, oddNumber, materialOutboundDetailMaximum + 1);
//淇敼鐗╂枡搴撳瓨琛ㄥ嚭搴撴暟閲�
- System.out.println(materialOutboundDetail.getInventoryId());
materialInventoryMapper.updateMaterialInventoryAvailableOut(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity());
+ /*if(materialOutboundDetail.getUseId()!=null){
+ //淇敼浼樺寲宸ョ▼琛ㄥ嚭搴撴暟閲�
+ materialInventoryMapper.updateMaterialInventoryAvailableOptOut(materialOutboundDetail.getUseId(), materialOutboundDetail.getOutboundQuantity());
+ }else{
+ //淇敼鐗╂枡搴撳瓨琛ㄥ嚭搴撴暟閲�
+ materialInventoryMapper.updateMaterialInventoryAvailableOut(materialOutboundDetail.getId(), materialOutboundDetail.getOutboundQuantity());
+ }*/
+
}
@@ -149,12 +169,52 @@
return map;
}
+ public Map<String, Object> getSelectMaterialInventoryEngineeringDate(Integer pageNum, Integer pageSize, List<String> selectDate, MaterialInventory materialInventory) {
+ Integer offset = (pageNum - 1) * pageSize;
+ String endDate = LocalDate.now().toString();
+ String startDate = LocalDate.now().minusDays(15).toString();
+ if(selectDate !=null && selectDate.size()==2){
+ if(!selectDate.get(0).isEmpty()){
+ startDate = selectDate.get(0);
+ }
+ if(!selectDate.get(1).isEmpty()){
+ endDate = selectDate.get(1);
+ }
+ }
+ Map<String, Object> map = new HashMap<>();
+ map.put("data", materialInventoryMapper.getSelectMaterialInventoryEngineeringDate(offset, pageSize,startDate, endDate, materialInventory));
+ map.put("total", materialInventoryMapper.getSelectMaterialInventoryEngineeringDatePageTotal(offset, pageSize,startDate, endDate, materialInventory));
+ List<String> list = new ArrayList<>();
+ list.add(startDate);
+ list.add(endDate);
+ map.put("selectDate",list);
+ return map;
+ }
+
public Map<String, Object> getSelectMaterialInventory(Integer pageNum, Integer pageSize, MaterialInventory materialInventory) {
Integer offset = (pageNum - 1) * pageSize;
Map<String, Object> map = new HashMap<>();
- map.put("data", materialInventoryMapper.getSelectMaterialInventory(offset, pageSize, materialInventory));
- map.put("total", materialInventoryMapper.getSelectMaterialInventoryPageTotal(offset, pageSize, materialInventory));
+ List<Long> ids=new ArrayList<>();;
+ if(materialInventory.getStockId()!=null && !materialInventory.getStockId().isEmpty()){
+ List<String> result = StrUtil.split(materialInventory.getStockId(), '|');
+ ids=result.stream().map(Long::valueOf).collect(Collectors.toList());
+ }
+ map.put("data", materialInventoryMapper.getSelectMaterialInventory(offset, pageSize, materialInventory,ids));
+ map.put("total", materialInventoryMapper.getSelectMaterialInventoryPageTotal(offset, pageSize, materialInventory,ids));
+ return map;
+ }
+
+ public Map<String, Object> getSelectMaterialInventoryEngineering(Integer pageNum, Integer pageSize, OptimizeUse optimizeUse) {
+ Integer offset = (pageNum - 1) * pageSize;
+ Map<String, Object> map = new HashMap<>();
+ List<Long> ids=new ArrayList<>();;
+ if(optimizeUse.getRawStockCode()!=null && !optimizeUse.getRawStockCode().isEmpty()){
+ List<String> result = StrUtil.split(optimizeUse.getRawStockCode(), '|');
+ ids=result.stream().map(Long::valueOf).collect(Collectors.toList());
+ }
+ map.put("data", materialInventoryMapper.getSelectMaterialInventoryEngineering(offset, pageSize, optimizeUse,ids));
+ map.put("total", materialInventoryMapper.getSelectMaterialInventoryEngineeringPageTotal(offset, pageSize, optimizeUse,ids));
return map;
}
@@ -213,12 +273,21 @@
public Map<String, Object> getSelectMaterialOutbound(Integer pageNum, Integer pageSize, MaterialOutboundDetail materialOutboundDetail) {
Integer offset = (pageNum - 1) * pageSize;
Map<String, Object> map = new HashMap<>();
- System.out.println("鏁版嵁"+materialOutboundDetail);
- map.put("materialOutbound", materialInventoryMapper.getSelectMaterialOutbound(offset, pageSize, materialOutboundDetail));
- map.put("data", materialInventoryMapper.getSelectMaterialOutboundDetail(offset, pageSize, materialOutboundDetail));
- map.put("total", materialInventoryMapper.getSelectMaterialOutboundDetailPageTotal(offset, pageSize, materialOutboundDetail));
+ List<MaterialOutboundDetail> materialOutboundDetailList= materialInventoryMapper.SelectMaterialOutboundDetail(offset, pageSize, materialOutboundDetail);
+ if(materialOutboundDetailList.get(0).getUseId()==null){
+ map.put("materialOutbound", materialInventoryMapper.getSelectMaterialOutbound(offset, pageSize, materialOutboundDetail));
+ map.put("data", materialInventoryMapper.getSelectMaterialOutboundDetail(offset, pageSize, materialOutboundDetail));
+ map.put("total", materialInventoryMapper.getSelectMaterialOutboundDetailPageTotal(offset, pageSize, materialOutboundDetail));
+ }else{
+ map.put("materialOutbound", materialInventoryMapper.getSelectMaterialOutbound(offset, pageSize, materialOutboundDetail));
+ map.put("data", materialInventoryMapper.getSelectMaterialOutboundEngineering(offset, pageSize, materialOutboundDetail));
+ map.put("total", materialInventoryMapper.getSelectMaterialOutboundDetailPageTotal(offset, pageSize, materialOutboundDetail));
+ }
+
return map;
}
+
+
public Boolean updateMaterialOutboundToExamine(Map<String,Object> object) {
boolean saveState = true;
@@ -243,8 +312,11 @@
List<MaterialOutboundDetail> materialOutboundDetailList = materialInventoryMapper.getIsNotMaterialOutboundDetail(materialOutboundId);
if (!materialOutboundDetailList.isEmpty()) {
for (MaterialOutboundDetail materialOutboundDetail : materialOutboundDetailList) {
- //淇敼鐗╂枡搴撳瓨鏁伴噺
- materialInventoryMapper.updateMaterialInventoryInventoryOut(materialOutboundDetail.getInventoryId(), materialOutboundDetail.getOutboundQuantity());
+
+ //淇敼鐗╂枡搴撳瓨鏁伴噺
+ materialInventoryMapper.updateMaterialInventoryInventoryOut(materialOutboundDetail.getInventoryId(), materialOutboundDetail.getOutboundQuantity());
+
+
}
}
materialInventoryMapper.updateMaterialOutboundToExamine(materialOutboundId,type,reviewed);
@@ -252,8 +324,11 @@
List<MaterialOutboundDetail> materialOutboundDetailList = materialInventoryMapper.getIsNotMaterialOutboundDetail(materialOutboundId);
if (!materialOutboundDetailList.isEmpty()) {
for (MaterialOutboundDetail materialOutboundDetail : materialOutboundDetailList) {
- //淇敼鐗╂枡搴撳瓨鏁伴噺
- materialInventoryMapper.updateMaterialInventoryInventoryInt(materialOutboundDetail.getInventoryId(), materialOutboundDetail.getOutboundQuantity());
+
+ //淇敼鐗╂枡搴撳瓨鏁伴噺
+ materialInventoryMapper.updateMaterialInventoryInventoryInt(materialOutboundDetail.getInventoryId(), materialOutboundDetail.getOutboundQuantity());
+
+
}
}
materialInventoryMapper.updateMaterialOutboundCounterExamination(materialOutboundId,type,reviewed);
@@ -405,7 +480,7 @@
if (!returningWarehouseDetailList.isEmpty()) {
for (ReturningWarehouseDetail returningWarehouseDetail : returningWarehouseDetailList) {
//淇敼鐗╂枡搴撳瓨鏁伴噺
- materialInventoryMapper.updateMaterialInventoryAvailableInt(returningWarehouseDetail.getInventoryId(), returningWarehouseDetail.getReturnQuantity());
+ materialInventoryMapper.updateMaterialInventoryInventoryInt(returningWarehouseDetail.getInventoryId(), returningWarehouseDetail.getReturnQuantity());
}
}
materialInventoryMapper.updateReturningWarehouseToExamine(returningId,type,reviewed);
@@ -414,7 +489,7 @@
if (!returningWarehouseDetailList.isEmpty()) {
for (ReturningWarehouseDetail returningWarehouseDetail : returningWarehouseDetailList) {
//淇敼鐗╂枡搴撳瓨鏁伴噺
- materialInventoryMapper.updateMaterialInventoryAvailableOut(returningWarehouseDetail.getInventoryId(), returningWarehouseDetail.getReturnQuantity());
+ materialInventoryMapper.updateMaterialInventoryInventoryOut(returningWarehouseDetail.getInventoryId(), returningWarehouseDetail.getReturnQuantity());
}
}
materialInventoryMapper.updateReturningWarehouseCounterExamination(returningId,type,reviewed);
--
Gitblit v1.8.0