From 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 19 七月 2022 21:49:55 +0800
Subject: [PATCH] 优化添加设备 功能
---
service-community/src/main/java/com/java110/community/cmd/parkingSpaceApply/SaveParkingSpaceApplyCmd.java | 65 +++++++++++++++++++++++++++++---
1 files changed, 59 insertions(+), 6 deletions(-)
diff --git a/service-community/src/main/java/com/java110/community/cmd/parkingSpaceApply/SaveParkingSpaceApplyCmd.java b/service-community/src/main/java/com/java110/community/cmd/parkingSpaceApply/SaveParkingSpaceApplyCmd.java
index 2ea5158..31e9032 100644
--- a/service-community/src/main/java/com/java110/community/cmd/parkingSpaceApply/SaveParkingSpaceApplyCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/parkingSpaceApply/SaveParkingSpaceApplyCmd.java
@@ -19,10 +19,17 @@
import com.java110.core.annotation.Java110Cmd;
import com.java110.core.annotation.Java110Transactional;
import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
import com.java110.core.event.cmd.CmdEvent;
import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.fee.PayFeeDto;
+import com.java110.dto.owner.OwnerCarDto;
+import com.java110.dto.owner.OwnerDto;
+import com.java110.dto.parkingSpaceApply.ParkingSpaceApplyDto;
import com.java110.intf.community.IParkingSpaceApplyV1InnerServiceSMO;
+import com.java110.intf.fee.IPayFeeV1InnerServiceSMO;
+import com.java110.intf.user.IBuildingOwnerV1InnerServiceSMO;
+import com.java110.intf.user.IOwnerCarV1InnerServiceSMO;
import com.java110.po.parkingSpaceApply.ParkingSpaceApplyPo;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
@@ -30,7 +37,9 @@
import com.java110.vo.ResultVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import com.java110.core.log.LoggerFactory;
+
+import java.util.List;
/**
* 绫昏〃杩帮細淇濆瓨
@@ -43,7 +52,7 @@
* // modify by 寮犱笁 at 2021-09-12 绗�10琛屽湪鏌愮鍦烘櫙涓嬪瓨鍦ㄦ煇绉峛ug 闇�瑕佷慨澶嶏紝娉ㄩ噴10鑷�20琛� 鍔犲叆 20琛岃嚦30琛�
*/
@Java110Cmd(serviceCode = "parkingSpaceApply.saveParkingSpaceApply")
-public class SaveParkingSpaceApplyCmd extends AbstractServiceCmdListener {
+public class SaveParkingSpaceApplyCmd extends Cmd {
private static Logger logger = LoggerFactory.getLogger(SaveParkingSpaceApplyCmd.class);
@@ -51,6 +60,12 @@
@Autowired
private IParkingSpaceApplyV1InnerServiceSMO parkingSpaceApplyV1InnerServiceSMOImpl;
+ @Autowired
+ private IOwnerCarV1InnerServiceSMO ownerCarV1InnerServiceSMOImpl;
+ @Autowired
+ private IPayFeeV1InnerServiceSMO payFeeV1InnerServiceSMOImpl;
+ @Autowired
+ private IBuildingOwnerV1InnerServiceSMO buildingOwnerV1InnerServiceSMOImpl;
@Override
public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
@@ -64,21 +79,59 @@
Assert.hasKeyAndValue(reqJson, "applyPersonName", "璇锋眰鎶ユ枃涓湭鍖呭惈applyPersonName");
Assert.hasKeyAndValue(reqJson, "applyPersonLink", "璇锋眰鎶ユ枃涓湭鍖呭惈applyPersonLink");
Assert.hasKeyAndValue(reqJson, "applyPersonId", "璇锋眰鎶ユ枃涓湭鍖呭惈applyPersonId");
+ Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
}
@Override
@Java110Transactional
public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+ ParkingSpaceApplyPo parkingSpaceApplyPo = BeanConvertUtil.covertBean(reqJson, ParkingSpaceApplyPo.class);
+ /**
+ * 1銆佽粖浣嶇敵璜嬪垽鏂疯粖杓涙槸鍚﹀瓨鍦╫wner_car锛屽鏋滃瓨鍦ㄥ垽鏂槸鍚︽湁2008001鐨勮垂鐢紝
+ * car_id鏄垂鐢ㄨ〃涓殑payer_obj_id銆傜敵璇风殑鏃跺�欏垽鏂笅owner_id鏄惁涓�-1锛岃繕闇�鍒皁wner琛ㄤ腑鏍¢獙鍦ㄤ笉鍦紝
+ * 2銆佸鏍哥殑鏃讹紝鍒ゆ柇杞﹁締鏄惁鍦╫wner_car涓湁锛屾湁灏辫烦杩囥�� 娌℃湁鐨勮瘽鍐欏叆owner_car锛�--閮借鍐欏叆pay_fee銆�
+ * 3銆佹敮浠樻垚鍔熷悗锛屽洖璋冩柟娉曚腑鍒锋柊鐢宠琛ㄧ姸鎬併��
+ */
+ //鐢宠鐨勬椂鍊欏垽鏂笅owner_id鏄惁涓�-1
+ if ("-1".equals(parkingSpaceApplyPo.getApplyPersonId())) {
+ throw new CmdException("娓稿韬唤涓嶈兘鐢宠杞︿綅锛�");
+ }
+ //杩橀渶鍒皁wner琛ㄤ腑鏍¢獙鍦ㄤ笉鍦�,涓嶆槸涓氫富鍒欎笉鑳界敵璇�
+ OwnerDto ownerDto = new OwnerDto();
+ ownerDto.setOwnerId(parkingSpaceApplyPo.getApplyPersonId());
+ List<OwnerDto> ownerDtos = buildingOwnerV1InnerServiceSMOImpl.queryBuildingOwners(ownerDto);
+ if (ownerDtos == null || ownerDtos.size() < 1) {
+ throw new CmdException("涓嶆槸鏈皬鍖轰笟涓讳笉鑳界敵璇疯溅浣嶏紒");
+ }
+ //鍒ゆ柇杞﹁締鏄惁宸茬粡鏈夌敵璇峰崟
+ ParkingSpaceApplyDto parkingSpaceApplyDto = new ParkingSpaceApplyDto();
+ parkingSpaceApplyDto.setCarNum(parkingSpaceApplyPo.getCarNum());
+ parkingSpaceApplyDto.setState("1001");//瀹℃牳涓�
+ int count = parkingSpaceApplyV1InnerServiceSMOImpl.queryParkingSpaceApplysCount(parkingSpaceApplyDto);
+ if (count > 1) {
+ throw new CmdException("褰撳墠杞﹁締鐢宠澶勭悊瀹℃牳涓紝涓嶈兘閲嶅鐢宠銆�");
+ }
+ //杌婁綅鐢宠珛鍒ゆ柗杌婅紱鏄惁瀛樺湪owner_car锛屽鏋滃瓨鍦ㄥ垽鏂槸鍚︽湁2008001鐨勮垂鐢�
+ OwnerCarDto ownerCarDto = new OwnerCarDto();
+ ownerCarDto.setCarNum(parkingSpaceApplyPo.getCarNum());
+ ownerCarDto.setCommunityId(parkingSpaceApplyPo.getCommunityId());
+ List<OwnerCarDto> ownerCarDtos = ownerCarV1InnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
+ if (ownerCarDtos != null && ownerCarDtos.size() > 0) {
+ PayFeeDto payFeeDto = new PayFeeDto();
+ payFeeDto.setPayerObjId(ownerCarDtos.get(0).getCarId());
+ payFeeDto.setState("2008001");
+ List<PayFeeDto> payFeeDtos = payFeeV1InnerServiceSMOImpl.queryPayFees(payFeeDto);
+ if (payFeeDtos != null && payFeeDtos.size() > 0) {
+ throw new CmdException("璇ヨ溅杈嗗凡缁忔湁鐩稿叧璐圭敤锛岃鍒板仠杞﹁垂涓画璐广�傛垨鑰呰仈绯荤鐞嗗憳");
+ }
+ }
- ParkingSpaceApplyPo parkingSpaceApplyPo = BeanConvertUtil.covertBean(reqJson, ParkingSpaceApplyPo.class);
parkingSpaceApplyPo.setApplyId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
int flag = parkingSpaceApplyV1InnerServiceSMOImpl.saveParkingSpaceApply(parkingSpaceApplyPo);
-
if (flag < 1) {
throw new CmdException("淇濆瓨鏁版嵁澶辫触");
}
-
cmdDataFlowContext.setResponseEntity(ResultVo.success());
}
}
--
Gitblit v1.8.0