From b2b5bdf6f42597e582da96aa56707e1f68d3936e Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 10 五月 2022 11:41:44 +0800
Subject: [PATCH] 优化 费用

---
 service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/UpdateFeeDiscountBMOImpl.java |   43 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 39 insertions(+), 4 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..75a5571
--- 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.intf.fee.IFeeDiscountSpecInnerServiceSMO;
 import com.java110.po.feeDiscount.FeeDiscountPo;
+import com.java110.po.feeDiscountSpec.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