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/api/FeeDiscountApi.java |   82 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 71 insertions(+), 11 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/api/FeeDiscountApi.java b/service-fee/src/main/java/com/java110/fee/api/FeeDiscountApi.java
old mode 100644
new mode 100755
index 388144c..402c72e
--- a/service-fee/src/main/java/com/java110/fee/api/FeeDiscountApi.java
+++ b/service-fee/src/main/java/com/java110/fee/api/FeeDiscountApi.java
@@ -1,14 +1,17 @@
 package com.java110.fee.api;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.dto.feeDiscount.FeeDiscountDto;
-import com.java110.dto.feeDiscountRule.FeeDiscountRuleDto;
-import com.java110.dto.feeDiscountRuleSpec.FeeDiscountRuleSpecDto;
+import com.java110.dto.feeDiscount.FeeDiscountRuleDto;
+import com.java110.dto.feeDiscount.FeeDiscountRuleSpecDto;
+import com.java110.dto.payFeeDetailDiscount.PayFeeDetailDiscountDto;
 import com.java110.fee.bmo.feeDiscount.IDeleteFeeDiscountBMO;
 import com.java110.fee.bmo.feeDiscount.IGetFeeDiscountBMO;
 import com.java110.fee.bmo.feeDiscount.ISaveFeeDiscountBMO;
 import com.java110.fee.bmo.feeDiscount.IUpdateFeeDiscountBMO;
 import com.java110.fee.bmo.feeDiscountRule.IGetFeeDiscountRuleBMO;
+import com.java110.fee.bmo.feeDiscountRuleSpec.IComputeFeeDiscountBMO;
 import com.java110.fee.bmo.feeDiscountRuleSpec.IGetFeeDiscountRuleSpecBMO;
 import com.java110.po.feeDiscount.FeeDiscountPo;
 import com.java110.utils.util.Assert;
@@ -20,6 +23,8 @@
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
+
+import java.text.ParseException;
 
 
 @RestController
@@ -42,6 +47,9 @@
     @Autowired
     private IGetFeeDiscountRuleSpecBMO getFeeDiscountRuleSpecBMOImpl;
 
+    @Autowired
+    private IComputeFeeDiscountBMO computeFeeDiscountBMOImpl;
+
     /**
      * 寰俊淇濆瓨娑堟伅妯℃澘
      *
@@ -57,9 +65,9 @@
         Assert.hasKeyAndValue(reqJson, "ruleId", "璇锋眰鎶ユ枃涓湭鍖呭惈ruleId");
         Assert.hasKeyAndValue(reqJson, "discountType", "璇锋眰鎶ユ枃涓湭鍖呭惈discountType");
 
-
+        JSONArray feeDiscountRuleSpecs = reqJson.getJSONArray("feeDiscountRuleSpecs");
         FeeDiscountPo feeDiscountPo = BeanConvertUtil.covertBean(reqJson, FeeDiscountPo.class);
-        return saveFeeDiscountBMOImpl.save(feeDiscountPo);
+        return saveFeeDiscountBMOImpl.save(feeDiscountPo, feeDiscountRuleSpecs);
     }
 
     /**
@@ -78,9 +86,9 @@
         Assert.hasKeyAndValue(reqJson, "discountType", "璇锋眰鎶ユ枃涓湭鍖呭惈discountType");
         Assert.hasKeyAndValue(reqJson, "discountId", "discountId涓嶈兘涓虹┖");
 
-
+        JSONArray feeDiscountRuleSpecs = reqJson.getJSONArray("feeDiscountRuleSpecs");
         FeeDiscountPo feeDiscountPo = BeanConvertUtil.covertBean(reqJson, FeeDiscountPo.class);
-        return updateFeeDiscountBMOImpl.update(feeDiscountPo);
+        return updateFeeDiscountBMOImpl.update(feeDiscountPo, feeDiscountRuleSpecs);
     }
 
     /**
@@ -112,39 +120,49 @@
      */
     @RequestMapping(value = "/queryFeeDiscount", method = RequestMethod.GET)
     public ResponseEntity<String> queryFeeDiscount(@RequestParam(value = "communityId") String communityId,
+                                                   @RequestParam(value = "discountType", required = false) String discountType,
+                                                   @RequestParam(value = "discountName", required = false) String discountName,
+                                                   @RequestParam(value = "discountId", required = false) String discountId,
+                                                   @RequestParam(value = "ruleName", required = false) String ruleName,
                                                    @RequestParam(value = "page") int page,
                                                    @RequestParam(value = "row") int row) {
         FeeDiscountDto feeDiscountDto = new FeeDiscountDto();
         feeDiscountDto.setPage(page);
         feeDiscountDto.setRow(row);
         feeDiscountDto.setCommunityId(communityId);
+        feeDiscountDto.setDiscountType(discountType);
+        feeDiscountDto.setDiscountName(discountName);
+        feeDiscountDto.setRuleName(ruleName);
+        feeDiscountDto.setDiscountId(discountId);
         return getFeeDiscountBMOImpl.get(feeDiscountDto);
     }
 
     /**
      * 寰俊鍒犻櫎娑堟伅妯℃澘
      *
-
      * @return
      * @serviceCode /feeDiscount/queryFeeDiscountRule
      * @path /app/feeDiscount/queryFeeDiscountRule
      */
     @RequestMapping(value = "/queryFeeDiscountRule", method = RequestMethod.GET)
     public ResponseEntity<String> queryFeeDiscountRule(
-                                                       @RequestParam(value = "page") int page,
-                                                       @RequestParam(value = "row") int row) {
+            @RequestParam(value = "discountType", required = false) String discountType,
+            @RequestParam(value = "page") int page,
+            @RequestParam(value = "row") int row) {
         FeeDiscountRuleDto feeDiscountRuleDto = new FeeDiscountRuleDto();
         feeDiscountRuleDto.setPage(page);
         feeDiscountRuleDto.setRow(row);
+        feeDiscountRuleDto.setDiscountType(discountType);
         return getFeeDiscountRuleBMOImpl.get(feeDiscountRuleDto);
     }
 
     /**
      * 寰俊鍒犻櫎娑堟伅妯℃澘
-     * @serviceCode /feeDiscount/queryFeeDiscountRuleSpec
-     * @path /app/feeDiscount/queryFeeDiscountRuleSpec
+     *
      * @param ruleId 灏忓尯ID
      * @return
+     * @serviceCode /feeDiscount/queryFeeDiscountRuleSpec
+     * @path /app/feeDiscount/queryFeeDiscountRuleSpec
      */
     @RequestMapping(value = "/queryFeeDiscountRuleSpec", method = RequestMethod.GET)
     public ResponseEntity<String> queryFeeDiscountRuleSpec(@RequestParam(value = "ruleId") String ruleId,
@@ -156,4 +174,46 @@
         feeDiscountRuleSpecDto.setRuleId(ruleId);
         return getFeeDiscountRuleSpecBMOImpl.get(feeDiscountRuleSpecDto);
     }
