Browse Source

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

 Conflicts:
	epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java
	epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml
dev_shibei_match
jianjun 4 years ago
parent
commit
d278e1fb88
  1. 4
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java
  2. 8
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java
  3. 23
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java
  4. 27
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java
  5. 13
      epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml

4
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java

@ -138,6 +138,7 @@ public class IcResiUserController {
IC_RESI_DOWNLOAD_DIR = exportDir;
}
@NoRepeatSubmit
@PostMapping("delete")
public Result delete(@LoginUser TokenDto tokenDto, @RequestBody DelIcResiUserFormDTO formDTO) {
formDTO.setCustomerId(tokenDto.getCustomerId());
@ -159,6 +160,7 @@ public class IcResiUserController {
* @Author sun
* @Description 党建互联平台--保存居民信息
**/
@NoRepeatSubmit
@PostMapping("add")
public Result add(@LoginUser TokenDto tokenDto, @RequestBody List<IcResiUserFormDTO> formDTO) {
String resiUserId = icResiUserService.add(tokenDto, formDTO);
@ -177,6 +179,7 @@ public class IcResiUserController {
* @Author sun
* @Description 党建互联平台--修改居民信息
**/
@NoRepeatSubmit
@PostMapping("edit")
public Result edit(@LoginUser TokenDto tokenDto, @RequestBody List<IcResiUserFormDTO> formDTO) {
String resiUserId = icResiUserService.edit(tokenDto, formDTO);
@ -241,6 +244,7 @@ public class IcResiUserController {
* @remark:分页批量导出 oss目录在 各个环境对应的前缀文件夹/file-template/resi-template/客户ID.xlsx,
* 如果某个客户需要更新模版 则替换掉上面的模版文件然后 更新缓存里的值或者删除也行 再导出就会下载新的模版了
*/
@NoRepeatSubmit
@RequestMapping(value = "/exportExcel")
public void exportExcelByEasyExcel(@RequestHeader String customerId,@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception {
//tokenDto.setUserId("9e37adcce6472152e6508a19d3683e02");

8
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java

@ -18,6 +18,7 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.IcResiUserDTO;
import com.epmet.dto.form.ResiUserQueryValueDTO;
import com.epmet.dto.result.DemandUserResDTO;
import com.epmet.dto.result.IcFormResColumnDTO;
@ -146,6 +147,11 @@ public interface IcResiUserDao extends BaseDao<IcResiUserEntity> {
Map<String,String> selectPersonType(@Param("columns")List<String> columns,@Param("customerId")String customerId,
@Param("tableName")String tableName,@Param("userId")String userId);
/**
* @Author sun
* @Description 查询居民信息
**/
IcResiUserDTO getResiUser(IcResiUserDTO dto);
/**
*
* @param agencyId
@ -156,4 +162,4 @@ public interface IcResiUserDao extends BaseDao<IcResiUserEntity> {
List<DemandUserResDTO> selectDemandUsers(@Param("agencyId") String agencyId,
@Param("gridId")String gridId,
@Param("name")String name);
}
}

23
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java

@ -29,6 +29,8 @@ import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.service.IcResiUserImportService;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@ -59,6 +61,15 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
public static final ThreadLocal<Map<String, List<ErrorRow>>> errorRows = new ThreadLocal<>();
public static final ThreadLocal<Map<String, List<SkipedRow>>> skipedRows = new ThreadLocal<>();
/**
* key: itemId
* value:
* key: option的中文
* value: options的英文key也可能是数据id
*/
Cache<String, Map<String, String>> itemIdAndOptionsCache = CacheBuilder.newBuilder().maximumSize(500).build();
@Autowired
private LoginUserUtil loginUserUtil;
@ -212,6 +223,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
} finally {
skipedRows.remove();
errorRows.remove();
itemIdAndOptionsCache.invalidateAll();
}
}
@ -562,10 +574,13 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
String colValue = options.get(cellContent);
columnWrapper.setColValue(colValue);
} else {
// remote类型
Map<String, String> options = listRemoteOptions(headerColumnWrapper, columnWrapper.getOptionSourceValue(), currUserAgencyId, "saveorupdate");
String colValue = options.get(cellContent);
// remote类型。优先从缓存取
Map<String, String> optionsOfItem = itemIdAndOptionsCache.getIfPresent(columnWrapperEntry.getKey());
if (optionsOfItem == null || optionsOfItem.size() == 0) {
optionsOfItem = listRemoteOptions(headerColumnWrapper, columnWrapper.getOptionSourceValue(), currUserAgencyId, "saveorupdate");
itemIdAndOptionsCache.put(columnWrapperEntry.getKey(), optionsOfItem);
}
String colValue = optionsOfItem.get(cellContent);
columnWrapper.setColValue(colValue);
}
} else if ("checkbox".equals(columnWrapper.getItemType())) {

27
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java

@ -49,10 +49,7 @@ import com.epmet.constant.IcResiUserConstant;
import com.epmet.constant.SystemMessageType;
import com.epmet.constant.UserConstant;
import com.epmet.dao.IcResiUserDao;
import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.IcHouseDTO;
import com.epmet.dto.IcNeighborHoodDTO;
import com.epmet.dto.IcResiCategoryStatsConfigDTO;
import com.epmet.dto.*;
import com.epmet.dto.form.*;
import com.epmet.dto.form.demand.UserDemandNameQueryFormDTO;
import com.epmet.dto.result.*;
@ -169,6 +166,17 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi
if(!map.containsKey("AGENCY_ID")){
throw new RenException("新增居民信息--入参AGENCY_ID为空");
}
//2021.11.25 新增需求 客户下身份证号唯一 start
if (map.containsKey("ID_CARD")) {
IcResiUserDTO dto = new IcResiUserDTO();
dto.setCustomerId(tokenDto.getCustomerId());
dto.setIdCard(map.get("ID_CARD"));
IcResiUserDTO userDTO = baseDao.getResiUser(dto);
if (null != userDTO && null != userDTO.getIdCard()) {
throw new RenException("新增居民信息失败,身份证号已存在!");
}
}
//2021.11.25 end
//查询组织信息
String agencyId = map.get("AGENCY_ID");
Result<CustomerAgencyDTO> result = govOrgOpenFeignClient.getAgencyById(agencyId);
@ -216,6 +224,17 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi
if (!map.containsKey("ID")) {
throw new RenException(String.format("居民信息修改-居民信息表主键值为空"));
}
//2021.11.25 新增需求 客户下身份证号唯一 start
if (map.containsKey("ID_CARD")) {
IcResiUserDTO dto = new IcResiUserDTO();
dto.setCustomerId(tokenDto.getCustomerId());
dto.setIdCard(map.get("ID_CARD"));
IcResiUserDTO userDTO = baseDao.getResiUser(dto);
if (null != userDTO && null != userDTO.getIdCard()) {
throw new RenException("修改居民信息失败,身份证号已存在!");
}
}
//2021.11.25 end
resiUserId = map.get("ID");
}
}

13
epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml

@ -271,6 +271,19 @@
AND IC_RESI_USER = #{userId}
</if>
</select>
<select id="getResiUser" resultType="com.epmet.dto.IcResiUserDTO">
SELECT
id,
`name`,
id_card,
mobile
FROM
ic_resi_user
WHERE
del_flag = '0'
AND customer_id = #{customerId}
AND id_card = #{idCard}
</select>
<select id="selectDemandUsers" parameterType="map" resultType="com.epmet.dto.result.DemandUserResDTO">

Loading…
Cancel
Save