Browse Source

婚姻定时任务

master
lichao 2 years ago
parent
commit
a7eaf9a027
  1. 61
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/YtHsResUtils.java
  2. 43
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiDeadTask.java
  3. 43
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiMaritalTask.java
  4. 109
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/DataSyncRecordMaritalDTO.java
  5. 74
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserTaskLogDTO.java
  6. 3
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java
  7. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java
  8. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/constant/EpidemicConstant.java
  9. 13
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/DataSyncConfigController.java
  10. 72
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/DataSyncRecordMaritalController.java
  11. 72
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserTaskLogController.java
  12. 16
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/DataSyncRecordMaritalDao.java
  13. 16
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserTaskLogDao.java
  14. 79
      epmet-user/epmet-user-server/src/main/java/com/epmet/entity/DataSyncRecordMaritalEntity.java
  15. 44
      epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserTaskLogEntity.java
  16. 1
      epmet-user/epmet-user-server/src/main/java/com/epmet/enums/DataSyncEnum.java
  17. 72
      epmet-user/epmet-user-server/src/main/java/com/epmet/excel/DataSyncRecordMaritalExcel.java
  18. 51
      epmet-user/epmet-user-server/src/main/java/com/epmet/excel/IcResiUserTaskLogExcel.java
  19. 30
      epmet-user/epmet-user-server/src/main/java/com/epmet/redis/DataSyncRecordMaritalRedis.java
  20. 30
      epmet-user/epmet-user-server/src/main/java/com/epmet/redis/IcResiUserTaskLogRedis.java
  21. 8
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/DataSyncConfigService.java
  22. 83
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/DataSyncRecordMaritalService.java
  23. 78
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserTaskLogService.java
  24. 233
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java
  25. 92
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncRecordMaritalServiceImpl.java
  26. 83
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserTaskLogServiceImpl.java
  27. 28
      epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncRecordMaritalDao.xml
  28. 21
      epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserTaskLogDao.xml

61
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/YtHsResUtils.java

@ -172,6 +172,67 @@ public class YtHsResUtils {
return new YtDataSyncResDTO(); return new YtDataSyncResDTO();
} }
/**
* desc:死亡数据同步
*
* @return
*/
public static YtDataSyncResDTO hunYin(String cardNo, String userName) {
try {
tryAcquire("hunYin");
// 1)appkey秘钥
// 2)name姓名 必填
// 3)idcard身份证号 必填
// 4)start开始默认0
// 5)limit每页记录数
Map<String, Object> param = new HashMap<>();
param.put(APP_KEY, "FH8dEJXl0WaZ8r2ZgHlNdEnoz");
param.put("cert_num_man", cardNo);
param.put("name_man", userName);
param.put("start", 0);
param.put("limit", 1);
log.info("hunYin api param:{}", param);
Result<String> result = HttpClientManager.getInstance().sendGet(SERVER_URL + "gjmzb_hydjxxhygr_sdsjzx1", param);
// String mockData = "{\"code\":\"200\",\"msg\":\"请求成功\",\"data\":{\"code\":200,\"data\":{\"result\":{\"result\":\"IA:结婚\"},\"code\":\"0\",\"status\":\"success\"},\"message\":\"\"},\"total\":0}";
// Result<String> result = new Result<String>().ok(mockData);
log.info("hunYin api result:{}", JSON.toJSONString(result));
if (!result.success()) {
return new YtDataSyncResDTO();
}
String data = result.getData();
JSONObject jsonObject = JSON.parseObject(data);
//他们的结果是成功的
if (jsonObject != null && StrConstant.HTTP_STATUS_OK.equals(jsonObject.getString(StrConstant.HTTP_RESP_CODE))) {
//第一层
JSONObject firstData = JSON.parseObject(jsonObject.getString("data"));
//第二层 data
if (firstData != null && StrConstant.HTTP_STATUS_OK.equals(firstData.getString(StrConstant.HTTP_RESP_CODE))) {
//第一层
JSONObject secondData = JSON.parseObject(firstData.getString("data"));
if (secondData != null && secondData.getString("result") != null ) {
//第二层 data
JSONObject thirdData = JSON.parseObject(secondData.getString("result"));
Object fourthData = "";
if (thirdData != null && thirdData.getString("result") != null){
fourthData = thirdData.getString("result");
}
return new YtDataSyncResDTO(200, "", fourthData.toString());
}
} else {
log.warn("hunYin 调用蓝图接口成功但是蓝图的结果中 省平台失败");
}
} else {
log.warn("hunYin 调用蓝图接口败");
}
} catch (Exception e) {
log.error(String.format("烟台hunYin结果查询异常cardNo:%s", cardNo), e);
}
return new YtDataSyncResDTO();
}
/** /**
* desc:残疾数据同步 * desc:残疾数据同步
* *

43
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiDeadTask.java

@ -0,0 +1,43 @@
package com.epmet.task;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.DataSyncTaskParam;
import com.epmet.feign.EpmetUserOpenFeignClient;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* @Description:死亡
* @Return
* @Author: lichao
* @Date: 2023/5/19 13:47
*/
@Slf4j
@Component("resiDeadTask")
public class ResiDeadTask implements ITask {
@Autowired
private EpmetUserOpenFeignClient userOpenFeignClient;
@Override
public void run(String params) {
DataSyncTaskParam formDTO = new DataSyncTaskParam();
if (StringUtils.isNotBlank(params)) {
formDTO = JSON.parseObject(params, DataSyncTaskParam.class);
}
formDTO.setCustomerId("");
// 死亡
Result maritalInfoScanTask = userOpenFeignClient.deathInfoScanTask(formDTO);
if (maritalInfoScanTask.success()) {
log.info("resiDeadTask定时任务执行成功");
} else {
log.error("resiDeadTask定时任务执行失败:" + maritalInfoScanTask.getMsg());
}
}
}

