From cc6cef820c096b13a62f5e7ea84571661a5d0ecf Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 24 三月 2022 08:46:19 +0800
Subject: [PATCH] 优化查询楼栋 改为 cmd 模式 方便理解 二开处理
---
service-community/src/main/java/com/java110/community/cmd/parkingBox/UpdateParkingBoxCmd.java | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 51 insertions(+), 1 deletions(-)
diff --git a/service-community/src/main/java/com/java110/community/cmd/parkingBox/UpdateParkingBoxCmd.java b/service-community/src/main/java/com/java110/community/cmd/parkingBox/UpdateParkingBoxCmd.java
index 8be0fa3..44884e0 100644
--- a/service-community/src/main/java/com/java110/community/cmd/parkingBox/UpdateParkingBoxCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/parkingBox/UpdateParkingBoxCmd.java
@@ -21,15 +21,24 @@
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.event.cmd.AbstractServiceCmdListener;
import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.parking.ParkingAreaDto;
+import com.java110.dto.parkingBoxArea.ParkingBoxAreaDto;
+import com.java110.intf.community.IParkingAreaInnerServiceSMO;
+import com.java110.intf.community.IParkingBoxAreaV1InnerServiceSMO;
import com.java110.intf.community.IParkingBoxV1InnerServiceSMO;
import com.java110.po.parkingBox.ParkingBoxPo;
+import com.java110.po.parkingBoxArea.ParkingBoxAreaPo;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import com.java110.core.log.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
+
+import java.util.List;
/**
@@ -46,10 +55,17 @@
public class UpdateParkingBoxCmd extends AbstractServiceCmdListener {
private static Logger logger = LoggerFactory.getLogger(UpdateParkingBoxCmd.class);
+ public static final String CODE_PREFIX_ID = "10";
@Autowired
private IParkingBoxV1InnerServiceSMO parkingBoxV1InnerServiceSMOImpl;
+
+ @Autowired
+ private IParkingAreaInnerServiceSMO parkingAreaInnerServiceSMOImpl;
+
+ @Autowired
+ private IParkingBoxAreaV1InnerServiceSMO parkingBoxAreaV1InnerServiceSMOImpl;
@Override
public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
@@ -69,6 +85,40 @@
throw new CmdException("鏇存柊鏁版嵁澶辫触");
}
+ if (!reqJson.containsKey("paId") || StringUtil.isEmpty(reqJson.getString("paId"))) {
+ cmdDataFlowContext.setResponseEntity(ResultVo.success());
+ return ;
+ }
+
+ //鍒ゆ柇鍋滆溅鍦烘槸鍚﹀瓨鍦�
+ ParkingAreaDto parkingAreaDto = new ParkingAreaDto();
+ parkingAreaDto.setPaId(reqJson.getString("paId"));
+ parkingAreaDto.setCommunityId(reqJson.getString("communityId"));
+ List<ParkingAreaDto> parkingAreaDtos = parkingAreaInnerServiceSMOImpl.queryParkingAreas(parkingAreaDto);
+
+ Assert.listOnlyOne(parkingAreaDtos, "鍋滆溅鍦轰笉瀛樺湪");
+
+ ParkingBoxAreaDto parkingBoxAreaDto = new ParkingBoxAreaDto();
+ parkingBoxAreaDto.setBoxId(reqJson.getString("boxId"));
+ parkingBoxAreaDto.setPaId(parkingAreaDtos.get(0).getPaId());
+ parkingBoxAreaDto.setCommunityId(parkingAreaDtos.get(0).getCommunityId());
+ List<ParkingBoxAreaDto> parkingBoxAreaDtos = parkingBoxAreaV1InnerServiceSMOImpl.queryParkingBoxAreas(parkingBoxAreaDto);
+ ParkingBoxAreaPo parkingBoxAreaPo = new ParkingBoxAreaPo();
+ parkingBoxAreaPo.setBoxId(parkingBoxPo.getBoxId());
+ parkingBoxAreaPo.setPaId(parkingAreaDtos.get(0).getPaId());
+ parkingBoxAreaPo.setCommunityId(parkingAreaDtos.get(0).getCommunityId());
+ if(parkingBoxAreaDtos == null || parkingBoxAreaDtos.size() < 1) {
+ parkingBoxAreaPo.setBaId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+ parkingBoxAreaPo.setDefaultArea(ParkingBoxAreaDto.DEFAULT_AREA_TRUE);
+ flag = parkingBoxAreaV1InnerServiceSMOImpl.saveParkingBoxArea(parkingBoxAreaPo);
+ }else{
+ parkingBoxAreaPo.setBaId(parkingBoxAreaDtos.get(0).getBaId());
+ flag = parkingBoxAreaV1InnerServiceSMOImpl.updateParkingBoxArea(parkingBoxAreaPo);
+ }
+ if (flag < 1) {
+ throw new CmdException("淇濆瓨鏁版嵁澶辫触");
+ }
+
cmdDataFlowContext.setResponseEntity(ResultVo.success());
}
}
--
Gitblit v1.8.0