Browse Source

代码结构调整暂存

dev
jianjun 4 years ago
parent
commit
c0828a645c
  1. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/CustomerFormResultDTO.java
  2. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java
  3. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItemResult.java
  4. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItemResult2.java
  5. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/OperCustomizeOpenFeignClient.java
  6. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/fallback/OperCustomizeOpenFeignClientFallback.java
  7. 6
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java
  8. 8
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java
  9. 6
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormService.java
  10. 27
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java
  11. 8
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml
  12. 177
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java
  13. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java
  14. 23
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java
  15. 6
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java
  16. 6
      epmet-user/epmet-user-server/src/test/java/com/epmet/epmetuser/test/IcResiUserControllerTest.java

2
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/CustomerFormResultDTO.java

@ -27,7 +27,7 @@ public class CustomerFormResultDTO implements Serializable {
/** /**
* 表单项 * 表单项
*/ */
private List<FormItem> itemList; private List<FormItemResult> itemList;
/** /**
* 表单分组 * 表单分组

2
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java

@ -42,6 +42,6 @@ public class FormGroupDTO implements Serializable {
/** /**
* 分组里面的组件 * 分组里面的组件
*/ */
private List<FormItem2> itemList; private List<FormItemResult2> itemList;
} }

2
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem.java → epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItemResult.java

