From ce64e667815b39efdc2f8bd52be0d43d49db8d84 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期日, 17 七月 2022 00:06:29 +0800
Subject: [PATCH] 优化小区位置
---
service-api/src/main/java/com/java110/api/bmo/parkingSpace/impl/ParkingSpaceBMOImpl.java | 123 +++++++++++++++++++++++++++++-----------
1 files changed, 89 insertions(+), 34 deletions(-)
diff --git a/service-api/src/main/java/com/java110/api/bmo/parkingSpace/impl/ParkingSpaceBMOImpl.java b/service-api/src/main/java/com/java110/api/bmo/parkingSpace/impl/ParkingSpaceBMOImpl.java
old mode 100644
new mode 100755
index f4d78f6..9253c2f
--- a/service-api/src/main/java/com/java110/api/bmo/parkingSpace/impl/ParkingSpaceBMOImpl.java
+++ b/service-api/src/main/java/com/java110/api/bmo/parkingSpace/impl/ParkingSpaceBMOImpl.java
@@ -1,27 +1,35 @@
package com.java110.api.bmo.parkingSpace.impl;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.api.bmo.ApiBaseBMO;
import com.java110.api.bmo.parkingSpace.IParkingSpaceBMO;
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.parkingSpace.IParkingSpaceInnerServiceSMO;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.factory.GenerateCodeFactory;
import com.java110.dto.fee.FeeConfigDto;
import com.java110.dto.fee.FeeDto;
import com.java110.dto.owner.OwnerCarDto;
import com.java110.dto.parking.ParkingSpaceDto;
+import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
+import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
+import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.intf.user.IOwnerCarAttrInnerServiceSMO;
import com.java110.po.car.OwnerCarPo;
import com.java110.po.fee.PayFeeDetailPo;
import com.java110.po.fee.PayFeePo;
+import com.java110.po.ownerCarAttr.OwnerCarAttrPo;
import com.java110.po.parking.ParkingSpacePo;
+import com.java110.po.room.RoomAttrPo;
import com.java110.utils.constant.BusinessTypeConstant;
import com.java110.utils.constant.CommonConstant;
import com.java110.utils.constant.FeeTypeConstant;
import com.java110.utils.constant.ResponseConstant;
+import com.java110.utils.exception.CmdException;
import com.java110.utils.exception.ListenerExecuteException;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -40,13 +48,17 @@
@Service("parkingSpaceBMOImpl")
public class ParkingSpaceBMOImpl extends ApiBaseBMO implements IParkingSpaceBMO {
-
@Autowired
private IParkingSpaceInnerServiceSMO parkingSpaceInnerServiceSMOImpl;
+
@Autowired
private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
+
@Autowired
private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
+
+ @Autowired
+ IOwnerCarAttrInnerServiceSMO ownerCarAttrInnerServiceSMOImpl;
/**
* 娣诲姞灏忓尯妤间俊鎭�
@@ -85,6 +97,7 @@
businessParkingSpace.putAll(paramInJson);
businessParkingSpace.put("state", parkingSpaceDto.getState());
ParkingSpacePo parkingSpacePo = BeanConvertUtil.covertBean(businessParkingSpace, ParkingSpacePo.class);
+ //parkingSpaceInnerServiceSMOImpl.updateParkingSpace(parkingSpacePo);
super.update(dataFlowContext, parkingSpacePo, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_PARKING_SPACE);
}
@@ -186,13 +199,16 @@
* @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
*/
public void addParkingSpace(JSONObject paramInJson, DataFlowContext dataFlowContext) {
-
JSONObject businessParkingSpace = new JSONObject();
businessParkingSpace.putAll(paramInJson);
businessParkingSpace.put("state", "F");
- businessParkingSpace.put("psId", "-1");
+ businessParkingSpace.put("psId", GenerateCodeFactory.getPsId(GenerateCodeFactory.CODE_PREFIX_psId));
+ businessParkingSpace.put("bId", "-1");
+ businessParkingSpace.put("createTime", new Date());
ParkingSpacePo parkingSpacePo = BeanConvertUtil.covertBean(businessParkingSpace, ParkingSpacePo.class);
- super.delete(dataFlowContext, parkingSpacePo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_PARKING_SPACE);
+ super.insert(dataFlowContext, parkingSpacePo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_PARKING_SPACE);
+
+ //parkingSpaceInnerServiceSMOImpl.saveParkingSpace(parkingSpacePo);
}
@@ -212,9 +228,48 @@
JSONObject businessOwnerCar = new JSONObject();
businessOwnerCar.putAll(paramInJson);
- businessOwnerCar.put("carId", "-1");
+ businessOwnerCar.put("memberId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_carId));
+ if (!paramInJson.containsKey("carId") || paramInJson.getString("carId").startsWith("-")) {
+ businessOwnerCar.put("carId", businessOwnerCar.getString("memberId"));
+ }
OwnerCarPo ownerCarPo = BeanConvertUtil.covertBean(businessOwnerCar, OwnerCarPo.class);
- super.delete(dataFlowContext, ownerCarPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_CAR);
+ ownerCarPo.setState(OwnerCarDto.STATE_NORMAL);
+
+ //娌℃湁鎸囧畾鏃朵负涓昏杞﹁締
+ if (!paramInJson.containsKey("carTypeCd") || StringUtil.isEmpty(paramInJson.getString("carTypeCd"))) {
+ ownerCarPo.setCarTypeCd(OwnerCarDto.CAR_TYPE_PRIMARY);
+ }
+ //娣诲姞杞﹁締灞炴��
+ dealOwnerCarAttr(paramInJson, ownerCarPo, dataFlowContext);
+ super.insert(dataFlowContext, ownerCarPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_CAR);
+ }
+
+ private void dealOwnerCarAttr(JSONObject paramInJson, OwnerCarPo ownerCarPo, DataFlowContext dataFlowContext) {
+
+ if (!paramInJson.containsKey("attrs")) {
+ return;
+ }
+
+ JSONArray attrs = paramInJson.getJSONArray("attrs");
+ if (attrs.size() < 1) {
+ return;
+ }
+ JSONObject attr = null;
+ int flag = 0;
+ for (int attrIndex = 0; attrIndex < attrs.size(); attrIndex++) {
+ attr = attrs.getJSONObject(attrIndex);
+ OwnerCarAttrPo ownerCarAttrPo = new OwnerCarAttrPo();
+ ownerCarAttrPo.setAttrId(GenerateCodeFactory.getAttrId());
+ ownerCarAttrPo.setCommunityId(ownerCarPo.getCommunityId());
+ ownerCarAttrPo.setCarId(ownerCarPo.getCarId());
+ ownerCarAttrPo.setSpecCd(attr.getString("specCd"));
+ ownerCarAttrPo.setValue(attr.getString("value"));
+ flag = ownerCarAttrInnerServiceSMOImpl.saveOwnerCarAttr(ownerCarAttrPo);
+ if (flag < 1) {
+ throw new CmdException("淇濆瓨杞﹁締灞炴�уけ璐�");
+ }
+ }
+
}
/**
@@ -231,7 +286,8 @@
List<ParkingSpaceDto> parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto);
if (parkingSpaceDtos == null || parkingSpaceDtos.size() != 1) {
- throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "鏈煡璇㈠埌鍋滆溅浣嶄俊鎭�" + JSONObject.toJSONString(parkingSpaceDto));
+ //throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "鏈煡璇㈠埌鍋滆溅浣嶄俊鎭�" + JSONObject.toJSONString(parkingSpaceDto));
+ return;
}
parkingSpaceDto = parkingSpaceDtos.get(0);
@@ -239,9 +295,9 @@
JSONObject businessParkingSpace = new JSONObject();
businessParkingSpace.putAll(BeanConvertUtil.beanCovertMap(parkingSpaceDto));
- businessParkingSpace.put("state", this.isHireParkingSpace(paramInJson) ? "H" : "S");
+ businessParkingSpace.put("state", paramInJson.getString("carNumType"));
ParkingSpacePo parkingSpacePo = BeanConvertUtil.covertBean(businessParkingSpace, ParkingSpacePo.class);
- super.delete(dataFlowContext, parkingSpacePo, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_PARKING_SPACE);
+ super.update(dataFlowContext, parkingSpacePo, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_PARKING_SPACE);
}
@@ -326,22 +382,21 @@
// 璁$畻feeTypeCd
- String feeTypeCd = "1001".equals(parkingSpaceDto.getTypeCd())
- ? (this.isHireParkingSpace(paramInJson)
- ? FeeTypeConstant.FEE_TYPE_HIRE_UP_PARKING_SPACE
- : FeeTypeConstant.FEE_TYPE_SELL_UP_PARKING_SPACE)
- : (this.isHireParkingSpace(paramInJson)
- ? FeeTypeConstant.FEE_TYPE_HIRE_DOWN_PARKING_SPACE
- : FeeTypeConstant.FEE_TYPE_SELL_DOWN_PARKING_SPACE);
-
+// String feeTypeCd = "1001".equals(parkingSpaceDto.getTypeCd())
+// ? (this.isHireParkingSpace(paramInJson)
+// ? FeeTypeConstant.FEE_TYPE_HIRE_UP_PARKING_SPACE
+// : FeeTypeConstant.FEE_TYPE_SELL_UP_PARKING_SPACE)
+// : (this.isHireParkingSpace(paramInJson)
+// ? FeeTypeConstant.FEE_TYPE_HIRE_DOWN_PARKING_SPACE
+// : FeeTypeConstant.FEE_TYPE_SELL_DOWN_PARKING_SPACE);
+ String feeTypeCd = FeeTypeConstant.FEE_TYPE_CAR;
paramInJson.put("feeTypeCd", feeTypeCd);
//璁$畻 receivableAmount
FeeConfigDto feeConfigDto = new FeeConfigDto();
- feeConfigDto.setFeeTypeCd(feeTypeCd);
- feeConfigDto.setIsDefault("T");
+ feeConfigDto.setConfigId(paramInJson.getString("configId"));
feeConfigDto.setCommunityId(paramInJson.getString("communityId"));
List<FeeConfigDto> feeConfigDtos = feeConfigInnerServiceSMOImpl.queryFeeConfigs(feeConfigDto);
if (feeConfigDtos == null || feeConfigDtos.size() != 1) {
@@ -350,29 +405,29 @@
feeConfigDto = feeConfigDtos.get(0);
- double receivableAmount = isHireParkingSpace(paramInJson) ? Double.parseDouble(feeConfigDto.getAdditionalAmount())
- * Double.parseDouble(paramInJson.getString("cycles")) : Double.parseDouble(feeConfigDto.getAdditionalAmount());
+ double receivableAmount = Double.parseDouble(feeConfigDto.getAdditionalAmount())
+ * Double.parseDouble(paramInJson.getString("cycles"));
paramInJson.put("receivableAmount", receivableAmount);
paramInJson.put("configId", feeConfigDto.getConfigId());
//璁$畻 amount
- String amount = isHireParkingSpace(paramInJson) ? "-1.00" : String.valueOf(receivableAmount);
+ String amount = "-1.00";
paramInJson.put("amount", amount);
//璁$畻 cycles
- String cycles = isHireParkingSpace(paramInJson) ? paramInJson.getString("cycles") : "1";
+ String cycles = paramInJson.getString("cycles");
paramInJson.put("cycles", cycles);
//璁$畻缁撴潫鏃堕棿
- String endTime = "2038-01-01 00:00:00";
- if (isHireParkingSpace(paramInJson)) {
- Date et = DateUtil.getCurrentDate();
- Calendar endCalender = Calendar.getInstance();
- endCalender.setTime(et);
- endCalender.add(Calendar.MONTH, Integer.parseInt(paramInJson.getString("cycles")));
- endTime = DateUtil.getFormatTimeString(endCalender.getTime(), DateUtil.DATE_FORMATE_STRING_A);
- }
+ String endTime = "";
+
+ Date et = DateUtil.getCurrentDate();
+ Calendar endCalender = Calendar.getInstance();
+ endCalender.setTime(et);
+ endCalender.add(Calendar.MONTH, Integer.parseInt(paramInJson.getString("cycles")));
+ endTime = DateUtil.getFormatTimeString(endCalender.getTime(), DateUtil.DATE_FORMATE_STRING_A);
+
paramInJson.put("endTime", endTime);
--
Gitblit v1.8.0