From 498288ba58aaeaea0453424a8f9b8448582ff0df Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 08 十二月 2020 14:52:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/xinghong-dev'

---
 service-user/src/main/java/com/java110/user/bmo/owner/impl/ComprehensiveQueryImpl.java |  411 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 404 insertions(+), 7 deletions(-)

diff --git a/service-user/src/main/java/com/java110/user/bmo/owner/impl/ComprehensiveQueryImpl.java b/service-user/src/main/java/com/java110/user/bmo/owner/impl/ComprehensiveQueryImpl.java
index df606aa..486a859 100644
--- a/service-user/src/main/java/com/java110/user/bmo/owner/impl/ComprehensiveQueryImpl.java
+++ b/service-user/src/main/java/com/java110/user/bmo/owner/impl/ComprehensiveQueryImpl.java
@@ -1,10 +1,15 @@
 package com.java110.user.bmo.owner.impl;
 
 import com.java110.dto.RoomDto;
+import com.java110.dto.basePrivilege.BasePrivilegeDto;
+import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.owner.OwnerDto;
+import com.java110.dto.owner.OwnerRoomRelDto;
 import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
+import com.java110.intf.community.IMenuInnerServiceSMO;
 import com.java110.intf.community.IRoomInnerServiceSMO;
+import com.java110.intf.user.IOwnerCarInnerServiceSMO;
 import com.java110.intf.user.IOwnerInnerServiceSMO;
 import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
 import com.java110.user.bmo.owner.IComprehensiveQuery;
