From a6a9dd4a9c1e4c3fb3d8f2eca522be25424fc5e2 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 16 八月 2020 14:02:12 +0800
Subject: [PATCH] 优化代码
---
service-user/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java | 94 ++++++++++++++++++++++++++++++++--------------
1 files changed, 65 insertions(+), 29 deletions(-)
diff --git a/service-user/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java b/service-user/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java
index 26095ec..ee6b27c 100644
--- a/service-user/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java
+++ b/service-user/src/main/java/com/java110/user/smo/impl/OwnerInnerServiceSMOImpl.java
@@ -1,18 +1,20 @@
package com.java110.user.smo.impl;
+import com.java110.core.base.smo.BaseServiceSMO;
+import com.java110.dto.CommunityMemberDto;
+import com.java110.dto.PageDto;
+import com.java110.dto.owner.OwnerAttrDto;
+import com.java110.dto.owner.OwnerDto;
+import com.java110.dto.user.UserDto;
+import com.java110.intf.community.ICommunityInnerServiceSMO;
+import com.java110.intf.user.IOwnerAttrInnerServiceSMO;
+import com.java110.intf.user.IOwnerInnerServiceSMO;
+import com.java110.intf.user.IUserInnerServiceSMO;
+import com.java110.user.dao.IOwnerServiceDao;
import com.java110.utils.constant.OwnerTypeConstant;
import com.java110.utils.constant.StatusConstant;
import com.java110.utils.util.BeanConvertUtil;
-import com.java110.core.base.smo.BaseServiceSMO;
-import com.java110.intf.community.ICommunityInnerServiceSMO;
-import com.java110.intf.user.IOwnerInnerServiceSMO;
-import com.java110.intf.user.IUserInnerServiceSMO;
-import com.java110.dto.CommunityMemberDto;
-import com.java110.dto.owner.OwnerDto;
-import com.java110.dto.PageDto;
-import com.java110.dto.user.UserDto;
-import com.java110.user.dao.IOwnerServiceDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@@ -36,6 +38,9 @@
private IOwnerServiceDao ownerServiceDaoImpl;
@Autowired
+ private IOwnerAttrInnerServiceSMO ownerAttrInnerServiceSMOImpl;
+
+ @Autowired
private IUserInnerServiceSMO userInnerServiceSMOImpl;
@@ -45,19 +50,6 @@
@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);
-
- if (communityMemberDtos == null || communityMemberDtos.size() < 1) {
- return null;
- }*/
-
int page = ownerDto.getPage();
if (page != PageDto.DEFAULT_PAGE) {
@@ -65,9 +57,9 @@
}
Map ownerInfo = BeanConvertUtil.beanCovertMap(ownerDto);
- ownerInfo.put("communityId",ownerDto.getCommunityId());
+ ownerInfo.put("communityId", ownerDto.getCommunityId());
ownerInfo.put("ownerTypeCd", OwnerTypeConstant.OWNER);
- // ownerInfo.put("ownerIds", getOwnerIds(communityMemberDtos));
+ // ownerInfo.put("ownerIds", getOwnerIds(communityMemberDtos));
//ownerInfo.put("ownerTypeCd", ownerDto.getOwnerTypeCd());
ownerInfo.put("statusCd", StatusConstant.STATUS_CD_VALID);
@@ -80,9 +72,14 @@
String[] userIds = getUserIds(owners);
//鏍规嵁 userId 鏌ヨ鐢ㄦ埛淇℃伅
List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
+ String[] memberIds = getMemberIds(owners);
+ OwnerAttrDto ownerAttrDto = new OwnerAttrDto();
+ ownerAttrDto.setMemberIds(memberIds);
+ ownerAttrDto.setCommunityId(ownerDto.getCommunityId());
+ List<OwnerAttrDto> ownerAttrDtos = ownerAttrInnerServiceSMOImpl.queryOwnerAttrs(ownerAttrDto);
for (OwnerDto owner : owners) {
- refreshOwner(owner, users);
+ refreshOwner(owner, users, ownerAttrDtos);
}
return owners;
}
@@ -97,9 +94,14 @@
String[] userIds = getUserIds(owners);
//鏍规嵁 userId 鏌ヨ鐢ㄦ埛淇℃伅
List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
+ String[] memberIds = getMemberIds(owners);
+ OwnerAttrDto ownerAttrDto = new OwnerAttrDto();
+ ownerAttrDto.setMemberIds(memberIds);
+ ownerAttrDto.setCommunityId(ownerDto.getCommunityId());
+ List<OwnerAttrDto> ownerAttrDtos = ownerAttrInnerServiceSMOImpl.queryOwnerAttrs(ownerAttrDto);
for (OwnerDto owner : owners) {
- refreshOwner(owner, users);
+ refreshOwner(owner, users,ownerAttrDtos);
}
return owners;
}
@@ -110,13 +112,26 @@
* @param owner 灏忓尯涓氫富淇℃伅
* @param users 鐢ㄦ埛鍒楄〃
*/
- private void refreshOwner(OwnerDto owner, List<UserDto> users) {
+ private void refreshOwner(OwnerDto owner, List<UserDto> users, List<OwnerAttrDto> ownerAttrDtos) {
for (UserDto user : users) {
if (owner.getUserId().equals(user.getUserId())) {
//BeanConvertUtil.covertBean(user, owner);
owner.setUserName(user.getUserName());
+ break;
}
}
+
+ if (ownerAttrDtos == null || ownerAttrDtos.size() < 1) {
+ return;
+ }
+ List<OwnerAttrDto> tmpOwnerAttrDtos = new ArrayList<>();
+ for (OwnerAttrDto ownerAttrDto : ownerAttrDtos) {
+ if (ownerAttrDto.getMemberId().equals(owner.getMemberId())) {
+ tmpOwnerAttrDtos.add(ownerAttrDto);
+ }
+ }
+
+ owner.setOwnerAttrDtos(tmpOwnerAttrDtos);
}
/**
@@ -149,6 +164,21 @@
return userIds.toArray(new String[userIds.size()]);
}
+ /**
+ * 鑾峰彇鎵归噺userId
+ *
+ * @param owners 灏忓尯妤间俊鎭�
+ * @return 鎵归噺userIds 淇℃伅
+ */
+ private String[] getMemberIds(List<OwnerDto> owners) {
+ List<String> memberIds = new ArrayList<String>();
+ for (OwnerDto owner : owners) {
+ memberIds.add(owner.getMemberId());
+ }
+
+ return memberIds.toArray(new String[memberIds.size()]);
+ }
+
@Override
public int queryOwnersCount(@RequestBody OwnerDto ownerDto) {
@@ -164,7 +194,7 @@
}
Map ownerInfo = BeanConvertUtil.beanCovertMap(ownerDto);
- ownerInfo.put("communityId",ownerDto.getCommunityId());
+ ownerInfo.put("communityId", ownerDto.getCommunityId());
ownerInfo.put("ownerTypeCd", OwnerTypeConstant.OWNER);
// ownerInfo.put("ownerIds", getOwnerIds(communityMemberDtos));
//ownerInfo.put("ownerTypeCd", ownerDto.getOwnerTypeCd());
@@ -206,8 +236,14 @@
//鏍规嵁 userId 鏌ヨ鐢ㄦ埛淇℃伅
List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
+ String[] memberIds = getMemberIds(owners);
+ OwnerAttrDto ownerAttrDto = new OwnerAttrDto();
+ ownerAttrDto.setMemberIds(memberIds);
+ ownerAttrDto.setCommunityId(ownerDto.getCommunityId());
+ List<OwnerAttrDto> ownerAttrDtos = ownerAttrInnerServiceSMOImpl.queryOwnerAttrs(ownerAttrDto);
+
for (OwnerDto owner : owners) {
- refreshOwner(owner, users);
+ refreshOwner(owner, users,ownerAttrDtos);
}
return owners;
}
--
Gitblit v1.8.0