From 26646454cb241fcd66b9f8278981bfebbe8b6e01 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 08 四月 2020 23:23:04 +0800
Subject: [PATCH] 合并猜猜的代码 【20200330 16:15】智慧停车--> 剩余车位功能计算逻辑bug
---
Api/src/main/java/com/java110/api/bmo/room/impl/RoomBMOImpl.java | 278 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 276 insertions(+), 2 deletions(-)
diff --git a/Api/src/main/java/com/java110/api/bmo/room/impl/RoomBMOImpl.java b/Api/src/main/java/com/java110/api/bmo/room/impl/RoomBMOImpl.java
index ace1202..5212c52 100644
--- a/Api/src/main/java/com/java110/api/bmo/room/impl/RoomBMOImpl.java
+++ b/Api/src/main/java/com/java110/api/bmo/room/impl/RoomBMOImpl.java
@@ -4,12 +4,19 @@
import com.java110.api.bmo.ApiBaseBMO;
import com.java110.api.bmo.room.IRoomBMO;
import com.java110.core.context.DataFlowContext;
+import com.java110.core.smo.fee.IFeeConfigInnerServiceSMO;
+import com.java110.core.smo.fee.IFeeInnerServiceSMO;
+import com.java110.core.smo.owner.IOwnerRoomRelInnerServiceSMO;
import com.java110.core.smo.room.IRoomInnerServiceSMO;
import com.java110.dto.RoomDto;
-import com.java110.utils.constant.BusinessTypeConstant;
-import com.java110.utils.constant.CommonConstant;
+import com.java110.dto.fee.FeeConfigDto;
+import com.java110.dto.fee.FeeDto;
+import com.java110.dto.owner.OwnerRoomRelDto;
+import com.java110.utils.constant.*;
+import com.java110.utils.exception.ListenerExecuteException;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.DateUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -29,6 +36,14 @@
@Autowired
private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
+ @Autowired
+ private IOwnerRoomRelInnerServiceSMO ownerRoomRelInnerServiceSMOImpl;
+
+ @Autowired
+ private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
+
+ @Autowired
+ private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMO;
/**
* 淇敼鎴垮眿
@@ -58,4 +73,263 @@
return business;
}
+
+
+ public JSONObject addBusinessFloor(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FLOOR_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessObj = new JSONObject();
+ businessObj.putAll(paramInJson);
+ //璁$畻 搴旀敹閲戦
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFloor", businessObj);
+ return business;
+ }
+
+ /**
+ * 娣诲姞灏忓尯鎴愬憳
+ *
+ * @param paramInJson 缁勮 妤煎皬鍖哄叧绯�
+ * @return 灏忓尯鎴愬憳淇℃伅
+ */
+ public JSONObject addCommunityMember(JSONObject paramInJson,DataFlowContext dataFlowContext) {
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_MEMBER_JOINED_COMMUNITY);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 1);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessCommunityMember = new JSONObject();
+ businessCommunityMember.put("communityMemberId", "-1");
+ businessCommunityMember.put("communityId", paramInJson.getString("communityId"));
+ businessCommunityMember.put("memberId", paramInJson.getString("floorId"));
+ businessCommunityMember.put("memberTypeCd", CommunityMemberTypeConstant.FLOOR);
+ businessCommunityMember.put("auditStatusCd", StateConstant.AGREE_AUDIT);
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessCommunityMember", businessCommunityMember);
+
+ return business;
+ }
+
+ public JSONObject addBusinessUnit(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_UNIT_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessObj = new JSONObject();
+ businessObj.putAll(paramInJson);
+ //璁$畻 搴旀敹閲戦
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessUnit", businessObj);
+ return business;
+ }
+
+ public JSONObject addBusinessRoom(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ROOM_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessObj = new JSONObject();
+ businessObj.putAll(paramInJson);
+ //璁$畻 搴旀敹閲戦
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessRoom", businessObj);
+ return business;
+ }
+
+ /**
+ * 娣诲姞灏忓尯妤间俊鎭�
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject deleteRoom(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_ROOM_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.putAll(paramInJson);
+ businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessRoom", businessUnit);
+
+ return business;
+ }
+
+ /**
+ * 鍞崠鎴垮眿淇℃伅
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject exitRoom(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+ //鏍规嵁ownerId 鍜� roomId 鏌ヨrelId 鍒犻櫎
+ OwnerRoomRelDto ownerRoomRelDto = BeanConvertUtil.covertBean(paramInJson, OwnerRoomRelDto.class);
+ List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+
+ if (ownerRoomRelDtos == null || ownerRoomRelDtos.size() != 1) {
+ throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "鏁版嵁瀛樺湪闂锛屼笟涓诲拰鎴垮眿瀵瑰簲鍏崇郴涓嶆槸涓�鏉�");
+ }
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_OWNER_ROOM_REL);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ //businessUnit.putAll(paramInJson);
+ businessUnit.put("relId", ownerRoomRelDtos.get(0).getRelId());
+ //businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessOwnerRoomRel", businessUnit);
+
+ return business;
+ }
+
+
+
+ /**
+ * 鍒犻櫎鐗╀笟璐圭敤淇℃伅
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject exitPropertyFee(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+
+ //鏍¢獙鐗╀笟璐规槸鍚﹀凡缁忎氦娓�
+ FeeDto feeDto = new FeeDto();
+ feeDto.setCommunityId(paramInJson.getString("communityId"));
+ feeDto.setIncomeObjId(paramInJson.getString("storeId"));
+ feeDto.setPayerObjId(paramInJson.getString("roomId"));
+ feeDto.setFeeTypeCd(FeeTypeConstant.FEE_TYPE_PROPERTY);
+ List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
+
+ if (feeDtos == null || feeDtos.size() != 1) {
+ throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "鏁版嵁瀛樺湪闂锛岀墿涓氳垂瀵瑰簲鍏崇郴涓嶆槸涓�鏉�");
+ }
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_FEE_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessFee = new JSONObject();
+ //businessUnit.putAll(paramInJson);
+ businessFee.put("feeId", feeDtos.get(0).getFeeId());
+ //businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFee", businessFee);
+
+ return business;
+ }
+
+ /**
+ * 娣诲姞灏忓尯妤间俊鎭�
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject addRoom(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ROOM_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.putAll(paramInJson);
+ businessUnit.put("roomId", "-1");
+ businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessRoom", businessUnit);
+
+ return business;
+ }
+ /**
+ * 鍞崠鎴垮眿淇℃伅
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject sellRoom(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_ROOM_REL);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.putAll(paramInJson);
+ businessUnit.put("relId", "-1");
+ businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessOwnerRoomRel", businessUnit);
+
+ return business;
+ }
+
+ /**
+ * 娣诲姞鐗╀笟璐圭敤
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject addPropertyFee(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+ FeeConfigDto feeConfigDto = new FeeConfigDto();
+ feeConfigDto.setCommunityId(paramInJson.getString("communityId"));
+ feeConfigDto.setIsDefault("T");
+ feeConfigDto.setFeeTypeCd(FeeTypeConstant.FEE_TYPE_PROPERTY);
+ List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMO.queryFeeConfigs(feeConfigDto);
+
+ Assert.listOnlyOne(feeConfigDtos, "鐗╀笟璐归粯璁ら厤缃笉瀛樺湪鎴栧瓨鍦ㄥ鏉¤妫�鏌�");
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FEE_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.put("feeId", "-1");
+ businessUnit.put("configId", feeConfigDtos.get(0).getConfigId());
+ businessUnit.put("feeTypeCd", FeeTypeConstant.FEE_TYPE_PROPERTY);
+ businessUnit.put("incomeObjId", paramInJson.getString("storeId"));
+ businessUnit.put("amount", "-1.00");
+ businessUnit.put("startTime", DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+ businessUnit.put("endTime", DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+ businessUnit.put("communityId", paramInJson.getString("communityId"));
+ businessUnit.put("payerObjId", paramInJson.getString("roomId"));
+ businessUnit.put("payerObjType", "3333");
+ businessUnit.put("feeFlag", "1003006");
+ businessUnit.put("state", "2008001");
+ businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFee", businessUnit);
+
+ return business;
+ }
+ /**
+ * 娣诲姞灏忓尯妤间俊鎭�
+ *
+ * @param paramInJson 鎺ュ彛璋冪敤鏀句紶鍏ュ叆鍙�
+ * @param dataFlowContext 鏁版嵁涓婁笅鏂�
+ * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
+ */
+ public JSONObject updateShellRoom(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+
+
+ JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
+ business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_ROOM_INFO);
+ business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ);
+ business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
+ JSONObject businessUnit = new JSONObject();
+ businessUnit.putAll(paramInJson);
+ businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));
+ business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessRoom", businessUnit);
+
+ return business;
+ }
+
+
}
--
Gitblit v1.8.0