From 2d079ac843ebcb335f2ef7d6952f9700a16fddde Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 05 五月 2021 14:11:00 +0800
Subject: [PATCH] 游湖阿底阿妈

---
 service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java |   92 +++++++++++++++++++++++++++++++---------------
 1 files changed, 62 insertions(+), 30 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java b/service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java
old mode 100644
new mode 100755
index a19592c..260e124
--- a/service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java
+++ b/service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java
@@ -12,17 +12,19 @@
 import com.java110.fee.bmo.applyRoomDiscountType.IGetApplyRoomDiscountTypeBMO;
 import com.java110.fee.bmo.applyRoomDiscountType.ISaveApplyRoomDiscountTypeBMO;
 import com.java110.fee.bmo.applyRoomDiscountType.IUpdateApplyRoomDiscountTypeBMO;
+import com.java110.intf.fee.IApplyRoomDiscountInnerServiceSMO;
 import com.java110.po.applyRoomDiscount.ApplyRoomDiscountPo;
 import com.java110.po.applyRoomDiscountType.ApplyRoomDiscountTypePo;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
 
 @RestController
 @RequestMapping(value = "/applyRoomDiscount")
@@ -30,8 +32,10 @@
 
     @Autowired
     private ISaveApplyRoomDiscountBMO saveApplyRoomDiscountBMOImpl;
+
     @Autowired
     private IUpdateApplyRoomDiscountBMO updateApplyRoomDiscountBMOImpl;
+
     @Autowired
     private IDeleteApplyRoomDiscountBMO deleteApplyRoomDiscountBMOImpl;
 
@@ -43,13 +47,18 @@
 
     @Autowired
     private ISaveApplyRoomDiscountTypeBMO saveApplyRoomDiscountTypeBMOImpl;
+
     @Autowired
     private IUpdateApplyRoomDiscountTypeBMO updateApplyRoomDiscountTypeBMOImpl;
+
     @Autowired
     private IDeleteApplyRoomDiscountTypeBMO deleteApplyRoomDiscountTypeBMOImpl;
 
     @Autowired
     private IGetApplyRoomDiscountTypeBMO getApplyRoomDiscountTypeBMOImpl;
+
+    @Autowired
+    private IApplyRoomDiscountInnerServiceSMO applyRoomDiscountInnerServiceSMOImpl;
 
     /**
      * 浼樻儬鐢宠
@@ -60,18 +69,36 @@
      * @path /app/applyRoomDiscount/saveApplyRoomDiscount
      */
     @RequestMapping(value = "/saveApplyRoomDiscount", method = RequestMethod.POST)
