Browse Source

开个线程试试

dev_shibei_match
jianjun 4 years ago
parent
commit
57dab627cc
  1. 32
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java

32
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java

@ -43,6 +43,7 @@ import com.epmet.feign.GovOrgFeignClient;
import com.epmet.service.GridVisitedService;
import com.epmet.service.RegisterRelationService;
import com.epmet.util.ModuleConstant;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -51,6 +52,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.concurrent.*;
/**
* 注册关系表 用于统计客户网格的注册居民数
@ -60,11 +62,11 @@ import java.util.*;
*/
@Service
public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelationDao, RegisterRelationEntity> implements RegisterRelationService {
// private static ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
// .setNameFormat("registerRelationService-pool-%d").build();
// private static final ExecutorService threadPool = new ThreadPoolExecutor(2, 3,
// 0L, TimeUnit.MILLISECONDS,
// new ArrayBlockingQueue(1), namedThreadFactory, new ThreadPoolExecutor.CallerRunsPolicy());
private static ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("registerRelationService-pool-%d").build();
private static final ExecutorService threadPool = new ThreadPoolExecutor(1, 1,
0L, TimeUnit.MILLISECONDS,
new ArrayBlockingQueue(1), namedThreadFactory, new ThreadPoolExecutor.CallerRunsPolicy());
private static final Logger log = LoggerFactory.getLogger(RegisterRelationServiceImpl.class);
@ -177,14 +179,11 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
wrapper.eq(FieldConstant.DEL_FLAG,NumConstant.ZERO_STR);
//3.获取权限
// Future<Boolean> futureUserRole = threadPool.submit(() -> {
//
// return true;
// });
Future<Boolean> futureUserRole = threadPool.submit(() -> {
setUserRoleList(enterGridFormDTO, resultObj);
setGridName(resultObj, gridId);
//setUserRoleList(enterGridFormDTO, resultObj);
//setGridName(resultObj, gridId);
return true;
});
//4.去网格表中查询网格对应的名称
//Future<Boolean> futureGridName = threadPool.submit(() -> setGridName(resultObj, gridId));
@ -258,7 +257,6 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
resultObj.setNickname(userResiInfo.getShowName());
resultObj.setUserHeadPhoto(userResiInfo.getHeadPhoto());
}
// List<UserWechatEntity> userWechatEntityList=userWechatDao.selectByUserId(enterGridFormDTO.getUserId());
UserBaseInfoResultDTO userBaseInfo = userBaseInfoDao.selectListByUserIdList(enterGridFormDTO.getUserId());
if(null != userBaseInfo){
resultObj.setNickname(StringUtils.isNotBlank(userBaseInfo.getNickname())?userBaseInfo.getNickname(): StrConstant.EPMETY_STR);
@ -276,11 +274,11 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
if(!gridVisitedService.saveVisitedRecord(visitedFormDTO).success()){
log.warn(ModuleConstant.SAVE_VISITED_RECORD_FAILURE);
}
// try {
// futureUserRole.get();
// } catch (Exception e) {
// log.error("thread get result exception",e);
// }
try {
futureUserRole.get();
} catch (Exception e) {
log.error("thread get result exception",e);
}
return result;
}

Loading…
Cancel
Save