@ -12,7 +12,7 @@ import java.util.List;
* @Date 2021/10/26 2:15 下午 * @Date 2021/10/26 2:15 下午
*/ */
@Data @Data
public class FormItem implements Serializable { public class FormItemResult implements Serializable {
private static final long serialVersionUID = 7443085469505238040L; private static final long serialVersionUID = 7443085469505238040L;
/** /**

2
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem2.java → epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItemResult2.java

@ -12,7 +12,7 @@ import java.util.List;
* @Date 2021/10/26 4:29 下午 * @Date 2021/10/26 4:29 下午
*/ */
@Data @Data
public class FormItem2 implements Serializable { public class FormItemResult2 implements Serializable {
private static final long serialVersionUID = -7571266621687396261L; private static final long serialVersionUID = -7571266621687396261L;
/** /**
* 父项ID * 父项ID

2
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/OperCustomizeOpenFeignClient.java

@ -91,7 +91,7 @@ public interface OperCustomizeOpenFeignClient {
* @date 2021.10.28 15:19:59 * @date 2021.10.28 15:19:59
*/ */
@PostMapping("/oper/customize/icform/items") @PostMapping("/oper/customize/icform/items")
Result<List<FormItem>> listItems(@RequestBody CustomerFormQueryDTO formDto); Result<List<FormItemResult>> listItems(@RequestBody CustomerFormQueryDTO formDto);
/** /**
* @Author sun * @Author sun

2
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/fallback/OperCustomizeOpenFeignClientFallback.java

@ -73,7 +73,7 @@ public class OperCustomizeOpenFeignClientFallback implements OperCustomizeOpenFe
} }
@Override @Override
public Result<List<FormItem>> listItems(CustomerFormQueryDTO formDto) { public Result<List<FormItemResult>> listItems(CustomerFormQueryDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.OPER_CUSTOMIZE_SERVER, "listItems", formDto); return ModuleUtils.feignConError(ServiceConstant.OPER_CUSTOMIZE_SERVER, "listItems", formDto);
} }

6
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java

@ -187,9 +187,9 @@ public class IcFormController {
* @date 2021.10.28 15:19:59 * @date 2021.10.28 15:19:59
*/ */
@PostMapping("items") @PostMapping("items")
public Result<List<FormItem>> listItems(@LoginUser TokenDto tokenDto, @RequestBody CustomerFormQueryDTO formDto) { public Result<List<FormItemResult>> listItems(@LoginUser TokenDto tokenDto, @RequestBody CustomerFormQueryDTO formDto) {
ValidatorUtils.validateEntity(formDto, CustomerFormQueryDTO.GetFormInfoGroup.class); ValidatorUtils.validateEntity(formDto, CustomerFormQueryDTO.GetFormInfoGroup.class);
List<FormItem> rst = icFormService.listItems(tokenDto.getCustomerId(), formDto.getFormCode()); List<FormItemResult> rst = icFormService.listItems(tokenDto.getCustomerId(), formDto.getFormCode());
return new Result<List<FormItem>>().ok(rst); return new Result<List<FormItemResult>>().ok(rst);
} }
} }

8
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java

@ -20,7 +20,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.result.CustomerFormResultDTO; import com.epmet.dto.result.CustomerFormResultDTO;
import com.epmet.dto.result.FormGroupDTO; import com.epmet.dto.result.FormGroupDTO;
import com.epmet.dto.result.FormItem; import com.epmet.dto.result.FormItemResult;
import com.epmet.dto.result.OptionDTO; import com.epmet.dto.result.OptionDTO;
import com.epmet.entity.IcFormEntity; import com.epmet.entity.IcFormEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -47,9 +47,9 @@ public interface IcFormDao extends BaseDao<IcFormEntity> {
*/ */
CustomerFormResultDTO selectByCode(@Param("customerId") String customerId, @Param("formCode") String formCode); CustomerFormResultDTO selectByCode(@Param("customerId") String customerId, @Param("formCode") String formCode);
List<FormItem> selectItemList(String formId, Boolean dynamic); List<FormItemResult> selectItemList(String formId, Boolean dynamic);
List<FormItem> selectItemListByGroupId(String groupId); List<FormItemResult> selectItemListByGroupId(String groupId);
List<OptionDTO> selectListOption(String itemId); List<OptionDTO> selectListOption(String itemId);
List<FormGroupDTO> selectListGroup(String formId); List<FormGroupDTO> selectListGroup(String formId);
@ -64,5 +64,5 @@ public interface IcFormDao extends BaseDao<IcFormEntity> {
* @author wxz * @author wxz
* @date 2021.10.28 16:43:00 * @date 2021.10.28 16:43:00
*/ */
List<FormItem> listItems(@Param("formId") String formId); List<FormItemResult> listItems(@Param("formId") String formId);
} }

6
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormService.java

@ -22,7 +22,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IcFormDTO; import com.epmet.dto.IcFormDTO;
import com.epmet.dto.form.CustomerFormQueryDTO; import com.epmet.dto.form.CustomerFormQueryDTO;
import com.epmet.dto.result.CustomerFormResultDTO; import com.epmet.dto.result.CustomerFormResultDTO;
import com.epmet.dto.result.FormItem; import com.epmet.dto.result.FormItemResult;
import com.epmet.entity.IcFormEntity; import com.epmet.entity.IcFormEntity;
import java.util.List; import java.util.List;
@ -115,5 +115,5 @@ public interface IcFormService extends BaseService<IcFormEntity> {
* @author wxz * @author wxz
* @date 2021.10.27 17:41:59 * @date 2021.10.27 17:41:59
*/ */
List<FormItem> listItems(String customerId, String formCode); List<FormItemResult> listItems(String customerId, String formCode);
} }

27
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java

@ -17,9 +17,7 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.TypeReference;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -35,21 +33,18 @@ import com.epmet.dto.IcFormDTO;
import com.epmet.dto.form.CustomerFormQueryDTO; import com.epmet.dto.form.CustomerFormQueryDTO;
import com.epmet.dto.result.CustomerFormResultDTO; import com.epmet.dto.result.CustomerFormResultDTO;
import com.epmet.dto.result.FormGroupDTO; import com.epmet.dto.result.FormGroupDTO;
import com.epmet.dto.result.FormItem; import com.epmet.dto.result.FormItemResult;
import com.epmet.entity.IcFormEntity; import com.epmet.entity.IcFormEntity;
import com.epmet.redis.CustomerFootBarRedis; import com.epmet.redis.CustomerFootBarRedis;
import com.epmet.service.IcFormService; import com.epmet.service.IcFormService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional;
/** /**
* 配置表单 * 配置表单
@ -61,7 +56,7 @@ import java.util.Optional;
public class IcFormServiceImpl extends BaseServiceImpl<IcFormDao, IcFormEntity> implements IcFormService { public class IcFormServiceImpl extends BaseServiceImpl<IcFormDao, IcFormEntity> implements IcFormService {
@Autowired @Autowired
private CustomerFootBarRedis customerFootBarRedis; private CustomerFootBarRedis customerFootBarRedis;
@Autowired @Autowired
private RedisUtils redisUtils; private RedisUtils redisUtils;
@ -135,7 +130,7 @@ public class IcFormServiceImpl extends BaseServiceImpl<IcFormDao, IcFormEntity>
if (null == resultDTO) { if (null == resultDTO) {
throw new RenException(EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getCode(),EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getMsg()); throw new RenException(EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getCode(),EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getMsg());
} }
List<FormItem> itemList=baseDao.selectItemList(resultDTO.getFormId(),formDto.getDynamic()); List<FormItemResult> itemList=baseDao.selectItemList(resultDTO.getFormId(),formDto.getDynamic());
List<FormGroupDTO> groupList=baseDao.selectListGroup(resultDTO.getFormId()); List<FormGroupDTO> groupList=baseDao.selectListGroup(resultDTO.getFormId());
resultDTO.setItemList(itemList); resultDTO.setItemList(itemList);
resultDTO.setGroupList(groupList); resultDTO.setGroupList(groupList);
@ -144,13 +139,13 @@ public class IcFormServiceImpl extends BaseServiceImpl<IcFormDao, IcFormEntity>
} }
@Override @Override
public List<FormItem> listItems(String customerId, String formCode) { public List<FormItemResult> listItems(String customerId, String formCode) {
// 从redis取 // 从redis取
String icFormItemsKey = RedisKeys.getIcFormItemsKey(customerId, formCode); String icFormItemsKey = RedisKeys.getIcFormItemsKey(customerId, formCode);
Object objValue = redisUtils.get(icFormItemsKey); Object objValue = redisUtils.get(icFormItemsKey);
if (objValue != null) { if (objValue != null) {
return ((JSONArray) objValue).toJavaList(FormItem.class); return ((JSONArray) objValue).toJavaList(FormItemResult.class);
//return JSON.parseObject((String) objValue, type); //return JSON.parseObject((String) objValue, type);
} }
@ -160,14 +155,14 @@ public class IcFormServiceImpl extends BaseServiceImpl<IcFormDao, IcFormEntity>
throw new RenException(EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getCode(),EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getMsg()); throw new RenException(EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getCode(),EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getMsg());
} }
List<FormItem> formItems = baseDao.listItems(formResultDto.getFormId()); List<FormItemResult> formItemResults = baseDao.listItems(formResultDto.getFormId());
formItems.forEach(i -> { formItemResults.forEach(i -> {
i.setOptions(baseDao.selectListOption(i.getItemId())); i.setOptions(baseDao.selectListOption(i.getItemId()));
}); });
// 缓存 // 缓存
redisUtils.set(icFormItemsKey, formItems); redisUtils.set(icFormItemsKey, formItemResults);
return formItems; return formItemResults;
} }
} }

8
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml

@ -17,7 +17,7 @@
</select> </select>
<resultMap id="FormItemMap1" type="com.epmet.dto.result.FormItem"> <resultMap id="FormItemMap1" type="com.epmet.dto.result.FormItemResult">
<id property="itemId" column="item_id" ></id> <id property="itemId" column="item_id" ></id>
<result property="tableName" column="table_name"/> <result property="tableName" column="table_name"/>
<result property="parentItemId" column="PARENT_ITEM_ID"/> <result property="parentItemId" column="PARENT_ITEM_ID"/>
@ -123,13 +123,13 @@
<result property="sort" column="sort"/> <result property="sort" column="sort"/>
<result property="supportAdd" column="SUPPORT_ADD"/> <result property="supportAdd" column="SUPPORT_ADD"/>
<result property="tableName" column="TABLE_NAME"/> <result property="tableName" column="TABLE_NAME"/>
<collection property="itemList" ofType="com.epmet.dto.result.FormItem2" <collection property="itemList" ofType="com.epmet.dto.result.FormItemResult2"
column="group_id" select="com.epmet.dao.IcFormDao.selectItemListByGroupId"> column="group_id" select="com.epmet.dao.IcFormDao.selectItemListByGroupId">
</collection> </collection>
</resultMap> </resultMap>
<resultMap id="FormItemMap2" type="com.epmet.dto.result.FormItem2"> <resultMap id="FormItemMap2" type="com.epmet.dto.result.FormItemResult2">
<id property="itemId" column="item_id" ></id> <id property="itemId" column="item_id" ></id>
<result property="tableName" column="table_name"/> <result property="tableName" column="table_name"/>
<result property="parentItemId" column="PARENT_ITEM_ID"/> <result property="parentItemId" column="PARENT_ITEM_ID"/>
@ -210,7 +210,7 @@
g.SORT ASC g.SORT ASC
</select> </select>
<select id="listItems" resultType="com.epmet.dto.result.FormItem"> <select id="listItems" resultType="com.epmet.dto.result.FormItemResult">
SELECT fi.ID AS item_id, SELECT fi.ID AS item_id,
case case
when g.TABLE_NAME is null or g.TABLE_NAME = '' then 'ic_resi_user' when g.TABLE_NAME is null or g.TABLE_NAME = '' then 'ic_resi_user'

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

@ -29,7 +29,6 @@ import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.ExceptionUtils; import com.epmet.commons.tools.exception.ExceptionUtils;
@ -183,7 +182,7 @@ public class IcResiUserController {
@RequestMapping(value = "/exportExcel2") @RequestMapping(value = "/exportExcel2")
public void exportExcel(@RequestHeader String customerId,@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception { public void exportExcel(@RequestHeader String customerId,@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception {
CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, tokenDto.getUserId()); CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, tokenDto.getUserId());
String staffOrgPath = StrConstant.EPMETY_STR; String staffOrgPath = null;
if (StringUtils.isNotBlank(staffInfoCacheResult.getAgencyPIds()) && !NumConstant.ZERO_STR.equals(staffInfoCacheResult.getAgencyPIds())) { if (StringUtils.isNotBlank(staffInfoCacheResult.getAgencyPIds()) && !NumConstant.ZERO_STR.equals(staffInfoCacheResult.getAgencyPIds())) {
staffOrgPath = staffInfoCacheResult.getAgencyPIds().concat(":").concat(staffInfoCacheResult.getAgencyId()); staffOrgPath = staffInfoCacheResult.getAgencyPIds().concat(":").concat(staffInfoCacheResult.getAgencyId());
}else{ }else{
@ -191,53 +190,9 @@ public class IcResiUserController {
} }
pageFormDTO.setCustomerId(customerId); pageFormDTO.setCustomerId(customerId);
pageFormDTO.setPageFlag(false); pageFormDTO.setPageFlag(false);
CustomerFormResultDTO resiFormItems = getResiFormItems(pageFormDTO.getCustomerId()); CustomerFormResultDTO resiFormItems = getResiFormAddItems(pageFormDTO.getCustomerId());
Map<String, Map<String, FormItem>> otherSheetItems = new HashMap<>(); Map<String, Map<String, FormItemResult>> otherSheetItems = buildItemMap(resiFormItems);
//主表的
for (FormItem formItem : resiFormItems.getItemList()) {
if (StringUtils.isBlank(formItem.getColumnName())) {
continue;
}
Map<String, FormItem> itemMap = otherSheetItems.getOrDefault(formItem.getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(formItem.getTableName(), itemMap);
if (formItem.getItemType().equals("checkbox") || formItem.getItemType().equals("select") || formItem.getItemType().equals("radio")) {
itemMap.put(formItem.getColumnName().concat(formItem.getColumnNum() == 0 ? "" : formItem.getColumnNum().toString()), formItem);
}
if (formItem.getChildGroup() != null) {
itemMap = otherSheetItems.getOrDefault(formItem.getChildGroup().getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(formItem.getChildGroup().getTableName(), itemMap);
for (FormItem2 item2 : formItem.getChildGroup().getItemList()) {
if (StringUtils.isBlank(item2.getColumnName())) {
continue;
}
if ("checkbox".equals(item2.getItemType()) || "select".equals(item2.getItemType()) || "radio".equals(item2.getItemType())) {
itemMap.put(item2.getColumnName().concat(item2.getColumnNum() == 0 ? "" : item2.getColumnNum().toString()), ConvertUtils.sourceToTarget(item2, FormItem.class));
}
}
}
}
//其他sheet
for (FormGroupDTO groupItem : resiFormItems.getGroupList()) {
if (groupItem.getItemList() == null) {
continue;
}
Map<String, FormItem> itemMap = otherSheetItems.getOrDefault(groupItem.getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(groupItem.getTableName(), itemMap);
for (FormItem2 formItem2 : groupItem.getItemList()) {
if (StringUtils.isBlank(formItem2.getColumnName())) {
continue;
}
if ("checkbox".equals(formItem2.getItemType()) || "select".equals(formItem2.getItemType()) || "radio".equals(formItem2.getItemType())) {
itemMap.put(formItem2.getColumnName().concat(formItem2.getColumnNum() == 0 ? "" : formItem2.getColumnNum().toString()), ConvertUtils.sourceToTarget(formItem2, FormItem.class));
}
}
}
Map<String, Map<String, Object>> resiMainList = icResiUserService.getDataForExport(otherSheetItems.get(BASE_TABLE_NAME),new HashMap<>(), pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), BASE_TABLE_NAME, pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath); Map<String, Map<String, Object>> resiMainList = icResiUserService.getDataForExport(otherSheetItems.get(BASE_TABLE_NAME),new HashMap<>(), pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), BASE_TABLE_NAME, pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath);
//resiMainList = (List<Map<String, Object>>)JSON.parse("[{\"IS_BDHJ\":\"1\",\"IS_SPECIAL\":\"1\",\"IS_XFRY\":\"0\",\"REMARKS\":\"beizhu\",\"IS_PARTY\":\"1\",\"icResiUserId\":\"yzmtest2\",\"HOME_ID\":\"中海国际社区一里城1号楼1单元101\",\"HOUSE_TYPE\":\"平房\",\"UNIT_NAME\":\"1单元\",\"GRID_ID\":\"市北区-市北区第三网格3\",\"IS_DB\":\"0\",\"GENDER\":\"男\",\"BIRTHDAY\":\"2021-10-04\",\"IS_VETERANS\":\"0\",\"IS_MB\":\"0\",\"IS_UNEMPLOYED\":\"0\",\"DEMAND_NAME\":null,\"IS_KC\":\"0\",\"IS_ENSURE_HOUSE\":\"0\",\"IS_SD\":\"0\",\"NAME\":\"尹作梅\",\"RDSJ\":null,\"IS_VOLUNTEER\":\"1\",\"GRID_ID_VALUE\":\"e74829ffc43d5470eba6b5e060c11e63\",\"IS_SZ\":\"0\",\"IS_CJ\":\"0\",\"HOME_ID_VALUE\":\"200\",\"DEMAND_CATEGORY_IDS\":null,\"VILLAGE_NAME\":\"中海国际社区一里城\",\"IS_DBH\":\"0\",\"IS_SN\":\"0\",\"BUILD_NAME\":\"1号楼\",\"IS_YLFN\":\"0\",\"IS_UNITED_FRONT\":\"0\",\"ID_CARD\":\"371325199310260529\",\"MOBILE\":\"15764229697\",\"IS_OLD_PEOPLE\":\"0\",\"DOOR_NAME\":\"101\"},{\"IS_SPECIAL\":\"1\",\"IS_XFRY\":\"0\",\"REMARKS\":\"beizhu\",\"IS_PARTY\":\"1\",\"icResiUserId\":\"yzmtest\",\"HOME_ID\":\"中海国际社区一里城1号楼1单元101\",\"HOUSE_TYPE\":\"平房\",\"UNIT_NAME\":\"1单元\",\"GRID_ID\":\"市北区-市北区第三网格3\",\"IS_DB\":\"0\",\"GENDER\":\"男\",\"BIRTHDAY\":\"2021-10-04\",\"IS_VETERANS\":\"0\",\"IS_MB\":\"0\",\"IS_UNEMPLOYED\":\"0\",\"DEMAND_NAME\":\"心理咨询\",\"IS_KC\":\"0\",\"IS_ENSURE_HOUSE\":\"0\",\"IS_SD\":\"0\",\"NAME\":\"尹作梅\",\"RDSJ\":\"2021-10-28 00:00:00\",\"IS_VOLUNTEER\":\"1\",\"GRID_ID_VALUE\":\"e74829ffc43d5470eba6b5e060c11e63\",\"IS_SZ\":\"0\",\"IS_CJ\":\"0\",\"HOME_ID_VALUE\":\"200\",\"DEMAND_CATEGORY_IDS\":\"10180002\",\"VILLAGE_NAME\":\"中海国际社区一里城\",\"IS_DBH\":\"0\",\"IS_SN\":\"0\",\"BUILD_NAME\":\"1号楼\",\"IS_YLFN\":\"0\",\"IS_UNITED_FRONT\":\"0\",\"ID_CARD\":\"371325199310260529\",\"MOBILE\":\"15764229697\",\"IS_OLD_PEOPLE\":\"0\",\"DOOR_NAME\":\"101\"}]"); //resiMainList = (List<Map<String, Object>>)JSON.parse("[{\"IS_BDHJ\":\"1\",\"IS_SPECIAL\":\"1\",\"IS_XFRY\":\"0\",\"REMARKS\":\"beizhu\",\"IS_PARTY\":\"1\",\"icResiUserId\":\"yzmtest2\",\"HOME_ID\":\"中海国际社区一里城1号楼1单元101\",\"HOUSE_TYPE\":\"平房\",\"UNIT_NAME\":\"1单元\",\"GRID_ID\":\"市北区-市北区第三网格3\",\"IS_DB\":\"0\",\"GENDER\":\"男\",\"BIRTHDAY\":\"2021-10-04\",\"IS_VETERANS\":\"0\",\"IS_MB\":\"0\",\"IS_UNEMPLOYED\":\"0\",\"DEMAND_NAME\":null,\"IS_KC\":\"0\",\"IS_ENSURE_HOUSE\":\"0\",\"IS_SD\":\"0\",\"NAME\":\"尹作梅\",\"RDSJ\":null,\"IS_VOLUNTEER\":\"1\",\"GRID_ID_VALUE\":\"e74829ffc43d5470eba6b5e060c11e63\",\"IS_SZ\":\"0\",\"IS_CJ\":\"0\",\"HOME_ID_VALUE\":\"200\",\"DEMAND_CATEGORY_IDS\":null,\"VILLAGE_NAME\":\"中海国际社区一里城\",\"IS_DBH\":\"0\",\"IS_SN\":\"0\",\"BUILD_NAME\":\"1号楼\",\"IS_YLFN\":\"0\",\"IS_UNITED_FRONT\":\"0\",\"ID_CARD\":\"371325199310260529\",\"MOBILE\":\"15764229697\",\"IS_OLD_PEOPLE\":\"0\",\"DOOR_NAME\":\"101\"},{\"IS_SPECIAL\":\"1\",\"IS_XFRY\":\"0\",\"REMARKS\":\"beizhu\",\"IS_PARTY\":\"1\",\"icResiUserId\":\"yzmtest\",\"HOME_ID\":\"中海国际社区一里城1号楼1单元101\",\"HOUSE_TYPE\":\"平房\",\"UNIT_NAME\":\"1单元\",\"GRID_ID\":\"市北区-市北区第三网格3\",\"IS_DB\":\"0\",\"GENDER\":\"男\",\"BIRTHDAY\":\"2021-10-04\",\"IS_VETERANS\":\"0\",\"IS_MB\":\"0\",\"IS_UNEMPLOYED\":\"0\",\"DEMAND_NAME\":\"心理咨询\",\"IS_KC\":\"0\",\"IS_ENSURE_HOUSE\":\"0\",\"IS_SD\":\"0\",\"NAME\":\"尹作梅\",\"RDSJ\":\"2021-10-28 00:00:00\",\"IS_VOLUNTEER\":\"1\",\"GRID_ID_VALUE\":\"e74829ffc43d5470eba6b5e060c11e63\",\"IS_SZ\":\"0\",\"IS_CJ\":\"0\",\"HOME_ID_VALUE\":\"200\",\"DEMAND_CATEGORY_IDS\":\"10180002\",\"VILLAGE_NAME\":\"中海国际社区一里城\",\"IS_DBH\":\"0\",\"IS_SN\":\"0\",\"BUILD_NAME\":\"1号楼\",\"IS_YLFN\":\"0\",\"IS_UNITED_FRONT\":\"0\",\"ID_CARD\":\"371325199310260529\",\"MOBILE\":\"15764229697\",\"IS_OLD_PEOPLE\":\"0\",\"DOOR_NAME\":\"101\"}]");
@ -251,11 +206,11 @@ public class IcResiUserController {
System.out.println("===resiMainList==="+" "+JSON.toJSONString(resiMainList.values())); System.out.println("===resiMainList==="+" "+JSON.toJSONString(resiMainList.values()));
sheetMap.put(0, mapData); sheetMap.put(0, mapData);
AtomicInteger n = new AtomicInteger(); AtomicInteger n = new AtomicInteger();
for (FormItem item : resiFormItems.getItemList()) { for (FormItemResult item : resiFormItems.getItemList()) {
if (item.getChildGroup() != null) { if (item.getChildGroup() != null) {
if (!item.getChildGroup().getTableName().equals(BASE_TABLE_NAME)) { if (!item.getChildGroup().getTableName().equals(BASE_TABLE_NAME)) {
Map<String, FormItem> itemMap1 = otherSheetItems.get(item.getChildGroup().getTableName()); Map<String, FormItemResult> itemMap1 = otherSheetItems.get(item.getChildGroup().getTableName());
Map<String, Map<String, Object>> resiChildMap = icResiUserService.getDataForExport(itemMap1,resiMainList, pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), item.getChildGroup().getTableName(), pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath); Map<String, Map<String, Object>> resiChildMap = icResiUserService.getDataForExport(itemMap1,resiMainList, pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), item.getChildGroup().getTableName(), pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath);
//resiChildMap.forEach((key, value) -> value.putAll(resiMainList.get(key))); //resiChildMap.forEach((key, value) -> value.putAll(resiMainList.get(key)));
@ -274,8 +229,9 @@ public class IcResiUserController {
@RequestMapping(value = "/exportExcel") @RequestMapping(value = "/exportExcel")
public void exportExcelByEasyExcel(@RequestHeader String customerId,@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception { public void exportExcelByEasyExcel(@RequestHeader String customerId,@LoginUser TokenDto tokenDto, @RequestBody IcResiUserPageFormDTO pageFormDTO, HttpServletResponse response) throws Exception {
//tokenDto.setUserId("9e37adcce6472152e6508a19d3683e02");
CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, tokenDto.getUserId()); CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(customerId, tokenDto.getUserId());
String staffOrgPath = StrConstant.EPMETY_STR; String staffOrgPath = null;
if (StringUtils.isNotBlank(staffInfoCacheResult.getAgencyPIds()) && !NumConstant.ZERO_STR.equals(staffInfoCacheResult.getAgencyPIds())) { if (StringUtils.isNotBlank(staffInfoCacheResult.getAgencyPIds()) && !NumConstant.ZERO_STR.equals(staffInfoCacheResult.getAgencyPIds())) {
staffOrgPath = staffInfoCacheResult.getAgencyPIds().concat(":").concat(staffInfoCacheResult.getAgencyId()); staffOrgPath = staffInfoCacheResult.getAgencyPIds().concat(":").concat(staffInfoCacheResult.getAgencyId());
}else{ }else{
@ -283,53 +239,12 @@ public class IcResiUserController {
} }
pageFormDTO.setCustomerId(customerId); pageFormDTO.setCustomerId(customerId);
pageFormDTO.setPageFlag(false); pageFormDTO.setPageFlag(false);
CustomerFormResultDTO resiFormItems = getResiFormItems(pageFormDTO.getCustomerId()); CustomerFormResultDTO resiFormItems = getResiFormAddItems(pageFormDTO.getCustomerId());
Map<String, Map<String, FormItemResult>> otherSheetItems = buildItemMap(resiFormItems);
Map<String, Map<String, FormItem>> otherSheetItems = new HashMap<>();
//主表的
for (FormItem formItem : resiFormItems.getItemList()) {
if (StringUtils.isBlank(formItem.getColumnName())) {
continue;
}
Map<String, FormItem> itemMap = otherSheetItems.getOrDefault(formItem.getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(formItem.getTableName(), itemMap);
if (formItem.getItemType().equals("checkbox") || formItem.getItemType().equals("select") || formItem.getItemType().equals("radio")) {
itemMap.put(formItem.getColumnName().concat(formItem.getColumnNum() == 0 ? "" : formItem.getColumnNum().toString()), formItem);
}
if (formItem.getChildGroup() != null) {
itemMap = otherSheetItems.getOrDefault(formItem.getChildGroup().getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(formItem.getChildGroup().getTableName(), itemMap);
for (FormItem2 item2 : formItem.getChildGroup().getItemList()) {
if (StringUtils.isBlank(item2.getColumnName())) {
continue;
}
if ("checkbox".equals(item2.getItemType()) || "select".equals(item2.getItemType()) || "radio".equals(item2.getItemType())) {
itemMap.put(item2.getColumnName().concat(item2.getColumnNum() == 0 ? "" : item2.getColumnNum().toString()), ConvertUtils.sourceToTarget(item2, FormItem.class));
}
}
} /*List<FormItemResult> resiFormAllItems = getResiFormAllItems(pageFormDTO.getCustomerId());
} resiFormAllItems.stream().collect(Collectors.groupingBy(e ->e.get));*/
//其他sheet
for (FormGroupDTO groupItem : resiFormItems.getGroupList()) {
if (groupItem.getItemList() == null) {
continue;
}
Map<String, FormItem> itemMap = otherSheetItems.getOrDefault(groupItem.getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(groupItem.getTableName(), itemMap);
for (FormItem2 formItem2 : groupItem.getItemList()) {
if (StringUtils.isBlank(formItem2.getColumnName())) {
continue;
}
if ("checkbox".equals(formItem2.getItemType()) || "select".equals(formItem2.getItemType()) || "radio".equals(formItem2.getItemType())) {
itemMap.put(formItem2.getColumnName().concat(formItem2.getColumnNum() == 0 ? "" : formItem2.getColumnNum().toString()), ConvertUtils.sourceToTarget(formItem2, FormItem.class));
}
}
}
Map<String, Map<String, Object>> resiMainList = icResiUserService.getDataForExport(otherSheetItems.get(BASE_TABLE_NAME),new HashMap<>(), pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), BASE_TABLE_NAME, pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath); Map<String, Map<String, Object>> resiMainList = icResiUserService.getDataForExport(otherSheetItems.get(BASE_TABLE_NAME),new HashMap<>(), pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), BASE_TABLE_NAME, pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath);
@ -346,11 +261,11 @@ public class IcResiUserController {
//======================================= //=======================================
AtomicInteger n = new AtomicInteger(); AtomicInteger n = new AtomicInteger();
for (FormItem item : resiFormItems.getItemList()) { for (FormItemResult item : resiFormItems.getItemList()) {
if (item.getChildGroup() != null) { if (item.getChildGroup() != null) {
if (!item.getChildGroup().getTableName().equals(BASE_TABLE_NAME)) { if (!item.getChildGroup().getTableName().equals(BASE_TABLE_NAME)) {
Map<String, FormItem> itemMap1 = otherSheetItems.get(item.getChildGroup().getTableName()); Map<String, FormItemResult> itemMap1 = otherSheetItems.get(item.getChildGroup().getTableName());
Map<String, Map<String, Object>> resiChildMap = icResiUserService.getDataForExport(itemMap1,resiMainList, pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), item.getChildGroup().getTableName(), pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath); Map<String, Map<String, Object>> resiChildMap = icResiUserService.getDataForExport(itemMap1,resiMainList, pageFormDTO.getCustomerId(), pageFormDTO.getFormCode(), item.getChildGroup().getTableName(), pageFormDTO.getConditions(),staffInfoCacheResult.getAgencyId(),staffOrgPath);
//resiChildMap.forEach((key, value) -> value.putAll(resiMainList.get(key))); //resiChildMap.forEach((key, value) -> value.putAll(resiMainList.get(key)));
@ -365,6 +280,57 @@ public class IcResiUserController {
excelWriter.finish(); excelWriter.finish();
} }
@NotNull
private Map<String, Map<String, FormItemResult>> buildItemMap(CustomerFormResultDTO resiFormItems) {
Map<String, Map<String, FormItemResult>> otherSheetItems = new HashMap<>();
//主表的
for (FormItemResult formItemResult : resiFormItems.getItemList()) {
if (StringUtils.isBlank(formItemResult.getColumnName())) {
continue;
}
Map<String, FormItemResult> itemMap = otherSheetItems.getOrDefault(formItemResult.getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(formItemResult.getTableName(), itemMap);
if (formItemResult.getItemType().equals("checkbox") || formItemResult.getItemType().equals("select") || formItemResult.getItemType().equals("radio")) {
itemMap.put(formItemResult.getColumnName().concat(formItemResult.getColumnNum() == 0 ? "" : formItemResult.getColumnNum().toString()), formItemResult);
}
if (formItemResult.getChildGroup() != null) {
itemMap = otherSheetItems.getOrDefault(formItemResult.getChildGroup().getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(formItemResult.getChildGroup().getTableName(), itemMap);
for (FormItemResult2 item2 : formItemResult.getChildGroup().getItemList()) {
if (StringUtils.isBlank(item2.getColumnName())) {
continue;
}
if ("checkbox".equals(item2.getItemType()) || "select".equals(item2.getItemType()) || "radio".equals(item2.getItemType())) {
itemMap.put(item2.getColumnName().concat(item2.getColumnNum() == 0 ? "" : item2.getColumnNum().toString()), ConvertUtils.sourceToTarget(item2, FormItemResult.class));
}
}
}
}
//其他sheet
for (FormGroupDTO groupItem : resiFormItems.getGroupList()) {
if (groupItem.getItemList() == null) {
continue;
}
Map<String, FormItemResult> itemMap = otherSheetItems.getOrDefault(groupItem.getTableName(), new HashMap<>());
otherSheetItems.putIfAbsent(groupItem.getTableName(), itemMap);
for (FormItemResult2 formItemResult2 : groupItem.getItemList()) {
if (StringUtils.isBlank(formItemResult2.getColumnName())) {
continue;
}
if ("checkbox".equals(formItemResult2.getItemType()) || "select".equals(formItemResult2.getItemType()) || "radio".equals(formItemResult2.getItemType())) {
itemMap.put(formItemResult2.getColumnName().concat(formItemResult2.getColumnNum() == 0 ? "" : formItemResult2.getColumnNum().toString()), ConvertUtils.sourceToTarget(formItemResult2, FormItemResult.class));
}
}
}
return otherSheetItems;
}
private static OutputStream getOutputStream(String fileName, HttpServletResponse response) throws Exception { private static OutputStream getOutputStream(String fileName, HttpServletResponse response) throws Exception {
fileName = URLEncoder.encode(fileName, "UTF-8"); fileName = URLEncoder.encode(fileName, "UTF-8");
response.setContentType("application/vnd.ms-excel"); response.setContentType("application/vnd.ms-excel");
@ -449,7 +415,7 @@ public class IcResiUserController {
} }
@NotNull @NotNull
private CustomerFormResultDTO getResiFormItems(String customerId) { private CustomerFormResultDTO getResiFormAddItems(String customerId) {
CustomerFormQueryDTO queryDTO = new CustomerFormQueryDTO(); CustomerFormQueryDTO queryDTO = new CustomerFormQueryDTO();
queryDTO.setFormCode("resi_base_info"); queryDTO.setFormCode("resi_base_info");
queryDTO.setCustomerId(customerId); queryDTO.setCustomerId(customerId);
@ -461,6 +427,19 @@ public class IcResiUserController {
return resultForm.getData(); return resultForm.getData();
} }
@NotNull
private List<FormItemResult> getResiFormAllItems(String customerId) {
CustomerFormQueryDTO queryDTO = new CustomerFormQueryDTO();
queryDTO.setFormCode("resi_base_info");
queryDTO.setCustomerId(customerId);
Result<List<FormItemResult>> resultForm = operCustomizeOpenFeignClient.listItems(queryDTO);
if (resultForm == null || !resultForm.success() || resultForm.getData() == null) {
throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode());
}
System.out.println(JSON.toJSONString(resultForm.getData()));
return resultForm.getData();
}
/** /**
* @Description 个人信息-家庭关系 * @Description 个人信息-家庭关系
* @Param formDTO * @Param formDTO

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java

@ -113,7 +113,7 @@ public interface IcResiUserService extends BaseService<IcResiUserEntity> {
* @param conditions * @param conditions
* @return * @return
*/ */
Map<String, Map<String, Object>> getDataForExport(Map<String, FormItem> itemList, Map<String, Map<String, Object>> resiMainList, String customerId, String formCode, String baseTableName, List<ResiUserQueryValueDTO> conditions,String currentStaffAgencyId, Map<String, Map<String, Object>> getDataForExport(Map<String, FormItemResult> itemList, Map<String, Map<String, Object>> resiMainList, String customerId, String formCode, String baseTableName, List<ResiUserQueryValueDTO> conditions,String currentStaffAgencyId,
String staffOrgPath); String staffOrgPath);
/** /**

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

@ -5,7 +5,6 @@ import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ExportParams;
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.EasyExcelFactory; import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.dto.result.OptionResultDTO; import com.epmet.commons.tools.dto.result.OptionResultDTO;
@ -21,7 +20,7 @@ import com.epmet.dto.form.AgencyIdFormDTO;
import com.epmet.dto.form.CustomerFormQueryDTO; import com.epmet.dto.form.CustomerFormQueryDTO;
import com.epmet.dto.form.HouseFormDTO; import com.epmet.dto.form.HouseFormDTO;
import com.epmet.dto.form.LoginUserDetailsFormDTO; import com.epmet.dto.form.LoginUserDetailsFormDTO;
import com.epmet.dto.result.FormItem; import com.epmet.dto.result.FormItemResult;
import com.epmet.dto.result.LoginUserDetailsResultDTO; import com.epmet.dto.result.LoginUserDetailsResultDTO;
import com.epmet.dto.result.OptionDTO; import com.epmet.dto.result.OptionDTO;
import com.epmet.entity.IcResiUserEntity; import com.epmet.entity.IcResiUserEntity;
@ -262,7 +261,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
Map<Integer, List<String>> headers = mergeHead(headList); Map<Integer, List<String>> headers = mergeHead(headList);
// 查询form相关信息 // 查询form相关信息
List<FormItem> customerItems = listFormItems(IMPORT_IC_RESI_FORM_CODE); List<FormItemResult> customerItems = listFormItems(IMPORT_IC_RESI_FORM_CODE);
// 清洗表头数据 // 清洗表头数据
Map<Integer, String> abandonedHeaders = washHeaders(headers, customerItems); Map<Integer, String> abandonedHeaders = washHeaders(headers, customerItems);
@ -271,7 +270,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
HashMap<String, List<Integer>> combinedHeaders = combineHeaders(headers); HashMap<String, List<Integer>> combinedHeaders = combineHeaders(headers);
// 得到客户配置item数据 // 得到客户配置item数据
Map<String, FormItem> formItemMap = customerItems.stream().collect( Map<String, FormItemResult> formItemMap = customerItems.stream().collect(
Collectors.toMap(formItem -> { Collectors.toMap(formItem -> {
String groupLabel = formItem.getGroupLabel(); String groupLabel = formItem.getGroupLabel();
String label = formItem.getLabel(); String label = formItem.getLabel();
@ -311,7 +310,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
Map<Integer, List<String>> headers = mergeHead(headList); Map<Integer, List<String>> headers = mergeHead(headList);
// 查询form相关信息 // 查询form相关信息
List<FormItem> customerItems = listFormItems(IMPORT_IC_RESI_FORM_CODE); List<FormItemResult> customerItems = listFormItems(IMPORT_IC_RESI_FORM_CODE);
// 清洗表头数据 // 清洗表头数据
Map<Integer, String> abandonedHeaders = washHeaders(headers, customerItems); Map<Integer, String> abandonedHeaders = washHeaders(headers, customerItems);
@ -320,7 +319,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
HashMap<String, List<Integer>> combinedHeaders = combineHeaders(headers); HashMap<String, List<Integer>> combinedHeaders = combineHeaders(headers);
// 得到客户配置item数据 // 得到客户配置item数据
Map<String, FormItem> formItemMap = customerItems.stream().collect( Map<String, FormItemResult> formItemMap = customerItems.stream().collect(
Collectors.toMap(formItem -> { Collectors.toMap(formItem -> {
String groupLabel = formItem.getGroupLabel(); String groupLabel = formItem.getGroupLabel();
String label = formItem.getLabel(); String label = formItem.getLabel();
@ -461,7 +460,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
// skipedRow.setInfo("信息已存在,跳过导入"); // skipedRow.setInfo("信息已存在,跳过导入");
// skipedRow.setTableName(targetTableName); // skipedRow.setTableName(targetTableName);
// skipedRows.get().get(targetTableName).add(skipedRow); // skipedRows.get().get(targetTableName).add(skipedRow);
// //
// continue; // continue;
//} //}
@ -603,10 +602,10 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
* @param formCode * @param formCode
* @return * @return
*/ */
private List<FormItem> listFormItems(String formCode) { private List<FormItemResult> listFormItems(String formCode) {
CustomerFormQueryDTO form = new CustomerFormQueryDTO(); CustomerFormQueryDTO form = new CustomerFormQueryDTO();
form.setFormCode(formCode); form.setFormCode(formCode);
Result<List<FormItem>> result = operCustomizeOpenFeignClient.listItems(form); Result<List<FormItemResult>> result = operCustomizeOpenFeignClient.listItems(form);
return getResultDataOrThrowsException(result, ServiceConstant.OPER_CUSTOMIZE_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【居民信息excel导入】查询表单相关信息失败"); return getResultDataOrThrowsException(result, ServiceConstant.OPER_CUSTOMIZE_SERVER, EpmetErrorCode.SERVER_ERROR.getCode(), "【居民信息excel导入】查询表单相关信息失败");
} }
@ -643,7 +642,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
* @author wxz * @author wxz
* @date 2021.10.28 21:07:12 * @date 2021.10.28 21:07:12
*/ */
private Map<Integer, String> washHeaders(Map<Integer, List<String>> headers, List<FormItem> items) { private Map<Integer, String> washHeaders(Map<Integer, List<String>> headers, List<FormItemResult> items) {
List<String> itemLabels = items.stream().map(i -> i.getLabel()).collect(Collectors.toList()); List<String> itemLabels = items.stream().map(i -> i.getLabel()).collect(Collectors.toList());
Map<Integer, String> abandonedHeaders = new HashMap<>(); Map<Integer, String> abandonedHeaders = new HashMap<>();
for (Map.Entry<Integer, List<String>> entry:headers.entrySet()) { for (Map.Entry<Integer, List<String>> entry:headers.entrySet()) {
@ -675,7 +674,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
* @param abandonedHeaders * @param abandonedHeaders
* @return * @return
*/ */
private Map<String, ColumnWrapper> convertExcelHeaders2DBColumnWrappers(Map<String, FormItem> formItemMap, Map<String, List<Integer>> combinedHeaders, private Map<String, ColumnWrapper> convertExcelHeaders2DBColumnWrappers(Map<String, FormItemResult> formItemMap, Map<String, List<Integer>> combinedHeaders,
List<Map<Integer, String>> datas, Map<Integer, String> abandonedHeaders) { List<Map<Integer, String>> datas, Map<Integer, String> abandonedHeaders) {
// HashMap<String, List<ColumnWrapper>> tables = new HashMap<>(); // HashMap<String, List<ColumnWrapper>> tables = new HashMap<>();
@ -684,7 +683,7 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res
for (Map.Entry<String, List<Integer>> entry : combinedHeaders.entrySet()) { for (Map.Entry<String, List<Integer>> entry : combinedHeaders.entrySet()) {
String combinedHeader = entry.getKey(); String combinedHeader = entry.getKey();
FormItem item = formItemMap.get(combinedHeader); FormItemResult item = formItemMap.get(combinedHeader);
if (item == null) { if (item == null) {
// 如果数据库中没有该项,可能是用户自己定义的项,忽略 // 如果数据库中没有该项,可能是用户自己定义的项,忽略

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

@ -621,7 +621,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi
* @return * @return
*/ */
@Override @Override
public Map<String, Map<String, Object>> getDataForExport(Map<String, FormItem> formItemMap, Map<String, Map<String, Object>> resiMainList, String customerId, String formCode, String baseTableName, List<ResiUserQueryValueDTO> conditions, public Map<String, Map<String, Object>> getDataForExport(Map<String, FormItemResult> formItemMap, Map<String, Map<String, Object>> resiMainList, String customerId, String formCode, String baseTableName, List<ResiUserQueryValueDTO> conditions,
String currentStaffAgencyId, String currentStaffAgencyId,
String staffOrgPath) { String staffOrgPath) {
List<Map<String, Object>> mapList = this.dynamicQuery(customerId, formCode, baseTableName, conditions,currentStaffAgencyId,staffOrgPath); List<Map<String, Object>> mapList = this.dynamicQuery(customerId, formCode, baseTableName, conditions,currentStaffAgencyId,staffOrgPath);
@ -647,9 +647,9 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi
return; return;
} }
result.put(resiId, map); result.put(resiId, map);
for (Map.Entry<String, FormItem> e : formItemMap.entrySet()) { for (Map.Entry<String, FormItemResult> e : formItemMap.entrySet()) {
String k = e.getKey(); String k = e.getKey();
FormItem v = e.getValue(); FormItemResult v = e.getValue();
Object temp = map.get(k); Object temp = map.get(k);
String vauleStr = temp == null ? "" : temp.toString(); String vauleStr = temp == null ? "" : temp.toString();

6
epmet-user/epmet-user-server/src/test/java/com/epmet/epmetuser/test/IcResiUserControllerTest.java

@ -11,7 +11,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.CustomerFormQueryDTO; import com.epmet.dto.form.CustomerFormQueryDTO;
import com.epmet.dto.result.CustomerFormResultDTO; import com.epmet.dto.result.CustomerFormResultDTO;
import com.epmet.dto.result.FormGroupDTO; import com.epmet.dto.result.FormGroupDTO;
import com.epmet.dto.result.FormItem; import com.epmet.dto.result.FormItemResult;
import com.epmet.feign.OperCustomizeOpenFeignClient; import com.epmet.feign.OperCustomizeOpenFeignClient;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
@ -75,7 +75,7 @@ public class IcResiUserControllerTest {
private Map<String,List<ExcelExportEntity>> buildHeaderByItem(CustomerFormResultDTO resultForm) { private Map<String,List<ExcelExportEntity>> buildHeaderByItem(CustomerFormResultDTO resultForm) {
//form中的itemlist 为一级表头 但是要排除每个item中含有childGroup的 //form中的itemlist 为一级表头 但是要排除每个item中含有childGroup的
List<FormItem> itemList = resultForm.getItemList(); List<FormItemResult> itemList = resultForm.getItemList();
List<FormGroupDTO> groupList = resultForm.getGroupList(); List<FormGroupDTO> groupList = resultForm.getGroupList();
Map<String,List<ExcelExportEntity>> everySheetHeaderMap = new LinkedHashMap<>(); Map<String,List<ExcelExportEntity>> everySheetHeaderMap = new LinkedHashMap<>();
@ -155,7 +155,7 @@ public class IcResiUserControllerTest {
return everySheetHeaderMap; return everySheetHeaderMap;
} }
private void buildHeader(Map<String, List<ExcelExportEntity>> everySheetHeaderMap, FormItem item, ExcelExportEntity header) { private void buildHeader(Map<String, List<ExcelExportEntity>> everySheetHeaderMap, FormItemResult item, ExcelExportEntity header) {
List<ExcelExportEntity> firstSheetHeaderList = new ArrayList<>(); List<ExcelExportEntity> firstSheetHeaderList = new ArrayList<>();
List<ExcelExportEntity> secondHeaderList = new ArrayList<>(); List<ExcelExportEntity> secondHeaderList = new ArrayList<>();
item.getChildGroup().getItemList().forEach(item2->{ item.getChildGroup().getItemList().forEach(item2->{

Loading…
Cancel
Save