diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/IcPartyMemberDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/IcPartyMemberDTO.java index ca527baee6..86a5d68c2d 100644 --- a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/IcPartyMemberDTO.java +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/IcPartyMemberDTO.java @@ -31,7 +31,7 @@ public class IcPartyMemberDTO implements Serializable { * 党组织的所有上级ID,没有上级时为0 */ private String orgPids; - + private String orgName; /** * 行政组织 机关ID */ @@ -91,7 +91,7 @@ public class IcPartyMemberDTO implements Serializable { * 职务 */ private String partyZw; - + private String postName; /** * 是否退休 */ @@ -111,7 +111,12 @@ public class IcPartyMemberDTO implements Serializable { * 文化程度【字典表】 */ private String culture; - + private String cultureName; + /** + * 志愿者类型,逗号隔开 + */ + private String volunteerCategory; + private String volunteerCategoryName; /** * 备注 */ diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java new file mode 100644 index 0000000000..1da2c277bd --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/IcPartyMemberController.java @@ -0,0 +1,81 @@ +package com.epmet.modules.partymember.controller; + +import com.epmet.commons.tools.aop.NoRepeatSubmit; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +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.DefaultGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; +import com.epmet.modules.partymember.excel.IcPartyMemberExcel; +import com.epmet.modules.partymember.service.IcPartyMemberService; +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 2022-05-17 + */ +@RestController +@RequestMapping("icPartyMember") +public class IcPartyMemberController { + + @Autowired + private IcPartyMemberService icPartyMemberService; + + @RequestMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = icPartyMemberService.page(params); + return new Result>().ok(page); + } + + @RequestMapping(value = "{id}",method = {RequestMethod.POST,RequestMethod.GET}) + public Result get(@PathVariable("id") String id){ + IcPartyMemberDTO data = icPartyMemberService.get(id); + return new Result().ok(data); + } + @NoRepeatSubmit + @PostMapping("save") + public Result save(@RequestBody IcPartyMemberDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + String id = icPartyMemberService.save(dto); + return new Result().ok(id); + } + + @NoRepeatSubmit + @PostMapping("update") + public Result update(@RequestBody IcPartyMemberDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + icPartyMemberService.update(dto); + return new Result(); + } + + @PostMapping("delete") + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + icPartyMemberService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = icPartyMemberService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, IcPartyMemberExcel.class); + } + + + +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/IcPartyMemberEntity.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/IcPartyMemberEntity.java index a9e10a324f..56292ffef3 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/IcPartyMemberEntity.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/IcPartyMemberEntity.java @@ -108,6 +108,11 @@ public class IcPartyMemberEntity extends BaseEpmetEntity { */ private String culture; + /** + * 志愿者类型,逗号隔开 + */ + private String volunteerCategory; + /** * 备注 */ diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java index f774b8db72..54b63e743e 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/IcPartyMemberService.java @@ -2,7 +2,7 @@ package com.epmet.modules.partymember.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; -import com.epmet.dto.IcPartyMemberDTO; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import com.epmet.modules.partymember.entity.IcPartyMemberEntity; import java.util.List; @@ -54,7 +54,7 @@ public interface IcPartyMemberService extends BaseService { * @author generator * @date 2022-05-17 */ - void save(IcPartyMemberDTO dto); + String save(IcPartyMemberDTO dto); /** * 默认更新 diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java index 408d1a7066..c4de661862 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/IcPartyMemberServiceImpl.java @@ -1,19 +1,27 @@ package com.epmet.modules.partymember.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.constant.FieldConstant; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.dto.IcPartyMemberDTO; +import com.epmet.commons.tools.utils.Result; +import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.modules.partyOrg.entity.IcPartyOrgEntity; +import com.epmet.modules.partyOrg.service.IcPartyOrgService; import com.epmet.modules.partymember.dao.IcPartyMemberDao; import com.epmet.modules.partymember.entity.IcPartyMemberEntity; import com.epmet.modules.partymember.service.IcPartyMemberService; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -27,6 +35,11 @@ import java.util.Map; @Service public class IcPartyMemberServiceImpl extends BaseServiceImpl implements IcPartyMemberService { + @Resource + private IcPartyOrgService icPartyOrgService; + @Resource + private EpmetUserOpenFeignClient epmetUserOpenFeignClient; + @Override public PageData page(Map params) { IPage page = baseDao.selectPage( @@ -55,19 +68,78 @@ public class IcPartyMemberServiceImpl extends BaseServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcPartyMemberEntity::getCustomerId, org.getCustomerId()); + wrapper.eq(IcPartyMemberEntity::getIdCard, dto.getIdCard()); + IcPartyMemberEntity partyMember = baseDao.selectOne(wrapper); + if (null != partyMember) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "党员已存在", "党员已存在"); + } + + //同步ic_resi_user表对应的数据,并获取志愿者类型 + Result result = epmetUserOpenFeignClient.icPartyMemberSync(dto); + if (!result.success()) { + throw new EpmetException(result.getCode(), result.getMsg(), result.getMsg()); + } + if (null != result.getData()) { + dto.setIcResiUser(result.getData().getIcResiUser()); + dto.setVolunteerCategory(result.getData().getVolunteerCategory()); + } IcPartyMemberEntity entity = ConvertUtils.sourceToTarget(dto, IcPartyMemberEntity.class); + insert(entity); + + return entity.getId(); + } @Override @Transactional(rollbackFor = Exception.class) public void update(IcPartyMemberDTO dto) { + //获取党组织信息 + IcPartyOrgEntity org = icPartyOrgService.selectById(dto.getSszb()); + dto.setAgencyId(org.getAgencyId()); + dto.setAgencyPids(org.getAgencyPids()); + dto.setOrgPids(org.getOrgPids()); + + //判断党员是否已存在 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcPartyMemberEntity::getCustomerId, org.getCustomerId()); + wrapper.eq(IcPartyMemberEntity::getIdCard, dto.getIdCard()); + IcPartyMemberEntity partyMember = baseDao.selectOne(wrapper); + if (null != partyMember && !partyMember.getId().equals(dto.getId())) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "党员已存在", "党员已存在"); + } + + //同步ic_resi_user表对应的数据,并获取志愿者类型 + Result result = epmetUserOpenFeignClient.icPartyMemberSync(dto); + if (!result.success()) { + throw new EpmetException(result.getCode(), result.getMsg(), result.getMsg()); + } + + if (null != result.getData()) { + dto.setIcResiUser(result.getData().getIcResiUser()); + dto.setVolunteerCategory(result.getData().getVolunteerCategory()); + } + IcPartyMemberEntity entity = ConvertUtils.sourceToTarget(dto, IcPartyMemberEntity.class); updateById(entity); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcPartyMemberSyncDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcPartyMemberSyncDTO.java new file mode 100644 index 0000000000..48ffd910b4 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcPartyMemberSyncDTO.java @@ -0,0 +1,115 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2022/5/17 18:13 + */ +@Data +public class IcPartyMemberSyncDTO implements Serializable { + private static final long serialVersionUID = 663543282690909994L; + + /** + * 客户Id customer.id + */ + private String customerId; + + /** + * 党组织的所有上级ID,没有上级时为0 + */ + private String orgPids; + + /** + * 行政组织 机关ID + */ + private String agencyId; + + /** + * 行政组织 机关ID + */ + private String agencyPids; + + /** + * 对应的ic_resi_user主表Id + */ + private String icResiUser; + + /** + * 姓名 + */ + private String name; + + /** + * 手机号 + */ + private String mobile; + + /** + * 身份证号 + */ + private String idCard; + + /** + * 地址 + */ + private String address; + + /** + * 入党时间 + */ + private String rdsj; + + /** + * 所属支部 + */ + private String sszb; + + /** + * 是否流动党员 + */ + private String isLd; + + /** + * 流动党员活动证号 + */ + private String ldzh; + + /** + * 职务 + */ + private String partyZw; + + /** + * 是否退休 + */ + private String isTx; + + /** + * 是否党员中心户 + */ + private String isDyzxh; + + /** + * 是否免学习0否,1是 + */ + private String isMxx; + + /** + * 文化程度【字典表】 + */ + private String culture; + + /** + * 志愿者类型,逗号隔开 + */ + private String volunteerCategory; + + /** + * 备注 + */ + private String remark; +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index f97eb6f53d..c82291265e 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -9,6 +9,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.result.*; import com.epmet.feign.fallback.EpmetUserOpenFeignClientFallbackFactory; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.*; @@ -748,4 +749,7 @@ public interface EpmetUserOpenFeignClient { */ @PostMapping("/epmetuser/icresiuser/getResiUserGroupHomeId") Result> getHouseMemberList(@RequestBody RentTenantDataFormDTO formDTO); + + @PostMapping("/epmetuser/icresiuser/icPartyMemberSync") + Result icPartyMemberSync(@RequestBody IcPartyMemberDTO formDTO); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index 1389394e78..1d4147b0c0 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -9,6 +9,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.result.*; import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -548,4 +549,9 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getHouseMemberList", formDTO); } + @Override + public Result icPartyMemberSync(IcPartyMemberDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "icPartyMemberSync", formDTO); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index 30c9a10bc2..efe9ecc9d0 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -59,6 +59,7 @@ import com.epmet.excel.support.ExportResiUserItemDTO; import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.OperCustomizeOpenFeignClient; import com.epmet.feign.OssFeignClient; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import com.epmet.service.IcResiUserExportService; import com.epmet.service.IcResiUserImportService; import com.epmet.service.IcResiUserService; @@ -1037,4 +1038,17 @@ public class IcResiUserController implements ResultDataResolver { Result> getResiUserGroupHomeId(@RequestBody RentTenantDataFormDTO formDTO) { return new Result().ok(icResiUserService.getResiUserGroupHomeId(formDTO)); } + + /** + * 党员信息同步 + * + * @Param formDTO + * @Return {@link Result} + * @Author zhaoqifeng + * @Date 2022/5/17 19:14 + */ + @PostMapping("icPartyMemberSync") + public Result icPartyMemberSync(@RequestBody IcPartyMemberDTO formDTO) { + return new Result().ok(icResiUserService.icPartyMemberSync(formDTO)); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcPartyMemberDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcPartyMemberDao.java new file mode 100644 index 0000000000..0bfc139ce4 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcPartyMemberDao.java @@ -0,0 +1,16 @@ +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IcPartyMemberEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 党员 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-05-17 + */ +@Mapper +public interface IcPartyMemberDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcVolunteerDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcVolunteerDao.java new file mode 100644 index 0000000000..de9ccd3bb0 --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcVolunteerDao.java @@ -0,0 +1,16 @@ +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.IcVolunteerEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 志愿者 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2022-05-17 + */ +@Mapper +public interface IcVolunteerDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java index b9a9592509..066f1bee5c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java @@ -26,6 +26,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.entity.IcResiUserEntity; import com.epmet.excel.support.ExportResiUserItemDTO; +import com.epmet.resi.partymember.dto.partymember.IcPartyMemberDTO; import java.util.List; import java.util.Map; @@ -334,4 +335,15 @@ public interface IcResiUserService extends BaseService { * @return */ List getResiUserGroupHomeId(RentTenantDataFormDTO formDTO); + + + /** + * 党员信息同步 + * + * @Param formDTO + * @Return {@link IcPartyMemberDTO} + * @Author zhaoqifeng + * @Date 2022/5/17 19:12 + */ + IcPartyMemberDTO icPartyMemberSync(IcPartyMemberDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index bc6582d1e0..7285d59211 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -48,15 +48,15 @@ import com.epmet.commons.tools.utils.SpringContextUtils; import com.epmet.constant.IcPlatformConstant; import com.epmet.constant.IcResiUserConstant; import com.epmet.constant.UserConstant; +import com.epmet.dao.IcPartyMemberDao; import com.epmet.dao.IcResiUserDao; +import com.epmet.dao.IcVolunteerDao; import com.epmet.dto.*; import com.epmet.dto.form.*; import com.epmet.dto.form.demand.UserDemandNameQueryFormDTO; import com.epmet.dto.result.*; import com.epmet.dto.result.demand.IcResiDemandDictDTO; -import com.epmet.entity.IcResiUserEntity; -import com.epmet.entity.IcUserChangeDetailedEntity; -import com.epmet.entity.IcUserChangeRecordEntity; +import com.epmet.entity.*; import com.epmet.excel.support.ExportResiUserItemDTO; import com.epmet.feign.*; import com.epmet.service.*; @@ -133,6 +133,10 @@ public class IcResiUserServiceImpl extends BaseServiceImpl getWrapper(Map params) { String id = (String) params.get(FieldConstant.ID_HUMP); @@ -1910,6 +1914,101 @@ public class IcResiUserServiceImpl extends BaseServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getCustomerId, formDTO.getCustomerId()); + wrapper.eq(IcResiUserEntity::getIdCard, formDTO.getIdCard()); + user = baseDao.selectOne(wrapper); + if(null == user) { + return dto; + } + } + dto.setIcResiUser(user.getId()); + //更新居民信息并将是否是党员字段设为1 + user.setName(formDTO.getName()); + user.setMobile(formDTO.getMobile()); + user.setIsParty(NumConstant.ONE_STR); + user.setUpdatedBy(null); + user.setUpdatedTime(null); + baseDao.updateById(user); + + //判断是否有党员信息,没有则新增一条,有的话就更新 + LambdaQueryWrapper partyWrapper = new LambdaQueryWrapper<>(); + partyWrapper.eq(IcPartyMemberEntity::getIcResiUser, formDTO.getIcResiUser()); + IcPartyMemberEntity partyMember = icPartyMemberDao.selectOne(partyWrapper); + if (null == partyMember) { + partyMember = ConvertUtils.sourceToTarget(formDTO, IcPartyMemberEntity.class); + icPartyMemberDao.insert(partyMember); + } else { + IcPartyMemberEntity partyMemberEntity = ConvertUtils.sourceToTarget(formDTO, IcPartyMemberEntity.class); + partyMemberEntity.setId(partyMember.getId()); + icPartyMemberDao.updateById(partyMemberEntity); + } + + } else { + //获取居民信息 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getCustomerId, formDTO.getCustomerId()); + wrapper.eq(IcResiUserEntity::getIdCard, formDTO.getIdCard()); + IcResiUserEntity user = baseDao.selectOne(wrapper); + //居民信息不存在时返回 + if(null == user) { + return dto; + } + dto.setIcResiUser(user.getId()); + + //更新居民信息并将是否是党员字段设为1 + user.setName(formDTO.getName()); + user.setMobile(formDTO.getMobile()); + user.setIsParty(NumConstant.ONE_STR); + user.setUpdatedBy(null); + user.setUpdatedTime(null); + baseDao.updateById(user); + } + + + //判断是否有党员信息,没有则新增一条,有的话就更新 + LambdaQueryWrapper partyWrapper = new LambdaQueryWrapper<>(); + partyWrapper.eq(IcPartyMemberEntity::getIcResiUser, dto.getIcResiUser()); + IcPartyMemberEntity partyMember = icPartyMemberDao.selectOne(partyWrapper); + if (null == partyMember) { + partyMember = ConvertUtils.sourceToTarget(formDTO, IcPartyMemberEntity.class); + icPartyMemberDao.insert(partyMember); + } else { + IcPartyMemberEntity partyMemberEntity = ConvertUtils.sourceToTarget(formDTO, IcPartyMemberEntity.class); + partyMemberEntity.setId(partyMember.getId()); + icPartyMemberDao.updateById(partyMemberEntity); + } + //获取志愿者类别 + LambdaQueryWrapper volunteerWrapper = new LambdaQueryWrapper<>(); + volunteerWrapper.eq(IcVolunteerEntity::getIcResiUser, dto.getIcResiUser()); + IcVolunteerEntity volunteer = icVolunteerDao.selectOne(volunteerWrapper); + if (null != volunteer) { + dto.setVolunteerCategory(volunteer.getVolunteerCategory()); + } + + return dto; + } + /** * desc:根据字段值获取 options * @param customerId diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcPartyMemberDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcPartyMemberDao.xml new file mode 100644 index 0000000000..3dbbb08b3d --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcPartyMemberDao.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcVolunteerDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcVolunteerDao.xml new file mode 100644 index 0000000000..5e1de8852a --- /dev/null +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcVolunteerDao.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file