OwnerInnerServiceSMOImpl.java 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. package com.java110.user.smo.impl;
  2. import com.java110.core.base.smo.BaseServiceSMO;
  3. import com.java110.dto.CommunityMemberDto;
  4. import com.java110.dto.PageDto;
  5. import com.java110.dto.owner.OwnerAttrDto;
  6. import com.java110.dto.owner.OwnerDto;
  7. import com.java110.dto.user.UserDto;
  8. import com.java110.intf.community.ICommunityInnerServiceSMO;
  9. import com.java110.intf.user.IOwnerAttrInnerServiceSMO;
  10. import com.java110.intf.user.IOwnerInnerServiceSMO;
  11. import com.java110.intf.user.IUserInnerServiceSMO;
  12. import com.java110.po.owner.OwnerPo;
  13. import com.java110.user.dao.IOwnerServiceDao;
  14. import com.java110.utils.constant.OwnerTypeConstant;
  15. import com.java110.utils.constant.StatusConstant;
  16. import com.java110.utils.util.BeanConvertUtil;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.web.bind.annotation.RequestBody;
  19. import org.springframework.web.bind.annotation.RestController;
  20. import java.util.ArrayList;
  21. import java.util.List;
  22. import java.util.Map;
  23. /**
  24. * @ClassName FloorInnerServiceSMOImpl
  25. * @Description 业主内部服务实现类
  26. * @Author wuxw
  27. * @Date 2019/4/24 9:20
  28. * @Version 1.0
  29. * add by wuxw 2019/4/24
  30. **/
  31. @RestController
  32. public class OwnerInnerServiceSMOImpl extends BaseServiceSMO implements IOwnerInnerServiceSMO {
  33. @Autowired
  34. private IOwnerServiceDao ownerServiceDaoImpl;
  35. @Autowired
  36. private IOwnerAttrInnerServiceSMO ownerAttrInnerServiceSMOImpl;
  37. @Autowired
  38. private IUserInnerServiceSMO userInnerServiceSMOImpl;
  39. @Autowired
  40. private ICommunityInnerServiceSMO communityInnerServiceSMOImpl;
  41. @Override
  42. public List<OwnerDto> queryOwners(@RequestBody OwnerDto ownerDto) {
  43. int page = ownerDto.getPage();
  44. if (page != PageDto.DEFAULT_PAGE) {
  45. ownerDto.setPage((page - 1) * ownerDto.getRow());
  46. }
  47. Map ownerInfo = BeanConvertUtil.beanCovertMap(ownerDto);
  48. ownerInfo.put("communityId", ownerDto.getCommunityId());
  49. ownerInfo.put("ownerTypeCd", OwnerTypeConstant.OWNER);
  50. // ownerInfo.put("ownerIds", getOwnerIds(communityMemberDtos));
  51. //ownerInfo.put("ownerTypeCd", ownerDto.getOwnerTypeCd());
  52. ownerInfo.put("statusCd", StatusConstant.STATUS_CD_VALID);
  53. List<OwnerDto> owners = BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.getOwnerInfo(ownerInfo), OwnerDto.class);
  54. if (owners == null || owners.size() == 0) {
  55. return owners;
  56. }
  57. String[] userIds = getUserIds(owners);
  58. //根据 userId 查询用户信息
  59. List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
  60. String[] memberIds = getMemberIds(owners);
  61. OwnerAttrDto ownerAttrDto = new OwnerAttrDto();
  62. ownerAttrDto.setMemberIds(memberIds);
  63. ownerAttrDto.setCommunityId(ownerDto.getCommunityId());
  64. List<OwnerAttrDto> ownerAttrDtos = ownerAttrInnerServiceSMOImpl.queryOwnerAttrs(ownerAttrDto);
  65. for (OwnerDto owner : owners) {
  66. refreshOwner(owner, users, ownerAttrDtos);
  67. }
  68. return owners;
  69. }
  70. @Override
  71. public List<OwnerDto> queryOwnerMembers(@RequestBody OwnerDto ownerDto) {
  72. List<OwnerDto> owners = BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.getOwnerInfo(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
  73. if (owners == null || owners.size() == 0) {
  74. return owners;
  75. }
  76. String[] userIds = getUserIds(owners);
  77. //根据 userId 查询用户信息
  78. List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
  79. String[] memberIds = getMemberIds(owners);
  80. OwnerAttrDto ownerAttrDto = new OwnerAttrDto();
  81. ownerAttrDto.setMemberIds(memberIds);
  82. ownerAttrDto.setCommunityId(ownerDto.getCommunityId());
  83. List<OwnerAttrDto> ownerAttrDtos = ownerAttrInnerServiceSMOImpl.queryOwnerAttrs(ownerAttrDto);
  84. for (OwnerDto owner : owners) {
  85. refreshOwner(owner, users, ownerAttrDtos);
  86. }
  87. return owners;
  88. }
  89. /**
  90. * 从用户列表中查询用户,将用户中的信息 刷新到 floor对象中
  91. *
  92. * @param owner 小区业主信息
  93. * @param users 用户列表
  94. */
  95. private void refreshOwner(OwnerDto owner, List<UserDto> users, List<OwnerAttrDto> ownerAttrDtos) {
  96. for (UserDto user : users) {
  97. if (owner.getUserId().equals(user.getUserId())) {
  98. //BeanConvertUtil.covertBean(user, owner);
  99. owner.setUserName(user.getUserName());
  100. break;
  101. }
  102. }
  103. if (ownerAttrDtos == null || ownerAttrDtos.size() < 1) {
  104. return;
  105. }
  106. List<OwnerAttrDto> tmpOwnerAttrDtos = new ArrayList<>();
  107. for (OwnerAttrDto ownerAttrDto : ownerAttrDtos) {
  108. if (ownerAttrDto.getMemberId().equals(owner.getMemberId())) {
  109. tmpOwnerAttrDtos.add(ownerAttrDto);
  110. }
  111. }
  112. owner.setOwnerAttrDtos(tmpOwnerAttrDtos);
  113. }
  114. /**
  115. * 获取批量userId
  116. *
  117. * @param communityMemberDtos 小区楼信息
  118. * @return 批量userIds 信息
  119. */
  120. private String[] getOwnerIds(List<CommunityMemberDto> communityMemberDtos) {
  121. List<String> ownerIds = new ArrayList<String>();
  122. for (CommunityMemberDto communityMemberDto : communityMemberDtos) {
  123. ownerIds.add(communityMemberDto.getMemberId());
  124. }
  125. return ownerIds.toArray(new String[ownerIds.size()]);
  126. }
  127. /**
  128. * 获取批量userId
  129. *
  130. * @param owners 小区楼信息
  131. * @return 批量userIds 信息
  132. */
  133. private String[] getUserIds(List<OwnerDto> owners) {
  134. List<String> userIds = new ArrayList<String>();
  135. for (OwnerDto owner : owners) {
  136. userIds.add(owner.getUserId());
  137. }
  138. return userIds.toArray(new String[userIds.size()]);
  139. }
  140. /**
  141. * 获取批量userId
  142. *
  143. * @param owners 小区楼信息
  144. * @return 批量userIds 信息
  145. */
  146. private String[] getMemberIds(List<OwnerDto> owners) {
  147. List<String> memberIds = new ArrayList<String>();
  148. for (OwnerDto owner : owners) {
  149. memberIds.add(owner.getMemberId());
  150. }
  151. return memberIds.toArray(new String[memberIds.size()]);
  152. }
  153. @Override
  154. public int queryOwnersCount(@RequestBody OwnerDto ownerDto) {
  155. //调用 小区服务查询 小区成员业主信息
  156. /*CommunityMemberDto communityMemberDto = new CommunityMemberDto();
  157. communityMemberDto.setCommunityId(ownerDto.getCommunityId());
  158. communityMemberDto.setMemberTypeCd(CommunityMemberTypeConstant.OWNER);
  159. return communityInnerServiceSMOImpl.getCommunityMemberCount(communityMemberDto);*/
  160. int page = ownerDto.getPage();
  161. if (page != PageDto.DEFAULT_PAGE) {
  162. ownerDto.setPage((page - 1) * ownerDto.getRow());
  163. }
  164. Map ownerInfo = BeanConvertUtil.beanCovertMap(ownerDto);
  165. ownerInfo.put("communityId", ownerDto.getCommunityId());
  166. ownerInfo.put("ownerTypeCd", OwnerTypeConstant.OWNER);
  167. // ownerInfo.put("ownerIds", getOwnerIds(communityMemberDtos));
  168. //ownerInfo.put("ownerTypeCd", ownerDto.getOwnerTypeCd());
  169. ownerInfo.put("statusCd", StatusConstant.STATUS_CD_VALID);
  170. return ownerServiceDaoImpl.getOwnerInfoCount(ownerInfo);
  171. }
  172. @Override
  173. public int queryOwnerCountByCondition(@RequestBody OwnerDto ownerDto) {
  174. //校验是否传了 分页信息
  175. int page = ownerDto.getPage();
  176. if (page != PageDto.DEFAULT_PAGE) {
  177. ownerDto.setPage((page - 1) * ownerDto.getRow());
  178. }
  179. return ownerServiceDaoImpl.queryOwnersCount(BeanConvertUtil.beanCovertMap(ownerDto));
  180. }
  181. @Override
  182. public List<OwnerDto> queryOwnersByCondition(@RequestBody OwnerDto ownerDto) {
  183. //校验是否传了 分页信息
  184. int page = ownerDto.getPage();
  185. if (page != PageDto.DEFAULT_PAGE) {
  186. ownerDto.setPage((page - 1) * ownerDto.getRow());
  187. }
  188. List<OwnerDto> owners = BeanConvertUtil.covertBeanList(
  189. ownerServiceDaoImpl.getOwnerInfoByCondition(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
  190. if (owners == null || owners.size() == 0) {
  191. return owners;
  192. }
  193. String[] userIds = getUserIds(owners);
  194. //根据 userId 查询用户信息
  195. List<UserDto> users = userInnerServiceSMOImpl.getUserInfo(userIds);
  196. String[] memberIds = getMemberIds(owners);
  197. OwnerAttrDto ownerAttrDto = new OwnerAttrDto();
  198. ownerAttrDto.setMemberIds(memberIds);
  199. ownerAttrDto.setCommunityId(ownerDto.getCommunityId());
  200. List<OwnerAttrDto> ownerAttrDtos = ownerAttrInnerServiceSMOImpl.queryOwnerAttrs(ownerAttrDto);
  201. for (OwnerDto owner : owners) {
  202. refreshOwner(owner, users, ownerAttrDtos);
  203. }
  204. return owners;
  205. }
  206. @Override
  207. public int queryNoEnterRoomOwnerCount(@RequestBody OwnerDto ownerDto) {
  208. return ownerServiceDaoImpl.queryNoEnterRoomOwnerCount(BeanConvertUtil.beanCovertMap(ownerDto));
  209. }
  210. @Override
  211. public List<OwnerDto> queryOwnersByRoom(@RequestBody OwnerDto ownerDto) {
  212. return BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.queryOwnersByRoom(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
  213. }
  214. @Override
  215. public List<OwnerDto> queryOwnersByParkingSpace(@RequestBody OwnerDto ownerDto) {
  216. return BeanConvertUtil.covertBeanList(ownerServiceDaoImpl.queryOwnersByParkingSpace(BeanConvertUtil.beanCovertMap(ownerDto)), OwnerDto.class);
  217. }
  218. @Override
  219. public int updateOwnerMember(OwnerPo ownerPo) {
  220. Map info = BeanConvertUtil.beanCovertMap(ownerPo);
  221. info.put("statusCd","0");
  222. ownerServiceDaoImpl.updateOwnerInfoInstance(info);
  223. return 1;
  224. }
  225. public IUserInnerServiceSMO getUserInnerServiceSMOImpl() {
  226. return userInnerServiceSMOImpl;
  227. }
  228. public void setUserInnerServiceSMOImpl(IUserInnerServiceSMO userInnerServiceSMOImpl) {
  229. this.userInnerServiceSMOImpl = userInnerServiceSMOImpl;
  230. }
  231. public ICommunityInnerServiceSMO getCommunityInnerServiceSMOImpl() {
  232. return communityInnerServiceSMOImpl;
  233. }
  234. public void setCommunityInnerServiceSMOImpl(ICommunityInnerServiceSMO communityInnerServiceSMOImpl) {
  235. this.communityInnerServiceSMOImpl = communityInnerServiceSMOImpl;
  236. }
  237. public IOwnerServiceDao getOwnerServiceDaoImpl() {
  238. return ownerServiceDaoImpl;
  239. }
  240. public void setOwnerServiceDaoImpl(IOwnerServiceDao ownerServiceDaoImpl) {
  241. this.ownerServiceDaoImpl = ownerServiceDaoImpl;
  242. }
  243. }