From 0b04f664887c73e90bf684a4e69c0fdbfe26349d Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 29 三月 2023 13:35:20 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity

---
 service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/SaveFeeDiscountBMOImpl.java |   68 ++++++++++++++++++++++++++++++++--
 1 files changed, 64 insertions(+), 4 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/SaveFeeDiscountBMOImpl.java b/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/SaveFeeDiscountBMOImpl.java
old mode 100644
new mode 100755
index 7fe58ad..fbd0506
--- a/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/SaveFeeDiscountBMOImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/bmo/feeDiscount/impl/SaveFeeDiscountBMOImpl.java
@@ -1,10 +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.ISaveFeeDiscountBMO;
 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;
@@ -16,23 +20,79 @@
     @Autowired
     private IFeeDiscountInnerServiceSMO feeDiscountInnerServiceSMOImpl;
 
+    @Autowired
+    private IFeeDiscountSpecInnerServiceSMO feeDiscountSpecInnerServiceSMOImpl;
+
     /**
      * 娣诲姞灏忓尯淇℃伅
+     * <p>
+     * {
+     * "discountId": "",
+     * "discountName": "鐗╀笟璐瑰噺鍏�",
+     * "discountType": "1001",
+     * "ruleId": "102020002",
+     * "discountDesc": "",
+     * "feeDiscountRuleSpecs": [{
+     * "page": -1,
+     * "records": 0,
+     * "remark": "蹇呭~锛岃濉啓鍑忓厤閲戦锛堝厓锛�",
+     * "row": 0,
+     * "ruleId": "102020002",
+     * "specId": "89002020980004",
+     * "specName": "鍑忓厤閲戦",
+     * "statusCd": "0",
+     * "total": 0,
+     * "specValue": "100"
+     * }, {
+     * "page": -1,
+     * "records": 0,
+     * "remark": "蹇呭~锛岃濉啓鑷冲皯缂磋垂鏈堜唤",
+     * "row": 0,
+     * "ruleId": "102020002",
+     * "specId": "89002020980003",
+     * "specName": "鏈堜唤",
+     * "statusCd": "0",
+     * "total": 0,
+     * "specValue": "12"
+     * }],
+     * "communityId": "7020181217000001"
+     * }
      *
      * @param feeDiscountPo
      * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
      */
     @Java110Transactional
-    public ResponseEntity<String> save(FeeDiscountPo feeDiscountPo) {
+    public ResponseEntity<String> save(FeeDiscountPo feeDiscountPo, JSONArray feeDiscountRuleSpecs) {
 
         feeDiscountPo.setDiscountId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_discountId));
         int flag = feeDiscountInnerServiceSMOImpl.saveFeeDiscount(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, "淇濆瓨鎴愬姛");
+        }
+        JSONObject specObj = null;
+        for (int specIndex = 0; specIndex < feeDiscountRuleSpecs.size(); specIndex++) {
+            specObj = feeDiscountRuleSpecs.getJSONObject(specIndex);
+            FeeDiscountSpecPo 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