From 421becb5838430ec5fa4edfc5370e07f73c9928d Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 21 三月 2025 10:30:14 +0800
Subject: [PATCH] 工程打印界面新增厚度膜系显示

---
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java |   30 +++++++++++++++++++++++++++++-
 1 files changed, 29 insertions(+), 1 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 0a9cc5e..c47bdda 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
@@ -502,9 +502,21 @@
         BigDecimal getPrice= BigDecimal.valueOf(orderDetail.getPrice());
         BigDecimal getQuantity= BigDecimal.valueOf(orderDetail.getQuantity());
         BigDecimal getComputeGrossArea= BigDecimal.valueOf(orderDetail.getComputeGrossArea());
+        BigDecimal getComputeArea= BigDecimal.valueOf(orderDetail.getComputeArea());
+        BigDecimal getWidth= BigDecimal.valueOf(orderDetail.getWidth());
+        BigDecimal getHeight= BigDecimal.valueOf(orderDetail.getHeight());
         if (calculateType == 3) {
             orderDetail.setGrossAmount(getPrice.multiply(getQuantity).setScale(2, RoundingMode.HALF_UP).doubleValue());
-        } else {
+        }else if (calculateType == 4) {
+            if(Objects.equals(orderDetail.getArea(), orderDetail.getComputeArea())&&Objects.equals(orderDetail.getGrossArea(), orderDetail.getComputeGrossArea())){
+                orderDetail.setGrossAmount(getWidth.multiply(getHeight).multiply(getQuantity).multiply(getPrice).
+                        divide(BigDecimal.valueOf(1000000), 2, RoundingMode.HALF_UP).doubleValue());
+            }else{
+                orderDetail.setGrossAmount(getPrice.multiply(getComputeGrossArea).setScale(2, RoundingMode.HALF_UP).doubleValue());
+            }
+        }else if (calculateType == 1){
+            orderDetail.setGrossAmount(getPrice.multiply(getComputeArea).multiply(getQuantity).setScale(2, RoundingMode.HALF_UP).doubleValue());
+        }else{
             orderDetail.setGrossAmount(getPrice.multiply(getComputeGrossArea).setScale(2, RoundingMode.HALF_UP).doubleValue());
         }
         return orderDetail;
@@ -894,4 +906,20 @@
         log.setFunction("updateOrderMoney閲戦閲嶇疆:"+orderId);
         return true;
     }
+
+    public Object scannerGlassInfo(String projectNo) {
+        try{
+            String projectId = "P" + projectNo.substring(0,8);
+            //鐐夊彿
+            Integer heatNo = Integer.valueOf(projectNo.substring(8,11));
+            //鐐夊唴搴忓彿
+            Integer sortNo = Integer.valueOf(projectNo.substring(11,14));
+            String processId = orderMapper.getProcessIdByOptimizeHeatDetail(projectId,heatNo,sortNo);
+            String orderId = flowCardMapper.getOrderIdByProcessId(processId);
+            return orderMapper.scannerGlassInfo(projectId,heatNo,sortNo,orderId);
+        }catch (Exception e){
+            return null;
+        }
+
+    }
 }

--
Gitblit v1.8.0