|  |  | @ -19,12 +19,12 @@ package com.epmet.service.impl; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | import cn.hutool.core.bean.BeanUtil; | 
			
		
	
		
			
				
					|  |  |  | import cn.hutool.core.collection.CollUtil; | 
			
		
	
		
			
				
					|  |  |  | import com.alibaba.fastjson.JSON; | 
			
		
	
		
			
				
					|  |  |  | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
			
		
	
		
			
				
					|  |  |  | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.bean.ResiExportBaseInfoData; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.commons.tools.constant.*; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.commons.tools.distributedlock.DistributedLock; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.commons.tools.dto.form.DictListFormDTO; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.commons.tools.dto.result.DictListResultDTO; | 
			
		
	
	
		
			
				
					|  |  | @ -60,7 +60,10 @@ import com.epmet.dto.result.demand.IcResiDemandDictDTO; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.dto.result.demand.OptionDTO; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.entity.*; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.excel.support.ExportResiUserItemDTO; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.feign.*; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.feign.EpmetAdminOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.feign.EpmetHeartOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.feign.GovOrgOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.feign.OperCustomizeOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.resi.partymember.feign.ResiPartyMemberOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  | import com.epmet.service.*; | 
			
		
	
		
			
				
					|  |  |  | import com.github.pagehelper.Page; | 
			
		
	
	
		
			
				
					|  |  | @ -109,8 +112,6 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private EpmetHeartOpenFeignClient heartOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private IcResiUserAttachmentService icResiUserAttachmentService; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private IcResiUserImportServiceImpl icResiUserImportService; | 
			
		
	
	
		
			
				
					|  |  | @ -121,8 +122,6 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private EpmetAdminOpenFeignClient epmetAdminOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private GovOrgFeignClient govOrgFeignClient; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private IcResiUserDao icResiUserDao; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private IcUserChangeRecordService icUserChangeRecordService; | 
			
		
	
	
		
			
				
					|  |  | @ -146,8 +145,6 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi | 
			
		
	
		
			
				
					|  |  |  |     private EpmetHeartOpenFeignClient epmetHeartOpenFeignClient; | 
			
		
	
		
			
				
					|  |  |  |     @Resource | 
			
		
	
		
			
				
					|  |  |  |     private UserBaseInfoDao userBaseInfoDao; | 
			
		
	
		
			
				
					|  |  |  |     @Autowired | 
			
		
	
		
			
				
					|  |  |  |     private DistributedLock distributedLock; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     private QueryWrapper<IcResiUserEntity> getWrapper(Map<String, Object> params) { | 
			
		
	
		
			
				
					|  |  |  |         String id = (String) params.get(FieldConstant.ID_HUMP); | 
			
		
	
	
		
			
				
					|  |  | @ -2583,37 +2580,27 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     @Override | 
			
		
	
		
			
				
					|  |  |  |     public void updateIcHouseResiNumber(String customerId) { | 
			
		
	
		
			
				
					|  |  |  |         String threadKey = RedisKeys.updateIcHouseResiNumberThread(customerId); | 
			
		
	
		
			
				
					|  |  |  |         /*RLock lock = distributedLock.getLock(threadKey); | 
			
		
	
		
			
				
					|  |  |  |         if (lock!= null && lock.isLocked()){ | 
			
		
	
		
			
				
					|  |  |  |             Future<Integer> o = (Future<Integer>) redisUtils.get(threadKey); | 
			
		
	
		
			
				
					|  |  |  |             if (o != null){ | 
			
		
	
		
			
				
					|  |  |  |                 //如果是自己的 则取消就行了
 | 
			
		
	
		
			
				
					|  |  |  |                 //o.cancel(true);
 | 
			
		
	
		
			
				
					|  |  |  |                 log.info("updateIcHouseResiNumber 任务取消"); | 
			
		
	
		
			
				
					|  |  |  |             } | 
			
		
	
		
			
				
					|  |  |  |         }*/ | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |         Future submit = executorService.submit(() -> { | 
			
		
	
		
			
				
					|  |  |  |             int pageNo = 1; | 
			
		
	
		
			
				
					|  |  |  |             int pageSize = NumConstant.TEN_THOUSAND; | 
			
		
	
		
			
				
					|  |  |  |             Page<HouseIcResiUserCountResultDTO> houseReisCountListPage = null; | 
			
		
	
		
			
				
					|  |  |  |             Page<Map<String, Object>> houseReisCountListPage = null; | 
			
		
	
		
			
				
					|  |  |  |             String key = RedisKeys.getUpdateHouseResiNumer(customerId); | 
			
		
	
		
			
				
					|  |  |  |             redisUtils.delete(key); | 
			
		
	
		
			
				
					|  |  |  |             do { | 
			
		
	
		
			
				
					|  |  |  |                 houseReisCountListPage = PageHelper.startPage(pageNo++, pageSize, false) | 
			
		
	
		
			
				
					|  |  |  |                         .doSelectPage(() -> baseDao.getResiUserCountGroupHomeId(customerId)); | 
			
		
	
		
			
				
					|  |  |  |                 System.out.println(houseReisCountListPage.getResult().size()); | 
			
		
	
		
			
				
					|  |  |  |                 List<HouseIcResiUserCountResultDTO> result = houseReisCountListPage.getResult(); | 
			
		
	
		
			
				
					|  |  |  |                 for (HouseIcResiUserCountResultDTO o: result){ | 
			
		
	
		
			
				
					|  |  |  |                     redisUtils.leftPush(key,o); | 
			
		
	
		
			
				
					|  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |                 List<Map<String, Object>> result = houseReisCountListPage.getResult(); | 
			
		
	
		
			
				
					|  |  |  |                 Result<Integer> effectRowResult =  govOrgOpenFeignClient.updateIcHouseResiNumber(result); | 
			
		
	
		
			
				
					|  |  |  |                if (effectRowResult == null || !effectRowResult.success()){ | 
			
		
	
		
			
				
					|  |  |  |                    throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"调用org服务失败"); | 
			
		
	
		
			
				
					|  |  |  |                } | 
			
		
	
		
			
				
					|  |  |  |                log.debug("updateIcHouseResiNumber org effectRowResult:{}",JSON.toJSONString(effectRowResult)); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |             } while (houseReisCountListPage.getResult().size() == pageSize); | 
			
		
	
		
			
				
					|  |  |  |             log.info("updateIcHouseResiNumber 执行完毕"); | 
			
		
	
		
			
				
					|  |  |  |             //distributedLock.unLock(lock);
 | 
			
		
	
		
			
				
					|  |  |  |         }); | 
			
		
	
		
			
				
					|  |  |  |         redisUtils.set(threadKey,submit); | 
			
		
	
		
			
				
					|  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     /** | 
			
		
	
	
		
			
				
					|  |  | 
 |