43
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiMaritalTask.java

@ -0,0 +1,43 @@
package com.epmet.task;
import com.alibaba.fastjson.JSON;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.DataSyncTaskParam;
import com.epmet.feign.EpmetUserOpenFeignClient;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* @Description:婚姻状况
* @Return
* @Author: lichao
* @Date: 2023/5/19 13:47
*/
@Slf4j
@Component("resiMaritalTask")
public class ResiMaritalTask implements ITask {
@Autowired
private EpmetUserOpenFeignClient userOpenFeignClient;
@Override
public void run(String params) {
DataSyncTaskParam formDTO = new DataSyncTaskParam();
if (StringUtils.isNotBlank(params)) {
formDTO = JSON.parseObject(params, DataSyncTaskParam.class);
}
formDTO.setCustomerId("");
// 婚姻
Result maritalInfoScanTask = userOpenFeignClient.maritalInfoScanTask(formDTO);
if (maritalInfoScanTask.success()) {
log.info("resiMaritalTask定时任务执行成功");
} else {
log.error("resiMaritalTask定时任务执行失败:" + maritalInfoScanTask.getMsg());
}
}
}

109
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/DataSyncRecordMaritalDTO.java

@ -0,0 +1,109 @@
package com.epmet.dto;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Data
public class DataSyncRecordMaritalDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 客户Id
*/
private String customerId;
/**
* 组织Id
*/
private String agencyId;
/**
* 组织的pids 含agencyId本身
*/
private String pids;
/**
* 网格ID
*/
private String gridId;
/**
* 姓名
*/
private String name;
/**
* 身份证
*/
private String idCard;
/**
* 电话
*/
private String mobile;
/**
* 居民Idic_resi_user.id
*/
private String icResiUserId;
/**
* 婚姻状况
*/
private String maritalStatusName;
/**
* 处理状态更新至居民信息 0:未处理1:处理成功2处理失败
*/
private Integer dealStatus;
/**
* 处理结果
*/
private String dealResult;
/**
* 删除标识0.未删除 1.已删除
*/
private Integer delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

74
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/IcResiUserTaskLogDTO.java

@ -0,0 +1,74 @@
package com.epmet.dto;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Data
public class IcResiUserTaskLogDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 客户Id customer.id
*/
private String customerId;
/**
* 0:正常数据 1:特殊数据
*/
private Integer dataType;
/**
* 数据数量
*/
private Integer dataCount;
/**
* 婚姻hunyin
*/
private String type;
/**
* 删除标识 0.未删除 1.已删除
*/
private String delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

3
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java

@ -1009,6 +1009,9 @@ public interface EpmetUserOpenFeignClient {
@PostMapping("/epmetuser/dataSyncConfig/deathInfoScanTask") @PostMapping("/epmetuser/dataSyncConfig/deathInfoScanTask")
Result deathInfoScanTask(@RequestBody DataSyncTaskParam formDTO); Result deathInfoScanTask(@RequestBody DataSyncTaskParam formDTO);
@PostMapping("/epmetuser/dataSyncConfig/maritalInfoScanTask")
Result maritalInfoScanTask(@RequestBody DataSyncTaskParam formDTO);
@PostMapping("/epmetuser/dataSyncConfig/disabilityInfoScanTask") @PostMapping("/epmetuser/dataSyncConfig/disabilityInfoScanTask")
Result disabilityInfoScanTask(@RequestBody DataSyncTaskParam formDTO); Result disabilityInfoScanTask(@RequestBody DataSyncTaskParam formDTO);

5
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java

@ -737,6 +737,11 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "deathInfoScanTask", formDTO); return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "deathInfoScanTask", formDTO);
} }
@Override
public Result maritalInfoScanTask(DataSyncTaskParam formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "maritalInfoScanTask", formDTO);
}
@Override @Override
public Result disabilityInfoScanTask(DataSyncTaskParam formDTO) { public Result disabilityInfoScanTask(DataSyncTaskParam formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "disabilityInfoScanTask", formDTO); return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "disabilityInfoScanTask", formDTO);

2
epmet-user/epmet-user-server/src/main/java/com/epmet/constant/EpidemicConstant.java

