From 65763d38cf9b6b8067a293d9c99297efea0de3e3 Mon Sep 17 00:00:00 2001
From: 928255095 <928255095@qq.com>
Date: 星期二, 07 九月 2021 22:04:15 +0800
Subject: [PATCH] Merge branch 'xinghong-dev' into 'master'
---
service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java | 257 ++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 232 insertions(+), 25 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 d057e48..5eeb08d
--- a/service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java
+++ b/service-fee/src/main/java/com/java110/fee/api/ApplyRoomDiscountApi.java
@@ -2,20 +2,30 @@
import com.alibaba.fastjson.JSONObject;
import com.java110.dto.applyRoomDiscount.ApplyRoomDiscountDto;
+import com.java110.dto.applyRoomDiscountType.ApplyRoomDiscountTypeDto;
+import com.java110.fee.bmo.applyRoomDiscount.IAuditApplyRoomDiscountBMO;
import com.java110.fee.bmo.applyRoomDiscount.IDeleteApplyRoomDiscountBMO;
import com.java110.fee.bmo.applyRoomDiscount.IGetApplyRoomDiscountBMO;
import com.java110.fee.bmo.applyRoomDiscount.ISaveApplyRoomDiscountBMO;
import com.java110.fee.bmo.applyRoomDiscount.IUpdateApplyRoomDiscountBMO;
+import com.java110.fee.bmo.applyRoomDiscountType.IDeleteApplyRoomDiscountTypeBMO;
+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 com.java110.utils.util.StringUtil;
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")
@@ -23,16 +33,36 @@
@Autowired
private ISaveApplyRoomDiscountBMO saveApplyRoomDiscountBMOImpl;
+
@Autowired
private IUpdateApplyRoomDiscountBMO updateApplyRoomDiscountBMOImpl;
+
@Autowired
private IDeleteApplyRoomDiscountBMO deleteApplyRoomDiscountBMOImpl;
@Autowired
private IGetApplyRoomDiscountBMO getApplyRoomDiscountBMOImpl;
+ @Autowired
+ private IAuditApplyRoomDiscountBMO auditApplyRoomDiscountBMOImpl;
+
+ @Autowired
+ private ISaveApplyRoomDiscountTypeBMO saveApplyRoomDiscountTypeBMOImpl;
+
+ @Autowired
+ private IUpdateApplyRoomDiscountTypeBMO updateApplyRoomDiscountTypeBMOImpl;
+
+ @Autowired
+ private IDeleteApplyRoomDiscountTypeBMO deleteApplyRoomDiscountTypeBMOImpl;
+
+ @Autowired
+ private IGetApplyRoomDiscountTypeBMO getApplyRoomDiscountTypeBMOImpl;
+
+ @Autowired
+ private IApplyRoomDiscountInnerServiceSMO applyRoomDiscountInnerServiceSMOImpl;
+
/**
- * 寰俊淇濆瓨娑堟伅妯℃澘
+ * 浼樻儬鐢宠
*
* @param reqJson
* @return
@@ -40,22 +70,52 @@
* @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");
-
-
+ if (!StringUtil.isEmpty(reqJson.getString("startTime"))) {
+ String startTime = reqJson.getString("startTime") + " 00:00:00";
+ reqJson.put("startTime", startTime);
+ }
+ if (!StringUtil.isEmpty(reqJson.getString("endTime"))) {
+ String endTime = reqJson.getString("endTime") + " 23:59:59";
+ reqJson.put("endTime", endTime);
+ }
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) {
+ //绌虹疆鎴夸紭鎯犲彲鐢�
+ applyRoomDiscountPo.setInUse("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) {
+ //绌虹疆鎴夸紭鎯犲彲鐢�
+ applyRoomDiscountPo.setInUse("0");
+ return saveApplyRoomDiscountBMOImpl.save(applyRoomDiscountPo);
+ } else {
+ throw new UnsupportedOperationException("璇ユ椂闂存宸茬粡鐢宠杩囩┖缃埧锛岃閲嶆柊杈撳叆绌虹疆鎴跨敵璇峰紑濮嬪拰缁撴潫鏃堕棿");
+ }
+ } else {
+ throw new UnsupportedOperationException("淇℃伅閿欒");
+ }
}
/**
- * 寰俊淇敼娑堟伅妯℃澘
+ * 楠屾埧鎺ュ彛
*
* @param reqJson
* @return
@@ -63,19 +123,95 @@
* @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, "roomId", "璇锋眰鎶ユ枃涓湭鍖呭惈roomId");
- Assert.hasKeyAndValue(reqJson, "roomName", "璇锋眰鎶ユ枃涓湭鍖呭惈roomName");
- Assert.hasKeyAndValue(reqJson, "startTime", "璇锋眰鎶ユ枃涓湭鍖呭惈startTime");
- Assert.hasKeyAndValue(reqJson, "endTime", "璇锋眰鎶ユ枃涓湭鍖呭惈endTime");
- Assert.hasKeyAndValue(reqJson, "applyType", "璇锋眰鎶ユ枃涓湭鍖呭惈applyType");
+ Assert.hasKeyAndValue(reqJson, "state", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧鐘舵��");
+ Assert.hasKeyAndValue(reqJson, "startTime", "璇锋眰鎶ユ枃涓湭鍖呭惈寮�濮嬫椂闂�");
+ Assert.hasKeyAndValue(reqJson, "endTime", "璇锋眰鎶ユ枃涓湭鍖呭惈缁撴潫鏃堕棿");
+ Assert.hasKeyAndValue(reqJson, "checkRemark", "璇锋眰鎶ユ枃涓湭鍖呭惈楠屾埧璇存槑");
Assert.hasKeyAndValue(reqJson, "ardId", "ardId涓嶈兘涓虹┖");
-
-
+ ApplyRoomDiscountDto applyRoomDiscountDto = new ApplyRoomDiscountDto();
+ applyRoomDiscountDto.setArdId(reqJson.getString("ardId"));
+ //鏌ヨ鎴垮眿浼樻儬鐢宠淇℃伅
+ List<ApplyRoomDiscountDto> applyRoomDiscountDtos = applyRoomDiscountInnerServiceSMOImpl.queryApplyRoomDiscounts(applyRoomDiscountDto);
+ Assert.listOnlyOne(applyRoomDiscountDtos, "鏌ヨ鎴垮眿浼樻儬淇℃伅閿欒锛�");
+ //鑾峰彇鎴垮眿浼樻儬瀹℃牳鐘舵��
+ String state = applyRoomDiscountDtos.get(0).getState();
+ if (!StringUtil.isEmpty(state) && !state.equals("1")) {
+ throw new IllegalArgumentException("璇ユ埧灞嬪凡楠岃繃鎴匡紝鏃犳硶鍐嶆杩涜楠屾埧锛�");
+ }
+ reqJson.put("checkUserId", userId);
ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
return updateApplyRoomDiscountBMOImpl.update(applyRoomDiscountPo);
+ }
+
+ /**
+ * 淇敼浼樻儬鐢宠
+ *
+ * @param reqJson
+ * @return
+ * @serviceCode /applyRoomDiscount/editApplyRoomDiscount
+ * @path /app/applyRoomDiscount/editApplyRoomDiscount
+ */
+ @RequestMapping(value = "/editApplyRoomDiscount", method = RequestMethod.POST)
+ public ResponseEntity<String> editApplyRoomDiscount(@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, "ardId", "ardId涓嶈兘涓虹┖");
+ 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涓嶈兘涓虹┖");
+ ApplyRoomDiscountDto applyRoomDiscountDto = new ApplyRoomDiscountDto();
+ applyRoomDiscountDto.setArdId(reqJson.getString("ardId"));
+ //鏌ヨ鎴垮眿浼樻儬鐢宠淇℃伅
+ List<ApplyRoomDiscountDto> applyRoomDiscountDtos = applyRoomDiscountInnerServiceSMOImpl.queryApplyRoomDiscounts(applyRoomDiscountDto);
+ Assert.listOnlyOne(applyRoomDiscountDtos, "鏌ヨ鎴垮眿浼樻儬淇℃伅閿欒锛�");
+ //鑾峰彇鎴垮眿浼樻儬瀹℃牳鐘舵��
+ String state = applyRoomDiscountDtos.get(0).getState();
+ if (!StringUtil.isEmpty(state) && !state.equals("2")) {
+ throw new IllegalArgumentException("璇ユ埧灞嬪凡瀹℃牳杩囷紝鏃犳硶鍐嶆杩涜瀹℃牳锛�");
+ }
+ reqJson.put("reviewUserId", userId);
+ ApplyRoomDiscountPo applyRoomDiscountPo = BeanConvertUtil.covertBean(reqJson, ApplyRoomDiscountPo.class);
+ return updateApplyRoomDiscountBMOImpl.update(applyRoomDiscountPo);
+ }
+
+ /**
+ * 楠屾埧鎺ュ彛
+ *
+ * @param reqJson
+ * @return
+ * @serviceCode /applyRoomDiscount/auditApplyRoomDiscount
+ * @path /app/applyRoomDiscount/auditApplyRoomDiscount
+ */
+ @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);
}
/**
@@ -89,16 +225,13 @@
@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);
}
/**
- * 寰俊鍒犻櫎娑堟伅妯℃澘
+ * 鏌ヨ浼樻儬鐢宠
*
* @param communityId 灏忓尯ID
* @return
@@ -110,6 +243,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();
@@ -119,6 +253,79 @@
applyRoomDiscountDto.setRoomName(roomName);
applyRoomDiscountDto.setRoomId(roomId);
applyRoomDiscountDto.setState(state);
+ applyRoomDiscountDto.setApplyType(applyType);
return getApplyRoomDiscountBMOImpl.get(applyRoomDiscountDto);
}
+
+ /**
+ * 寰俊淇濆瓨娑堟伅妯℃澘
+ *
+ * @param reqJson
+ * @return
+ * @serviceCode /applyRoomDiscount/saveApplyRoomDiscountType
+ * @path /app/applyRoomDiscount/saveApplyRoomDiscountType
+ */
+ @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);
+ }
+
+ /**
+ * 寰俊淇敼娑堟伅妯℃澘
+ *
+ * @param reqJson
+ * @return
+ * @serviceCode /applyRoomDiscount/updateApplyRoomDiscountType
+ * @path /app/applyRoomDiscount/updateApplyRoomDiscountType
+ */
+ @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);
+ }
+
+ /**
+ * 寰俊鍒犻櫎娑堟伅妯℃澘
+ *
+ * @param reqJson
+ * @return
+ * @serviceCode /applyRoomDiscount/deleteApplyRoomDiscountType
+ * @path /app/applyRoomDiscount/deleteApplyRoomDiscountType
+ */
+ @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);
+ }
+
+ /**
+ * 寰俊鍒犻櫎娑堟伅妯℃澘
+ *
+ * @param communityId 灏忓尯ID
+ * @return
+ * @serviceCode /applyRoomDiscount/queryApplyRoomDiscountType
+ * @path /app/applyRoomDiscount/queryApplyRoomDiscountType
+ */
+ @RequestMapping(value = "/queryApplyRoomDiscountType", method = RequestMethod.GET)
+ public ResponseEntity<String> queryApplyRoomDiscountType(@RequestParam(value = "communityId") String communityId,
+ @RequestParam(value = "applyType", required = false) String applyType,
+ @RequestParam(value = "typeName", required = false) String typeName,
+ @RequestParam(value = "page") int page,
+ @RequestParam(value = "row") int row) {
+ ApplyRoomDiscountTypeDto applyRoomDiscountTypeDto = new ApplyRoomDiscountTypeDto();
+ applyRoomDiscountTypeDto.setPage(page);
+ applyRoomDiscountTypeDto.setRow(row);
+ applyRoomDiscountTypeDto.setCommunityId(communityId);
+ applyRoomDiscountTypeDto.setApplyType(applyType);
+ applyRoomDiscountTypeDto.setTypeName(typeName);
+ return getApplyRoomDiscountTypeBMOImpl.get(applyRoomDiscountTypeDto);
+ }
}
--
Gitblit v1.8.0