From 4db93360932dcee2efddae48152a4ba1f9d7f28b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 19 一月 2021 12:02:20 +0800
Subject: [PATCH] 优化业主查询报错问题

---
 service-job/src/main/java/com/java110/job/task/ownerToMachine/TranslateOwnerPhotoToMachineTemplate.java |   31 ++++++++++++++++++++++++-------
 1 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/service-job/src/main/java/com/java110/job/task/ownerToMachine/TranslateOwnerPhotoToMachineTemplate.java b/service-job/src/main/java/com/java110/job/task/ownerToMachine/TranslateOwnerPhotoToMachineTemplate.java
index 6b28c28..a85057e 100644
--- a/service-job/src/main/java/com/java110/job/task/ownerToMachine/TranslateOwnerPhotoToMachineTemplate.java
+++ b/service-job/src/main/java/com/java110/job/task/ownerToMachine/TranslateOwnerPhotoToMachineTemplate.java
@@ -2,13 +2,6 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.factory.GenerateCodeFactory;
-import com.java110.intf.common.IMachineInnerServiceSMO;
-import com.java110.intf.common.IMachineTranslateInnerServiceSMO;
-import com.java110.intf.community.ICommunityLocationInnerServiceSMO;
-import com.java110.intf.order.IOrderInnerServiceSMO;
-import com.java110.intf.user.IOwnerInnerServiceSMO;
-import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
-import com.java110.intf.community.IRoomInnerServiceSMO;
 import com.java110.dto.RoomDto;
 import com.java110.dto.machine.MachineDto;
 import com.java110.dto.machine.MachineTranslateDto;
@@ -16,6 +9,13 @@
 import com.java110.dto.owner.OwnerDto;
 import com.java110.dto.owner.OwnerRoomRelDto;
 import com.java110.dto.task.TaskDto;
+import com.java110.intf.common.IMachineInnerServiceSMO;
+import com.java110.intf.common.IMachineTranslateInnerServiceSMO;
+import com.java110.intf.community.ICommunityLocationInnerServiceSMO;
+import com.java110.intf.community.IRoomInnerServiceSMO;
+import com.java110.intf.order.IOrderInnerServiceSMO;
+import com.java110.intf.user.IOwnerInnerServiceSMO;
+import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
 import com.java110.job.quartz.TaskSystemQuartz;
 import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.StatusConstant;
@@ -87,6 +87,19 @@
                     List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
                     Assert.listOnlyOne(ownerRoomRelDtos, "鏁版嵁閿欒 涓氫富鎴垮眿鍏崇郴鏈壘鍒帮紝鎴栨壘鍒板鏉�" + JSONObject.toJSONString(tmpOrderDto));
                     ownerDto.setOwnerId(ownerRoomRelDtos.get(0).getOwnerId());
+                } else if (BusinessTypeConstant.BUSINESS_TYPE_DELETE_OWNER_ROOM_REL.equals(tmpOrderDto.getBusinessTypeCd())) {
+                    OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+                    ownerRoomRelDto.setbId(tmpOrderDto.getbId());
+                    ownerRoomRelDto.setStatusCd(StatusConstant.STATUS_CD_INVALID);
+                    List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+
+                    if (ownerRoomRelDtos == null || ownerRoomRelDtos.size() < 1) {
+                        //鍒锋柊 鐘舵�佷负C1
+                        orderInnerServiceSMOImpl.updateBusinessStatusCd(tmpOrderDto);
+                        logger.debug("娌℃湁鏁版嵁鏁版嵁鐩存帴鍒蜂负C1" + JSONObject.toJSONString(tmpOrderDto));
+                        continue;
+                    }
+                    ownerDto.setOwnerId(ownerRoomRelDtos.get(0).getOwnerId());
                 } else {
                     ownerDto.setbId(tmpOrderDto.getbId());
                 }
@@ -109,6 +122,10 @@
                 }
                 RoomDto roomDto = new RoomDto();
                 roomDto.setOwnerId(ownerDtos.get(0).getOwnerId());
+                //杩欑鎯呭喌璇存槑 涓氫富宸茬粡鍒犳帀浜� 闇�瑕佹煡璇㈢姸鎬佷负 1 鐨勬暟鎹�
+                if (BusinessTypeConstant.BUSINESS_TYPE_DELETE_OWNER_ROOM_REL.equals(tmpOrderDto.getBusinessTypeCd())) {
+                    roomDto.setStatusCd(StatusConstant.STATUS_CD_INVALID);
+                }
                 List<RoomDto> rooms = roomInnerServiceSMOImpl.queryRoomsByOwner(roomDto);
 
                 dealData(tmpOrderDto, ownerDtos, rooms);

--
Gitblit v1.8.0