From f20b176a682080c7358578d11d1176aa88bb4efc Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期二, 30 一月 2024 10:51:02 +0800
Subject: [PATCH] 修改实体

---
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java |   76 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 76 insertions(+), 0 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
new file mode 100644
index 0000000..475abf2
--- /dev/null
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -0,0 +1,76 @@
+package com.example.erp.service.sd;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.example.erp.entity.sd.Order;
+import com.example.erp.entity.sd.OrderDetail;
+import com.example.erp.mapper.sd.OrderDetailMapper;
+import com.example.erp.mapper.sd.OrderMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+@Service
+@DS("sd")
+@Transactional
+public class OrderService {
+    @Autowired
+    private OrderMapper orderMapper;
+    @Autowired
+    private OrderDetailMapper orderDetailMapper;
+
+    public boolean saveOrder(Map<String,Object> orderMap) {
+        JSONObject orderJson = new JSONObject(orderMap);
+        Order order = JSONObject.parseObject(JSONObject.toJSONString(orderJson.get("title")), Order.class);
+        List<OrderDetail> OrderDetails = JSONArray.parseArray(JSONObject.toJSONString(orderJson.get("detail")), OrderDetail.class);
+        boolean saveState = true;
+        //鍒ゆ柇浼犲叆id鍙傛暟鏄惁涓虹┖锛屾湭浼犲叆id涓虹┖鎻掑叆璁㈠崟琛紝浼犲叆鏇存柊琛�
+       // System.out.println(order);
+        if(order.getOrderId() == null || order.getOrderId().isEmpty()){
+            insertOrder(order,OrderDetails);
+        }else {
+            saveState = updateOrder(order,OrderDetails);
+        }
+
+
+
+
+        return true;
+    }
+
+    public void insertOrder(Order order,List<OrderDetail> OrderDetails) {
+        Integer maxOrderId = orderMapper.selectMaxOrderId();
+        //鏌ヨ璁㈠崟id锛屽苟涓旇嚜澧�
+        String formattedNumber = String.format("%02d", maxOrderId+1);
+        //鏍煎紡鍖栧綋鍓嶆棩鏈�
+        Date currentDate = new Date();
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyMMdd");
+        String formattedDate = dateFormat.format(currentDate);
+        String orderId =  "NG"+formattedDate+formattedNumber;
+        //寰�涓昏〃鎻掓暟鎹�
+        order.setOrderId(orderId);
+        orderMapper.insert(order);
+        //寰幆缁欒鍗曟槑缁嗚〃瀛楁娣诲姞搴忓彿鍜屽懆闀�
+        for (int i = 0; i < OrderDetails.size(); i++) {
+            OrderDetails.get(i).setOrderNumber(i+1);
+            OrderDetails.get(i).setOrderId(orderId);
+            OrderDetails.get(i).setPerimeter(OrderDetails.get(i).getWidth()*OrderDetails.get(i).getHeight()*2);
+            OrderDetails.get(i).setWeight(1.0);
+        }
+        //寰�鏄庣粏琛ㄦ彃鏁版嵁
+        orderDetailMapper.insertBatch(OrderDetails);
+    }
+
+    public boolean updateOrder(Order order,List<OrderDetail> OrderDetails) {
+        return  false;
+    }
+}

--
Gitblit v1.8.0