@ -8,11 +8,13 @@ public interface EpidemicConstant {
* 残疾人 * 残疾人
* 死亡 * 死亡
* 疫苗接种 * 疫苗接种
* 婚姻状况
*/ */
String DATA_CODE_NAT = "hesuan"; String DATA_CODE_NAT = "hesuan";
String DATA_CODE_DISABILITY = "canji"; String DATA_CODE_DISABILITY = "canji";
String DATA_CODE_DEATH = "siwang"; String DATA_CODE_DEATH = "siwang";
String DATA_CODE_VACCINE = "yimiaojiezhong"; String DATA_CODE_VACCINE = "yimiaojiezhong";
String DATA_CODE_MARITAL = "hunyin";
/** /**
* ic_sync_job 任务类型 * ic_sync_job 任务类型

13
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/DataSyncConfigController.java

@ -152,6 +152,19 @@ public class DataSyncConfigController {
return new Result(); return new Result();
} }
/**
* @Description: 婚姻信息定时拉取
* @param formDTO:
* @Return com.epmet.commons.tools.utils.Result
* @Author: lichao
* @Date: 2023/5/18 14:39
*/
@PostMapping("maritalInfoScanTask")
public Result maritalInfoScanTask(@RequestBody DataSyncTaskParam formDTO){
dataSyncConfigService.maritalInfoScanTask(formDTO);
return new Result();
}
/** /**
* @Description 残疾信息定时拉取 * @Description 残疾信息定时拉取
* @param formDTO * @param formDTO

72
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/DataSyncRecordMaritalController.java

@ -0,0 +1,72 @@
package com.epmet.controller;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.DataSyncRecordMaritalDTO;
import com.epmet.service.DataSyncRecordMaritalService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@RestController
@RequestMapping("dataSyncRecordMarital")
public class DataSyncRecordMaritalController {
@Autowired
private DataSyncRecordMaritalService dataSyncRecordMaritalService;
@RequestMapping("page")
public Result<PageData<DataSyncRecordMaritalDTO>> page(@RequestParam Map<String, Object> params){
PageData<DataSyncRecordMaritalDTO> page = dataSyncRecordMaritalService.page(params);
return new Result<PageData<DataSyncRecordMaritalDTO>>().ok(page);
}
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET})
public Result<DataSyncRecordMaritalDTO> get(@PathVariable("id") String id){
DataSyncRecordMaritalDTO data = dataSyncRecordMaritalService.get(id);
return new Result<DataSyncRecordMaritalDTO>().ok(data);
}
@NoRepeatSubmit
@PostMapping("save")
public Result save(@RequestBody DataSyncRecordMaritalDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
dataSyncRecordMaritalService.save(dto);
return new Result();
}
@NoRepeatSubmit
@PostMapping("update")
public Result update(@RequestBody DataSyncRecordMaritalDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
dataSyncRecordMaritalService.update(dto);
return new Result();
}
@PostMapping("delete")
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
dataSyncRecordMaritalService.delete(ids);
return new Result();
}
}

72
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserTaskLogController.java

@ -0,0 +1,72 @@
package com.epmet.controller;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.IcResiUserTaskLogDTO;
import com.epmet.service.IcResiUserTaskLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@RestController
@RequestMapping("icResiUserTaskLog")
public class IcResiUserTaskLogController {
@Autowired
private IcResiUserTaskLogService icResiUserTaskLogService;
@RequestMapping("page")
public Result<PageData<IcResiUserTaskLogDTO>> page(@RequestParam Map<String, Object> params){
PageData<IcResiUserTaskLogDTO> page = icResiUserTaskLogService.page(params);
return new Result<PageData<IcResiUserTaskLogDTO>>().ok(page);
}
@RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET})
public Result<IcResiUserTaskLogDTO> get(@PathVariable("id") String id){
IcResiUserTaskLogDTO data = icResiUserTaskLogService.get(id);
return new Result<IcResiUserTaskLogDTO>().ok(data);
}
@NoRepeatSubmit
@PostMapping("save")
public Result save(@RequestBody IcResiUserTaskLogDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
icResiUserTaskLogService.save(dto);
return new Result();
}
@NoRepeatSubmit
@PostMapping("update")
public Result update(@RequestBody IcResiUserTaskLogDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
icResiUserTaskLogService.update(dto);
return new Result();
}
@PostMapping("delete")
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
icResiUserTaskLogService.delete(ids);
return new Result();
}
}

16
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/DataSyncRecordMaritalDao.java

@ -0,0 +1,16 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.DataSyncRecordMaritalEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Mapper
public interface DataSyncRecordMaritalDao extends BaseDao<DataSyncRecordMaritalEntity> {
}

16
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserTaskLogDao.java

@ -0,0 +1,16 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.IcResiUserTaskLogEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Mapper
public interface IcResiUserTaskLogDao extends BaseDao<IcResiUserTaskLogEntity> {
}

79
epmet-user/epmet-user-server/src/main/java/com/epmet/entity/DataSyncRecordMaritalEntity.java

@ -0,0 +1,79 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("data_sync_record_marital")
public class DataSyncRecordMaritalEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户Id
*/
private String customerId;
/**
* 组织Id
*/
private String agencyId;
/**
* 组织的pids 含agencyId本身
*/
private String pids;
/**
* 网格ID
*/
private String gridId;
/**
* 姓名
*/
private String name;
/**
* 身份证
*/
private String idCard;
/**
* 电话
*/
private String mobile;
/**
* 居民Idic_resi_user.id
*/
private String icResiUserId;
/**
* 婚姻状况
*/
private String maritalStatusName;
/**
* 处理状态更新至居民信息 0:未处理1:处理成功2处理失败
*/
private Integer dealStatus;
/**
* 处理结果
*/
private String dealResult;
}

