From 7958f1dddb8a7f4e70d232b07a7703955ecedae0 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期六, 26 八月 2023 12:45:33 +0800
Subject: [PATCH] 优化diamante

---
 service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/UpdateFeeDiscountBMOImpl.java |   45 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 40 insertions(+), 5 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/UpdateFeeDiscountBMOImpl.java b/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/UpdateFeeDiscountBMOImpl.java
old mode 100644
new mode 100755
index 421db01..8ffaef2
--- a/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/UpdateFeeDiscountBMOImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/UpdateFeeDiscountBMOImpl.java
@@ -1,9 +1,14 @@
 package com.java110.fee.bmo.feeDiscount.impl;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Transactional;
+import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.fee.bmo.feeDiscount.IUpdateFeeDiscountBMO;
 import com.java110.intf.fee.IFeeDiscountInnerServiceSMO;
-import com.java110.po.feeDiscount.FeeDiscountPo;
+import com.java110.intf.fee.IFeeDiscountSpecInnerServiceSMO;
+import com.java110.po.fee.FeeDiscountPo;
+import com.java110.po.fee.FeeDiscountSpecPo;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
@@ -15,20 +20,50 @@
     @Autowired
     private IFeeDiscountInnerServiceSMO feeDiscountInnerServiceSMOImpl;
 
+    @Autowired
+    private IFeeDiscountSpecInnerServiceSMO feeDiscountSpecInnerServiceSMOImpl;
+
     /**
      * @param feeDiscountPo
      * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
      */
     @Java110Transactional
-    public ResponseEntity<String> update(FeeDiscountPo feeDiscountPo) {
+    public ResponseEntity<String> update(FeeDiscountPo feeDiscountPo, JSONArray feeDiscountRuleSpecs) {
 
         int flag = feeDiscountInnerServiceSMOImpl.updateFeeDiscount(feeDiscountPo);
 
-        if (flag > 0) {
-            return ResultVo.createResponseEntity(ResultVo.CODE_OK, "淇濆瓨鎴愬姛");
+        if (flag < 1) {
+            return ResultVo.createResponseEntity(ResultVo.CODE_ERROR, "淇濆瓨澶辫触");
         }
 
-        return ResultVo.createResponseEntity(ResultVo.CODE_ERROR, "淇濆瓨澶辫触");
+        if (feeDiscountRuleSpecs == null || feeDiscountRuleSpecs.size() < 1) {
+            return ResultVo.createResponseEntity(ResultVo.CODE_OK, "淇濆瓨鎴愬姛");
+        }
+        FeeDiscountSpecPo feeDiscountSpecPo = null;
+        //鍒犻櫎鎵�鏈�
+        feeDiscountSpecPo = new FeeDiscountSpecPo();
+        feeDiscountSpecPo.setCommunityId(feeDiscountPo.getCommunityId());
+        feeDiscountSpecPo.setDiscountId(feeDiscountPo.getDiscountId());
+        feeDiscountSpecInnerServiceSMOImpl.deleteFeeDiscountSpec(feeDiscountSpecPo);
+
+        JSONObject specObj = null;
+        for (int specIndex = 0; specIndex < feeDiscountRuleSpecs.size(); specIndex++) {
+            specObj = feeDiscountRuleSpecs.getJSONObject(specIndex);
+            feeDiscountSpecPo = new FeeDiscountSpecPo();
+            feeDiscountSpecPo.setCommunityId(feeDiscountPo.getCommunityId());
+            feeDiscountSpecPo.setDiscountId(feeDiscountPo.getDiscountId());
+            feeDiscountSpecPo.setSpecId(specObj.getString("specId"));
+            feeDiscountSpecPo.setSpecName(specObj.getString("specName"));
+            feeDiscountSpecPo.setSpecValue(specObj.getString("specValue"));
+            feeDiscountSpecPo.setDiscountSpecId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_specId));
+            flag = feeDiscountSpecInnerServiceSMOImpl.saveFeeDiscountSpec(feeDiscountSpecPo);
+            if (flag < 1) {
+                throw new IllegalArgumentException("淇濆瓨 鎶樻墸瑙勬牸澶辫触");
+            }
+        }
+
+
+        return ResultVo.createResponseEntity(ResultVo.CODE_OK, "淇濆瓨鎴愬姛");
     }
 
 }

--
Gitblit v1.8.0