From 37c2bdfae80b2b3eb07d6727c7493ba3ee2c6166 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期日, 13 十月 2019 23:19:38 +0800
Subject: [PATCH] 加入查询上级组织

---
 UserService/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java |  121 ++++++++++++++++++++++++++++++++++++---
 1 files changed, 110 insertions(+), 11 deletions(-)

diff --git a/UserService/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java b/UserService/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java
index e1cecba..568d790 100644
--- a/UserService/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java
+++ b/UserService/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java
@@ -1,8 +1,9 @@
 package com.java110.user.smo.impl;
 
 
-import com.java110.common.constant.CommunityMemberTypeConstant;
-import com.java110.common.util.BeanConvertUtil;
+import com.java110.utils.constant.CommunityMemberTypeConstant;
+import com.java110.utils.constant.StatusConstant;
+import com.java110.utils.util.BeanConvertUtil;
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.core.smo.community.ICommunityInnerServiceSMO;
 import com.java110.core.smo.owner.IOwnerInnerServiceSMO;
@@ -13,11 +14,14 @@
 import com.java110.dto.UserDto;
 import com.java110.user.dao.IOwnerServiceDao;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @ClassName FloorInnerServiceSMOImpl
@@ -33,6 +37,7 @@
     @Autowired
     private IOwnerServiceDao ownerServiceDaoImpl;
 
+    @Autowired
     private IUserInnerServiceSMO userInnerServiceSMOImpl;
 
 
@@ -42,19 +47,43 @@
     @Override
     public List<OwnerDto> queryOwners(@RequestBody OwnerDto ownerDto) {
 
-        //鏍¢獙鏄惁浼犱簡 鍒嗛〉淇℃伅
+        //communityInnerServiceSMOImpl.getCommunityMembers()
+        //璋冪敤 灏忓尯鏈嶅姟鏌ヨ 灏忓尯鎴愬憳涓氫富淇℃伅
+        CommunityMemberDto communityMemberDto = BeanConvertUtil.covertBean(ownerDto, CommunityMemberDto.class);
+        communityMemberDto.setMemberTypeCd(CommunityMemberTypeConstant.OWNER);
+        if (StringUtils.isEmpty(communityMemberDto.getMemberId()) && !StringUtils.isEmpty(ownerDto.getOwnerId())) {
+            communityMemberDto.setMemberId(ownerDto.getOwnerId());
+        }
+        List<CommunityMemberDto> communityMemberDtos = communityInnerServiceSMOImpl.getCommunityMembers(communityMemberDto);
 
-        int page = ownerDto.getPage();
-
-        if (page != PageDto.DEFAULT_PAGE) {
-            ownerDto.setPage((page - 1) * ownerDto.getRow());
-            ownerDto.setRow(page * ownerDto.getRow());
+        if (communityMemberDtos == null || communityMemberDtos.size() < 1) {
+            return null;
         }
 
-        //communityInnerServiceSMOImpl.getCommunityMembers()
+        Map ownerInfo = new HashMap();
+        ownerInfo.put("ownerIds", getOwnerIds(communityMemberDtos));
+        ownerInfo.put("ownerTypeCd", ownerDto.getOwnerTypeCd());
+        ownerInfo.put("statusCd", StatusConstant.STATUS_CD_VALID);
 
+        List<OwnerDto> owners = BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.getOwnerInfo(ownerInfo), OwnerDto.class);
+
+        if (owners == null || owners.size() == 0) {
+            return owners;
+        }
+
+        String[] userIds = getUserIds(owners);
+        //鏍规嵁 userId 鏌ヨ鐢ㄦ埛淇℃伅
+        List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
+
+        for (OwnerDto owner : owners) {
+            refreshOwner(owner, users);
+        }
+        return owners;
+    }
+
+    @Override
+    public List<OwnerDto> queryOwnerMembers(@RequestBody OwnerDto ownerDto) {
         List<OwnerDto> owners = BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.getOwnerInfo(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
-
         if (owners == null || owners.size() == 0) {
             return owners;
         }
@@ -78,9 +107,25 @@
     private void refreshOwner(OwnerDto owner, List<UserDto> users) {
         for (UserDto user : users) {
             if (owner.getUserId().equals(user.getUserId())) {
-                BeanConvertUtil.covertBean(user, owner);
+                //BeanConvertUtil.covertBean(user, owner);
+                owner.setUserName(user.getUserName());
             }
         }
+    }
+
+    /**
+     * 鑾峰彇鎵归噺userId
+     *
+     * @param communityMemberDtos 灏忓尯妤间俊鎭�
+     * @return 鎵归噺userIds 淇℃伅
+     */
+    private String[] getOwnerIds(List<CommunityMemberDto> communityMemberDtos) {
+        List<String> ownerIds = new ArrayList<String>();
+        for (CommunityMemberDto communityMemberDto : communityMemberDtos) {
+            ownerIds.add(communityMemberDto.getMemberId());
+        }
+
+        return ownerIds.toArray(new String[ownerIds.size()]);
     }
 
     /**
@@ -109,6 +154,60 @@
 
     }
 
+    @Override
+    public int queryOwnerCountByCondition(@RequestBody OwnerDto ownerDto) {
+
+        //鏍¢獙鏄惁浼犱簡 鍒嗛〉淇℃伅
+
+        int page = ownerDto.getPage();
+
+        if (page != PageDto.DEFAULT_PAGE) {
+            ownerDto.setPage((page - 1) * ownerDto.getRow());
+        }
+        return ownerServiceDaoImpl.queryOwnersCount(BeanConvertUtil.beanCovertMap(ownerDto));
+    }
+
+    @Override
+    public List<OwnerDto> queryOwnersByCondition(@RequestBody OwnerDto ownerDto) {
+//鏍¢獙鏄惁浼犱簡 鍒嗛〉淇℃伅
+
+        int page = ownerDto.getPage();
+
+        if (page != PageDto.DEFAULT_PAGE) {
+            ownerDto.setPage((page - 1) * ownerDto.getRow());
+        }
+        List<OwnerDto> owners = BeanConvertUtil.covertBeanList(
+                ownerServiceDaoImpl.getOwnerInfoByCondition(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
+        if (owners == null || owners.size() == 0) {
+            return owners;
+        }
+
+        String[] userIds = getUserIds(owners);
+        //鏍规嵁 userId 鏌ヨ鐢ㄦ埛淇℃伅
+        List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
+
+        for (OwnerDto owner : owners) {
+            refreshOwner(owner, users);
+        }
+        return owners;
+    }
+
+
+    @Override
+    public int queryNoEnterRoomOwnerCount(@RequestBody OwnerDto ownerDto) {
+        return ownerServiceDaoImpl.queryNoEnterRoomOwnerCount(BeanConvertUtil.beanCovertMap(ownerDto));
+    }
+
+    @Override
+    public List<OwnerDto> queryOwnersByRoom(@RequestBody OwnerDto ownerDto) {
+        return BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.queryOwnersByRoom(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
+    }
+
+    @Override
+    public List<OwnerDto> queryOwnersByParkingSpace(@RequestBody OwnerDto ownerDto) {
+        return BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.queryOwnersByParkingSpace(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
+    }
+
     public IUserInnerServiceSMO getUserInnerServiceSMOImpl() {
         return userInnerServiceSMOImpl;
     }

--
Gitblit v1.8.0