44
epmet-user/epmet-user-server/src/main/java/com/epmet/entity/IcResiUserTaskLogEntity.java

@ -0,0 +1,44 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("ic_resi_user_task_log")
public class IcResiUserTaskLogEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 客户Id customer.id
*/
private String customerId;
/**
* 0:正常数据 1:特殊数据
*/
private Integer dataType;
/**
* 数据数量
*/
private Integer dataCount;
/**
* 婚姻hunyin
*/
private String type;
}

1
epmet-user/epmet-user-server/src/main/java/com/epmet/enums/DataSyncEnum.java

@ -14,6 +14,7 @@ public enum DataSyncEnum {
SI_WANG("siwang", "死亡数据"), SI_WANG("siwang", "死亡数据"),
VACCINE("yimiaojiezhong", "疫苗接种"), VACCINE("yimiaojiezhong", "疫苗接种"),
OTHER("qita","其他"), OTHER("qita","其他"),
HUN_YIN("hunyin", "婚姻状况数据"),
; ;

72
epmet-user/epmet-user-server/src/main/java/com/epmet/excel/DataSyncRecordMaritalExcel.java

@ -0,0 +1,72 @@
package com.epmet.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Data
public class DataSyncRecordMaritalExcel {
@Excel(name = "主键")
private String id;
@Excel(name = "客户Id")
private String customerId;
@Excel(name = "组织Id")
private String agencyId;
@Excel(name = "组织的pids 含agencyId本身")
private String pids;
@Excel(name = "网格ID")
private String gridId;
@Excel(name = "姓名")
private String name;
@Excel(name = "身份证")
private String idCard;
@Excel(name = "电话")
private String mobile;
@Excel(name = "居民Id,ic_resi_user.id")
private String icResiUserId;
@Excel(name = "婚姻状况")
private String maritalStatusName;
@Excel(name = "处理状态(更新至居民信息) 0:未处理;1:处理成功;2处理失败")
private Integer dealStatus;
@Excel(name = "处理结果")
private String dealResult;
@Excel(name = "删除标识:0.未删除 1.已删除")
private Integer delFlag;
@Excel(name = "乐观锁")
private Integer revision;
@Excel(name = "创建人")
private String createdBy;
@Excel(name = "创建时间")
private Date createdTime;
@Excel(name = "更新人")
private String updatedBy;
@Excel(name = "更新时间")
private Date updatedTime;
}

51
epmet-user/epmet-user-server/src/main/java/com/epmet/excel/IcResiUserTaskLogExcel.java

@ -0,0 +1,51 @@
package com.epmet.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Data
public class IcResiUserTaskLogExcel {
@Excel(name = "主键")
private String id;
@Excel(name = "客户Id customer.id")
private String customerId;
@Excel(name = "0:正常数据 1:特殊数据")
private Integer dataType;
@Excel(name = "数据数量")
private Integer dataCount;
@Excel(name = "婚姻:hunyin")
private String type;
@Excel(name = "删除标识 0.未删除 1.已删除")
private String delFlag;
@Excel(name = "乐观锁")
private Integer revision;
@Excel(name = "创建人")
private String createdBy;
@Excel(name = "创建时间")
private Date createdTime;
@Excel(name = "更新人")
private String updatedBy;
@Excel(name = "更新时间")
private Date updatedTime;
}

30
epmet-user/epmet-user-server/src/main/java/com/epmet/redis/DataSyncRecordMaritalRedis.java

@ -0,0 +1,30 @@
package com.epmet.redis;
import com.epmet.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Component
public class DataSyncRecordMaritalRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

30
epmet-user/epmet-user-server/src/main/java/com/epmet/redis/IcResiUserTaskLogRedis.java

@ -0,0 +1,30 @@
package com.epmet.redis;
import com.epmet.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Component
public class IcResiUserTaskLogRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

8
epmet-user/epmet-user-server/src/main/java/com/epmet/service/DataSyncConfigService.java

@ -142,4 +142,12 @@ public interface DataSyncConfigService extends BaseService<DataSyncConfigEntity>
*/ */
void vaccineInfoScanTask(DataSyncTaskParam formDTO); void vaccineInfoScanTask(DataSyncTaskParam formDTO);
/**
* @Description: 婚姻信息定时拉取
* @param formDTO:
* @Return void
* @Author: lichao
* @Date: 2023/5/18 14:39
*/
void maritalInfoScanTask(DataSyncTaskParam formDTO);
} }

83
epmet-user/epmet-user-server/src/main/java/com/epmet/service/DataSyncRecordMaritalService.java

