From cca504b84583f8f8289b34e794939b8590a16446 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 23 五月 2023 14:34:22 +0800
Subject: [PATCH] optimzie exit room

---
 service-community/src/main/java/com/java110/community/cmd/room/QueryRoomsByOwnerCmd.java |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 52 insertions(+), 3 deletions(-)

diff --git a/service-community/src/main/java/com/java110/community/cmd/room/QueryRoomsByOwnerCmd.java b/service-community/src/main/java/com/java110/community/cmd/room/QueryRoomsByOwnerCmd.java
index 4b18ab5..a8857cb 100644
--- a/service-community/src/main/java/com/java110/community/cmd/room/QueryRoomsByOwnerCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/room/QueryRoomsByOwnerCmd.java
@@ -1,16 +1,19 @@
 package com.java110.community.cmd.room;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.community.bmo.room.IQueryRoomStatisticsBMO;
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.doc.annotation.*;
 import com.java110.dto.RoomDto;
 import com.java110.intf.community.IFloorInnerServiceSMO;
 import com.java110.intf.community.IRoomInnerServiceSMO;
 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.api.ApiRoomDataVo;
 import com.java110.vo.api.ApiRoomVo;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -19,6 +22,37 @@
 
 import java.util.List;
 
+@Java110CmdDoc(title = "鏌ヨ涓氫富鎴垮眿",
+        description = "鏌ヨ涓氫富鎴垮眿淇℃伅",
+        httpMethod = "get",
+        url = "http://{ip}:{port}/app/room.queryRoomsByOwner",
+        resource = "communityDoc",
+        author = "鍚村鏂�",
+        serviceCode = "room.queryRoomsByOwner",
+        seq = 17
+)
+
+@Java110ParamsDoc(params = {
+        @Java110ParamDoc(name = "page", type = "int",length = 11, remark = "椤垫暟"),
+        @Java110ParamDoc(name = "row", type = "int",length = 11, remark = "琛屾暟"),
+        @Java110ParamDoc(name = "communityId", length = 30, remark = "灏忓尯ID"),
+        @Java110ParamDoc(name = "ownerId", length = 30, remark = "涓氫富ID"),
+})
+
+@Java110ResponseDoc(
+        params = {
+                @Java110ParamDoc(name = "records", type = "int", length = 11,  remark = "鎬婚〉鏁�"),
+                @Java110ParamDoc(name = "total", type = "int", length = 11, remark = "鎬绘暟鎹�"),
+                @Java110ParamDoc(name = "rooms", type = "Object", remark = "鏈夋晥鏁版嵁"),
+                @Java110ParamDoc(parentNodeName = "rooms",name = "roomName", type = "String", remark = "鎴垮眿鍚嶇О"),
+                @Java110ParamDoc(parentNodeName = "rooms",name = "roomId", type = "String", remark = "鎴垮眿缂栧彿"),
+        }
+)
+
+@Java110ExampleDoc(
+        reqBody="http://{ip}:{port}/app/room.queryRoomsByOwner?ownerId=123123&page=1&row=10&communityId=2022081539020475",
+        resBody="{\"page\":0,\"records\":1,\"rooms\":[{\"apartment\":\"10101\",\"apartmentName\":\"涓�瀹や竴鍘匼",\"builtUpArea\":\"11.00\",\"endTime\":\"2037-01-01 00:00:00\",\"feeCoefficient\":\"1.00\",\"floorId\":\"732022081690440002\",\"floorNum\":\"D\",\"idCard\":\"\",\"layer\":\"1\",\"link\":\"18909711447\",\"ownerId\":\"772022082070860017\",\"ownerName\":\"寮犳澃\",\"remark\":\"11\",\"roomArea\":\"11.00\",\"roomAttrDto\":[{\"attrId\":\"112022082081600012\",\"listShow\":\"Y\",\"page\":-1,\"records\":0,\"roomId\":\"752022082030880010\",\"row\":0,\"specCd\":\"9035007248\",\"specName\":\"绮捐淇甛",\"statusCd\":\"0\",\"total\":0,\"value\":\"20\",\"valueName\":\"20\"}],\"roomId\":\"752022082030880010\",\"roomName\":\"D-1-1001\",\"roomNum\":\"1001\",\"roomRent\":\"0.00\",\"roomSubType\":\"110\",\"roomSubTypeName\":\"浣忓畢\",\"roomType\":\"1010301\",\"section\":\"1\",\"startTime\":\"2022-09-03 18:50:53\",\"state\":\"2001\",\"stateName\":\"宸插叆浣廫",\"unitId\":\"742022082058950007\",\"unitNum\":\"1\"}],\"rows\":0,\"total\":2}"
+)
 @Java110Cmd(serviceCode = "room.queryRoomsByOwner")
 public class QueryRoomsByOwnerCmd extends Cmd {
 
@@ -29,13 +63,26 @@
     private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
 
 
+    @Autowired
+    private IQueryRoomStatisticsBMO queryRoomStatisticsBMOImpl;
+
+
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
-        Assert.jsonObjectHaveKey(reqJson, "communityId", "璇锋眰涓湭鍖呭惈communityId淇℃伅");
-        Assert.jsonObjectHaveKey(reqJson, "ownerId", "璇锋眰涓湭鍖呭惈ownerId淇℃伅");
+        Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰涓湭鍖呭惈communityId淇℃伅");
+        //Assert.jsonObjectHaveKey(reqJson, "ownerId", "璇锋眰涓湭鍖呭惈ownerId淇℃伅");
 
         Assert.hasLength(reqJson.getString("communityId"), "灏忓尯ID涓嶈兘涓虹┖");
-        Assert.hasLength(reqJson.getString("ownerId"), "涓氫富ID涓嶈兘涓虹┖");
+        //Assert.hasLength(reqJson.getString("ownerId"), "涓氫富ID涓嶈兘涓虹┖");
+
+        String ownerId = reqJson.getString("ownerId");
+
+        String ownerNameLike = reqJson.getString("ownerNameLike");
+
+        if(StringUtil.isEmpty(ownerId) && StringUtil.isEmpty(ownerNameLike)){
+            throw new IllegalArgumentException("鏈寘鍚笟涓讳俊鎭�");
+        }
     }
 
     @Override
@@ -45,6 +92,8 @@
 
         ApiRoomVo apiRoomVo = new ApiRoomVo();
         List<RoomDto> roomDtoList = roomInnerServiceSMOImpl.queryRoomsByOwner(roomDto);
+        roomDtoList = queryRoomStatisticsBMOImpl.queryRoomOweFee(roomDtoList);
+
         apiRoomVo.setTotal(roomDtoList.size());
         apiRoomVo.setRooms(BeanConvertUtil.covertBeanList(roomDtoList, ApiRoomDataVo.class));
         apiRoomVo.setRecords(1);

--
Gitblit v1.8.0