From 3311847f3252555fb56b4f4f20c8af440e2484e2 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 08 三月 2022 17:38:16 +0800
Subject: [PATCH] 资产导入功能开发完成
---
service-community/src/main/java/com/java110/community/smo/impl/ImportOwnerRoomInnerServiceSMOImpl.java | 193 ++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 186 insertions(+), 7 deletions(-)
diff --git a/service-community/src/main/java/com/java110/community/smo/impl/ImportOwnerRoomInnerServiceSMOImpl.java b/service-community/src/main/java/com/java110/community/smo/impl/ImportOwnerRoomInnerServiceSMOImpl.java
index fc42ec5..49b7e3d 100644
--- a/service-community/src/main/java/com/java110/community/smo/impl/ImportOwnerRoomInnerServiceSMOImpl.java
+++ b/service-community/src/main/java/com/java110/community/smo/impl/ImportOwnerRoomInnerServiceSMOImpl.java
@@ -7,14 +7,15 @@
import com.java110.dto.RoomDto;
import com.java110.dto.UnitDto;
import com.java110.dto.owner.OwnerDto;
+import com.java110.dto.owner.OwnerRoomRelDto;
import com.java110.entity.assetImport.ImportOwnerRoomDto;
-import com.java110.intf.community.IFloorV1InnerServiceSMO;
-import com.java110.intf.community.IImportOwnerRoomInnerServiceSMO;
-import com.java110.intf.community.IRoomV1InnerServiceSMO;
-import com.java110.intf.community.IUnitV1InnerServiceSMO;
+import com.java110.intf.community.*;
import com.java110.po.floor.FloorPo;
+import com.java110.po.owner.OwnerPo;
+import com.java110.po.owner.OwnerRoomRelPo;
import com.java110.po.room.RoomPo;
import com.java110.po.unit.UnitPo;
+import com.java110.utils.util.DateUtil;
import com.java110.utils.util.StringUtil;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +41,12 @@
@Autowired
private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl;
+
+ @Autowired
+ private IOwnerV1InnerServiceSMO ownerV1InnerServiceSMOImpl;
+
+ @Autowired
+ private IOwnerRoomRelV1InnerServiceSMO ownerRoomRelV1InnerServiceSMOImpl;
@Autowired
public int saveOwnerRooms(@RequestBody List<ImportOwnerRoomDto> importOwnerRoomDtos) {
@@ -78,8 +85,180 @@
//3.0 淇濆瓨 鎴垮眿
String roomId = doSaveRoom(importOwnerRoomDto, unitId);
+ //娌℃湁涓氫富
+ if (StringUtil.isEmpty(importOwnerRoomDto.getOwnerName())) {
+ return 1;
+ }
+
+ //4.0 淇濆瓨涓氫富
+ if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd())) {
+ doSaveOwner(importOwnerRoomDto, roomId);
+ } else {
+ doSaveOwnerMember(importOwnerRoomDto, roomId);
+ }
+
return 1;
+ }
+
+ /**
+ * 淇濆瓨涓氫富鎴愬憳
+ *
+ * @param importOwnerRoomDto
+ * @param roomId
+ */
+ private void doSaveOwnerMember(ImportOwnerRoomDto importOwnerRoomDto, String roomId) {
+
+ // 鏌ヨ鎴垮眿鍜屼笟涓绘槸鍚︽湁鍏崇郴
+ OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+ ownerRoomRelDto.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerRoomRelDto.setRoomId(roomId);
+ List<OwnerRoomRelDto> roomRelDtos = ownerRoomRelV1InnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+ if (roomRelDtos == null || roomRelDtos.size() < 1) {
+ throw new IllegalArgumentException(importOwnerRoomDto.getOwnerName() + "鎴愬憳鏈壘鍒板搴斾笟涓讳俊鎭�");
+ }
+
+ OwnerDto ownerDto = new OwnerDto();
+ ownerDto.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerDto.setName(importOwnerRoomDto.getOwnerName());
+ ownerDto.setLink(importOwnerRoomDto.getTel());
+ ownerDto.setOwnerId(roomRelDtos.get(0).getOwnerId());
+ ownerDto.setOwnerTypeCd(importOwnerRoomDto.getOwnerTypeCd());
+ List<OwnerDto> ownerDtos = ownerV1InnerServiceSMOImpl.queryOwners(ownerDto);
+ OwnerPo ownerPo = null;
+
+ int flag = 0;
+ if (ownerDtos == null || ownerDtos.size() < 1) {
+ ownerPo = new OwnerPo();
+ ownerPo.setState(OwnerDto.STATE_FINISH);
+ ownerPo.setOwnerFlag(OwnerDto.OWNER_FLAG_TRUE);
+ ownerPo.setbId("-1");
+ ownerPo.setOwnerTypeCd(importOwnerRoomDto.getOwnerTypeCd());
+ ownerPo.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerPo.setOwnerId(roomRelDtos.get(0).getOwnerId());
+ ownerPo.setName(importOwnerRoomDto.getOwnerName());
+ ownerPo.setIdCard(importOwnerRoomDto.getIdCard());
+ ownerPo.setAge(importOwnerRoomDto.getAge());
+ ownerPo.setSex(importOwnerRoomDto.getSex());
+ ownerPo.setLink(importOwnerRoomDto.getTel());
+ ownerPo.setMemberId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_ownerId));
+ ownerPo.setRemark("鎴夸骇瀵煎叆");
+ ownerPo.setUserId("-1");
+ flag = ownerV1InnerServiceSMOImpl.saveOwner(ownerPo);
+
+ if (flag < 1) {
+ throw new IllegalArgumentException("瀵煎叆涓氫富澶辫触");
+ }
+ } else {
+ ownerPo = new OwnerPo();
+ ownerPo.setState(OwnerDto.STATE_FINISH);
+ ownerPo.setOwnerFlag(OwnerDto.OWNER_FLAG_TRUE);
+ ownerPo.setbId("-1");
+ ownerPo.setOwnerTypeCd(importOwnerRoomDto.getOwnerTypeCd());
+ ownerPo.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerPo.setOwnerId(ownerDtos.get(0).getOwnerId());
+ ownerPo.setName(importOwnerRoomDto.getOwnerName());
+ ownerPo.setIdCard(importOwnerRoomDto.getIdCard());
+ ownerPo.setAge(importOwnerRoomDto.getAge());
+ ownerPo.setSex(importOwnerRoomDto.getSex());
+ ownerPo.setLink(importOwnerRoomDto.getTel());
+ ownerPo.setMemberId(ownerDtos.get(0).getMemberId());
+ ownerPo.setRemark("鎴夸骇瀵煎叆");
+ ownerPo.setUserId("-1");
+ flag = ownerV1InnerServiceSMOImpl.updateOwner(ownerPo);
+ if (flag < 1) {
+ throw new IllegalArgumentException("瀵煎叆涓氫富澶辫触");
+ }
+ }
+ }
+
+ /**
+ * 淇濆瓨涓氫富
+ *
+ * @param importOwnerRoomDto
+ * @param roomId
+ */
+ private void doSaveOwner(ImportOwnerRoomDto importOwnerRoomDto, String roomId) {
+
+ OwnerDto ownerDto = new OwnerDto();
+ ownerDto.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerDto.setName(importOwnerRoomDto.getOwnerName());
+ ownerDto.setLink(importOwnerRoomDto.getTel());
+ ownerDto.setOwnerTypeCd(importOwnerRoomDto.getOwnerTypeCd());
+ List<OwnerDto> ownerDtos = ownerV1InnerServiceSMOImpl.queryOwners(ownerDto);
+ OwnerPo ownerPo = null;
+ String ownerId = "";
+
+ int flag = 0;
+ if (ownerDtos == null || ownerDtos.size() < 1) {
+ ownerPo = new OwnerPo();
+ ownerPo.setState(OwnerDto.STATE_FINISH);
+ ownerPo.setOwnerFlag(OwnerDto.OWNER_FLAG_TRUE);
+ ownerPo.setbId("-1");
+ ownerPo.setOwnerTypeCd(importOwnerRoomDto.getOwnerTypeCd());
+ ownerPo.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerPo.setOwnerId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_ownerId));
+ ownerPo.setName(importOwnerRoomDto.getOwnerName());
+ ownerPo.setIdCard(importOwnerRoomDto.getIdCard());
+ ownerPo.setAge(importOwnerRoomDto.getAge());
+ ownerPo.setSex(importOwnerRoomDto.getSex());
+ ownerPo.setLink(importOwnerRoomDto.getTel());
+ ownerPo.setMemberId(ownerPo.getOwnerId());
+ ownerPo.setRemark("鎴夸骇瀵煎叆");
+ ownerPo.setUserId("-1");
+ flag = ownerV1InnerServiceSMOImpl.saveOwner(ownerPo);
+
+ if (flag < 1) {
+ throw new IllegalArgumentException("瀵煎叆涓氫富澶辫触");
+ }
+
+ ownerId = ownerPo.getOwnerId();
+ } else {
+ ownerId = ownerDtos.get(0).getOwnerId();
+ ownerPo = new OwnerPo();
+ ownerPo.setState(OwnerDto.STATE_FINISH);
+ ownerPo.setOwnerFlag(OwnerDto.OWNER_FLAG_TRUE);
+ ownerPo.setbId("-1");
+ ownerPo.setOwnerTypeCd(importOwnerRoomDto.getOwnerTypeCd());
+ ownerPo.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerPo.setOwnerId(ownerId);
+ ownerPo.setName(importOwnerRoomDto.getOwnerName());
+ ownerPo.setIdCard(importOwnerRoomDto.getIdCard());
+ ownerPo.setAge(importOwnerRoomDto.getAge());
+ ownerPo.setSex(importOwnerRoomDto.getSex());
+ ownerPo.setLink(importOwnerRoomDto.getTel());
+ ownerPo.setMemberId(ownerPo.getOwnerId());
+ ownerPo.setRemark("鎴夸骇瀵煎叆");
+ ownerPo.setUserId("-1");
+ flag = ownerV1InnerServiceSMOImpl.updateOwner(ownerPo);
+ if (flag < 1) {
+ throw new IllegalArgumentException("瀵煎叆涓氫富澶辫触");
+ }
+ }
+ // 鏌ヨ鎴垮眿鍜屼笟涓绘槸鍚︽湁鍏崇郴
+ OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+ ownerRoomRelDto.setCommunityId(importOwnerRoomDto.getCommunityId());
+ ownerRoomRelDto.setRoomId(roomId);
+ ownerRoomRelDto.setOwnerId(ownerId);
+ List<OwnerRoomRelDto> roomRelDtos = ownerRoomRelV1InnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+ if (roomRelDtos != null && roomRelDtos.size() > 0) {
+ return;
+ }
+
+ OwnerRoomRelPo ownerRoomRelPo = new OwnerRoomRelPo();
+ ownerRoomRelPo.setUserId("-1");
+ ownerRoomRelPo.setbId("-1");
+ ownerRoomRelPo.setRelId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_relId));
+ ownerRoomRelPo.setState("2001");
+ ownerRoomRelPo.setRoomId(roomId);
+ ownerRoomRelPo.setOwnerId(ownerId);
+ ownerRoomRelPo.setStartTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_B));
+ ownerRoomRelPo.setEndTime(DateUtil.LAST_TIME);
+
+ flag = ownerRoomRelV1InnerServiceSMOImpl.saveOwnerRoomRel(ownerRoomRelPo);
+ if (flag < 1) {
+ throw new IllegalArgumentException("瀵煎叆涓氫富鎴垮眿鍏崇郴澶辫触");
+ }
}
private String doSaveRoom(ImportOwnerRoomDto importOwnerRoomDto, String unitId) {
@@ -119,7 +298,7 @@
roomId = roomPo.getRoomId();
} else {
roomId = roomDtos.get(0).getRoomId();
- if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd())) {
+ if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd()) || StringUtil.isEmpty(importOwnerRoomDto.getOwnerName())) {
roomPo = new RoomPo();
roomPo.setState(StringUtil.isEmpty(importOwnerRoomDto.getOwnerName()) ? RoomDto.STATE_FREE : RoomDto.STATE_SELL);
roomPo.setRoomId(roomId);
@@ -183,7 +362,7 @@
unitId = unitPo.getFloorId();
} else {
unitId = unitDtos.get(0).getUnitId();
- if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd())) {
+ if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd()) || StringUtil.isEmpty(importOwnerRoomDto.getOwnerName())) {
unitPo = new UnitPo();
unitPo.setFloorId(floorId);
unitPo.setLayerCount(importOwnerRoomDto.getLayerCount());
@@ -234,7 +413,7 @@
floorId = floorPo.getFloorId();
} else {
floorId = floorDtos.get(0).getFloorId();
- if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd())) {
+ if (OwnerDto.OWNER_TYPE_CD_OWNER.equals(importOwnerRoomDto.getOwnerTypeCd()) || StringUtil.isEmpty(importOwnerRoomDto.getOwnerName())) {
floorPo = new FloorPo();
floorPo.setbId("-1");
floorPo.setCommunityId(importOwnerRoomDto.getCommunityId());
--
Gitblit v1.8.0