@ -0,0 +1,83 @@
package com.epmet.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.DataSyncRecordDeathDTO;
import com.epmet.dto.DataSyncRecordMaritalDTO;
import com.epmet.entity.DataSyncRecordDeathEntity;
import com.epmet.entity.DataSyncRecordMaritalEntity;
import java.util.List;
import java.util.Map;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
public interface DataSyncRecordMaritalService extends BaseService<DataSyncRecordMaritalEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<DataSyncRecordMaritalDTO>
* @author generator
* @date 2023-05-18
*/
PageData<DataSyncRecordMaritalDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<DataSyncRecordMaritalDTO>
* @author generator
* @date 2023-05-18
*/
List<DataSyncRecordMaritalDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return DataSyncRecordMaritalDTO
* @author generator
* @date 2023-05-18
*/
DataSyncRecordMaritalDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2023-05-18
*/
void save(DataSyncRecordMaritalDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2023-05-18
*/
void update(DataSyncRecordMaritalDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2023-05-18
*/
void delete(String[] ids);
DataSyncRecordMaritalDTO selectOne(LambdaQueryWrapper<DataSyncRecordMaritalEntity> queryWrapper);
}

78
epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserTaskLogService.java

@ -0,0 +1,78 @@
package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IcResiUserTaskLogDTO;
import com.epmet.entity.IcResiUserTaskLogEntity;
import java.util.List;
import java.util.Map;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
public interface IcResiUserTaskLogService extends BaseService<IcResiUserTaskLogEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<IcResiUserTaskLogDTO>
* @author generator
* @date 2023-05-18
*/
PageData<IcResiUserTaskLogDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<IcResiUserTaskLogDTO>
* @author generator
* @date 2023-05-18
*/
List<IcResiUserTaskLogDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return IcResiUserTaskLogDTO
* @author generator
* @date 2023-05-18
*/
IcResiUserTaskLogDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2023-05-18
*/
void save(IcResiUserTaskLogDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2023-05-18
*/
void update(IcResiUserTaskLogDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2023-05-18
*/
void delete(String[] ids);
}

233
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncConfigServiceImpl.java

@ -29,10 +29,7 @@ import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.YtHsResUtils; import com.epmet.commons.tools.utils.YtHsResUtils;
import com.epmet.constant.EpidemicConstant; import com.epmet.constant.EpidemicConstant;
import com.epmet.dao.*; import com.epmet.dao.*;
import com.epmet.dto.DataSyncConfigDTO; import com.epmet.dto.*;
import com.epmet.dto.DataSyncRecordDeathDTO;
import com.epmet.dto.DataSyncRecordDisabilityDTO;
import com.epmet.dto.YTVaccineListDTO;
import com.epmet.dto.form.ConfigSwitchFormDTO; import com.epmet.dto.form.ConfigSwitchFormDTO;
import com.epmet.dto.form.DataSyncTaskParam; import com.epmet.dto.form.DataSyncTaskParam;
import com.epmet.dto.form.ScopeSaveFormDTO; import com.epmet.dto.form.ScopeSaveFormDTO;
@ -87,6 +84,8 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
@Autowired @Autowired
private DataSyncRecordDeathService dataSyncRecordDeathService; private DataSyncRecordDeathService dataSyncRecordDeathService;
@Autowired @Autowired
private DataSyncRecordMaritalService dataSyncRecordMaritalService;
@Autowired
private DataSyncRecordDisabilityService dataSyncRecordDisabilityService; private DataSyncRecordDisabilityService dataSyncRecordDisabilityService;
@Autowired @Autowired
private ExecutorService executorService; private ExecutorService executorService;
@ -108,6 +107,8 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
private IcTripReportRecordDao icTripReportRecordDao; private IcTripReportRecordDao icTripReportRecordDao;
@Autowired @Autowired
private IcResiUserDeadTaskLogDao icResiUserDeadTaskLogDao; private IcResiUserDeadTaskLogDao icResiUserDeadTaskLogDao;
@Autowired
private IcResiUserTaskLogDao resiUserTaskLogDao;
@Resource(name = "yantaiNamedParamLantuJdbcTemplate") @Resource(name = "yantaiNamedParamLantuJdbcTemplate")
@ -336,7 +337,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
newLog.setDataCount(start+50000); newLog.setDataCount(start+50000);
} }
} }
icResiUserDeadTaskLogDao.insert(newLog);
if (CollectionUtils.isEmpty(dbResiList)) { if (CollectionUtils.isEmpty(dbResiList)) {
continue; continue;
@ -346,7 +347,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
try { try {
//查询正常状态的居民 //查询正常状态的居民
siWang(dbResiList); siWang(dbResiList);
icResiUserDeadTaskLogDao.insert(newLog);
log.info("======siWang信息拉取结束======"); log.info("======siWang信息拉取结束======");
} catch (Exception e) { } catch (Exception e) {
log.error("death thread execute exception", e); log.error("death thread execute exception", e);
@ -721,6 +722,66 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
} }
} }
private void hunYin(List<NatUserInfoResultDTO> dbResiList) {
try {
List<DataSyncRecordMaritalEntity> list = new ArrayList<>();
for (NatUserInfoResultDTO dbResi : dbResiList) {
YtDataSyncResDTO thirdResult = YtHsResUtils.hunYin(dbResi.getIdCard(), dbResi.getName());
if (200 != thirdResult.getCode()) {
log.warn("hunyin 调用蓝图接口失败了 继续处理下一个人");
continue;
}
String thirdResultData = thirdResult.getData();
if(StringUtils.isBlank(thirdResultData)){
continue;
}
// JSONObject thirdResultObject = JSON.parseObject(thirdResultData);
LambdaQueryWrapper<DataSyncRecordMaritalEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(DataSyncRecordMaritalEntity::getIdCard, dbResi.getIdCard());
//获取数据库里的记录
DataSyncRecordMaritalDTO dbMaritaEntity = dataSyncRecordMaritalService.selectOne(queryWrapper);
JudgeDealStatus judgeDealStatus = new JudgeDealStatus(thirdResultData, dbMaritaEntity).invokeMarital();
if (judgeDealStatus.isStop()) {
continue;
}
DataSyncRecordMaritalEntity entity = new DataSyncRecordMaritalEntity();
if (dbMaritaEntity != null && StringUtils.isNotBlank(dbMaritaEntity.getId())) {
entity.setId(dbMaritaEntity.getId());
}
entity.setCustomerId(dbResi.getCustomerId());
entity.setAgencyId(dbResi.getAgencyId());
entity.setPids(dbResi.getPids());
entity.setGridId(dbResi.getGridId());
entity.setName(dbResi.getName());
entity.setIdCard(dbResi.getIdCard());
entity.setIcResiUserId(dbResi.getUserId());
//死亡未获取到数据
if (thirdResultData != null) {
entity.setMaritalStatusName(thirdResultData);
}
entity.setDealStatus(NumConstant.ZERO);
entity.setDealResult(StrConstant.EPMETY_STR);
if (judgeDealStatus.isNeedSetStatus) {
entity.setDealResult(judgeDealStatus.dealResult);
entity.setDealStatus(judgeDealStatus.dealStatus);
}
entity.setUpdatedTime(new Date());
list.add(entity);
}
if (list.size() == NumConstant.ZERO) {
return;
}
dataSyncRecordMaritalService.saveOrUpdateBatch(list, NumConstant.TWO_HUNDRED);
} catch (Exception e) {
log.error("hunyin exception", e);
}
}
/** /**
* desc从数据库获取居民信息 * desc从数据库获取居民信息
* *
@ -1003,6 +1064,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
private boolean isNext; private boolean isNext;
private DataSyncRecordDisabilityDTO dbDisablityEntity; private DataSyncRecordDisabilityDTO dbDisablityEntity;
private DataSyncRecordDeathDTO dbDeathEntity; private DataSyncRecordDeathDTO dbDeathEntity;
private DataSyncRecordMaritalDTO dbMaritalEntity;
private Integer dealStatus; private Integer dealStatus;
private String dealResult; private String dealResult;
private boolean isNeedSetStatus; private boolean isNeedSetStatus;
@ -1011,6 +1073,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
* http请求返回的结果 * http请求返回的结果
*/ */
private JSONObject thirdResultObject; private JSONObject thirdResultObject;
private String thirdResultString;
public JudgeDealStatus(DataSyncRecordDisabilityDTO dbDisablityEntity) { public JudgeDealStatus(DataSyncRecordDisabilityDTO dbDisablityEntity) {
this.dbDisablityEntity = dbDisablityEntity; this.dbDisablityEntity = dbDisablityEntity;
@ -1021,6 +1084,11 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
this.dbDeathEntity = dbDeathEntity; this.dbDeathEntity = dbDeathEntity;
} }
public JudgeDealStatus(String thirdResultString, DataSyncRecordMaritalDTO dbMaritalEntity) {
this.thirdResultString = thirdResultString;
this.dbMaritalEntity = dbMaritalEntity;
}
boolean isStop() { boolean isStop() {
return isNext; return isNext;
} }
@ -1058,6 +1126,7 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
return this; return this;
} }
/** /**
* desc:蓝图返回该人是残疾的数据 说明需要处理居民库的数据 * desc:蓝图返回该人是残疾的数据 说明需要处理居民库的数据
* *
@ -1108,6 +1177,40 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
isNext = false; isNext = false;
return this; return this;
} }
public JudgeDealStatus invokeMarital() {
//获取到了死亡记录 同步记录不存在 或者存在且状态不为为已处理 则返回true 继续下一个数据
if (thirdResultString != null) {
if (dbMaritalEntity != null && StringUtils.isNotBlank(dbMaritalEntity.getId())) {
Integer dealStatusDb = dbMaritalEntity.getDealStatus();
//数据库中的状态如果是已处理 改为未处理
if (dealStatusDb.equals(NumConstant.ONE)) {
dealStatus = 0;
dealResult = "";
isNeedSetStatus = true;
} else {
isNext = true;
return this;
}
}
} else {
//没有获取到 死亡记录
if (dbMaritalEntity != null && StringUtils.isNotBlank(dbMaritalEntity.getId())) {
Integer dealStatusDb = dbMaritalEntity.getDealStatus();
//数据库中的状态如果是未处理 或处理失败 则继续下一条
if (dealStatusDb.equals(NumConstant.ONE)) {
isNext = true;
return this;
} else {
dealStatus = 1;
dealResult = "系统比对数据一致,自动处理";
isNeedSetStatus = true;
}
}
}
isNext = false;
return this;
}
} }
/** /**
@ -1536,4 +1639,122 @@ public class DataSyncConfigServiceImpl extends BaseServiceImpl<DataSyncConfigDao
pageNo++; pageNo++;
} while (dbResiList != null && dbResiList.size() == pageSize); } while (dbResiList != null && dbResiList.size() == pageSize);
} }
/**
* @Description: 婚姻信息定时拉取
* @param formDTO:
* @Return void
* @Author: lichao
* @Date: 2023/5/18 14:41
*/
@Override
public void maritalInfoScanTask(DataSyncTaskParam formDTO) {
// 取出 婚姻 config
List<DataSyncConfigDTO> configData = getConfigData(null, EpidemicConstant.DATA_CODE_MARITAL);
if (CollectionUtils.isEmpty(configData)){
log.warn("maritalInfoScanTask not exists config data,customer is "+formDTO.getCustomerId());
return;
}
// 取出 婚姻 拉取数据 范围
long count = configData.stream().filter(o -> CollectionUtils.isNotEmpty(o.getScopeList())).count();
if (count < 1) {
log.warn("maritalInfoScanTask scopeList is null");
return;
}
// 查询上一次定时任务 居民位置记录
LambdaQueryWrapper<IcResiUserTaskLogEntity> logEntityLambdaQueryWrapper = new LambdaQueryWrapper<IcResiUserTaskLogEntity>().eq(IcResiUserTaskLogEntity::getType,"hunyin").orderByDesc(IcResiUserTaskLogEntity::getCreatedTime).last("limit 1");
IcResiUserTaskLogEntity logEntity = resiUserTaskLogDao.selectOne(logEntityLambdaQueryWrapper);
// userInfoResultDTOS 待处理的数据存放
List<NatUserInfoResultDTO> userInfoResultDTOS = new ArrayList<>();
boolean isNum = false;
int start = 0;
// 如果没有log数据 说明第一次进入循环
if (logEntity == null){
// 从0开始 优先获取规定的几个社区
userInfoResultDTOS = getNatUserInfoFromDbForSiWang(0,50000);
// 如果不满5000条数据 下面再从别的社区取 isNum = true
if (userInfoResultDTOS.size() < 50000){
isNum = true;
}
}else{
// 如果有log数据 判断一下上次停留在特殊数据还是普通数据 1是特殊数据(优先的几个社区)
if (logEntity.getDataType() == 1){
// 从上次停止的数据开始获取
userInfoResultDTOS = getNatUserInfoFromDbForSiWang(logEntity.getDataCount(),50000);
// 下面再从别的社区取 isNum = true 凑够50000
isNum = true;
}else if (logEntity.getDataType() == 0){
// 如果是普通数据 直接从次停留在特殊数据获取
start = logEntity.getDataCount();
}
}
// 建立一个最后插入log的标志
IcResiUserTaskLogEntity newLog = new IcResiUserTaskLogEntity();
newLog.setCreatedTime(new Date());
newLog.setType("hunyin");
List<NatUserInfoResultDTO> dbResiList = null;
for (DataSyncConfigDTO config : configData) {
// 设置查询数据范围
formDTO.setOrgList(config.getScopeList());
DataSyncEnum anEnum = DataSyncEnum.getEnum(config.getDataCode());
// 如果true 说明之前获取过特殊数据了 把50000补完普通数据
if (isNum){
formDTO.setStart(start);
formDTO.setEnd(50000-userInfoResultDTOS.size());
dbResiList = getNatUserInfoFromDbLimit(formDTO);
dbResiList.addAll(userInfoResultDTOS);
newLog.setDataType(0);
newLog.setDataCount(50000-dbResiList.size());
}else{
// false 说明之前没有获取过特殊数据了
formDTO.setStart(start);
formDTO.setEnd(start+50000);
dbResiList = getNatUserInfoFromDbLimit(formDTO);
// 如果不够五万了 从头再来
if (dbResiList.size()<50000){
// 特殊数据
userInfoResultDTOS = getNatUserInfoFromDbForSiWang(0,50000-dbResiList.size());
dbResiList.addAll(userInfoResultDTOS);
// 特殊数据不够 在获取普通数据
if (dbResiList.size() < 50000){
formDTO.setStart(0);
formDTO.setEnd(50000-dbResiList.size());
dbResiList.addAll(getNatUserInfoFromDbLimit(formDTO));
newLog.setDataType(0);
newLog.setDataCount(50000-dbResiList.size());
}else{
newLog.setDataType(1);
newLog.setDataCount(50000-dbResiList.size());
}
}else{
newLog.setDataType(0);
newLog.setDataCount(start+50000);
}
}
if (CollectionUtils.isEmpty(dbResiList)) {
continue;
}
switch (anEnum) {
case HUN_YIN:
try {
//查询正常状态的居民
hunYin(dbResiList);
resiUserTaskLogDao.insert(newLog);
log.info("======hunyin信息拉取结束======");
} catch (Exception e) {
log.error("marry thread execute exception", e);
}
default:
log.warn("没有要处理的数据");
}
}
}
} }