-    public ResponseEntity<String> saveApplyRoomDiscount(@RequestBody JSONObject reqJson) {
-
+    public ResponseEntity<String> saveApplyRoomDiscount(@RequestBody JSONObject reqJson) throws ParseException {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
         Assert.hasKeyAndValue(reqJson, "roomId", "璇锋眰鎶ユ枃涓湭鍖呭惈roomId");
         Assert.hasKeyAndValue(reqJson, "roomName", "璇锋眰鎶ユ枃涓湭鍖呭惈roomName");
         Assert.hasKeyAndValue(reqJson, "startTime", "璇锋眰鎶ユ枃涓湭鍖呭惈startTime");
         Assert.hasKeyAndValue(reqJson, "endTime", "璇锋眰鎶ユ枃涓湭鍖呭惈endTime");
         Assert.hasKeyAndValue(reqJson, "applyType", "璇锋眰鎶ユ枃涓湭鍖呭惈applyType");
-
-
         ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
-        return saveApplyRoomDiscountBMOImpl.save(applyRoomDiscountPo);
+        ApplyRoomDiscountDto applyRoomDiscountDto = new ApplyRoomDiscountDto();
+        applyRoomDiscountDto.setCommunityId(applyRoomDiscountPo.getCommunityId());
+        applyRoomDiscountDto.setRoomId(applyRoomDiscountPo.getRoomId());
+        //鏌ヨ鎶樻墸鐢宠琛ㄤ腑璇ユ埧灞嬩笅绗﹀悎鏉′欢鐨勬渶鏂扮殑涓�鏉℃暟鎹�
+        List<ApplyRoomDiscountDto> applyRoomDiscountDtos = applyRoomDiscountInnerServiceSMOImpl.queryFirstApplyRoomDiscounts(applyRoomDiscountDto);
+        //鑾峰彇鏈濉啓鐨勫紑濮嬫椂闂�
+        Date startDate = simpleDateFormat.parse(applyRoomDiscountPo.getStartTime());
+        if (applyRoomDiscountDtos.size() == 0) {
+            return saveApplyRoomDiscountBMOImpl.save(applyRoomDiscountPo);
+        } else if (applyRoomDiscountDtos.size() > 0) {
+            //鍙栧嚭缁撴潫鏃堕棿
+            String endTime = applyRoomDiscountDtos.get(0).getEndTime();
+            Date finishTime = simpleDateFormat.parse(endTime);
+            if (startDate.getTime() - finishTime.getTime() >= 0) {
+                return saveApplyRoomDiscountBMOImpl.save(applyRoomDiscountPo);
+            } else {
+                throw new UnsupportedOperationException("璇ユ椂闂存宸茬粡鐢宠杩囩┖缃埧锛岃閲嶆柊杈撳叆绌虹疆鎴跨敵璇峰紑濮嬪拰缁撴潫鏃堕棿");
+            }
+        } else {
+            throw new UnsupportedOperationException("淇℃伅閿欒");
+        }
     }
 
     /**
@@ -83,17 +110,36 @@
      * @path /app/applyRoomDiscount/updateApplyRoomDiscount
      */
     @RequestMapping(value = "/updateApplyRoomDiscount", method = RequestMethod.POST)
-    public ResponseEntity<String> updateApplyRoomDiscount(@RequestBody JSONObject reqJson) {
-
+    public ResponseEntity<String> updateApplyRoomDiscount(@RequestBody JSONObject reqJson,@RequestHeader(value = "user-id") String userId) {
         Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
         Assert.hasKeyAndValue(reqJson, "state", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧鐘舵��");
         Assert.hasKeyAndValue(reqJson, "startTime", "璇锋眰鎶ユ枃涓湭鍖呭惈寮�濮嬫椂闂�");
         Assert.hasKeyAndValue(reqJson, "endTime", "璇锋眰鎶ユ枃涓湭鍖呭惈缁撴潫鏃堕棿");
         Assert.hasKeyAndValue(reqJson, "checkRemark", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧璇存槑");
-        Assert.hasKeyAndValue(reqJson, "discountId", "璇锋眰鎶ユ枃涓湭鍖呭惈鎶樻墸");
         Assert.hasKeyAndValue(reqJson, "ardId", "ardId涓嶈兘涓虹┖");
+        reqJson.put("checkUserId", userId);
+        ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
+        return updateApplyRoomDiscountBMOImpl.update(applyRoomDiscountPo);
+    }
 
-
+    /**
+     * 瀹℃壒鎺ュ彛
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /applyRoomDiscount/updateReviewApplyRoomDiscount
+     * @path /app/applyRoomDiscount/updateReviewApplyRoomDiscount
+     */
+    @RequestMapping(value = "/updateReviewApplyRoomDiscount", method = RequestMethod.POST)
+    public ResponseEntity<String> updateReviewApplyRoomDiscount(@RequestBody JSONObject reqJson, @RequestHeader(value = "user-id") String userId) {
+        Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
+        Assert.hasKeyAndValue(reqJson, "state", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧鐘舵��");
+        Assert.hasKeyAndValue(reqJson, "startTime", "璇锋眰鎶ユ枃涓湭鍖呭惈寮�濮嬫椂闂�");
+        Assert.hasKeyAndValue(reqJson, "endTime", "璇锋眰鎶ユ枃涓湭鍖呭惈缁撴潫鏃堕棿");
+        Assert.hasKeyAndValue(reqJson, "reviewRemark", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧璇存槑");
+//        Assert.hasKeyAndValue(reqJson, "discountId", "璇锋眰鎶ユ枃涓湭鍖呭惈鎶樻墸");
+        Assert.hasKeyAndValue(reqJson, "ardId", "ardId涓嶈兘涓虹┖");
+        reqJson.put("reviewUserId", userId);
         ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
         return updateApplyRoomDiscountBMOImpl.update(applyRoomDiscountPo);
     }
@@ -108,13 +154,10 @@
      */
     @RequestMapping(value = "/auditApplyRoomDiscount", method = RequestMethod.POST)
     public ResponseEntity<String> auditApplyRoomDiscount(@RequestBody JSONObject reqJson) {
-
         Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈灏忓尯淇℃伅");
         Assert.hasKeyAndValue(reqJson, "state", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧鐘舵��");
         Assert.hasKeyAndValue(reqJson, "reviewRemark", "璇锋眰鎶ユ枃涓湭鍖呭惈瀹℃牳璇存槑");
         Assert.hasKeyAndValue(reqJson, "ardId", "ardId涓嶈兘涓虹┖");
-
-
         ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
         return auditApplyRoomDiscountBMOImpl.audit(applyRoomDiscountPo);
     }
@@ -130,10 +173,7 @@
     @RequestMapping(value = "/deleteApplyRoomDiscount", method = RequestMethod.POST)
     public ResponseEntity<String> deleteApplyRoomDiscount(@RequestBody JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "communityId", "灏忓尯ID涓嶈兘涓虹┖");
-
         Assert.hasKeyAndValue(reqJson, "ardId", "ardId涓嶈兘涓虹┖");
-
-
         ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
         return deleteApplyRoomDiscountBMOImpl.delete(applyRoomDiscountPo);
     }
@@ -151,6 +191,7 @@
                                                          @RequestParam(value = "roomName", required = false) String roomName,
                                                          @RequestParam(value = "roomId", required = false) String roomId,
                                                          @RequestParam(value = "state", required = false) String state,
+                                                         @RequestParam(value = "applyType", required = false) String applyType,
                                                          @RequestParam(value = "page") int page,
                                                          @RequestParam(value = "row") int row) {
         ApplyRoomDiscountDto applyRoomDiscountDto = new ApplyRoomDiscountDto();
@@ -160,9 +201,9 @@
         applyRoomDiscountDto.setRoomName(roomName);
         applyRoomDiscountDto.setRoomId(roomId);
         applyRoomDiscountDto.setState(state);
+        applyRoomDiscountDto.setApplyType(applyType);
         return getApplyRoomDiscountBMOImpl.get(applyRoomDiscountDto);
     }
-
 
     /**
      * 寰俊淇濆瓨娑堟伅妯℃澘
@@ -174,11 +215,8 @@
      */
     @RequestMapping(value = "/saveApplyRoomDiscountType", method = RequestMethod.POST)
     public ResponseEntity<String> saveApplyRoomDiscountType(@RequestBody JSONObject reqJson) {
-
         Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
         Assert.hasKeyAndValue(reqJson, "typeName", "璇锋眰鎶ユ枃涓湭鍖呭惈typeName");
-
-
         ApplyRoomDiscountTypePo applyRoomDiscountTypePo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountTypePo.class);
         return saveApplyRoomDiscountTypeBMOImpl.save(applyRoomDiscountTypePo);
     }
@@ -193,12 +231,9 @@
      */
     @RequestMapping(value = "/updateApplyRoomDiscountType", method = RequestMethod.POST)
     public ResponseEntity<String> updateApplyRoomDiscountType(@RequestBody JSONObject reqJson) {
-
         Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
         Assert.hasKeyAndValue(reqJson, "typeName", "璇锋眰鎶ユ枃涓湭鍖呭惈typeName");
         Assert.hasKeyAndValue(reqJson, "applyType", "applyType涓嶈兘涓虹┖");
-
-
         ApplyRoomDiscountTypePo applyRoomDiscountTypePo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountTypePo.class);
         return updateApplyRoomDiscountTypeBMOImpl.update(applyRoomDiscountTypePo);
     }
@@ -214,10 +249,7 @@
     @RequestMapping(value = "/deleteApplyRoomDiscountType", method = RequestMethod.POST)
     public ResponseEntity<String> deleteApplyRoomDiscountType(@RequestBody JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "communityId", "灏忓尯ID涓嶈兘涓虹┖");
-
         Assert.hasKeyAndValue(reqJson, "applyType", "applyType涓嶈兘涓虹┖");
-
-
         ApplyRoomDiscountTypePo applyRoomDiscountTypePo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountTypePo.class);
         return deleteApplyRoomDiscountTypeBMOImpl.delete(applyRoomDiscountTypePo);
     }

--
Gitblit v1.8.0