From 80779e662c51601328e8e4054ebd169f5360d12c Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期一, 11 八月 2025 16:12:55 +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 |   71 +++++++++++++++++++++++++----------
 1 files changed, 51 insertions(+), 20 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 3e78377..b0a7bd5 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
@@ -295,6 +295,10 @@
                 orderMapper.saveOrderFile(OrderDetails.get(i).getFileName(), OrderDetails.get(i).getFileData(),orderId,OrderDetails.get(i).getOrderNumber());
             }
 
+            if(OrderDetails.get(i).getShape()==null){
+                OrderDetails.get(i).setShape("1");
+            }
+
         }
 
 
@@ -314,31 +318,36 @@
 
         orderDetails.forEach(orderDetail -> {
             //鑾峰彇鏈�灏忓姬搴�
-            OrderGlassDetail orderGlassDetail = orderGlassDetailMapper
-                    .selectOne(new LambdaQueryWrapper<OrderGlassDetail>()
+            List<OrderGlassDetail> orderGlassDetails = orderGlassDetailMapper
+                    .selectList(new LambdaQueryWrapper<OrderGlassDetail>()
                             .eq(OrderGlassDetail::getOrderId, orderId)
                             .eq(OrderGlassDetail::getOrderNumber, orderDetail.getOrderNumber())
-                            .orderByDesc(OrderGlassDetail::getArc)
-                            .last("limit 1")
                     );
-            //鑾峰彇褰撳墠搴忓彿浜у搧Math.cos(
-            Product product = productMapper.selectById(orderDetail.getProductId());
-            //鍐呭崐寰�
-            Double radius = orderDetail.getBendRadius() - product.getTotalThickness();
 
-            //鍐呯墖鍐呭姬闀�
-            Double innerArc = orderGlassDetail.getArc()
-                    -orderGlassDetail.getArc()*product.getTotalThickness()/orderDetail.getBendRadius();
+            for(OrderGlassDetail orderGlassDetail:orderGlassDetails) {
+                //鑾峰彇褰撳墠灞傛暟涓庝箣鍓嶅眰鏁扮殑鍘氬害
+                Double glassThickness = productMapper
+                        .getGlassThickness(orderDetail.getProductId(), orderGlassDetail.getTechnologyNumber());
+                //鍐呭崐寰�
+                Double radius = orderDetail.getBendRadius() - glassThickness;
 
-            //鎷遍珮
-            String archRiseS =  String.format("%.1f",radius-radius*Math.cos(innerArc/2/radius));
-            Double archRise = Double.parseDouble(archRiseS);
-            orderDetail.setArchRise(archRise);
 
-            orderDetailMapper.update(null,new LambdaUpdateWrapper<OrderDetail>()
-                    .set(OrderDetail::getArchRise,archRise)
-                    .eq(OrderDetail::getId, orderDetail.getId())
-            );
+                //鍐呯墖鍐呭姬闀�
+                Double innerArc = orderGlassDetails.get(0).getArc()
+                        - orderGlassDetails.get(0).getArc() * glassThickness / orderDetail.getBendRadius();
+
+                //鎷遍珮
+                String archRiseS = String.format("%.1f", radius - radius * Math.cos(innerArc / 2 / radius));
+                Double archRise = Double.parseDouble(archRiseS);
+                orderGlassDetailMapper.update(null, new LambdaUpdateWrapper<OrderGlassDetail>()
+                        .set(OrderGlassDetail::getArchRise, archRise)
+                        .eq(OrderGlassDetail::getId, orderGlassDetail.getId())
+                );
+
+//                orderDetailMapper.update(null,new LambdaUpdateWrapper<OrderDetail>()
+//                        .set(OrderDetail::getArchRise,archRise)
+//                        .eq(OrderDetail::getId, orderDetail.getId())
+            }
 
         });
 
@@ -384,7 +393,7 @@
     public Map<String,Object> getOrderList(Integer pageNum, Integer pageSize, List<String> selectDate, Map<String,Object> config,Integer orderType) {
         Integer offset = (pageNum-1)*pageSize;
         String endDate = LocalDate.now().toString();
-        String startDate = LocalDate.now().minusDays(15).toString();
+        String startDate = LocalDate.now().minusDays(365).toString();
         if(selectDate !=null && selectDate.size()==2){
             if(!selectDate.get(0).isEmpty()){
                 startDate = selectDate.get(0);
@@ -1011,4 +1020,26 @@
         map.put("data",orderMapper.selectOrderFile(orderId,orderNumber));
         return map;
     }
+
+    public boolean updateOrderFile(Map<String,Object> object)  {
+        String orderId = "";
+        if (object.get("orderId") != null) {
+            orderId = object.get("orderId").toString();
+        }
+        int orderNumber =0;
+        if (object.get("orderNumber") != null) {
+            orderNumber = Integer.parseInt(object.get("orderNumber").toString());
+        }
+        String dataBase64 = "";
+        if (object.get("dataBase64") != null) {
+            dataBase64 = object.get("dataBase64").toString();
+        }
+        Map<String,String> orderFile =orderMapper.selectOrderFile(orderId,orderNumber);
+        if(orderFile!=null){
+            orderMapper.updateOrderFile("map.dxf", dataBase64,orderId,orderNumber);
+        }else{
+            orderMapper.saveOrderFile("map.dxf", dataBase64,orderId,orderNumber);
+        }
+        return true;
+    }
 }

--
Gitblit v1.8.0