From 2f640b1038fa331954f78ed1f4317212cf5bb34d Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 07 六月 2024 16:56:06 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java |   37 ++++++++++++++++++++++++++++---------
 1 files changed, 28 insertions(+), 9 deletions(-)

diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
index 4b263ee..64baf4d 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -9,12 +9,13 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.example.erp.common.Constants;
+import com.example.erp.dto.sd.OrderDTO;
 import com.example.erp.entity.sd.*;
 import com.example.erp.entity.userInfo.SysError;
 import com.example.erp.exception.ServiceException;
 import com.example.erp.mapper.sd.*;
 import com.example.erp.service.userInfo.SysErrorService;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.sun.org.apache.regexp.internal.RE;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
@@ -48,6 +49,7 @@
         Order order = JSONObject.parseObject(JSONObject.toJSONString(orderJson.get("title")), Order.class);
         List<OrderDetail> OrderDetails = JSONArray.parseArray(JSONObject.toJSONString(orderJson.get("detail")), OrderDetail.class);
         List<OrderOtherMoney> orderOtherMoneyList = JSONArray.parseArray(JSONObject.toJSONString(orderJson.get("otherMoney")), OrderOtherMoney.class);
+
         boolean saveState = true;
         //璁剧疆鍥炴粴鐐�
         Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
@@ -100,6 +102,7 @@
         //鍒犻櫎鍏朵粬閲戦鏄庣粏琛�
         orderOtherMoneyMapper.delete(new LambdaQueryWrapper<OrderOtherMoney>().eq(OrderOtherMoney::getOrderId, order.getOrderId()));
 
+
         //鍒犻櫎璁㈠崟宸ヨ壓琛�
        // orderProcessDetailMapper.delete(new LambdaQueryWrapper<OrderProcessDetail>().eq(OrderProcessDetail::getOrderId, order.getOrderId()));
         insertOtherDetail(order.getOrderId(),OrderDetails,orderOtherMoneyList);
@@ -108,6 +111,7 @@
 
     //鎻掑叆鍏朵粬鍓〃鏁版嵁锛岃鍏朵粬鏂规硶寮曠敤
     public void insertOtherDetail(String orderId,List<OrderDetail> OrderDetails,List<OrderOtherMoney> orderOtherMoneyList) {
+
         //鍏堟妸鍏朵粬閲戦鍓〃鐨勯噾棰濅笌鏁伴噺缃�0
         orderOtherMoneyList.forEach(orderOtherMoney -> {
             orderOtherMoney.setQuantity(0.0);
@@ -119,16 +123,15 @@
             OrderDetails.get(i).setOrderId(orderId);
             OrderDetails.get(i).setPerimeter(OrderDetails.get(i).getWidth()*OrderDetails.get(i).getHeight()*2/1000);
             OrderDetails.get(i).setWeight(1.0);
-            Map<String,Double> otherColumns = JSON.parseObject(OrderDetails.get(i).getOtherColumns(), new TypeReference<Map<String, Double>>(){});
+            Map<String,Object> otherColumns = JSON.parseObject(OrderDetails.get(i).getOtherColumns(), new TypeReference<Map<String, Object>>(){});
             int finalI = i;
-
 
             if(otherColumns!=null){
                 otherColumns.forEach((key, value) ->{
-                    if(value!=null) {
+                    if(value!=null && key.contains("M")) {
                         orderOtherMoneyList.forEach(orderOtherMoney -> {
                             if (orderOtherMoney.getColumn().equals(key)) {
-                                orderOtherMoney.setQuantity(orderOtherMoney.getQuantity()+(value * OrderDetails.get(finalI).getQuantity()));
+                                orderOtherMoney.setQuantity(orderOtherMoney.getQuantity()+(Double.parseDouble((String) value)  * OrderDetails.get(finalI).getQuantity()));
                             }
                         });
                     }
@@ -303,7 +306,7 @@
 
         Map<String,Object> map = new HashMap<>();
         map.put("data",orderDetailMapper.getOrderReport(offset, pageSize, startDate, endDate, orderDetail));
-        map.put("total",orderDetailMapper.getOrderReportTotal(offset, pageSize, startDate, endDate, orderDetail));
+        map.put("total",orderDetailMapper.getOrderReportTotal(offset, pageSize, startDate, endDate, orderDetail,"order"));
         List<String> list = new ArrayList<>();
         list.add(startDate);
         list.add(endDate);
@@ -312,8 +315,8 @@
         return map;
     }
 
-    public List<Order> exportOrderReport() {
-        return orderDetailMapper.exportOrderReport();
+    public List<OrderDTO> exportOrderReport(List<LocalDate> dates) {
+        return orderDetailMapper.exportOrderReport(dates);
     }
 
     public Map<String,Object> getOrderProductSummary(Integer pageNum, Integer pageSize, List<String> selectDate, OrderDetail orderDetail) {
@@ -331,7 +334,7 @@
 
         Map<String,Object> map = new HashMap<>();
         map.put("data",orderDetailMapper.getOrderProductSummary(offset, pageSize, startDate, endDate, orderDetail));
-        map.put("total",orderDetailMapper.getOrderReportTotal(offset, pageSize, startDate, endDate, orderDetail));
+        map.put("total",orderDetailMapper.getOrderProductSummaryTotal(offset, pageSize, startDate, endDate, orderDetail, "product"));
         List<String> list = new ArrayList<>();
         list.add(startDate);
         list.add(endDate);
@@ -339,4 +342,20 @@
 //        map.put("total",orderMapper.getPageTotal(offset, pageSize, startDate, endDate, orderDetail));
         return map;
     }
+
+    public List<OrderDTO> exportOrderProductSummary(List<LocalDate> dates) {
+        return orderDetailMapper.exportOrderProductSummary(dates);
+    }
+
+    public Map<String,String> getOrderProductDetailTag(String orderId) {
+        return orderDetailMapper.getOrderProductDetailTag(orderId);
+    }
+
+    public List<OrderDetail> getOrderDetailById(String id) {
+        return orderDetailMapper.selectList(new QueryWrapper<OrderDetail>().eq("order_id",id));
+    }
+
+    public List<OrderGlassDetail> getOrderCraftDetailById(String id) {
+         return orderGlassDetailMapper.selectOrderGlassDetailByOrderId(id);
+    }
 }

--
Gitblit v1.8.0