+
+    /**
+     * 璁$畻璐圭敤鎶樻墸
+     *
+     * @param communityId 灏忓尯ID
+     * @return
+     * @serviceCode /feeDiscount/computeFeeDiscount
+     * @path /app/feeDiscount/computeFeeDiscount
+     */
+    @RequestMapping(value = "/computeFeeDiscount", method = RequestMethod.GET)
+    public ResponseEntity<String> computeFeeDiscount(@RequestParam(value = "feeId") String feeId,
+                                                     @RequestParam(value = "communityId") String communityId,
+                                                     @RequestParam(value = "cycles") double cycles,
+                                                     @RequestParam(value = "payerObjId") String payerObjId,
+                                                     @RequestParam(value = "payerObjType") String payerObjType,
+                                                     @RequestParam(value = "endTime") String endTime,
+                                                     @RequestParam(value = "page") int page,
+                                                     @RequestParam(value = "row") int row) throws ParseException {
+        return computeFeeDiscountBMOImpl.compute(feeId, communityId, cycles, payerObjId, payerObjType, endTime, page, row);
+    }
+
+
+    /**
+     * 鏌ヨ 缂磋垂浼樻儬
+     *
+     * @return
+     * @serviceCode /feeDiscount/queryFeeDetailDiscount
+     * @path /app/feeDiscount/queryFeeDetailDiscount
+     */
+    @RequestMapping(value = "/queryFeeDetailDiscount", method = RequestMethod.GET)
+    public ResponseEntity<String> queryFeeDetailDiscount(
+            @RequestParam(value = "detailId") String detailId,
+            @RequestParam(value = "communityId") String communityId,
+            @RequestParam(value = "page") int page,
+            @RequestParam(value = "row") int row) {
+        PayFeeDetailDiscountDto payFeeDetailDiscountDto = new PayFeeDetailDiscountDto();
+        payFeeDetailDiscountDto.setPage(page);
+        payFeeDetailDiscountDto.setRow(row);
+        payFeeDetailDiscountDto.setDetailId(detailId);
+        payFeeDetailDiscountDto.setCommunityId(communityId);
+        return getFeeDiscountBMOImpl.getFeeDetailDiscount(payFeeDetailDiscountDto);
+    }
 }

--
Gitblit v1.8.0