Browse Source

Merge branch 'dev_question_naire' of http://git.elinkit.com.cn:7070/r/epmet-cloud into develop

master
jianjun 4 years ago
parent
commit
d3c2e537c0
  1. 9
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  2. 12
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/GridInfoCache.java
  3. 4
      epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java
  4. 37
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java
  5. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectDao.xml
  6. 36
      epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/BizPointTotalDetailServiceImpl.java
  7. 3
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java
  8. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java

9
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -212,15 +212,6 @@ public class RedisKeys {
return rootPrefix.concat("gov:agency:").concat(agencyId);
}
/**
* 网格信息key
* @param gridId
* @return
*/
public static String getGridByIdKey(String gridId) {
return rootPrefix.concat("gov:grid:").concat(gridId);
}
/**
* 客户标签排行 缓存Key
* @param customerId

12
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/GridInfoCache.java

@ -1,12 +0,0 @@
package com.epmet.commons.tools.redis.common.bean;
import lombok.Data;
@Data
public class GridInfoCache {
private String gridId;
private String gridNamePath;
private String customerId;
private String pid;
private String pids;
}

4
epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmettduck/result/TDuckListResultDTO.java

@ -4,8 +4,6 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
@ -69,6 +67,7 @@ public class TDuckListResultDTO implements Serializable {
private String client;
private String createdTime;
private String updatedTime;
/**
* 是否填写问卷truefalse
@ -107,6 +106,7 @@ public class TDuckListResultDTO implements Serializable {
this.status = NumConstant.ONE;
this.client = "";
this.createdTime = "";
this.updatedTime = "";
this.fillStatus = false;
this.isFillQuestion = true;
this.orgName = "";

37
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmettduck/impl/PrUserProjectServiceImpl.java

@ -51,6 +51,7 @@ import com.epmet.dataaggre.dto.epmettduck.result.*;
import com.epmet.dataaggre.dto.epmettduck.struct.*;
import com.epmet.dataaggre.entity.epmettduck.PrUserProjectEntity;
import com.epmet.dataaggre.entity.epmettduck.PrUserProjectResultEntity;
import com.epmet.dataaggre.entity.epmettduck.PrVistRecordEntity;
import com.epmet.dataaggre.service.epmettduck.PrPublishRangeService;
import com.epmet.dataaggre.service.epmettduck.PrUserProjectService;
import com.epmet.dataaggre.service.epmettduck.PrVistRecordService;
@ -70,6 +71,8 @@ import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.*;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@ -251,9 +254,37 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao,
}
r.setOrgName(orgName);
});
insertPrVistRecord(formDTO)
return result;
}
/**
* desc一步插入访问记录 不带projectKey
* @param formDTO
* @return
*/
private Future<?> insertPrVistRecord(TDuckListFormDTO formDTO) {
return Executors.newCachedThreadPool().submit(()->{
PrVistRecordDTO param = new PrVistRecordDTO();
param.setCustomerId(formDTO.getCustomerId());
param.setUserId(formDTO.getUserId());
param.setUserType(formDTO.getOrgType());
param.setProjectKey(formDTO.getClient());
PrVistRecordDTO newestRecord = prVistRecordService.getNewestRecord(formDTO.getUserId());
PrVistRecordEntity entity = ConvertUtils.sourceToTarget(PrVistRecordDTO.class, PrVistRecordEntity.class);
if (newestRecord == null) {
prVistRecordService.insert(entity);
} else {
entity = new PrVistRecordEntity();
entity.setId(newestRecord.getId());
prVistRecordService.updateById(entity);
}
});
}
/**
* @Description orgIds拼接
* @Param pids
@ -580,8 +611,8 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao,
}
//按照星星大小升序排列
this.sortMap(starMap, true);
//2、平均分
detail.put("avgStarNum", new BigDecimal((float)totalStarNum / validTotal).setScale(0, BigDecimal.ROUND_HALF_UP));
//2、平均分 (09.30,产品需求:直接显示平均星数,保留小数点后两位,无需四舍五入)
detail.put("avgStarNum", new BigDecimal((float)totalStarNum / validTotal).setScale(2, BigDecimal.ROUND_DOWN));
//3、几条有效记录
detail.put("validTotal", validTotal);
//4、得分列表
@ -808,4 +839,4 @@ public class PrUserProjectServiceImpl extends BaseServiceImpl<PrUserProjectDao,
query.eq(PrUserProjectEntity::getKey, key);
return baseDao.selectOne(query);
}
}
}

2
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmettduck/PrUserProjectDao.xml

@ -92,7 +92,7 @@
#{key}
</foreach>
)
ORDER BY up.created_time DESC
ORDER BY up.updated_time DESC
</select>
</mapper>

36
epmet-module/epmet-point/epmet-point-server/src/main/java/com/epmet/service/impl/BizPointTotalDetailServiceImpl.java

@ -29,7 +29,7 @@ import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.feign.ResultDataResolver;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.utils.Result;
@ -47,7 +47,6 @@ import com.epmet.resi.group.dto.group.result.GroupPointDetailResultDTO;
import com.epmet.dto.result.GroupPointRankingResultDTO;
import com.epmet.entity.BizPointTotalDetailEntity;
import com.epmet.resi.group.dto.group.ResiGroupDTO;
import com.epmet.resi.group.dto.group.result.RankingResultDTO;
import com.epmet.resi.group.enums.SearchScopeTypeEnum;
import com.epmet.resi.group.feign.ResiGroupOpenFeignClient;
import com.epmet.service.BizPointTotalDetailService;
@ -88,6 +87,8 @@ public class BizPointTotalDetailServiceImpl extends BaseServiceImpl<BizPointTota
private RedisTemplate<String, ?> redisTemplate;
@Autowired
private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Autowired
private RedisUtils redisUtils;
@Override
public PageData<BizPointTotalDetailDTO> page(Map<String, Object> params) {
@ -320,8 +321,8 @@ public class BizPointTotalDetailServiceImpl extends BaseServiceImpl<BizPointTota
ranking ++;
}
GridInfoCache gridInfo = getGridInfo(g.getGridId());
g.setGridId(g.getGridId());
CustomerGridDTO gridInfo = getGridInfo(g.getGridId());
//g.setGridId(g.getGridId());
if (gridInfo != null) {
g.setGridNamePath(gridInfo.getGridNamePath());
} else {
@ -441,28 +442,19 @@ public class BizPointTotalDetailServiceImpl extends BaseServiceImpl<BizPointTota
* @author wxz
* @date 2021.09.08 11:17:17
*/
public GridInfoCache getGridInfo(String gridId) {
HashOperations<String, String, Object> ope = redisTemplate.opsForHash();
Map<String, Object> entries = ope.entries(RedisKeys.getGridInfoKey(gridId));
if (entries.size() != 0) {
return BeanUtil.mapToBean(entries, GridInfoCache.class, true);
public CustomerGridDTO getGridInfo(String gridId) {
String redisKey = RedisKeys.getGridInfoKey(gridId);
Map<String, Object> gridCache = redisUtils.hGetAll(redisKey);
if (gridCache != null && gridCache.size() > 0) {
// 直接取缓存中的
CustomerGridDTO gridInfo = BeanUtil.mapToBean(gridCache, CustomerGridDTO.class, true);
return gridInfo;
}
CustomerGridFormDTO form = new CustomerGridFormDTO();
form.setGridId(gridId);
Result<CustomerGridDTO> result = govOrgOpenFeignClient.getCustomerGridByGridId(form);
if (result == null || !result.success() || result.getData() == null) {
return null;
}
GridInfoCache cache = new GridInfoCache();
cache.setCustomerId(result.getData().getCustomerId());
cache.setGridId(result.getData().getId());
cache.setGridNamePath(result.getData().getGridName());
cache.setPid(result.getData().getPid());
cache.setPids(result.getData().getPids());
ope.putAll(RedisKeys.getGridInfoKey(gridId), BeanUtil.beanToMap(cache));
return cache;
Result<CustomerGridDTO> result = govOrgOpenFeignClient.getGridBaseInfoByGridId(form);
return getResultDataOrThrowsException(result, ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【小组排名】查询网格信息失败");
}
@Override

3
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java

@ -49,6 +49,9 @@ public class CustomerGridDTO implements Serializable {
*/
private String gridName;
/** 组织-网格 */
private String gridNamePath;
/**
* 中心位置经度
*/

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java

@ -720,7 +720,7 @@ public class CustomerGridServiceImpl extends BaseServiceImpl<CustomerGridDao, Cu
@Override
public CustomerGridDTO getBaseInfo(CustomerGridFormDTO customerGridFormDTO) {
String redisKey = RedisKeys.getGridByIdKey(customerGridFormDTO.getGridId());
String redisKey = RedisKeys.getGridInfoKey(customerGridFormDTO.getGridId());
Map<String, Object> gridCache = redisUtils.hGetAll(redisKey);
if (gridCache != null && gridCache.size() > 0) {
// 直接取缓存中的
@ -730,11 +730,13 @@ public class CustomerGridServiceImpl extends BaseServiceImpl<CustomerGridDao, Cu
CustomerGridDTO gridInfo = ConvertUtils.sourceToTarget(baseDao.selectById(customerGridFormDTO.getGridId()), CustomerGridDTO.class);
if (null != gridInfo) {
CustomerAgencyEntity entity = customerAgencyService.selectById(gridInfo.getPid());
gridInfo.setAgencyName(null != entity ? entity.getOrganizationName() : "");
CustomerAgencyEntity agency = customerAgencyService.selectById(gridInfo.getPid());
gridInfo.setAgencyName(null != agency ? agency.getOrganizationName() : "");
gridInfo.setGridNamePath(null != agency ? agency.getOrganizationName().concat("-").concat(gridInfo.getGridName()) : gridInfo.getGridName());
redisUtils.hMSet(redisKey, BeanUtil.beanToMap(gridInfo));
}
redisUtils.hMSet(redisKey, BeanUtil.beanToMap(gridInfo));
return gridInfo;
}

Loading…
Cancel
Save