From 2b1a74f4faa5a00a294bdc6a6d956c2e009cf467 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Tue, 16 Apr 2024 15:32:09 +0800
Subject: [PATCH] 管理员过滤文章

---
 src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java |   97 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 82 insertions(+), 15 deletions(-)

diff --git a/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java b/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
index d7a3510..6bb6fb2 100644
--- a/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
+++ b/src/main/java/org/springblade/modules/house/service/impl/HouseholdServiceImpl.java
@@ -16,15 +16,19 @@
  */
 package org.springblade.modules.house.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import liquibase.repackaged.org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.util.Strings;
+import org.springblade.common.constant.CommonConstant;
 import org.springblade.common.node.TreeIntegerNode;
 import org.springblade.common.node.TreeStringNode;
 import org.springblade.common.param.CommonParamSet;
 import org.springblade.common.utils.NodeTreeUtil;
+import org.springblade.common.utils.SpringUtils;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.utils.BeanUtil;
@@ -38,6 +42,9 @@
 import org.springblade.modules.house.vo.HouseholdLabelVO;
 import org.springblade.modules.house.vo.HouseholdOtherVO;
 import org.springblade.modules.house.vo.HouseholdVO;
+import org.springblade.modules.label.entity.LabelEntity;
+import org.springblade.modules.label.service.ILabelService;
+import org.springblade.modules.label.vo.LabelVO;
 import org.springblade.modules.place.entity.PlaceEntity;
 import org.springblade.modules.place.service.IPlaceService;
 import org.springblade.modules.system.entity.DictBiz;
@@ -81,12 +88,36 @@
 
 //		List<String> regionChildCodesList = SysCache.getRegionChildCodesByDeptId(AuthUtil.getDeptId());
 //		Integer isAdministrator = AuthUtil.isAdministrator()==true?1:2;
-
+		// 重点人员与关注人员
+		if (Objects.nonNull(household.getLabelType())) {
+			extracted(household);
+		}
 		List<HouseholdVO> householdVOS = baseMapper.selectHouseholdPage(page, household, commonParamSet.getIsAdministrator(),
 			commonParamSet.getRegionChildCodesList(), commonParamSet.getGridCodeList());
 		stopWatch.stop();
 //		System.out.println("selectHouseholdPage:" + stopWatch.getTotalTimeMillis());
 		return page.setRecords(householdVOS);
+	}
+
+	/**
+	 * 重点人员与关注人员
+	 * @param household
+	 */
+	private void extracted(HouseholdVO household) {
+		ILabelService iLabelService = SpringUtils.getBean(ILabelService.class);
+		if (CommonConstant.NUMBER_ONE.equals(household.getLabelType())) {
+			List<LabelEntity> list = iLabelService.list(Wrappers.<LabelEntity>lambdaQuery().eq(LabelEntity::getParentId, 103));
+			List<Integer> collect = list.stream().map(item ->
+				item.getId()
+			).collect(Collectors.toList());
+			household.setLabelIdList(collect);
+		} else if (CommonConstant.NUMBER_TWO.equals(household.getLabelType())) {
+			List<LabelEntity> list = iLabelService.list(Wrappers.<LabelEntity>lambdaQuery().eq(LabelEntity::getParentId, 1032));
+			List<Integer> collect = list.stream().map(item ->
+				item.getId()
+			).collect(Collectors.toList());
+			household.setLabelIdList(collect);
+		}
 	}
 
 	/**
@@ -218,16 +249,9 @@
 		User newUser = new User();
 		if (null != householdEntity.getPhoneNumber() && !householdEntity.getPhoneNumber().equals("")) {
 			//根据手机号查询库里的数据
-			User userParams = new User();
-			userParams.setPhone(householdEntity.getPhoneNumber());
-			User user = userService.getOne(Condition.getQueryWrapper(userParams));
-			if (null == user) {
-				User userParams1 = new User();
-				userParams1.setAccount(householdEntity.getPhoneNumber());
-				userParams1.setIsDeleted(0);
-				user = userService.getOne(Condition.getQueryWrapper(userParams1));
-			}
-			if (null != user) {
+			List<User> list = userService.getUserListByPhoneOrAccount(householdEntity.getPhoneNumber());
+			if (list.size()>0) {
+				User user = list.get(0);
 				//如果用户存在,则该用户id绑定场所
 				householdEntity.setAssociatedUserId(user.getId());
 				//更新住户信息
@@ -297,13 +321,13 @@
 	 * @return
 	 */
 	@Override
-	public Integer statistics(Long userId, String neiCode,Integer confirmFlag) {
+	public Integer statistics(Long userId, String neiCode, Integer confirmFlag) {
 		HouseholdVO householdVO = new HouseholdVO();
 		householdVO.setConfirmFlag(confirmFlag);
-		householdVO.setNeiCode(neiCode);
+		householdVO.setCommunityCode(neiCode);
 		CommonParamSet commonParamSet = new CommonParamSet().invoke(HouseholdVO.class, householdVO);
 
-		return baseMapper.statistics(householdVO,commonParamSet.getIsAdministrator(),
+		return baseMapper.statistics(householdVO, commonParamSet.getIsAdministrator(),
 			commonParamSet.getRegionChildCodesList(), commonParamSet.getGridCodeList());
 	}
 
@@ -424,7 +448,7 @@
 		for (Long id : idList) {
 			HouseholdEntity householdEntity = getById(id);
 			// 如果是业主
-			if (householdEntity.getRelationship() == 1) {
+			if (null!= householdEntity.getRelationship() && householdEntity.getRelationship() == 1) {
 				// 查询对应的用户
 				User user = userService.getById(householdEntity.getAssociatedUserId());
 				// 判断是否还绑定其他的房屋,如果有,则不操作用户
@@ -551,4 +575,47 @@
 			node.setChildren(null);
 		}
 	}
+
+	/**
+	 * 通过小区id查询用户
+	 * @param householdVO
+	 * @param page
+	 * @return
+	 */
+	@Override
+	public IPage<HouseholdVO> getUserInfoByDistrictIds(HouseholdVO householdVO, IPage<HouseholdVO> page) {
+		List<String> list = JSON.parseArray(householdVO.getDistrictIds()).toJavaList(String.class);
+		List<HouseholdVO> userInfoByDistrictIds = baseMapper.getUserInfoByDistrictIds(list, householdVO, page);
+		return page.setRecords(userInfoByDistrictIds);
+	}
+
+	/**
+	 * 查询住户对应的社区编号
+	 * @param id
+	 * @return
+	 */
+	@Override
+	public String getCommunityCode(Long id) {
+		return baseMapper.getCommunityCode(id);
+	}
+
+	/**
+	 * 查询所有住户总数
+	 * @return
+	 */
+	@Override
+	public int getAllListTotal() {
+		return baseMapper.getAllListTotal();
+	}
+
+	/**
+	 * 查询对应的住户集合
+	 * @param i
+	 * @param size
+	 * @return
+	 */
+	@Override
+	public List<HouseholdVO> getAllList(int i, int size) {
+		return baseMapper.getAllList(i,size);
+	}
 }

--
Gitblit v1.9.3