From 54c2f0fda44123782e5241ff7d1ad6e81c95f2b2 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期二, 12 十一月 2024 15:52:32 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override
---
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java | 131 ++++++++++++++++++++++++++-----------------
1 files changed, 78 insertions(+), 53 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
index 6d200f6..6de5b21 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
@@ -8,6 +8,7 @@
import com.example.erp.entity.mm.FinishedGoodsInventory;
import com.example.erp.entity.mm.FinishedOperateLog;
import com.example.erp.entity.pp.FlowCard;
+import com.example.erp.entity.sd.DeliveryDetail;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.entity.userInfo.Log;
@@ -66,8 +67,8 @@
return map;
}
- public Boolean addSelectWarehousing(Map<String,Object> object) {
- boolean saveState = true;
+ public String addSelectWarehousing(Map<String,Object> object) {
+ String saveState = "true";
Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
try {
//瀹氫箟鍓嶇浼犺緭鐨勬暟鎹�
@@ -110,42 +111,51 @@
Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber());
Integer ordersum = finishedGoodsInventoryMapper.findOrderQuantity(flowCard.getOrder().getOrderId());
Integer ordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(flowCard.getOrder().getOrderId());
-
- /*System.out.println("璁㈠崟鎬绘暟:" + ordersum + "宸插叆搴撴暟閲忥細" + ordernumbersum + "鍑嗗鍏ュ簱鏁伴噺" + flowCard.getInventoryQuantity());*/
- if (finishedGoodsInventorycount > 0) {
- //淇敼搴撳瓨琛ㄥ叆搴撴暟閲�
- finishedGoodsInventoryMapper.updateInventory(flowCard,storageRegion, remark);
- //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺
- finishedGoodsInventoryMapper.updateflowcard(flowCard);
- //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
- finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1);
- //淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲�
- finishedGoodsInventoryMapper.updateIntOrderNumberConut(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber(), Long.valueOf(flowCard.getInventoryQuantity()));
- //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍏ュ簱
- if (ordersum == (ordernumbersum + flowCard.getInventoryQuantity())) {
- //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
- finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),2);
- }
- } else {
- if (finishedGoodsInventoryMapper.insertFinishedGoodsInventory(flowCard, storageRegion, remark)) {
+ FlowCard flowCard1=finishedGoodsInventoryMapper.findFlowCard(flowCard);
+ //鍒ゆ柇搴撳瓨鏁版槸鍚﹀ぇ浜庢湭鍏ュ簱鏁�
+ if(flowCard1.getReceivedQuantity()+flowCard.getInventoryQuantity()<=flowCard1.getInventoryQuantity()){
+ /*System.out.println("璁㈠崟鎬绘暟:" + ordersum + "宸插叆搴撴暟閲忥細" + ordernumbersum + "鍑嗗鍏ュ簱鏁伴噺" + flowCard.getInventoryQuantity());*/
+ if (finishedGoodsInventorycount > 0) {
+ //淇敼搴撳瓨琛ㄥ叆搴撴暟閲�
+ finishedGoodsInventoryMapper.updateInventory(flowCard,storageRegion, remark);
//淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺
finishedGoodsInventoryMapper.updateflowcard(flowCard);
+ //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
+ finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1);
//淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲�
finishedGoodsInventoryMapper.updateIntOrderNumberConut(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber(), Long.valueOf(flowCard.getInventoryQuantity()));
+ //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍏ュ簱
if (ordersum == (ordernumbersum + flowCard.getInventoryQuantity())) {
//淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),2);
- }else{
- //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
- finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1);
}
+ } else {
+ if (finishedGoodsInventoryMapper.insertFinishedGoodsInventory(flowCard, storageRegion, remark)) {
+ //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺
+ finishedGoodsInventoryMapper.updateflowcard(flowCard);
+ //淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲�
+ finishedGoodsInventoryMapper.updateIntOrderNumberConut(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber(), Long.valueOf(flowCard.getInventoryQuantity()));
+ if (ordersum == (ordernumbersum + flowCard.getInventoryQuantity())) {
+ //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
+ finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),2);
+ }else{
+ //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬�
+ finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1);
+ }
+ }
}
+ }else{
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ return "false1";
}
+
+
}
}else{
- return false;
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ return "false2";
}
} catch (Exception e) {
@@ -155,7 +165,7 @@
sysError.setError(e+Arrays.toString(e.getStackTrace()));
sysError.setFunc("addSelectWarehousing");
sysErrorService.insert(sysError);
- saveState = false;
+ saveState = "false";
}
@@ -173,8 +183,8 @@
}
- public Boolean addDeliveryDetail(Map<String,Object> object) {
- boolean saveState = true;
+ public String addDeliveryDetail(Map<String,Object> object) {
+ String saveState = "true";
//璁剧疆鍥炴粴鐐�
Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
try {
@@ -198,6 +208,7 @@
for (OrderDetail orderDetail : orderDetaillist) {
//鑾峰彇鍗曞彿
String oddNumber= orderNumberSetting("鍑哄簱");
+ OrderDetail orderDetailNew= finishedGoodsInventoryMapper.findOrderDetailNumberd(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber());
//娣诲姞鍑哄叆搴撹褰�
finishedOperateLogMapper.insertOutFinishedOperateLog(orderDetail,userName,oddNumber);
Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber());
@@ -212,36 +223,48 @@
deliverydetailsum=0;
}
+ DeliveryDetail deliveryDetail=finishedGoodsInventoryMapper.findDeliverydetail(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getDeliveryId());
/*System.out.println("璁㈠崟鎬绘暟:" + ordersum + "璁㈠崟搴撳瓨鏁帮細" + orderNumberdsum + "鍑嗗鍑哄簱鏁伴噺" +
orderDetail.getWarehouseNum()+ "鍙戣揣鏁伴噺" + orderDetail.getDeliveryDetail().getQuantity()+ "鍙戣揣鎬绘暟" +
deliverysum+ "宸插彂鏁伴噺" + deliverydetailsum);*/
+ //鍒ゆ柇鍙戣揣鍗曠殑搴撳瓨鏄惁瀛樺湪
if (finishedGoodsInventorycount > 0) {
- if(orderDetail.getWarehouseNum()>=orderDetail.getDeliveryDetail().getQuantity()){
- //淇敼搴撳瓨琛ㄥ簱瀛樻暟閲�
- finishedGoodsInventoryMapper.updateInventoryInventoryOut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity());
- //淇敼鍙戣揣鏄庣粏琛ㄧ姸鎬�
- finishedGoodsInventoryMapper.updateDeliveryDetailState(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getDeliveryId(),0);
- //淇敼鍙戣揣琛ㄧ姸鎬�
- finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),1);
- //淇敼璁㈠崟鏄庣粏琛ㄥ彂璐ф暟閲�
- finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity());
- //淇敼璁㈠崟琛ㄥ彂璐х姸鎬�
- finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),1);
- //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍙戣揣
- if (orderNumberdsum == orderDetail.getWarehouseNum()) {
- //if (ordersum == (orderDeliveryQuantitySum + orderDetail.getWarehouseNum())) {
- //淇敼璁㈠崟琛ㄥ彂璐х姸鎬�
- finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),2);
- }
- if (deliverysum==deliverydetailsum+orderDetail.getDeliveryDetail().getQuantity()) {
+ //鍒ゆ柇鍙戣揣鍗曟槸鍚﹀凡鍑哄簱
+ if(deliveryDetail==null){
+ if(orderDetailNew.getWarehouseNum()>=orderDetail.getDeliveryDetail().getQuantity()){
+ //淇敼搴撳瓨琛ㄥ簱瀛樻暟閲�
+ finishedGoodsInventoryMapper.updateInventoryInventoryOut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity());
+ //淇敼鍙戣揣鏄庣粏琛ㄧ姸鎬�
+ finishedGoodsInventoryMapper.updateDeliveryDetailState(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getDeliveryId(),0);
//淇敼鍙戣揣琛ㄧ姸鎬�
- finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),2);
+ finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),1);
+ //淇敼璁㈠崟鏄庣粏琛ㄥ彂璐ф暟閲�
+ finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity());
+ //淇敼璁㈠崟琛ㄥ彂璐х姸鎬�
+ finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),1);
+ //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍙戣揣
+ if (orderNumberdsum == orderDetail.getWarehouseNum()) {
+ //if (ordersum == (orderDeliveryQuantitySum + orderDetail.getWarehouseNum())) {
+ //淇敼璁㈠崟琛ㄥ彂璐х姸鎬�
+ finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),2);
+ }
+ if (deliverysum==deliverydetailsum+orderDetail.getDeliveryDetail().getQuantity()) {
+ //淇敼鍙戣揣琛ㄧ姸鎬�
+ finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),2);
+ }
+ }else{
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ return "false3";
}
+ }else{
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ return "false1";
}
+
}else{
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
- saveState = false;
+ return "false2";
}
}
}
@@ -253,7 +276,7 @@
sysError.setError(e+Arrays.toString(e.getStackTrace()));
sysError.setFunc("addDeliveryDetail");
sysErrorService.insert(sysError);
- saveState = false;
+ saveState = "false";
}
return saveState;
@@ -630,7 +653,7 @@
return map;
}
- public Map<String, Object> getSelectFinishedOperateLogReport(Integer pageNum, Integer pageSize, List<String> selectDate, FinishedOperateLog finishedOperateLog) {
+ public Map<String, Object> getSelectFinishedOperateLogReport(String type,Integer pageNum, Integer pageSize, List<String> selectDate, FinishedOperateLog finishedOperateLog) {
Integer offset = (pageNum-1)*pageSize;
String endDate = LocalDate.now().toString();
String startDate = LocalDate.now().minusDays(15).toString();
@@ -644,8 +667,8 @@
}
Map<String, Object> map = new HashMap<>();
- map.put("data", finishedOperateLogMapper.getSelectFinishedOperateLogReport(offset, pageSize,startDate, endDate, finishedOperateLog));
- map.put("total", finishedOperateLogMapper.getSelectFinishedOperateLogReportPageTotal(offset, pageSize,startDate, endDate, finishedOperateLog));
+ map.put("data", finishedOperateLogMapper.getSelectFinishedOperateLogReport(offset, pageSize,startDate, endDate, finishedOperateLog,type));
+ map.put("total", finishedOperateLogMapper.getSelectFinishedOperateLogReportPageTotal(offset, pageSize,startDate, endDate, finishedOperateLog,type));
List<String> list = new ArrayList<>();
list.add(startDate);
list.add(endDate);
@@ -660,6 +683,8 @@
Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
try {
Log log = new Log();
+ log.setOperatorId(object.get("userId").toString());
+ log.setOperator(object.get("userName").toString());
log.setContent(object.toString());
//鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼
List<FinishedOperateLog> finishedOperateLogslist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), FinishedOperateLog.class);
@@ -738,8 +763,8 @@
}
- public List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates) {
- return finishedOperateLogMapper.exportFinishedOperateLogReport(dates);
+ public List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates,String type) {
+ return finishedOperateLogMapper.exportFinishedOperateLogReport(dates,type);
}
--
Gitblit v1.8.0