@@ -14,7 +19,9 @@
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 @Service
 public class ComprehensiveQueryImpl implements IComprehensiveQuery {
@@ -43,15 +50,377 @@
     @Autowired
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
 
+    @Autowired
+    private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl;
+
+    @Autowired
+    private IMenuInnerServiceSMO menuInnerServiceSMOImpl;
+
     @Override
-    public ResponseEntity<String> query(String communityId, String searchValue, String searchType) {
+    public ResponseEntity<String> query(String communityId, String searchValue, String searchType, String userId) {
         OwnerDto ownerDto = null;
         switch (searchType) {
             case SEARCH_TYPE_ROOM:
-                ownerDto = queryByRoom(communityId, searchValue);
+                ownerDto = queryByRoom(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_NAME:
+                ownerDto = queryByOwnerName(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_TEL:
+                ownerDto = queryByOwnerTel(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_IDCARD:
+                ownerDto = queryByOwnerIdCard(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_CAR:
+                ownerDto = queryByOwnerCar(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_MEMBER_NAME:
+                ownerDto = queryByOwnerMemberName(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_MEMBER_TEL:
+                ownerDto = queryByOwnerMemberTel(communityId, searchValue, userId);
+                break;
+            case SEARCH_TYPE_OWNER_MEMBER_IDCARD:
+                ownerDto = queryByOwnerMemberIdCard(communityId, searchValue, userId);
                 break;
         }
         return ResultVo.createResponseEntity(1, 1, ownerDto);
+    }
+
+    /**
+     * 鎴愬憳韬唤璇佹煡璇�
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerMemberIdCard(String communityId, String searchValue, String userId) {
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setIdCard(searchValue);
+        ownerDto.setOwnerTypeCds(new String[]{OwnerDto.OWNER_TYPE_CD_MEMBER, OwnerDto.OWNER_TYPE_CD_RENTING});
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwnerMembers(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒版垚鍛樹俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        OwnerDto owner = queryByOwnerId(communityId, ownerDtos.get(0).getOwnerId());
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+        String idCard = owner.getIdCard();
+        if (mark.size() == 0 && idCard != null && idCard != null) {
+            idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            owner.setIdCard(idCard);
+        }
+        //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+        String link = owner.getLink();
+        if (mark.size() == 0 && link != null && !link.equals("")) {
+            link = link.substring(0, 3) + "****" + link.substring(7);
+            owner.setLink(link);
+        }
+        return owner;
+    }
+
+    /**
+     * 鎴愬憳鍚嶇О鏌ヨ
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerMemberTel(String communityId, String searchValue, String userId) {
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setLink(searchValue);
+        ownerDto.setOwnerTypeCds(new String[]{OwnerDto.OWNER_TYPE_CD_MEMBER, OwnerDto.OWNER_TYPE_CD_RENTING});
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwnerMembers(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒版垚鍛樹俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        OwnerDto owner = queryByOwnerId(communityId, ownerDtos.get(0).getOwnerId());
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+        String idCard = owner.getIdCard();
+        if (mark.size() == 0 && idCard != null && idCard != null) {
+            idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            owner.setIdCard(idCard);
+        }
+        //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+        String link = owner.getLink();
+        if (mark.size() == 0 && link != null && !link.equals("")) {
+            link = link.substring(0, 3) + "****" + link.substring(7);
+            owner.setLink(link);
+        }
+        return owner;
+    }
+
+    /**
+     * 鎴愬憳鍚嶇О鏌ヨ
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerMemberName(String communityId, String searchValue, String userId) {
+
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setName(searchValue);
+        ownerDto.setOwnerTypeCds(new String[]{OwnerDto.OWNER_TYPE_CD_MEMBER, OwnerDto.OWNER_TYPE_CD_RENTING});
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwnerMembers(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒版垚鍛樹俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        OwnerDto owner = queryByOwnerId(communityId, ownerDtos.get(0).getOwnerId());
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+        String idCard = owner.getIdCard();
+        if (mark.size() == 0 && idCard != null && idCard != null) {
+            idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            owner.setIdCard(idCard);
+        }
+        //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+        String link = owner.getLink();
+        if (mark.size() == 0 && link != null && !link.equals("")) {
+            link = link.substring(0, 3) + "****" + link.substring(7);
+            owner.setLink(link);
+        }
+        return owner;
+    }
+
+    /**
+     * 鏍规嵁涓氫富杞﹁締鏌ヨ涓氫富
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerCar(String communityId, String searchValue, String userId) {
+        OwnerCarDto ownerCarDto = new OwnerCarDto();
+        ownerCarDto.setCommunityId(communityId);
+        ownerCarDto.setCarNum(searchValue);
+        List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
+
+        if (ownerCarDtos == null || ownerCarDtos.size() < 1) {
+            throw new IllegalArgumentException("鏈煡鍒拌溅杈嗕俊鎭�");
+        }
+
+        OwnerDto owner = queryByOwnerId(communityId, ownerCarDtos.get(0).getOwnerId());
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+        String idCard = owner.getIdCard();
+        if (mark.size() == 0 && idCard != null && idCard != null) {
+            idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            owner.setIdCard(idCard);
+        }
+        //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+        String link = owner.getLink();
+        if (mark.size() == 0 && link != null && !link.equals("")) {
+            link = link.substring(0, 3) + "****" + link.substring(7);
+            owner.setLink(link);
+        }
+        return owner;
+    }
+
+
+    /**
+     * 鏍规嵁涓氫富ID鏌ヨ
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerId(String communityId, String searchValue) {
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setOwnerId(searchValue);
+        ownerDto.setOwnerTypeCd(OwnerDto.OWNER_TYPE_CD_OWNER);
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒颁笟涓讳俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        OwnerDto resOwnerDto = ownerDtos.get(0);
+        OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+        ownerRoomRelDto.setOwnerId(ownerDtos.get(0).getOwnerId());
+        List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+
+        //娌℃湁鎴垮眿
+        if (ownerRoomRelDtos == null || ownerRoomRelDtos.size() < 1) {
+            return resOwnerDto;
+        }
+        List<String> roomIds = new ArrayList<>();
+        for (OwnerRoomRelDto tmpOwnerRoomRelDto : ownerRoomRelDtos) {
+            roomIds.add(tmpOwnerRoomRelDto.getRoomId());
+        }
+
+
+        RoomDto roomDto = new RoomDto();
+        roomDto.setRoomIds(roomIds.toArray(new String[roomIds.size()]));
+        roomDto.setCommunityId(communityId);
+        List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+        resOwnerDto.setRooms(roomDtos);
+        return resOwnerDto;
+    }
+
+    /**
+     * 鏍规嵁涓氫富韬唤璇佹煡璇�
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerIdCard(String communityId, String searchValue, String userId) {
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setIdCard(searchValue);
+        ownerDto.setOwnerTypeCd(OwnerDto.OWNER_TYPE_CD_OWNER);
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒颁笟涓讳俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        List<OwnerDto> ownerDtoList = new ArrayList<>();
+        for (OwnerDto owner : ownerDtos) {
+            //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+            String idCard = owner.getIdCard();
+            if (mark.size() == 0 && idCard != null && !idCard.equals("")) {
+                idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            }
+            //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+            String link = owner.getLink();
+            if (mark.size() == 0 && link != null && !link.equals("")) {
+                link = link.substring(0, 3) + "****" + link.substring(7);
+            }
+            owner.setIdCard(idCard);
+            owner.setLink(link);
+            ownerDtoList.add(owner);
+        }
+        OwnerDto resOwnerDto = ownerDtoList.get(0);
+        OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+        ownerRoomRelDto.setOwnerId(ownerDtoList.get(0).getOwnerId());
+        List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+
+        //娌℃湁鎴垮眿
+        if (ownerRoomRelDtos == null || ownerRoomRelDtos.size() < 1) {
+            return resOwnerDto;
+        }
+        List<String> roomIds = new ArrayList<>();
+        for (OwnerRoomRelDto tmpOwnerRoomRelDto : ownerRoomRelDtos) {
+            roomIds.add(tmpOwnerRoomRelDto.getRoomId());
+        }
+
+
+        RoomDto roomDto = new RoomDto();
+        roomDto.setRoomIds(roomIds.toArray(new String[roomIds.size()]));
+        roomDto.setCommunityId(communityId);
+        List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+        resOwnerDto.setRooms(roomDtos);
+        return resOwnerDto;
+    }
+
+    /**
+     * 鏍规嵁涓氫富鎵嬫満鍙锋煡璇�
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerTel(String communityId, String searchValue, String userId) {
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setLink(searchValue);
+        ownerDto.setOwnerTypeCd(OwnerDto.OWNER_TYPE_CD_OWNER);
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒颁笟涓讳俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        List<OwnerDto> ownerDtoList = new ArrayList<>();
+        for (OwnerDto owner : ownerDtos) {
+            //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+            String idCard = owner.getIdCard();
+            if (mark.size() == 0 && idCard != null && !idCard.equals("")) {
+                idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            }
+            //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+            String link = owner.getLink();
+            if (mark.size() == 0 && link != null && !link.equals("")) {
+                link = link.substring(0, 3) + "****" + link.substring(7);
+            }
+            owner.setIdCard(idCard);
+            owner.setLink(link);
+            ownerDtoList.add(owner);
+        }
+        OwnerDto resOwnerDto = ownerDtoList.get(0);
+        OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+        ownerRoomRelDto.setOwnerId(ownerDtoList.get(0).getOwnerId());
+        List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+
+        //娌℃湁鎴垮眿
+        if (ownerRoomRelDtos == null || ownerRoomRelDtos.size() < 1) {
+            return resOwnerDto;
+        }
+        List<String> roomIds = new ArrayList<>();
+        for (OwnerRoomRelDto tmpOwnerRoomRelDto : ownerRoomRelDtos) {
+            roomIds.add(tmpOwnerRoomRelDto.getRoomId());
+        }
+
+
+        RoomDto roomDto = new RoomDto();
+        roomDto.setRoomIds(roomIds.toArray(new String[roomIds.size()]));
+        roomDto.setCommunityId(communityId);
+        List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+        resOwnerDto.setRooms(roomDtos);
+        return resOwnerDto;
+    }
+
+    /**
+     * 鏍规嵁涓氫富鍚嶇О 鏌ヨ
+     *
+     * @param communityId
+     * @param searchValue
+     * @return
+     */
+    private OwnerDto queryByOwnerName(String communityId, String searchValue, String userId) {
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setCommunityId(communityId);
+        ownerDto.setName(searchValue);
+        ownerDto.setOwnerTypeCd(OwnerDto.OWNER_TYPE_CD_OWNER);
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+        Assert.listOnlyOne(ownerDtos, "鏈壘鍒颁笟涓讳俊鎭垨鑰呮煡璇㈠埌澶氭潯锛岃鎹㈠叾浠栨潯浠舵煡璇�");
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        List<OwnerDto> ownerDtoList = new ArrayList<>();
+        for (OwnerDto owner : ownerDtos) {
+            //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+            String idCard = owner.getIdCard();
+            if (mark.size() == 0 && idCard != null && !idCard.equals("")) {
+                idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            }
+            //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+            String link = owner.getLink();
+            if (mark.size() == 0 && link != null && !link.equals("")) {
+                link = link.substring(0, 3) + "****" + link.substring(7);
+            }
+            owner.setIdCard(idCard);
+            owner.setLink(link);
+            ownerDtoList.add(owner);
+        }
+        OwnerDto resOwnerDto = ownerDtoList.get(0);
+        OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
+        ownerRoomRelDto.setOwnerId(ownerDtoList.get(0).getOwnerId());
+        List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto);
+
+        //娌℃湁鎴垮眿
+        if (ownerRoomRelDtos == null || ownerRoomRelDtos.size() < 1) {
+            return resOwnerDto;
+        }
+        List<String> roomIds = new ArrayList<>();
+        for (OwnerRoomRelDto tmpOwnerRoomRelDto : ownerRoomRelDtos) {
+            roomIds.add(tmpOwnerRoomRelDto.getRoomId());
+        }
+
+
+        RoomDto roomDto = new RoomDto();
+        roomDto.setRoomIds(roomIds.toArray(new String[roomIds.size()]));
+        roomDto.setCommunityId(communityId);
+        List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+        resOwnerDto.setRooms(roomDtos);
+        return resOwnerDto;
     }
 
     /**
@@ -61,7 +430,7 @@
      * @param searchValue
      * @return
      */
-    private OwnerDto queryByRoom(String communityId, String searchValue) {
+    private OwnerDto queryByRoom(String communityId, String searchValue, String userId) {
 
         if (!searchValue.contains("-")) {
             throw new IllegalArgumentException("鏌ヨ鍐呭鏍煎紡閿欒锛岃杈撳叆 妤兼爧-鍗曞厓-鎴垮眿 濡� 1-1-1");
@@ -80,22 +449,50 @@
         roomDto.setCommunityId(communityId);
 
         List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
-
         Assert.listOnlyOne(roomDtos, "鏈壘鍒版埧灞嬩俊鎭�");
 
         OwnerDto ownerDto = new OwnerDto();
         ownerDto.setCommunityId(communityId);
         ownerDto.setRoomId(roomDtos.get(0).getRoomId());
+        ownerDto.setOwnerTypeCd(OwnerDto.OWNER_TYPE_CD_OWNER);
         List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
-
         Assert.listOnlyOne(ownerDtos, "鏈壘鍒颁笟涓讳俊鎭�");
+        //鏌ヨ鏄惁鏈夎劚鏁忔潈闄�
+        List<Map> mark = getPrivilegeOwnerList("/roomCreateFee", userId);
+        List<OwnerDto> ownerDtoList = new ArrayList<>();
+        for (OwnerDto owner : ownerDtos) {
+            //瀵逛笟涓昏韩浠借瘉鍙烽殣钘忓鐞�
+            String idCard = owner.getIdCard();
+            if (mark.size() == 0 && idCard != null && !idCard.equals("")) {
+                idCard = idCard.substring(0, 6) + "**********" + idCard.substring(16);
+            }
+            //瀵逛笟涓绘墜鏈哄彿闅愯棌澶勭悊
+            String link = owner.getLink();
+            if (mark.size() == 0 && link != null && !link.equals("")) {
+                link = link.substring(0, 3) + "****" + link.substring(7);
+            }
+            owner.setIdCard(idCard);
+            owner.setLink(link);
+            ownerDtoList.add(owner);
+        }
 
-        OwnerDto resOwnerDto = ownerDtos.get(0);
+        OwnerDto resOwnerDto = ownerDtoList.get(0);
 
         resOwnerDto.setRooms(roomDtos);
 
         return resOwnerDto;
     }
 
-
+    /**
+     * 鑴辨晱澶勭悊
+     *
+     * @return
+     */
+    public List<Map> getPrivilegeOwnerList(String resource, String userId) {
+        BasePrivilegeDto basePrivilegeDto = new BasePrivilegeDto();
+        basePrivilegeDto.setResource(resource);
+        basePrivilegeDto.setUserId(userId);
+        List<Map> privileges = menuInnerServiceSMOImpl.checkUserHasResource(basePrivilegeDto);
+        return privileges;
+    }
 }

--
Gitblit v1.8.0