92
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/DataSyncRecordMaritalServiceImpl.java

@ -0,0 +1,92 @@
package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.dao.DataSyncRecordMaritalDao;
import com.epmet.dto.DataSyncRecordDeathDTO;
import com.epmet.dto.DataSyncRecordMaritalDTO;
import com.epmet.entity.DataSyncRecordDeathEntity;
import com.epmet.entity.DataSyncRecordMaritalEntity;
import com.epmet.service.DataSyncRecordMaritalService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 数据同步记录-居民婚姻信息
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Service
public class DataSyncRecordMaritalServiceImpl extends BaseServiceImpl<DataSyncRecordMaritalDao, DataSyncRecordMaritalEntity> implements DataSyncRecordMaritalService {
@Override
public PageData<DataSyncRecordMaritalDTO> page(Map<String, Object> params) {
IPage<DataSyncRecordMaritalEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, DataSyncRecordMaritalDTO.class);
}
@Override
public List<DataSyncRecordMaritalDTO> list(Map<String, Object> params) {
List<DataSyncRecordMaritalEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, DataSyncRecordMaritalDTO.class);
}
private QueryWrapper<DataSyncRecordMaritalEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<DataSyncRecordMaritalEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public DataSyncRecordMaritalDTO get(String id) {
DataSyncRecordMaritalEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, DataSyncRecordMaritalDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(DataSyncRecordMaritalDTO dto) {
DataSyncRecordMaritalEntity entity = ConvertUtils.sourceToTarget(dto, DataSyncRecordMaritalEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(DataSyncRecordMaritalDTO dto) {
DataSyncRecordMaritalEntity entity = ConvertUtils.sourceToTarget(dto, DataSyncRecordMaritalEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public DataSyncRecordMaritalDTO selectOne(LambdaQueryWrapper<DataSyncRecordMaritalEntity> queryWrapper) {
DataSyncRecordMaritalEntity entity = baseDao.selectOne(queryWrapper);
return ConvertUtils.sourceToTarget(entity, DataSyncRecordMaritalDTO.class);
}
}

83
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserTaskLogServiceImpl.java

@ -0,0 +1,83 @@
package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.dao.IcResiUserTaskLogDao;
import com.epmet.dto.IcResiUserTaskLogDTO;
import com.epmet.entity.IcResiUserTaskLogEntity;
import com.epmet.service.IcResiUserTaskLogService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 居民定时任务log
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-18
*/
@Service
public class IcResiUserTaskLogServiceImpl extends BaseServiceImpl<IcResiUserTaskLogDao, IcResiUserTaskLogEntity> implements IcResiUserTaskLogService {
@Override
public PageData<IcResiUserTaskLogDTO> page(Map<String, Object> params) {
IPage<IcResiUserTaskLogEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, IcResiUserTaskLogDTO.class);
}
@Override
public List<IcResiUserTaskLogDTO> list(Map<String, Object> params) {
List<IcResiUserTaskLogEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, IcResiUserTaskLogDTO.class);
}
private QueryWrapper<IcResiUserTaskLogEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<IcResiUserTaskLogEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public IcResiUserTaskLogDTO get(String id) {
IcResiUserTaskLogEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, IcResiUserTaskLogDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(IcResiUserTaskLogDTO dto) {
IcResiUserTaskLogEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserTaskLogEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(IcResiUserTaskLogDTO dto) {
IcResiUserTaskLogEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserTaskLogEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

28
epmet-user/epmet-user-server/src/main/resources/mapper/DataSyncRecordMaritalDao.xml

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dao.DataSyncRecordMaritalDao">
<resultMap type="com.epmet.entity.DataSyncRecordMaritalEntity" id="dataSyncRecordMaritalMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="agencyId" column="AGENCY_ID"/>
<result property="pids" column="PIDS"/>
<result property="gridId" column="GRID_ID"/>
<result property="name" column="NAME"/>
<result property="idCard" column="ID_CARD"/>
<result property="mobile" column="MOBILE"/>
<result property="icResiUserId" column="IC_RESI_USER_ID"/>
<result property="maritalStatusName" column="MARITAL_STATUS_NAME"/>
<result property="dealStatus" column="DEAL_STATUS"/>
<result property="dealResult" column="DEAL_RESULT"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>

21
epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserTaskLogDao.xml

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.epmet.dao.IcResiUserTaskLogDao">
<resultMap type="com.epmet.entity.IcResiUserTaskLogEntity" id="icResiUserTaskLogMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="dataType" column="DATA_TYPE"/>
<result property="dataCount" column="DATA_COUNT"/>
<result property="type" column="TYPE"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>
Loading…
Cancel
Save