diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index 9321d14e60..5bf5f2404a 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -11,7 +11,13 @@ public enum EpmetErrorCode { GROUP_ALREADY_EXISTED(8003,"您的组名已存在,请重新修改"), ALREADY_APPLIED_GROUP(8004,"该群已申请过,请耐心等待审核"), ONLY_LEADER_CAN_INVITE(8005,"抱歉,只有群主才可以邀请新成员"), - LOSE_EFFICACY(8006,"链接已失效"); + LOSE_EFFICACY(8006,"链接已失效"), + + MOBILE_HAS_BEEN_USED(8101, "该手机已被使用,请更换手机或使用原绑定的微信用户登录"), + MOBILE_CODE_ERROR(8102, "手机验证码错误"), + AUTO_CONFIRM_FAILED(8103, "自动认证失败"); + + private int value; private String name; diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index 25145850cd..9bdc3d080e 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -111,14 +111,11 @@ http://127.0.0.1:8081 - lb://epmet-admin-server - - - lb://epmet-monitor-server - + + http://127.0.0.1:8082 - lb://epmet-oss-server - + + http://127.0.0.1:8083 http://127.0.0.1:8085 @@ -183,8 +180,6 @@ lb://epmet-auth-server lb://epmet-admin-server - - lb://epmet-monitor-server lb://epmet-oss-server diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index 0e40375e3a..a5c57a6531 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -44,14 +44,6 @@ spring: filters: - StripPrefix=1 - CpAuth=true - #监控服务 - - id: epmet-monitor-server - uri: @gateway.routes.epmet-monitor-server.uri@ - order: 3 - predicates: - - Path=${server.servlet.context-path}/monitor/** - filters: - - StripPrefix=1 #OSS服务 - id: epmet-oss-server uri: @gateway.routes.epmet-oss-server.uri@ diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 02c764271c..a203c01df7 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -129,7 +129,7 @@ - + epmet elink@833066 @@ -156,7 +156,7 @@ - + epmet elink@833066 diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailLogController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailLogController.java index e21c97e1d4..427a0898aa 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailLogController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailLogController.java @@ -8,7 +8,6 @@ package com.epmet.controller; -import com.epmet.commons.tools.annotation.LogOperation; import com.epmet.commons.tools.constant.Constant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; @@ -57,7 +56,7 @@ public class MailLogController { @DeleteMapping @ApiOperation("删除") - @LogOperation("删除") +// @LogOperation("删除") public Result delete(@RequestBody Long[] ids){ sysMailLogService.deleteBatchIds(Arrays.asList(ids)); diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailTemplateController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailTemplateController.java index 6d81b3f99b..a1d46b26c2 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailTemplateController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/MailTemplateController.java @@ -75,7 +75,7 @@ public class MailTemplateController { @PostMapping("saveConfig") @ApiOperation("保存配置信息") - @LogOperation("保存配置信息") +// @LogOperation("保存配置信息") public Result saveConfig(@RequestBody EmailConfig config){ //校验数据 ValidatorUtils.validateEntity(config); @@ -95,7 +95,7 @@ public class MailTemplateController { @PostMapping @ApiOperation("保存") - @LogOperation("保存") +// @LogOperation("保存") public Result save(SysMailTemplateDTO dto){ //校验类型 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); @@ -107,7 +107,7 @@ public class MailTemplateController { @PutMapping @ApiOperation("修改") - @LogOperation("修改") +// @LogOperation("修改") public Result update(SysMailTemplateDTO dto){ //校验类型 ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); @@ -119,7 +119,7 @@ public class MailTemplateController { @DeleteMapping @ApiOperation("删除") - @LogOperation("删除") +// @LogOperation("删除") public Result delete(@RequestBody Long[] ids){ sysMailTemplateService.deleteBatchIds(Arrays.asList(ids)); @@ -128,7 +128,7 @@ public class MailTemplateController { @PostMapping("send") @ApiOperation("发送邮件") - @LogOperation("发送邮件") +// @LogOperation("发送邮件") public Result send(Long id, String mailTo, String mailCc, String params) throws Exception{ boolean flag = sysMailTemplateService.sendMail(id, mailTo, mailCc, params); if(flag){ diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/SmsController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/SmsController.java index e0f9da4e7a..4a109c5482 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/SmsController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/SmsController.java @@ -75,7 +75,7 @@ public class SmsController { @PostMapping("saveConfig") @ApiOperation("保存配置短信") - @LogOperation("保存配置短信") +// @LogOperation("保存配置短信") public Result saveConfig(@RequestBody SmsConfig config){ //校验类型 ValidatorUtils.validateEntity(config); @@ -95,7 +95,7 @@ public class SmsController { @PostMapping("send") @ApiOperation("发送短信") - @LogOperation("发送短信") +// @LogOperation("发送短信") @ApiImplicitParams({ @ApiImplicitParam(name = "mobile", value = "手机好号", paramType = "query", required = true, dataType="String"), @ApiImplicitParam(name = "params", value = "参数", paramType = "query", required = true, dataType="String") @@ -108,7 +108,7 @@ public class SmsController { @DeleteMapping @ApiOperation("删除") - @LogOperation("删除") +// @LogOperation("删除") public Result delete(@RequestBody Long[] ids){ sysSmsService.deleteBatchIds(Arrays.asList(ids)); diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/SysSmsDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/SysSmsDao.java index c99b3cf3e4..f56eb832eb 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/SysSmsDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/SysSmsDao.java @@ -11,6 +11,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.entity.SysSmsEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 短信 @@ -20,4 +21,9 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface SysSmsDao extends BaseDao { + + int tempInsert(@Param("platform") Integer platform, @Param("mobile") String mobile, + @Param("params1") String params1, @Param("params2") String params2, + @Param("params3") String params3, @Param("params4") String params4, + @Param("status") Integer status); } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java index 506d301f0f..0131b235c0 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java @@ -26,6 +26,7 @@ import com.epmet.sms.SmsFactory; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.LinkedHashMap; import java.util.Map; @@ -95,7 +96,13 @@ public class SysSmsServiceImpl extends BaseServiceImpl } sms.setStatus(status); - - this.insert(sms); + sms.setCreateDate(new Date()); + baseDao.tempInsert(sms.getPlatform(), + sms.getMobile(), + sms.getParams1(), + sms.getParams2(), + sms.getParams3(), + sms.getParams4(), + sms.getStatus()); } } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/SysSmsDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/SysSmsDao.xml index 09959e9196..44524eceea 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/SysSmsDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/SysSmsDao.xml @@ -3,5 +3,27 @@ + + INSERT INTO `sys_sms` ( + `platform`, + `mobile`, + `params_1`, + `params_2`, + `params_3`, + `params_4`, + `status`, + `creator`, + `create_date`) + VALUES + ( #{platform}, + #{mobile}, + #{params1}, + #{params2}, + #{params3}, + #{params4}, + #{status}, + "1", + now()) + diff --git a/epmet-module/epmet-oss/epmet-oss-server/pom.xml b/epmet-module/epmet-oss/epmet-oss-server/pom.xml index ea11cf21ef..2d154e0fe3 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/pom.xml +++ b/epmet-module/epmet-oss/epmet-oss-server/pom.xml @@ -131,7 +131,7 @@ - + epmet elink@833066 @@ -161,7 +161,7 @@ - + epmet elink@833066 diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java index acd2706226..dd7256c27b 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/controller/OssController.java @@ -71,7 +71,7 @@ public class OssController { @PostMapping @ApiOperation(value = "保存云存储配置信息") - @LogOperation("保存云存储配置信息") +// @LogOperation("保存云存储配置信息") public Result saveConfig(@RequestBody CloudStorageConfig config){ //校验类型 ValidatorUtils.validateEntity(config); @@ -107,7 +107,7 @@ public class OssController { OssEntity ossEntity = new OssEntity(); ossEntity.setUrl(url); ossEntity.setCreateDate(new Date()); - ossService.insert(ossEntity); + ossService.insertOssEntity(ossEntity); //文件信息 UploadDTO dto = new UploadDTO(); @@ -119,7 +119,7 @@ public class OssController { @DeleteMapping @ApiOperation(value = "删除") - @LogOperation("删除") +// @LogOperation("删除") public Result delete(@RequestBody Long[] ids){ ossService.deleteBatchIds(Arrays.asList(ids)); diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java index 79f8b14823..3d57a9424e 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/dao/OssDao.java @@ -20,4 +20,5 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface OssDao extends BaseDao { + int insertOssEntity(String url); } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java index d1100a686b..b688001b02 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/OssService.java @@ -22,4 +22,6 @@ import java.util.Map; public interface OssService extends BaseService { PageData page(Map params); + + int insertOssEntity(OssEntity ossEntity); } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java index 60ad3a91fe..b235163e81 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/java/com/epmet/service/impl/OssServiceImpl.java @@ -31,4 +31,9 @@ public class OssServiceImpl extends BaseServiceImpl implement ); return getPageData(page, OssEntity.class); } + + @Override + public int insertOssEntity(OssEntity ossEntity) { + return baseDao.insertOssEntity(ossEntity.getUrl()); + } } diff --git a/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml b/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml index 4e15504edb..57994ca119 100644 --- a/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml +++ b/epmet-module/epmet-oss/epmet-oss-server/src/main/resources/mapper/SysOssDao.xml @@ -3,5 +3,11 @@ - + + INSERT INTO `sys_oss` ( `url`, `creator`, `create_date` ) + VALUES + ( #{url}, + "1", + now( ) ) + diff --git a/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/PartyMemberSubmitFromDTO.java b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/PartyMemberSubmitFromDTO.java new file mode 100644 index 0000000000..0b9b6fea50 --- /dev/null +++ b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/PartyMemberSubmitFromDTO.java @@ -0,0 +1,34 @@ +package com.epmet.resi.mine.dto.from; + +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; +import lombok.Data; + +import java.io.Serializable; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/3/31 13:31 + */ +@Data +public class PartyMemberSubmitFromDTO implements Serializable { + + private static final long serialVersionUID = 2869322535180774823L; + /** + * 客户ID + */ + private String customerId; + /** + * 网格ID + */ + private String gridId; + /** + * 党员认证行为记录表Id + */ + private String visitId; + /** + * 党员认证信息 + */ + private PartymemberInfoDTO partyMemberInfo; + +} diff --git a/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/VerificationCodeFromDTO.java b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/VerificationCodeFromDTO.java index 65113a2a7d..5f655ffb7a 100644 --- a/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/VerificationCodeFromDTO.java +++ b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/VerificationCodeFromDTO.java @@ -15,6 +15,11 @@ public class VerificationCodeFromDTO implements Serializable { private static final long serialVersionUID = 1L; + /** + * 客户ID + */ + private String customerId; + /** * 用户ID */ diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java index fbb6686ec6..74f33cbbea 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java @@ -4,6 +4,7 @@ import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.ResiRegisterFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.LatestGridInfoResultDTO; import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.modules.feign.fallback.EpmetUserFeignClientFallBack; @@ -43,4 +44,11 @@ public interface EpmetUserFeignClient { **/ @PostMapping(value = "epmetuser/userresiinfo/submit") Result submit(UserResiInfoDTO userResiInfoDTO); + + /** + * @Author sun + * @Description 居民端-居民注册根据手机号获取验证码 + **/ + @PostMapping(value = "epmetuser/userresiinfo/getverificationcode") + Result getVerificationCode(VerificationCodeFormDTO formDTO); } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/PartyMemberConfirmFeignClient.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/PartyMemberConfirmFeignClient.java deleted file mode 100644 index 85505e516e..0000000000 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/PartyMemberConfirmFeignClient.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.epmet.modules.feign; - -import com.epmet.commons.tools.constant.ServiceConstant; -import com.epmet.commons.tools.utils.Result; -import com.epmet.modules.feign.fallback.PartyMemberConfirmFeignClientFallBack; -import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; -import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; -import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; -import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; - -/** - * @author zhaoqifeng - * @dscription - * @date 2020/3/30 16:03 - */ -@FeignClient(name = ServiceConstant.RESI_PARTYMEMBER_SERVER, fallback = PartyMemberConfirmFeignClientFallBack.class) -public interface PartyMemberConfirmFeignClient { - @PostMapping("/resi/partymember/confirm/init") - Result init(@RequestBody PartyMemberInitFromDTO fromDto); - - @PostMapping("/resi/partymember/confirm/getverificationcode") - Result getVerificationCode(@RequestBody VerificationCodeFromDTO fromDto); -} diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/ResiPartymemberFeignClient.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/ResiPartymemberFeignClient.java index d22948a183..3393371ca6 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/ResiPartymemberFeignClient.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/ResiPartymemberFeignClient.java @@ -3,11 +3,16 @@ package com.epmet.modules.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.modules.feign.fallback.ResiPartymemberFeignClientFallBack; +import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; +import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; +import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedFormDTO; import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedSubmitFormDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedResultDTO; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; /** * @Description 居民端陌生人导览 调用epmet-user服务 @@ -30,4 +35,45 @@ public interface ResiPartymemberFeignClient { **/ @PostMapping(value = "resi/partymember/resiwarmheartedapply/submit") Result submit(ResiWarmheartedSubmitFormDTO formDTO); + + /** + * 党员认证页面初始化 + * + * @param fromDto 参数 + * @return Result + * @date 2020/3/30 13:50 + */ + @PostMapping("/resi/partymember/confirm/init") + Result init(@RequestBody PartyMemberInitFromDTO fromDto); + + + /** + * 党员认证页获取手机验证码 + * + * @param fromDto 参数 + * @return Result + * @date 2020/3/30 13:50 + */ + @PostMapping("/resi/partymember/confirm/getverificationcode") + Result getVerificationCode(@RequestBody VerificationCodeFromDTO fromDto); + + + /** + * 党员认证信息提交 + * + * @param partyMemberInfoDTO 参数 + * @return Result + * @date 2020/3/31 10:50 + */ + @PostMapping("/resi/partymember/confirm/submit") + Result submit(@RequestBody PartymemberInfoDTO partyMemberInfoDTO); + + /** + * 党员认证信息补充 + * + * @param partyMemberInfoDTO 参数 + * @return Result + */ + @PostMapping("extra") + Result partyMemberInfoExtra(@RequestBody PartymemberInfoDTO partyMemberInfoDTO); } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java index fddff4a777..79d432f019 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java @@ -5,6 +5,7 @@ import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.ResiRegisterFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.LatestGridInfoResultDTO; import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; @@ -51,5 +52,14 @@ public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "submit", userResiInfoDTO); } + /** + * @Author sun + * @Description 居民端-居民注册根据手机号获取验证码 + **/ + @Override + public Result getVerificationCode(VerificationCodeFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getVerificationCode", formDTO); + } + } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/PartyMemberConfirmFeignClientFallBack.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/PartyMemberConfirmFeignClientFallBack.java deleted file mode 100644 index a42b5b8198..0000000000 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/PartyMemberConfirmFeignClientFallBack.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.epmet.modules.feign.fallback; - -import com.epmet.commons.tools.constant.ServiceConstant; -import com.epmet.commons.tools.utils.ModuleUtils; -import com.epmet.commons.tools.utils.Result; -import com.epmet.modules.feign.PartyMemberConfirmFeignClient; -import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; -import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; -import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; -import org.springframework.stereotype.Component; - -/** - * @author zhaoqifeng - * @dscription - * @date 2020/3/30 16:04 - */ -@Component -public class PartyMemberConfirmFeignClientFallBack implements PartyMemberConfirmFeignClient { - @Override - public Result init(PartyMemberInitFromDTO fromDto) { - return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "init", fromDto); - } - - @Override - public Result getVerificationCode(VerificationCodeFromDTO fromDto) { - return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "getVerificationCode", fromDto); - } -} diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/ResiPartymemberFeignClientFallBack.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/ResiPartymemberFeignClientFallBack.java index da9c740fd4..7559eb81fb 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/ResiPartymemberFeignClientFallBack.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/ResiPartymemberFeignClientFallBack.java @@ -4,6 +4,10 @@ import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.modules.feign.ResiPartymemberFeignClient; +import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; +import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; +import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedFormDTO; import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedSubmitFormDTO; import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedResultDTO; @@ -37,4 +41,24 @@ public class ResiPartymemberFeignClientFallBack implements ResiPartymemberFeignC public Result submit(ResiWarmheartedSubmitFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "submit", formDTO); } + + @Override + public Result init(PartyMemberInitFromDTO fromDto) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "init", fromDto); + } + + @Override + public Result getVerificationCode(VerificationCodeFromDTO fromDto) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "getVerificationCode", fromDto); + } + + @Override + public Result submit(PartymemberInfoDTO partyMemberInfoDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "submit", partyMemberInfoDTO); + } + + @Override + public Result partyMemberInfoExtra(PartymemberInfoDTO partyMemberInfoDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_PARTYMEMBER_SERVER, "partyMemberInfoExtra", partyMemberInfoDTO); + } } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberController.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberController.java index 4f1ae79c86..39c2a91b87 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberController.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberController.java @@ -5,6 +5,7 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.modules.partymember.service.PartyMemberService; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; +import com.epmet.resi.mine.dto.from.PartyMemberSubmitFromDTO; import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; import org.springframework.beans.factory.annotation.Autowired; @@ -49,4 +50,28 @@ public class PartyMemberController { public Result getVerificationCode(@LoginUser TokenDto tokenDto, @RequestBody VerificationCodeFromDTO fromDto) { return partyMemberService.getVerificationCode(tokenDto, fromDto); } + + /** + * 党员认证信息提交 + * + * @param fromDto 参数 + * @return Result + * @date 2020/3/30 13:50 + */ + @PostMapping("submit") + public Result submit(@LoginUser TokenDto tokenDto, @RequestBody PartyMemberSubmitFromDTO fromDto) { + return partyMemberService.submit(tokenDto, fromDto); + } + + /** + * 党员认证信息补充 + * + * @param fromDto 参数 + * @return Result + * @date 2020/3/30 13:50 + */ + @PostMapping("extra") + public Result partyMemberInfoExtra(@LoginUser TokenDto tokenDto, @RequestBody PartyMemberSubmitFromDTO fromDto) { + return partyMemberService.partyMemberInfoExtra(tokenDto, fromDto); + } } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberService.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberService.java index 41b2884d25..b98ee1ebfd 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberService.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberService.java @@ -3,6 +3,7 @@ package com.epmet.modules.partymember.service; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; +import com.epmet.resi.mine.dto.from.PartyMemberSubmitFromDTO; import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; @@ -29,4 +30,22 @@ public interface PartyMemberService { * @return Result */ Result getVerificationCode(TokenDto tokenDto, VerificationCodeFromDTO fromDTO); + + /** + * 党员认证信息提交 + * + * @param tokenDto token + * @param fromDTO 参数 + * @return Result + */ + Result submit(TokenDto tokenDto, PartyMemberSubmitFromDTO fromDTO); + + /** + * 党员认证信息补充 + * + * @param tokenDto token + * @param fromDTO 参数 + * @return Result + */ + Result partyMemberInfoExtra(TokenDto tokenDto, PartyMemberSubmitFromDTO fromDTO); } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberServiceImpl.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberServiceImpl.java index 292729f11f..3ddbbdaef0 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberServiceImpl.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberServiceImpl.java @@ -2,11 +2,13 @@ package com.epmet.modules.partymember.service.impl; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; -import com.epmet.modules.feign.PartyMemberConfirmFeignClient; +import com.epmet.modules.feign.ResiPartymemberFeignClient; import com.epmet.modules.partymember.service.PartyMemberService; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; +import com.epmet.resi.mine.dto.from.PartyMemberSubmitFromDTO; import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -20,16 +22,36 @@ import org.springframework.stereotype.Service; public class PartyMemberServiceImpl implements PartyMemberService { @Autowired - PartyMemberConfirmFeignClient partyMemberConfirmFeignClient; + ResiPartymemberFeignClient resiPartymemberFeignClient; @Override public Result init(PartyMemberInitFromDTO fromDto) { - return partyMemberConfirmFeignClient.init(fromDto); + return resiPartymemberFeignClient.init(fromDto); } @Override public Result getVerificationCode(TokenDto tokenDto, VerificationCodeFromDTO fromDTO) { fromDTO.setUserId(tokenDto.getUserId()); - return partyMemberConfirmFeignClient.getVerificationCode(fromDTO); + return resiPartymemberFeignClient.getVerificationCode(fromDTO); + } + + @Override + public Result submit(TokenDto tokenDto, PartyMemberSubmitFromDTO fromDTO) { + PartymemberInfoDTO partyMemberInfo = fromDTO.getPartyMemberInfo(); + partyMemberInfo.setCustomerId(fromDTO.getCustomerId()); + partyMemberInfo.setGridId(fromDTO.getGridId()); + partyMemberInfo.setUserId(tokenDto.getUserId()); + partyMemberInfo.setPartymemberVisitId(fromDTO.getVisitId()); + return resiPartymemberFeignClient.submit(partyMemberInfo); + } + + @Override + public Result partyMemberInfoExtra(TokenDto tokenDto, PartyMemberSubmitFromDTO fromDTO) { + PartymemberInfoDTO partyMemberInfo = fromDTO.getPartyMemberInfo(); + partyMemberInfo.setCustomerId(fromDTO.getCustomerId()); + partyMemberInfo.setGridId(fromDTO.getGridId()); + partyMemberInfo.setUserId(tokenDto.getUserId()); + partyMemberInfo.setPartymemberVisitId(fromDTO.getVisitId()); + return resiPartymemberFeignClient.partyMemberInfoExtra(partyMemberInfo); } } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/controller/ResiRegisterController.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/controller/ResiRegisterController.java index 2bb24c3a1f..a3a2b7cfc6 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/controller/ResiRegisterController.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/controller/ResiRegisterController.java @@ -5,9 +5,9 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.ResiRegisterFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.modules.resiregister.service.ResiRegisterService; -import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedSubmitFormDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -47,5 +47,15 @@ public class ResiRegisterController { return resiRegisterService.submit(tokenDTO, userResiInfoDTO); } + /** + * @param + * @Author sun + * @Description 居民端-居民注册根据手机号获取验证码 + **/ + @PostMapping("getverificationcode") + public Result getVerificationCode(@LoginUser TokenDto tokenDTO, @RequestBody VerificationCodeFormDTO formDTO) { + return resiRegisterService.getVerificationCode(tokenDTO, formDTO); + } + } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/ResiRegisterService.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/ResiRegisterService.java index 5c4780b0f1..6a675b15f2 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/ResiRegisterService.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/ResiRegisterService.java @@ -4,6 +4,7 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.ResiRegisterFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.ResiRegisterResultDTO; /** @@ -32,4 +33,13 @@ public interface ResiRegisterService { */ Result submit(TokenDto tokenDTO, UserResiInfoDTO userResiInfoDTO); + /** + * 居民端-居民注册根据手机号获取验证码 + * + * @param + * @return void + * @author sun + */ + Result getVerificationCode(TokenDto tokenDTO, VerificationCodeFormDTO formDTO); + } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/impl/ResiRegisterServiceImpl.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/impl/ResiRegisterServiceImpl.java index f7324d7c42..d4488e08de 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/impl/ResiRegisterServiceImpl.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/resiregister/service/impl/ResiRegisterServiceImpl.java @@ -4,6 +4,7 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.ResiRegisterFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.resiregister.service.ResiRegisterService; @@ -23,21 +24,60 @@ public class ResiRegisterServiceImpl implements ResiRegisterService { @Autowired private EpmetUserFeignClient epmetUserFeignClient; + /** + * @param + * @Author sun + * @Description 居民端-居民注册页面初始化-居民注册访问记录表新增数据 + **/ @Override public Result init(TokenDto tokenDTO, ResiRegisterFormDTO formDTO) { if (null == tokenDTO || StringUtils.isBlank(tokenDTO.getUserId())) { return new Result().error(ModuleConstant.USER_NOT_NULL); } + if (null == formDTO || StringUtils.isBlank(formDTO.getCustomerId()) + || StringUtils.isBlank(formDTO.getGridId()) + || StringUtils.isBlank(formDTO.getVisitFrom())) { + return new Result().error(ModuleConstant.PARAMETER_EXCEPTION); + } formDTO.setUserId(tokenDTO.getUserId()); return epmetUserFeignClient.init(formDTO); } + /** + * @param + * @Author sun + * @Description 居民端-居民注册信息提交 + **/ @Override - public Result submit(TokenDto tokenDTO, UserResiInfoDTO userResiInfoDTO) { + public Result submit(TokenDto tokenDTO, UserResiInfoDTO formDTO) { if (null == tokenDTO || StringUtils.isBlank(tokenDTO.getUserId())) { return new Result().error(ModuleConstant.USER_NOT_NULL); } - userResiInfoDTO.setUserId(tokenDTO.getUserId()); - return epmetUserFeignClient.submit(userResiInfoDTO); + if (null == formDTO || StringUtils.isBlank(formDTO.getCustomerId()) + || StringUtils.isBlank(formDTO.getGridId()) + || StringUtils.isBlank(formDTO.getResiVisitId())) { + return new Result().error(ModuleConstant.PARAMETER_EXCEPTION); + } + formDTO.setUserId(tokenDTO.getUserId()); + return epmetUserFeignClient.submit(formDTO); } + + /** + * @param + * @Author sun + * @Description 居民端-居民注册根据手机号获取验证码 + **/ + @Override + public Result getVerificationCode(TokenDto tokenDTO, VerificationCodeFormDTO formDTO) { + if (null == tokenDTO || StringUtils.isBlank(tokenDTO.getUserId())) { + return new Result().error(ModuleConstant.USER_NOT_NULL); + } + if (null == formDTO || StringUtils.isBlank(formDTO.getMobile()) + || StringUtils.isBlank(formDTO.getResiVisitId())) { + return new Result().error(ModuleConstant.PARAMETER_EXCEPTION); + } + formDTO.setUserId(tokenDTO.getUserId()); + return epmetUserFeignClient.getVerificationCode(formDTO); + } + } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java index 7c826f258c..fdf94c1efa 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java @@ -27,4 +27,9 @@ public interface ModuleConstant extends Constant { * 接口只限居民端调用 */ String FOR_RESI_CALL="当前接口只限居民端调用"; + + /** + * 参数异常-必要参数存在空值 + */ + String PARAMETER_EXCEPTION="必要参数存在空值,请检查参数赋值情况!"; } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedServiceImpl.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedServiceImpl.java index 0239db3aa2..ae2ac8809f 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedServiceImpl.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedServiceImpl.java @@ -2,6 +2,7 @@ package com.epmet.modules.warmhearted.service.impl; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.modules.feign.ResiPartymemberFeignClient; import com.epmet.modules.utils.ModuleConstant; import com.epmet.modules.warmhearted.service.ResiWarmheartedService; @@ -23,20 +24,41 @@ public class ResiWarmheartedServiceImpl implements ResiWarmheartedService { @Autowired private ResiPartymemberFeignClient resiPartymemberFeignClient; + /** + * @param + * @Author sun + * @Description 居民端-热心居民申请页面初始化-查询有无申请、新增访问行为记录数据 + **/ @Override public Result init(TokenDto tokenDTO, ResiWarmheartedFormDTO formDTO) { if (null == tokenDTO || StringUtils.isBlank(tokenDTO.getUserId())) { return new Result().error(ModuleConstant.USER_NOT_NULL); } + if (null == formDTO || StringUtils.isBlank(formDTO.getCustomerId()) + || StringUtils.isBlank(formDTO.getGridId()) + || StringUtils.isBlank(formDTO.getVisitFrom())) { + return new Result().error(ModuleConstant.PARAMETER_EXCEPTION); + } formDTO.setUserId(tokenDTO.getUserId()); return resiPartymemberFeignClient.init(formDTO); } + /** + * @param + * @Author sun + * @Description 居民端-热心居民申请-提交申请数据 + **/ @Override public Result submit(TokenDto tokenDTO, ResiWarmheartedSubmitFormDTO formDTO) { if (null == tokenDTO || StringUtils.isBlank(tokenDTO.getUserId())) { return new Result().error(ModuleConstant.USER_NOT_NULL); } + if (null == formDTO || StringUtils.isBlank(formDTO.getCustomerId()) + || StringUtils.isBlank(formDTO.getGridId()) + || StringUtils.isBlank(formDTO.getResiWarmVisitId()) + || StringUtils.isBlank(formDTO.getReason())) { + return new Result().error(ModuleConstant.PARAMETER_EXCEPTION); + } formDTO.setUserId(tokenDTO.getUserId()); return resiPartymemberFeignClient.submit(formDTO); } diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberInfoDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberInfoDTO.java index 21b7eb5bac..b9d15433d6 100644 --- a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberInfoDTO.java +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberInfoDTO.java @@ -99,6 +99,11 @@ public class PartymemberInfoDTO implements Serializable { */ private String building; + /** + * 组织关系类型 0:工作单位 1:其他街道 + */ + private String organizationType; + /** * 党组织关系(工作单位或其他街道) */ @@ -144,4 +149,9 @@ public class PartymemberInfoDTO implements Serializable { */ private Date updatedTime; + /** + * 验证码 + */ + private String code; + } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberRegisterRelationDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberRegisterRelationDTO.java index dc2e9d5fa8..35ebdcbb38 100644 --- a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberRegisterRelationDTO.java +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/partymember/PartymemberRegisterRelationDTO.java @@ -57,17 +57,17 @@ public class PartymemberRegisterRelationDTO implements Serializable { /** * 首次注册用户 (0表示不参与计数 1表示参与计数) */ - private String firstRegister; + private Integer firstRegister; /** * 注册用户 (0表示不参与计数 1表示参与计数) */ - private String register; + private Integer register; /** * 参与用户 (0表示不参与计数 1表示参与计数) */ - private String partake; + private Integer partake; /** * 删除标识:0.未删除 1.已删除 diff --git a/epmet-module/resi-partymember/resi-partymember-server/pom.xml b/epmet-module/resi-partymember/resi-partymember-server/pom.xml index 4cdb866055..c86652bf6b 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/pom.xml +++ b/epmet-module/resi-partymember/resi-partymember-server/pom.xml @@ -70,6 +70,23 @@ 2.0.0 compile + + info.debatty + java-string-similarity + 1.2.1 + + + org.jetbrains + annotations + RELEASE + compile + + + com.epmet + epmet-user-server + 2.0.0 + compile + diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/PartyMemberConstant.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/PartyMemberConstant.java index 5cccc88819..a544a768d9 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/PartyMemberConstant.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/constant/PartyMemberConstant.java @@ -29,7 +29,7 @@ public interface PartyMemberConstant { /** * 信息补充 */ - String OPERATE_EXTRA = "auto_extra"; + String OPERATE_EXTRA = "extra"; /** * 未提交 @@ -40,4 +40,45 @@ public interface PartyMemberConstant { * 已提交 */ String SUBMITTED = "1"; + + /** + * 党员自动认证是否成功基准 + */ + String BENCHMARK = "110010"; + + /** + * 比对结果大部分相同最低值 + */ + + Double MOST = 0.8; + + /** + * 比对结果小部分相同最低值 + */ + Double SMALL = 0.5; + + /** + * 比对结果相同 + */ + String SAME = "1"; + + /** + * 比对结果不同 + */ + String DIFF = "0"; + + /** + * 审核状态 待审核 + */ + String UNDER_AUDITTING = "under_auditting"; + + /** + * 审核状态 通过 + */ + String APPROVED = "approved"; + + /** + * 审核状态 未通过 + */ + String REJECTED = "rejected"; } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/UserResiInfoFeignClient.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java similarity index 55% rename from epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/UserResiInfoFeignClient.java rename to epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java index 1ba46a8572..69c93422a7 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/UserResiInfoFeignClient.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java @@ -3,8 +3,9 @@ package com.epmet.modules.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.UserRoleDTO; import com.epmet.dto.form.UserResiInfoFormDTO; -import com.epmet.modules.feign.fallback.UserResiInfoFeignClientFallBack; +import com.epmet.modules.feign.fallback.EpmetUserFeignClientFallBack; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -14,8 +15,8 @@ import org.springframework.web.bind.annotation.RequestBody; * @dscription * @date 2020/3/30 14:51 */ -@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = UserResiInfoFeignClientFallBack.class) -public interface UserResiInfoFeignClient { +@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class) +public interface EpmetUserFeignClient { /** * 查询用户注册信息 @@ -25,4 +26,21 @@ public interface UserResiInfoFeignClient { @PostMapping("/epmetuser/userresiinfo/getUserResiInfoDTO") Result getUserResiInfoDTO(@RequestBody UserResiInfoFormDTO userResiInfoFormDTO); + /** + * 党员认证时,如果没有注册居民,则注册居民信息 + * @param userResiInfoDTO + * @author zhaoqifeng + **/ + @PostMapping("/epmetuser/userresiinfo/saveResiInfo") + Result saveResiInfo (@RequestBody UserResiInfoDTO userResiInfoDTO); + + /** + * 添加用户角色关系 + * + * @param userRoleDTO 参数 + * @return Result + */ + @PostMapping("/epmetuser/userrole/saveUserRole") + Result saveUserRole(@RequestBody UserRoleDTO userRoleDTO); + } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/UserResiInfoFeignClientFallBack.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java similarity index 55% rename from epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/UserResiInfoFeignClientFallBack.java rename to epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java index abde8a0c44..257bbb295e 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/UserResiInfoFeignClientFallBack.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java @@ -4,8 +4,9 @@ import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.UserRoleDTO; import com.epmet.dto.form.UserResiInfoFormDTO; -import com.epmet.modules.feign.UserResiInfoFeignClient; +import com.epmet.modules.feign.EpmetUserFeignClient; import org.springframework.stereotype.Component; /** @@ -14,9 +15,19 @@ import org.springframework.stereotype.Component; * @date 2020/3/30 14:53 */ @Component -public class UserResiInfoFeignClientFallBack implements UserResiInfoFeignClient { +public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { @Override public Result getUserResiInfoDTO(UserResiInfoFormDTO userResiInfoFormDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserResiInfoDTO", userResiInfoFormDTO); } + + @Override + public Result saveResiInfo(UserResiInfoDTO userResiInfoDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "saveResiInfo", userResiInfoDTO); + } + + @Override + public Result saveUserRole(UserRoleDTO userRoleDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "saveUserRole", userRoleDTO); + } } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java index 6142fde61d..22be95f523 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/controller/PartyMemberConfirmController.java @@ -5,6 +5,7 @@ import com.epmet.modules.partymember.service.PartyMemberConfirmService; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -12,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** - * * 党员认证 * * @author zhaoqifeng @@ -48,4 +48,27 @@ public class PartyMemberConfirmController { public Result getVerificationCode(@RequestBody VerificationCodeFromDTO fromDto) { return partyMemberConfirmService.getVerificationCode(fromDto); } + + /** + * 党员认证信息提交 + * + * @param partyMemberInfoDTO 参数 + * @return Result + * @date 2020/3/31 10:50 + */ + @PostMapping("submit") + public Result submit(@RequestBody PartymemberInfoDTO partyMemberInfoDTO) { + return partyMemberConfirmService.submit(partyMemberInfoDTO); + } + + /** + * 党员认证信息补充 + * + * @param partyMemberInfoDTO 参数 + * @return Result + */ + @PostMapping("extra") + public Result partyMemberInfoExtra(@RequestBody PartymemberInfoDTO partyMemberInfoDTO) { + return partyMemberConfirmService.partyMemberInfoExtra(partyMemberInfoDTO); + } } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java index 83d17e7fef..7a879e4072 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberBaseInfoDao.java @@ -19,15 +19,42 @@ package com.epmet.modules.partymember.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.modules.partymember.entity.PartymemberBaseInfoEntity; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + /** - * 党员库基本信息表 + * 党员库基本信息表 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-03-30 */ @Mapper public interface PartymemberBaseInfoDao extends BaseDao { - + + /** + * 根据身份证匹配数据 + * + * @param param 参数 + * @return List + */ + List selectBaseInfoByIdCard(PartymemberInfoDTO param); + + /** + * 手根据机号匹配数据 + * + * @param param 参数 + * @return List + */ + List selectBaseInfoByMobile(PartymemberInfoDTO param); + + /** + * 根据姓名匹配数据 + * + * @param param 参数 + * @return List + */ + List selectBaseInfoByName(PartymemberInfoDTO param); + } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberInfoEntity.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberInfoEntity.java index 208319f394..11da2e7334 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberInfoEntity.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberInfoEntity.java @@ -18,13 +18,10 @@ package com.epmet.modules.partymember.entity; import com.baomidou.mybatisplus.annotation.TableName; - import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; -import java.util.Date; - /** * 党员认证信息表 * @@ -98,6 +95,11 @@ public class PartymemberInfoEntity extends BaseEpmetEntity { */ private String building; + /** + * 组织关系类型 0:工作单位 1:其他街道 + */ + private String organizationType; + /** * 党组织关系(工作单位或其他街道) */ diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberRegisterRelationEntity.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberRegisterRelationEntity.java index d040ca3b74..07aa0380ff 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberRegisterRelationEntity.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/entity/PartymemberRegisterRelationEntity.java @@ -18,13 +18,10 @@ package com.epmet.modules.partymember.entity; import com.baomidou.mybatisplus.annotation.TableName; - import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; -import java.util.Date; - /** * 党员注册关系表 用于统计客户网格的认证党员数 * @@ -56,16 +53,16 @@ public class PartymemberRegisterRelationEntity extends BaseEpmetEntity { /** * 首次注册用户 (0表示不参与计数 1表示参与计数) */ - private String firstRegister; + private Integer firstRegister; /** * 注册用户 (0表示不参与计数 1表示参与计数) */ - private String register; + private Integer register; /** * 参与用户 (0表示不参与计数 1表示参与计数) */ - private String partake; + private Integer partake; } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberInfoExcel.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberInfoExcel.java index 33e3afe872..100bde6481 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberInfoExcel.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberInfoExcel.java @@ -70,6 +70,9 @@ public class PartymemberInfoExcel { @Excel(name = "楼栋单元") private String building; + @Excel(name = "组织关系类型 0:工作单位 1:其他街道") + private String organizationType; + @Excel(name = "党组织关系(工作单位或其他街道)") private String extraOrganization; diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberRegisterRelationExcel.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberRegisterRelationExcel.java index b9a268a211..69e3221b7b 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberRegisterRelationExcel.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/excel/PartymemberRegisterRelationExcel.java @@ -44,13 +44,13 @@ public class PartymemberRegisterRelationExcel { private String userId; @Excel(name = "首次注册用户 (0表示不参与计数 1表示参与计数)") - private String firstRegister; + private Integer firstRegister; @Excel(name = "注册用户 (0表示不参与计数 1表示参与计数)") - private String register; + private Integer register; @Excel(name = "参与用户 (0表示不参与计数 1表示参与计数)") - private String partake; + private Integer partake; @Excel(name = "删除标识:0.未删除 1.已删除") private Integer delFlag; diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberConfirmService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberConfirmService.java index ce67b62177..e9503682e1 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberConfirmService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartyMemberConfirmService.java @@ -4,9 +4,9 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO; import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO; import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; /** - * * 党员认证 * * @author zhaoqifeng @@ -15,7 +15,6 @@ import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO; public interface PartyMemberConfirmService { /** - * * 党员认证页面初始化 * * @param fromDto 参数 @@ -25,9 +24,26 @@ public interface PartyMemberConfirmService { /** * 获取手机验证码 + * * @param fromDTO 参数 * @return Result */ - Result getVerificationCode( VerificationCodeFromDTO fromDTO); + Result getVerificationCode(VerificationCodeFromDTO fromDTO); + + /** + * 党员认证信息提交 + * + * @param partyMemberInfoDTO 参数 + * @return Result + */ + Result submit(PartymemberInfoDTO partyMemberInfoDTO); + + /** + * 党员信息补充 + * + * @param partyMemberInfoDTO 参数 + * @return Result + */ + Result partyMemberInfoExtra(PartymemberInfoDTO partyMemberInfoDTO); } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java index 3c5fd5a308..f9b379a912 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/PartymemberBaseInfoService.java @@ -21,6 +21,8 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.modules.partymember.entity.PartymemberBaseInfoEntity; import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmAutoDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; import java.util.List; import java.util.Map; @@ -92,4 +94,11 @@ public interface PartymemberBaseInfoService extends BaseService init(PartyMemberInitFromDTO fromDto) { PartyMemberInitResultDTO result = new PartyMemberInitResultDTO(); @@ -61,36 +74,30 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService UserResiInfoFormDTO userResiInfoFormDTO = new UserResiInfoFormDTO(); userResiInfoFormDTO.setCustomerId(fromDto.getCustomerId()); userResiInfoFormDTO.setUserId(fromDto.getUserId()); - Result userResiInfoResult = userResiInfoFeignClient.getUserResiInfoDTO(userResiInfoFormDTO); + Result userResiInfoResult = epmetUserFeignClient.getUserResiInfoDTO(userResiInfoFormDTO); result.setPartyMemberInfo(ConvertUtils.sourceToTarget(userResiInfoResult.getData(), PartymemberInfoDTO.class)); } // 将访问行为存入热心居民申请行为记录表 - PartymemberVisitEntity partymemberVisitEntity = new PartymemberVisitEntity(); - partymemberVisitEntity.setCustomerId(fromDto.getCustomerId()); - partymemberVisitEntity.setGridId(fromDto.getGridId()); - partymemberVisitEntity.setUserId(fromDto.getUserId()); - partymemberVisitEntity.setOperateVisit(PartyMemberConstant.OPERATE_INITIALIZE); - partymemberVisitEntity.setVisitFrom(fromDto.getVisitFrom()); - partymemberVisitEntity.setVisitTime(new Date()); - partymemberVisitService.insert(partymemberVisitEntity); + String visitId = saveOrUpdateVisit(null, fromDto, PartyMemberConstant.OPERATE_INITIALIZE); - result.setVisitId(partymemberVisitEntity.getId()); + result.setVisitId(visitId); return new Result().ok(result); } @Override + @Transactional(rollbackFor = Exception.class) public Result getVerificationCode(VerificationCodeFromDTO fromDTO) { Result result = new Result(); //手机是否可用 - PartymemberInfoEntity partyMemberInfoParam= new PartymemberInfoEntity(); + PartymemberInfoEntity partyMemberInfoParam = new PartymemberInfoEntity(); partyMemberInfoParam.setMobile(fromDTO.getMobile()); PartymemberInfoDTO partyMemberInfoResult = partymemberInfoService.getPartyMemberInfoByMobile(partyMemberInfoParam); if (null != partyMemberInfoResult) { - //TODO - result.setCode(0); - result.setMsg(""); + //TODO code待定 + result.setCode(EpmetErrorCode.MOBILE_HAS_BEEN_USED.getValue()); + result.setMsg(EpmetErrorCode.MOBILE_HAS_BEEN_USED.getName()); return result; } @@ -101,12 +108,157 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService partyMemberInfoRedis.setUserMobileCode(fromDTO.getUserId(), fromDTO.getMobile(), code); //将访问记录更新到热心居民申请行为记录表 - PartymemberVisitEntity partymemberVisitEntity = new PartymemberVisitEntity(); - partymemberVisitEntity.setId(fromDTO.getVisitId()); - partymemberVisitEntity.setVisitTime(new Date()); - partymemberVisitEntity.setOperateVisit(PartyMemberConstant.OPERATE_OPERATE_SMS_CODE); - partymemberVisitService.updateById(partymemberVisitEntity); + saveOrUpdateVisit(fromDTO.getVisitId(), null, PartyMemberConstant.OPERATE_OPERATE_SMS_CODE); + + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public Result submit(PartymemberInfoDTO partyMemberInfoDTO) { + Result result = new Result(); + + //校验手机验证码是否正常 + String code = partyMemberInfoRedis.getUserMobileCode(partyMemberInfoDTO.getUserId(), + partyMemberInfoDTO.getMobile(), + partyMemberInfoDTO.getCode()); + if (null == code) { + saveOrUpdateVisit(partyMemberInfoDTO.getPartymemberVisitId(), null, + PartyMemberConstant.OPERATE_AUTO_FAILED); + //TODO code待定 + result.setCode(EpmetErrorCode.MOBILE_CODE_ERROR.getValue()); + result.setMsg(EpmetErrorCode.MOBILE_CODE_ERROR.getName()); + return result; + } + + //获取党员基本信息 + PartymemberConfirmAutoDTO confirmAutoDTO = + partymemberBaseInfoService.getPartyMemberBaseInfo(partyMemberInfoDTO); + + //党员信息存入党员认证信息表 + PartymemberInfoEntity partyMemberInfoEntity = ConvertUtils.sourceToTarget(partyMemberInfoDTO, + PartymemberInfoEntity.class); + + if (confirmAutoDTO == null || confirmAutoDTO.getResult().compareTo(PartyMemberConstant.BENCHMARK) < 0) { + //自动认证失败 + partyMemberInfoEntity.setConfirmResult("1"); + partymemberInfoService.insert(partyMemberInfoEntity); + //将访问记录更新到热心居民申请行为记录表 + saveOrUpdateVisit(partyMemberInfoDTO.getPartymemberVisitId(), null, PartyMemberConstant.OPERATE_AUTO_FAILED); + //TODO code待定 + result.setCode(EpmetErrorCode.AUTO_CONFIRM_FAILED.getValue()); + result.setMsg(EpmetErrorCode.AUTO_CONFIRM_FAILED.getName()); + } else { + //自动认证成功 + partyMemberInfoEntity.setConfirmResult("0"); + partymemberInfoService.insert(partyMemberInfoEntity); + //将访问记录更新到热心居民申请行为记录表 + saveOrUpdateVisit(partyMemberInfoDTO.getPartymemberVisitId(), null, PartyMemberConstant.OPERATE_AUTO_SUCCESS); + //添加用户党员角色关系 + UserRoleDTO userRole = new UserRoleDTO(); + userRole.setUserId(partyMemberInfoDTO.getUserId()); + userRole.setRoleKey(UserConstant.ROLE_PARTYMEMBER); + epmetUserFeignClient.saveUserRole(userRole); + //存入党员注册关系表 用于统计客户网格的认证党员数 + saveRegisterRelation(partyMemberInfoDTO); + } + + //将自动认证结果存入党员认证自动审核表 + if (confirmAutoDTO != null) { + confirmAutoDTO.setPartymemberInfoId(partyMemberInfoEntity.getPartymemberVisitId()); + partymemberConfirmAutoService.insert(ConvertUtils.sourceToTarget(confirmAutoDTO, + PartymemberConfirmAutoEntity.class)); + } + + //判断是否已注册居民,如果没有则注册居民 + isResiRegister(partyMemberInfoDTO); return result; } + + @Override + public Result partyMemberInfoExtra(PartymemberInfoDTO infoDTO) { + //将访问记录更新到热心居民申请行为记录表 + saveOrUpdateVisit(infoDTO.getPartymemberVisitId(), null, PartyMemberConstant.OPERATE_EXTRA); + + //补充信息更新到党员基本信息表 + PartymemberInfoDTO partyMemberInfo = partymemberInfoService.getPartyMemberInfo(infoDTO); + infoDTO.setId(partyMemberInfo.getId()); + partymemberInfoService.updateById(ConvertUtils.sourceToTarget(infoDTO, PartymemberInfoEntity.class)); + + //待审核数据存入党员认证人工审核表 + PartymemberConfirmManualEntity manualEntity = new PartymemberConfirmManualEntity(); + manualEntity.setCustomerId(infoDTO.getCustomerId()); + manualEntity.setGridId(infoDTO.getGridId()); + manualEntity.setUserId(infoDTO.getUserId()); + manualEntity.setPartymemberInfoId(infoDTO.getId()); + manualEntity.setAuditStatus(PartyMemberConstant.UNDER_AUDITTING); + partymemberConfirmManualService.insert(manualEntity); + + return new Result(); + } + + /** + * 判断是否已注册居民,如果没有则注册居民 + * + * @param partyMemberInfoDTO 参数 + */ + private void isResiRegister(PartymemberInfoDTO partyMemberInfoDTO) { + UserResiInfoFormDTO userResiInfoFormDTO = new UserResiInfoFormDTO(); + userResiInfoFormDTO.setCustomerId(partyMemberInfoDTO.getCustomerId()); + userResiInfoFormDTO.setUserId(partyMemberInfoDTO.getUserId()); + Result userResiInfoResult = epmetUserFeignClient.getUserResiInfoDTO(userResiInfoFormDTO); + if (null == userResiInfoResult.getData()) { + UserResiInfoDTO userResiInfoDTO = ConvertUtils.sourceToTarget(partyMemberInfoDTO, UserResiInfoDTO.class); + userResiInfoDTO.setRegMobile(partyMemberInfoDTO.getMobile()); + userResiInfoDTO.setResiVisitId(partyMemberInfoDTO.getPartymemberVisitId()); + epmetUserFeignClient.saveResiInfo(userResiInfoDTO); + } + } + + /** + * 存入党员注册关系表 用于统计客户网格的认证党员数 + * + * @param partyMemberInfoDTO 参数 + */ + private void saveRegisterRelation(PartymemberInfoDTO partyMemberInfoDTO) { + PartymemberRegisterRelationEntity registerRelationEntity = new PartymemberRegisterRelationEntity(); + registerRelationEntity.setCustomerId(partyMemberInfoDTO.getCustomerId()); + registerRelationEntity.setGridId(partyMemberInfoDTO.getGridId()); + registerRelationEntity.setUserId(partyMemberInfoDTO.getUserId()); + registerRelationEntity.setFirstRegister(1); + registerRelationEntity.setRegister(1); + registerRelationEntity.setPartake(1); + partymemberRegisterRelationService.insert(registerRelationEntity); + } + + + /** + * 保存或者更新热心居民申请行为记录表 + * + * @param visitId 主键 + * @param fromDTO 参数 + * @param operate 操作 + * @return String + */ + private String saveOrUpdateVisit(String visitId, PartyMemberInitFromDTO fromDTO, String operate) { + PartymemberVisitEntity partymemberVisitEntity = new PartymemberVisitEntity(); + if (null == visitId) { + partymemberVisitEntity.setCustomerId(fromDTO.getCustomerId()); + partymemberVisitEntity.setGridId(fromDTO.getGridId()); + partymemberVisitEntity.setUserId(fromDTO.getUserId()); + partymemberVisitEntity.setOperateVisit(operate); + partymemberVisitEntity.setVisitFrom(fromDTO.getVisitFrom()); + partymemberVisitEntity.setVisitTime(new Date()); + partymemberVisitService.insert(partymemberVisitEntity); + } else { + partymemberVisitEntity.setId(visitId); + partymemberVisitEntity.setVisitTime(new Date()); + partymemberVisitEntity.setOperateVisit(operate); + partymemberVisitService.updateById(partymemberVisitEntity); + } + + return partymemberVisitEntity.getId(); + } + } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java index ff2372e058..37d11ff2db 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberBaseInfoServiceImpl.java @@ -23,22 +23,25 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.constant.PartyMemberConstant; import com.epmet.modules.partymember.dao.PartymemberBaseInfoDao; import com.epmet.modules.partymember.entity.PartymemberBaseInfoEntity; import com.epmet.modules.partymember.redis.PartymemberBaseInfoRedis; import com.epmet.modules.partymember.service.PartymemberBaseInfoService; import com.epmet.resi.partymember.dto.partymember.PartymemberBaseInfoDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmAutoDTO; +import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; +import info.debatty.java.stringsimilarity.JaroWinkler; 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; +import java.util.*; +import java.util.stream.Collectors; /** - * 党员库基本信息表 + * 党员库基本信息表 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-03-30 @@ -46,59 +49,223 @@ import java.util.Map; @Service public class PartymemberBaseInfoServiceImpl extends BaseServiceImpl implements PartymemberBaseInfoService { - @Autowired - private PartymemberBaseInfoRedis partymemberBaseInfoRedis; - - @Override - public PageData page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, PartymemberBaseInfoDTO.class); - } - - @Override - public List list(Map params) { - List entityList = baseDao.selectList(getWrapper(params)); - - return ConvertUtils.sourceToTarget(entityList, PartymemberBaseInfoDTO.class); - } - - private QueryWrapper getWrapper(Map params){ - String id = (String)params.get(FieldConstant.ID_HUMP); - - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); - - return wrapper; - } - - @Override - public PartymemberBaseInfoDTO get(String id) { - PartymemberBaseInfoEntity entity = baseDao.selectById(id); - return ConvertUtils.sourceToTarget(entity, PartymemberBaseInfoDTO.class); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void save(PartymemberBaseInfoDTO dto) { - PartymemberBaseInfoEntity entity = ConvertUtils.sourceToTarget(dto, PartymemberBaseInfoEntity.class); - insert(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(PartymemberBaseInfoDTO dto) { - PartymemberBaseInfoEntity entity = ConvertUtils.sourceToTarget(dto, PartymemberBaseInfoEntity.class); - updateById(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(String[] ids) { - // 逻辑删除(@TableLogic 注解) - baseDao.deleteBatchIds(Arrays.asList(ids)); - } + @Autowired + private PartymemberBaseInfoRedis partymemberBaseInfoRedis; + + private final static String EQUAL = "11"; + private final static int START = 0; + private final static int ID_CARD_COUNT = 2; + private final static int MOBILE_COUNT = 4; + private final static int NAME_COUNT = 6; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, PartymemberBaseInfoDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, PartymemberBaseInfoDTO.class); + } + + private QueryWrapper getWrapper(Map params) { + String id = (String) params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public PartymemberBaseInfoDTO get(String id) { + PartymemberBaseInfoEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, PartymemberBaseInfoDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(PartymemberBaseInfoDTO dto) { + PartymemberBaseInfoEntity entity = ConvertUtils.sourceToTarget(dto, PartymemberBaseInfoEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(PartymemberBaseInfoDTO dto) { + PartymemberBaseInfoEntity entity = ConvertUtils.sourceToTarget(dto, PartymemberBaseInfoEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + public PartymemberConfirmAutoDTO getPartyMemberBaseInfo(PartymemberInfoDTO partyMemberInfo) { + + PartymemberConfirmAutoDTO confirmAutoDTO; + + String name = partyMemberInfo.getSurname().concat(partyMemberInfo.getName()); + + List sortList = new ArrayList<>(); + + //根据身份证匹配数据 + List idCardList = baseDao.selectBaseInfoByIdCard(partyMemberInfo); + + if (null != idCardList && idCardList.size() > 0) { + //优先判断身份证和手机号 + Optional matchingResult = + idCardList.stream().filter(baseInfo -> baseInfo.getMobile().equals(partyMemberInfo.getMobile())).findFirst(); + + if (matchingResult.isPresent()) { + confirmAutoDTO = getResult(matchingResult.get(), partyMemberInfo); + return confirmAutoDTO; + } + + //判断身份证和姓名 + matchingResult = idCardList.stream().filter(baseInfo -> baseInfo.getName().equals(name)).findFirst(); + + if (matchingResult.isPresent()) { + confirmAutoDTO = getResult(matchingResult.get(), partyMemberInfo); + return confirmAutoDTO; + } + + //获取匹配度最高的数据 + sortList.add(idCardList.stream().sorted(Comparator.comparing((PartymemberBaseInfoEntity p) -> + getSimilarity(p, partyMemberInfo)).reversed()).collect(Collectors.toList()).get(0)); + + } else { + //根据手机号匹配数据 + List mobileList = baseDao.selectBaseInfoByIdCard(partyMemberInfo); + + if (null != mobileList && mobileList.size() > 0) { + //判断手机号和姓名 + Optional matchingResult = + mobileList.stream().filter(baseInfo -> baseInfo.getName().equals(name)).findFirst(); + + if (matchingResult.isPresent()) { + confirmAutoDTO = getResult(matchingResult.get(), partyMemberInfo); + return confirmAutoDTO; + } + + //获取匹配度最高的数据 + sortList.add(mobileList.stream().sorted(Comparator.comparing((PartymemberBaseInfoEntity p) -> + getSimilarity(p, partyMemberInfo)).reversed()).collect(Collectors.toList()).get(0)); + } else { + //根据姓名匹配数据 + List nameList = baseDao.selectBaseInfoByIdCard(partyMemberInfo); + + if (null != nameList && nameList.size() > 0) { + //获取匹配度最高的数据 + sortList.add(nameList.stream().sorted(Comparator.comparing((PartymemberBaseInfoEntity p) -> + getSimilarity(p, partyMemberInfo)).reversed()).collect(Collectors.toList()).get(0)); + + PartymemberBaseInfoEntity similar = + nameList.stream().sorted(Comparator.comparing((PartymemberBaseInfoEntity p) -> + getSimilarity(p, partyMemberInfo)).reversed()).collect(Collectors.toList()).get(0); + + confirmAutoDTO = getResult(similar, partyMemberInfo); + return confirmAutoDTO; + + } + } + } + return null; + } + + + /** + * 生成返回结果 + * + * @param baseInfo 基本信息 + * @param info 录入信息 + * @return PartymemberConfirmAutoDTO + */ + private PartymemberConfirmAutoDTO getResult(PartymemberBaseInfoEntity baseInfo, PartymemberInfoDTO info) { + PartymemberConfirmAutoDTO confirmAutoDTO = new PartymemberConfirmAutoDTO(); + confirmAutoDTO.setPatryMemberBaseInfoId(baseInfo.getId()); + confirmAutoDTO.setBaseName(baseInfo.getName()); + confirmAutoDTO.setInputName(info.getSurname().concat(info.getName())); + confirmAutoDTO.setBaseIdCard(baseInfo.getIdCard()); + confirmAutoDTO.setInputIdCard(info.getIdCard()); + confirmAutoDTO.setBaseMobile(baseInfo.getMobile()); + confirmAutoDTO.setInputMobile(info.getIdCard()); + confirmAutoDTO.setContrastTime(new Date()); + String result = getSimilarity(baseInfo, info); + //身份证比对结果 + if (EQUAL.equals(result.substring(START, ID_CARD_COUNT))) { + confirmAutoDTO.setIdCardResult(PartyMemberConstant.SAME); + } else { + confirmAutoDTO.setIdCardResult(PartyMemberConstant.DIFF); + } + //手机号比对结果 + if (EQUAL.equals(result.substring(ID_CARD_COUNT, MOBILE_COUNT))) { + confirmAutoDTO.setMobileResult(PartyMemberConstant.SAME); + } else { + confirmAutoDTO.setMobileResult(PartyMemberConstant.DIFF); + } + //姓名比对结果 + if (EQUAL.equals(result.substring(MOBILE_COUNT, NAME_COUNT))) { + confirmAutoDTO.setNameResult(PartyMemberConstant.SAME); + } else { + confirmAutoDTO.setNameResult(PartyMemberConstant.DIFF); + } + confirmAutoDTO.setResult(result); + return confirmAutoDTO; + } + + + /** + * 相似度判断 + * + * @param baseInfo 基本信息 + * @param info 录入信息 + * @return String + */ + private String getSimilarity(PartymemberBaseInfoEntity baseInfo, PartymemberInfoDTO info) { + + String result = ""; + + JaroWinkler jw = new JaroWinkler(); + double idCardResult = jw.similarity(baseInfo.getIdCard(), info.getIdCard()); + double mobileResult = jw.similarity(baseInfo.getMobile(), info.getMobile()); + double nameResult = jw.similarity(baseInfo.getName(), info.getName()); + if (idCardResult > PartyMemberConstant.MOST) { + result.concat("10"); + } else if (idCardResult < PartyMemberConstant.SMALL) { + result.concat("00"); + } else { + result.concat("01"); + } + + if (mobileResult > PartyMemberConstant.MOST) { + result.concat("10"); + } else if (mobileResult < PartyMemberConstant.SMALL) { + result.concat("00"); + } else { + result.concat("01"); + } + + if (nameResult > PartyMemberConstant.MOST) { + result.concat("10"); + } else if (nameResult < PartyMemberConstant.SMALL) { + result.concat("00"); + } else { + result.concat("01"); + } + + return result; + + } } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/dao/ResiWarmheartedApplyDao.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/dao/ResiWarmheartedApplyDao.java index 8283fc3f4c..de03c5259e 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/dao/ResiWarmheartedApplyDao.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/dao/ResiWarmheartedApplyDao.java @@ -40,5 +40,5 @@ public interface ResiWarmheartedApplyDao extends BaseDao { - void saveResiWarmheartedVisit(ResiWarmheartedVisitDTO resiWarmheartedVisitDTO); - void updateResiWarmVisitById(ResiWarmheartedVisitDTO resiWarmheartedVisitDTO); + boolean saveResiWarmheartedVisit(ResiWarmheartedVisitDTO resiWarmheartedVisitDTO); + boolean updateResiWarmVisitById(ResiWarmheartedVisitDTO resiWarmheartedVisitDTO); } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedVisitService.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedVisitService.java index cbeecf870f..4a6a698f00 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedVisitService.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/ResiWarmheartedVisitService.java @@ -104,7 +104,7 @@ public interface ResiWarmheartedVisitService extends BaseService saveResiWarmheartedVisit(ResiWarmheartedFormDTO formDTO); /** * 居民端-热心居民申请提交-更新行为记录数据 diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java index 2017b9a869..f3ce755213 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java @@ -122,7 +122,11 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl init(ResiWarmheartedFormDTO formDTO) { //1:热心居民申请行为记录表新增数据 - ResiWarmheartedResultDTO resiWarmheartedResultDTO = resiWarmheartedVisitService.saveResiWarmheartedVisit(formDTO); + Result result = resiWarmheartedVisitService.saveResiWarmheartedVisit(formDTO); + if(!result.success()){ + log.warn(ResiWarmheartedVisitConstant.OPERATION_EXCEPTION); + } + ResiWarmheartedResultDTO resiWarmheartedResultDTO = result.getData(); //2:查询是否已申请热心居民 ResiWarmheartedApplyDTO resiWarmheartedApplyDTO = resiWarmheartedApplyDao.selectResiWarmheartedApply(formDTO); if (null == resiWarmheartedApplyDTO || StringUtils.isEmpty(resiWarmheartedApplyDTO.getId())) { @@ -135,6 +139,7 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl implements ResiWarmheartedVisitService { + private static final Logger log = LoggerFactory.getLogger(ResiWarmheartedVisitServiceImpl.class); @Autowired private ResiWarmheartedVisitRedis resiWarmheartedVisitRedis; @Autowired @@ -112,7 +115,7 @@ public class ResiWarmheartedVisitServiceImpl extends BaseServiceImpl saveResiWarmheartedVisit(ResiWarmheartedFormDTO formDTO) { Date date = new Date(); ResiWarmheartedVisitDTO resiWarmheartedVisitDTO = new ResiWarmheartedVisitDTO(); resiWarmheartedVisitDTO.setCustomerId(formDTO.getCustomerId()); @@ -130,28 +133,24 @@ public class ResiWarmheartedVisitServiceImpl extends BaseServiceImpl().ok(resiWarmheartedResultDTO); } @Override - @Transactional(rollbackFor = Exception.class) public void updateResiWarmVisit(ResiWarmheartedSubmitFormDTO formDTO) { ResiWarmheartedVisitDTO resiWarmheartedVisitDTO = new ResiWarmheartedVisitDTO(); resiWarmheartedVisitDTO.setOperateVisit(ResiWarmheartedVisitConstant.SUCCESS); - /*if (true) { - //最后一次操作行为-提交成功 - resiWarmheartedVisitDTO.setOperateVisit(ResiWarmheartedVisitConstant.SUCCESS); - } else { - //最后一次操作行为-提交失败 - resiWarmheartedVisitDTO.setOperateVisit(ResiWarmheartedVisitConstant.FAILD); - }*/ resiWarmheartedVisitDTO.setId(formDTO.getResiWarmVisitId()); resiWarmheartedVisitDTO.setUpdatedBy(formDTO.getUserId()); resiWarmheartedVisitDTO.setUpdatedTime(new Date()); - resiWarmheartedVisitDao.updateResiWarmVisitById(resiWarmheartedVisitDTO); + if(!resiWarmheartedVisitDao.updateResiWarmVisitById(resiWarmheartedVisitDTO)){ + log.error(ResiWarmheartedVisitConstant.OPERATION_EXCEPTION); + } } } \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml index 824f049d3b..eb61f263ec 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberBaseInfoDao.xml @@ -18,6 +18,41 @@ + + + + \ No newline at end of file diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberInfoDao.xml b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberInfoDao.xml index b17f134905..601f396817 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberInfoDao.xml +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberInfoDao.xml @@ -17,6 +17,7 @@ + @@ -32,7 +33,7 @@ SELECT * FROM - partymember_info + epmet_resi_partymember.partymember_info WHERE CUSTOMER_ID = #{customerId} AND GRID_ID = #{gridId} @@ -40,14 +41,15 @@ AND DEL_FLAG = 0 diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/UserRoleDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/UserRoleDTO.java index 12c4579ecb..f25d0ec9f6 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/UserRoleDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/UserRoleDTO.java @@ -17,9 +17,10 @@ package com.epmet.dto; +import lombok.Data; + import java.io.Serializable; import java.util.Date; -import lombok.Data; /** @@ -53,6 +54,11 @@ public class UserRoleDTO implements Serializable { */ private String roleId; + /** + * 角色Key值 + */ + private String roleKey; + /** * 删除标识:0.未删除 1.已删除 */ diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VerificationCodeFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VerificationCodeFormDTO.java new file mode 100644 index 0000000000..a52b0e01ea --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VerificationCodeFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 居民注册根据手机号获取获取验证码 + * @Author sun + */ + +@Data +public class VerificationCodeFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 手机号(注册手机号) + */ + private String mobile; + + /** + * 居民注册行为记录表Id resi_visit.id + */ + private String resiVisitId; + + /** + * 用户ID + */ + private String userId; + +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserConstant.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserConstant.java index 8e1f9e5389..7c6d91c882 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserConstant.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserConstant.java @@ -8,29 +8,43 @@ package com.epmet.constant; */ public interface UserConstant { - /** - * 政府端 - * */ - String APP_GOV = "gov"; - - /** - * 居民端 - * */ - String APP_RESI = "resi"; - - /** - * 运营端 - * */ - String APP_OPER = "oper"; - - /** - * PC端 - * */ - String CLIENT_WEB = "web"; - - /** - * 微信端 - * */ - String CLIENT_WX = "wxmp"; + /** + * 政府端 + */ + String APP_GOV = "gov"; + /** + * 居民端 + */ + String APP_RESI = "resi"; + + /** + * 运营端 + */ + String APP_OPER = "oper"; + + /** + * PC端 + */ + String CLIENT_WEB = "web"; + + /** + * 微信端 + */ + String CLIENT_WX = "wxmp"; + + /** + * 居民角色 + */ + String ROLE_RESI = "registered_resi"; + + /** + * 热心居民角色 + */ + String ROLE_WARMHEARTED = "warmhearted"; + + /** + * 党员角色 + */ + String ROLE_PARTYMEMBER = "partymember"; } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserResiRegisterConstant.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserResiRegisterConstant.java index 3d883da630..58fe02efb2 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserResiRegisterConstant.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/constant/UserResiRegisterConstant.java @@ -39,4 +39,19 @@ public interface UserResiRegisterConstant { * 最后一次操作行为-提交失败 */ String MOBILECODE_EXCEPTION="手机验证码输入错误!"; + + /** + * 参数错误 + */ + String PARAMETER_ERROR="参数错误!"; + + /** + * 数据更新异常 + */ + String UPDATE_EXCEPTION="用户居民注册访问记录表更新数据失败!"; + + /** + * 手机号已存在 + */ + String MOBILE_EXIST="该手机号已注册居民!"; } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java index 17b7e93685..862d296a49 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserResiInfoController.java @@ -23,10 +23,11 @@ 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.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.UserResiInfoFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.excel.UserResiInfoExcel; import com.epmet.service.UserResiInfoService; import org.springframework.beans.factory.annotation.Autowired; @@ -114,4 +115,25 @@ public class UserResiInfoController { public Result submit(@RequestBody UserResiInfoDTO userResiInfoDTO) { return userResiInfoService.submit(userResiInfoDTO); } + + /** + * @param formDTO + * @Author sun + * @Description 居民端-居民注册根据手机号获取验证码 + **/ + @PostMapping("getverificationcode") + public Result getVerificationCode(@RequestBody VerificationCodeFormDTO formDTO) { + return userResiInfoService.getVerificationCode(formDTO); + } + + /** + * 党员认证时,如果没有注册居民,则注册居民信息 + * @param userResiInfoDTO + * @author zhaoqifeng + **/ + @PostMapping("saveResiInfo") + public Result saveResiInfo (@RequestBody UserResiInfoDTO userResiInfoDTO) { + return userResiInfoService.saveResiInfo(userResiInfoDTO); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserRoleController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserRoleController.java index 9ad160716a..f442da6e7f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserRoleController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserRoleController.java @@ -39,7 +39,7 @@ import java.util.Map; /** - * 用户角色关系表 + * 用户角色关系表 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-03-30 @@ -47,65 +47,77 @@ import java.util.Map; @RestController @RequestMapping("userrole") public class UserRoleController { - - @Autowired - private UserRoleService userRoleService; - - @GetMapping("page") - public Result> page(@RequestParam Map params){ - PageData page = userRoleService.page(params); - return new Result>().ok(page); - } - - @GetMapping("{id}") - public Result get(@PathVariable("id") String id){ - UserRoleDTO data = userRoleService.get(id); - return new Result().ok(data); - } - - @PostMapping - public Result save(@RequestBody UserRoleDTO dto){ - //效验数据 - ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - userRoleService.save(dto); - return new Result(); - } - - @PutMapping - public Result update(@RequestBody UserRoleDTO dto){ - //效验数据 - ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); - userRoleService.update(dto); - return new Result(); - } - - @DeleteMapping - public Result delete(@RequestBody String[] ids){ - //效验数据 - AssertUtils.isArrayEmpty(ids, "id"); - userRoleService.delete(ids); - return new Result(); - } - - @GetMapping("export") - public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { - List list = userRoleService.list(params); - ExcelUtils.exportExcelToTarget(response, null, list, UserRoleExcel.class); - } - - /** - * @Description 根据用户Id、来源app、客户Id查询用户角色 - * @Param userRoleFormDTO - * @return UserRoleResultDTO - * @Author wangc - * @Date 2020.03.30 15:35 - **/ - @PostMapping("getuserroleinfo") - public Result> getUserRoleInfo(@RequestBody UserRoleFormDTO userRoleFormDTO){ - - ValidatorUtils.validateEntity(userRoleFormDTO); - - return userRoleService.getUserRoleInfo(userRoleFormDTO); - } + + @Autowired + private UserRoleService userRoleService; + + @GetMapping("page") + public Result> page(@RequestParam Map params) { + PageData page = userRoleService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id) { + UserRoleDTO data = userRoleService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody UserRoleDTO dto) { + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + userRoleService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody UserRoleDTO dto) { + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + userRoleService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids) { + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + userRoleService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = userRoleService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, UserRoleExcel.class); + } + + /** + * @return UserRoleResultDTO + * @Description 根据用户Id、来源app、客户Id查询用户角色 + * @Param userRoleFormDTO + * @Author wangc + * @Date 2020.03.30 15:35 + **/ + @PostMapping("getuserroleinfo") + public Result> getUserRoleInfo(@RequestBody UserRoleFormDTO userRoleFormDTO) { + + ValidatorUtils.validateEntity(userRoleFormDTO); + + return userRoleService.getUserRoleInfo(userRoleFormDTO); + } + + /** + * 添加用户角色关系 + * + * @param userRoleDTO 参数 + * @return Result + */ + @PostMapping("saveUserRole") + public Result saveUserRole(@RequestBody UserRoleDTO userRoleDTO) { + return userRoleService.saveUserRole(userRoleDTO); + } + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RoleDao.java index c6a70243e7..9acbe1fd88 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RoleDao.java @@ -22,12 +22,20 @@ import com.epmet.entity.RoleEntity; import org.apache.ibatis.annotations.Mapper; /** - * 角色表 + * 角色表 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-03-30 */ @Mapper public interface RoleDao extends BaseDao { - + + /** + * 根据key值获取权限信息 + * + * @param param 参数 + * @return RoleEntity + */ + RoleEntity selectRoleByKey(RoleEntity param); + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java index aa058b6350..478f58a4e4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiInfoDao.java @@ -23,6 +23,8 @@ import com.epmet.dto.form.UserResiInfoFormDTO; import com.epmet.entity.UserResiInfoEntity; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + /** * 用户居民端注册信息表 用户在居民端完善的个人信息 * @@ -46,4 +48,11 @@ public interface UserResiInfoDao extends BaseDao { * @Description 用户居民端注册信息表新增数据 **/ void saveUserResiInfo(UserResiInfoDTO userResiInfoDTO); + + /** + * @Author sun + * @Description 根据手机号查询居民注册信息(user_resi_info)表数据 + **/ + List selectResiInfoByMobile(String regMobile); + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiRegisterVisitDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiRegisterVisitDao.java index 7c4a768bce..b030a8d4fd 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiRegisterVisitDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserResiRegisterVisitDao.java @@ -37,5 +37,5 @@ public interface UserResiRegisterVisitDao extends BaseDao selectUserResiRegisterVisit(UserResiRegisterVisitDTO userResiRegisterVisitDTO); - void updateResiRegisterVisit(UserResiRegisterVisitDTO userResiRegisterVisitDTO); + boolean updateResiRegisterVisit(UserResiRegisterVisitDTO userResiRegisterVisitDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java index b68154234c..72e055c4b1 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RoleService.java @@ -92,4 +92,11 @@ public interface RoleService extends BaseService { * @date 2020-03-30 */ void delete(String[] ids); + + /** + * 根据key获取role信息 + * @param role + * @return RoleDTO + */ + RoleDTO getRoleByKey(RoleDTO role); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java index db50e3c714..2ea687b27a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiInfoService.java @@ -22,6 +22,7 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.form.UserResiInfoFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.entity.UserResiInfoEntity; import java.util.List; @@ -35,81 +36,98 @@ import java.util.Map; */ public interface UserResiInfoService extends BaseService { - /** - * 默认分页 - * - * @param params - * @return PageData - * @author generator - * @date 2020-03-30 - */ - PageData page(Map params); + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-30 + */ + PageData page(Map params); - /** - * 默认查询 - * - * @param params - * @return java.util.List - * @author generator - * @date 2020-03-30 - */ - List list(Map params); + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-30 + */ + List list(Map params); - /** - * 单条查询 - * - * @param id - * @return UserResiInfoDTO - * @author generator - * @date 2020-03-30 - */ - UserResiInfoDTO get(String id); + /** + * 单条查询 + * + * @param id + * @return UserResiInfoDTO + * @author generator + * @date 2020-03-30 + */ + UserResiInfoDTO get(String id); - /** - * 默认保存 - * - * @param dto - * @return void - * @author generator - * @date 2020-03-30 - */ - void save(UserResiInfoDTO dto); + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-30 + */ + void save(UserResiInfoDTO dto); - /** - * 默认更新 - * - * @param dto - * @return void - * @author generator - * @date 2020-03-30 - */ - void update(UserResiInfoDTO dto); + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-30 + */ + void update(UserResiInfoDTO dto); - /** - * 批量删除 - * - * @param ids - * @return void - * @author generator - * @date 2020-03-30 - */ - void delete(String[] ids); + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-30 + */ + void delete(String[] ids); - /** - * @param userResiInfoFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 查询用户注册信息 - * @Date 2020/3/30 11:07 - **/ - Result getUserResiInfoDTO(UserResiInfoFormDTO userResiInfoFormDTO); + /** + * @param userResiInfoFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询用户注册信息 + * @Date 2020/3/30 11:07 + **/ + Result getUserResiInfoDTO(UserResiInfoFormDTO userResiInfoFormDTO); - /** - * 居民端-居民注册信息提交 - * - * @param userResiInfoDTO - * @return void - * @author sun - */ - Result submit(UserResiInfoDTO userResiInfoDTO); + /** + * 居民端-居民注册信息提交 + * + * @param userResiInfoDTO + * @return void + * @author sun + */ + Result submit(UserResiInfoDTO userResiInfoDTO); + + /** + * 居民端-居民注册根据手机号获取验证码 + * + * @param formDTO + * @author sun + */ + Result getVerificationCode(VerificationCodeFormDTO formDTO); + + /** + * 注册居民信息 + * + * @param userResiInfoDTO 参数 + * @return Result + * @author zhaoqifeng + */ + Result saveResiInfo(UserResiInfoDTO userResiInfoDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiRegisterVisitService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiRegisterVisitService.java index 9ec73fec91..62c385b557 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiRegisterVisitService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserResiRegisterVisitService.java @@ -25,6 +25,7 @@ import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.UserResiRegisterVisitDTO; import com.epmet.dto.form.ResiRegisterFormDTO; import com.epmet.dto.form.UserResiInfoFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.entity.UserResiRegisterVisitEntity; @@ -112,8 +113,15 @@ public interface UserResiRegisterVisitService extends BaseService { - /** - * 默认分页 - * - * @param params - * @return PageData - * @author generator - * @date 2020-03-30 - */ - PageData page(Map params); + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-30 + */ + PageData page(Map params); - /** - * 默认查询 - * - * @param params - * @return java.util.List - * @author generator - * @date 2020-03-30 - */ - List list(Map params); + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-30 + */ + List list(Map params); - /** - * 单条查询 - * - * @param id - * @return UserRoleDTO - * @author generator - * @date 2020-03-30 - */ - UserRoleDTO get(String id); + /** + * 单条查询 + * + * @param id + * @return UserRoleDTO + * @author generator + * @date 2020-03-30 + */ + UserRoleDTO get(String id); - /** - * 默认保存 - * - * @param dto - * @return void - * @author generator - * @date 2020-03-30 - */ - void save(UserRoleDTO dto); + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-30 + */ + void save(UserRoleDTO dto); - /** - * 默认更新 - * - * @param dto - * @return void - * @author generator - * @date 2020-03-30 - */ - void update(UserRoleDTO dto); + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-30 + */ + void update(UserRoleDTO dto); - /** - * 批量删除 - * - * @param ids - * @return void - * @author generator - * @date 2020-03-30 - */ - void delete(String[] ids); + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-30 + */ + void delete(String[] ids); - /** - * @Description 根据用户Id、来源app、客户Id查询用户角色 - * @Param userRoleFormDTO - * @return UserRoleResultDTO - * @Author wangc - * @Date 2020.03.30 15:35 - **/ - Result> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO); + /** + * @return UserRoleResultDTO + * @Description 根据用户Id、来源app、客户Id查询用户角色 + * @Param userRoleFormDTO + * @Author wangc + * @Date 2020.03.30 15:35 + **/ + Result> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO); + + /** + * 添加用户角色关系 + * + * @param userRoleDTO 参数 + * @return Result + */ + Result saveUserRole(UserRoleDTO userRoleDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java index ad9366c4e9..24914ad22e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RoleServiceImpl.java @@ -101,4 +101,10 @@ public class RoleServiceImpl extends BaseServiceImpl implem baseDao.deleteBatchIds(Arrays.asList(ids)); } + @Override + public RoleDTO getRoleByKey(RoleDTO role) { + RoleEntity entity = baseDao.selectRoleByKey(ConvertUtils.sourceToTarget(role, RoleEntity.class)); + return ConvertUtils.sourceToTarget(entity, RoleDTO.class); + } + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java index 64936242e7..715dd1a58d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java @@ -21,21 +21,27 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.utils.Result; +import com.epmet.constant.UserConstant; import com.epmet.constant.UserResiRegisterConstant; import com.epmet.dao.UserResiInfoDao; import com.epmet.dto.UserResiInfoDTO; +import com.epmet.dto.UserRoleDTO; import com.epmet.dto.form.UserResiInfoFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.entity.UserResiInfoEntity; import com.epmet.redis.UserResiInfoRedis; import com.epmet.service.RegisterRelationService; import com.epmet.service.UserResiInfoService; import com.epmet.service.UserResiRegisterVisitService; +import com.epmet.service.UserRoleService; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -54,120 +60,184 @@ import java.util.Map; @Service public class UserResiInfoServiceImpl extends BaseServiceImpl implements UserResiInfoService { - @Autowired - private UserResiInfoRedis userResiInfoRedis; - @Autowired - private UserResiRegisterVisitService userResiRegisterVisitService; - @Autowired - private UserResiInfoDao userResiInfoDao; - @Autowired - private RegisterRelationService registerRelationService; - - @Override - public PageData page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, UserResiInfoDTO.class); - } - - @Override - public List list(Map params) { - List entityList = baseDao.selectList(getWrapper(params)); - - return ConvertUtils.sourceToTarget(entityList, UserResiInfoDTO.class); - } - - private QueryWrapper getWrapper(Map params) { - String id = (String) params.get(FieldConstant.ID_HUMP); - - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); - - return wrapper; - } - - @Override - public UserResiInfoDTO get(String id) { - UserResiInfoEntity entity = baseDao.selectById(id); - return ConvertUtils.sourceToTarget(entity, UserResiInfoDTO.class); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void save(UserResiInfoDTO dto) { - UserResiInfoEntity entity = ConvertUtils.sourceToTarget(dto, UserResiInfoEntity.class); - insert(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(UserResiInfoDTO dto) { - UserResiInfoEntity entity = ConvertUtils.sourceToTarget(dto, UserResiInfoEntity.class); - updateById(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(String[] ids) { - // 逻辑删除(@TableLogic 注解) - baseDao.deleteBatchIds(Arrays.asList(ids)); - } - - /** - * @param userResiInfoFormDTO - * @return com.epmet.commons.tools.utils.Result - * @Author yinzuomei - * @Description 查询用户注册信息 - * @Date 2020/3/30 11:07 - **/ - @Override - public Result getUserResiInfoDTO(UserResiInfoFormDTO userResiInfoFormDTO) { - UserResiInfoDTO userResiInfoDTO = baseDao.selectUserResiInfoDTO(userResiInfoFormDTO); - if (null != userResiInfoDTO) { - String showName = userResiInfoDTO.getStreet() + "-" + userResiInfoDTO.getSurname() + userResiInfoDTO.getName(); - userResiInfoDTO.setShowName(showName); - } - return new Result().ok(userResiInfoDTO); - } - - @Override - public Result submit(UserResiInfoDTO userResiInfoDTO) { - Result result = new Result(); - //1:手机验证码数据校验//TODO - - //2:验证码校验失败则更新行为记录表数据 返回前台结果 - if (false) { - userResiRegisterVisitService.updateResiRegisterVisit(false, userResiInfoDTO); - result.setMsg(UserResiRegisterConstant.MOBILECODE_EXCEPTION); - return result; - } - //3:校验成功 数据存入居民注册表 更新行为记录表数据 - saveUserResiInfo(userResiInfoDTO); - result = userResiRegisterVisitService.updateResiRegisterVisit(true, userResiInfoDTO); - //4:居民注册关系表新增数据 首次注册数加一 注册数加一 参与数加一 - result = registerRelationService.saveRegisterRelation(userResiInfoDTO); - return result; - } - - /** - * 居民注册信息表新增数据 - * - * @param userResiInfoDTO - * @Author sun - */ - @Transactional(rollbackFor = Exception.class) - public void saveUserResiInfo(UserResiInfoDTO userResiInfoDTO) { - Date date = new Date(); - userResiInfoDTO.setId(IdWorker.get32UUID()); - userResiInfoDTO.setDelFlag(NumConstant.ZERO); - userResiInfoDTO.setRevision(NumConstant.ZERO); - userResiInfoDTO.setCreatedBy(userResiInfoDTO.getUserId()); - userResiInfoDTO.setCreatedTime(date); - userResiInfoDTO.setUpdatedBy(userResiInfoDTO.getUserId()); - userResiInfoDTO.setUpdatedTime(date); - userResiInfoDao.saveUserResiInfo(userResiInfoDTO); - } + private static final Logger log = LoggerFactory.getLogger(UserResiInfoServiceImpl.class); + @Autowired + private UserResiInfoRedis userResiInfoRedis; + @Autowired + private UserResiRegisterVisitService userResiRegisterVisitService; + @Autowired + private UserResiInfoDao userResiInfoDao; + @Autowired + private RegisterRelationService registerRelationService; + @Autowired + private UserRoleService userRoleService; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, UserResiInfoDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, UserResiInfoDTO.class); + } + + private QueryWrapper getWrapper(Map params) { + String id = (String) params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public UserResiInfoDTO get(String id) { + UserResiInfoEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, UserResiInfoDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(UserResiInfoDTO dto) { + UserResiInfoEntity entity = ConvertUtils.sourceToTarget(dto, UserResiInfoEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(UserResiInfoDTO dto) { + UserResiInfoEntity entity = ConvertUtils.sourceToTarget(dto, UserResiInfoEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @param userResiInfoFormDTO + * @return com.epmet.commons.tools.utils.Result + * @Author yinzuomei + * @Description 查询用户注册信息 + * @Date 2020/3/30 11:07 + **/ + @Override + public Result getUserResiInfoDTO(UserResiInfoFormDTO userResiInfoFormDTO) { + UserResiInfoDTO userResiInfoDTO = baseDao.selectUserResiInfoDTO(userResiInfoFormDTO); + if (null != userResiInfoDTO) { + String showName = userResiInfoDTO.getStreet() + "-" + userResiInfoDTO.getSurname() + userResiInfoDTO.getName(); + userResiInfoDTO.setShowName(showName); + } + return new Result().ok(userResiInfoDTO); + } + + @Override + public Result submit(UserResiInfoDTO userResiInfoDTO) { + Result result = new Result(); + //1:手机验证码数据校验//TODO + + //2:验证码校验失败则更新行为记录表数据 返回前台结果 + if (false) { + userResiRegisterVisitService.updateResiRegisterVisit(false, userResiInfoDTO); + result.error(UserResiRegisterConstant.PARAMETER_ERROR); + result.setMsg(UserResiRegisterConstant.MOBILECODE_EXCEPTION); + return result; + } + //3:校验成功 数据存入居民注册表 更新行为记录表数据 + saveUserResiInfo(userResiInfoDTO); + userResiRegisterVisitService.updateResiRegisterVisit(true, userResiInfoDTO); + //4:居民注册关系表新增数据 首次注册数加一 注册数加一 参与数加一 + registerRelationService.saveRegisterRelation(userResiInfoDTO); + return result; + } + + /** + * 居民注册信息表新增数据 + * + * @param userResiInfoDTO + * @Author sun + */ + @Transactional(rollbackFor = Exception.class) + public void saveUserResiInfo(UserResiInfoDTO userResiInfoDTO) { + Date date = new Date(); + userResiInfoDTO.setId(IdWorker.get32UUID()); + userResiInfoDTO.setDelFlag(NumConstant.ZERO); + userResiInfoDTO.setRevision(NumConstant.ZERO); + userResiInfoDTO.setCreatedBy(userResiInfoDTO.getUserId()); + userResiInfoDTO.setCreatedTime(date); + userResiInfoDTO.setUpdatedBy(userResiInfoDTO.getUserId()); + userResiInfoDTO.setUpdatedTime(date); + userResiInfoDao.saveUserResiInfo(userResiInfoDTO); + } + + /** + * @param verificationCodeFormDTO + * @Author sun + * @Description 居民端-居民注册根据手机号获取验证码 + **/ + @Override + public Result getVerificationCode(VerificationCodeFormDTO verificationCodeFormDTO) { + Result result = new Result(); + //1:更新居民注册访问记录表数据 + userResiRegisterVisitService.updateResiVisitOperate(verificationCodeFormDTO); + //2:判断手机号是否可用 + if (!getResiInfoByMobile(verificationCodeFormDTO.getMobile())) { + result.error(UserResiRegisterConstant.PARAMETER_ERROR); + result.setMsg(UserResiRegisterConstant.MOBILE_EXIST); + return result; + } + //3:调用短信服务 生成验证码发送短信 TODO + + //4:将验证码存入redis TODO + + return result; + } + + @Override + public Result saveResiInfo(UserResiInfoDTO userResiInfoDTO) { + Result result = new Result(); + + //判断手机号是否可用 + if (getResiInfoByMobile(userResiInfoDTO.getRegMobile())) { + //数据存入居民注册表 + saveUserResiInfo(userResiInfoDTO); + //居民注册关系表新增数据 首次注册数加一 注册数加一 参与数加一 + registerRelationService.saveRegisterRelation(userResiInfoDTO); + //将用户于居民角色关联 + UserRoleDTO userRole = new UserRoleDTO(); + userRole.setUserId(userResiInfoDTO.getUserId()); + userRole.setRoleKey(UserConstant.ROLE_RESI); + userRoleService.saveUserRole(userRole); + } + + return result; + } + + /** + * 判断手机号是否可用-根据手机号查询居民注册信息(user_resi_info)表数据 + * + * @param mobile + * @return + * @Author sun + */ + private Boolean getResiInfoByMobile(String mobile) { + Boolean bl = true; + + List list = userResiInfoDao.selectResiInfoByMobile(mobile); + if (list.size() > 0) { + bl = false; + } + return bl; + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiRegisterVisitServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiRegisterVisitServiceImpl.java index 1f2e8efde9..9de9c0428e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiRegisterVisitServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiRegisterVisitServiceImpl.java @@ -31,12 +31,14 @@ import com.epmet.dao.UserResiRegisterVisitDao; import com.epmet.dto.UserResiInfoDTO; import com.epmet.dto.UserResiRegisterVisitDTO; import com.epmet.dto.form.ResiRegisterFormDTO; -import com.epmet.dto.form.UserResiInfoFormDTO; +import com.epmet.dto.form.VerificationCodeFormDTO; import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.entity.UserResiRegisterVisitEntity; import com.epmet.redis.UserResiRegisterVisitRedis; import com.epmet.service.UserResiRegisterVisitService; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -55,6 +57,7 @@ import java.util.Map; @Service public class UserResiRegisterVisitServiceImpl extends BaseServiceImpl implements UserResiRegisterVisitService { + private static final Logger log = LoggerFactory.getLogger(UserResiRegisterVisitServiceImpl.class); @Autowired private UserResiRegisterVisitRedis userResiRegisterVisitRedis; @Autowired @@ -140,7 +143,7 @@ public class UserResiRegisterVisitServiceImpl extends BaseServiceImpl implements UserRoleService { - @Autowired - private UserRoleRedis userRoleRedis; - - @Override - public PageData page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, UserRoleDTO.class); - } - - @Override - public List list(Map params) { - List entityList = baseDao.selectList(getWrapper(params)); - - return ConvertUtils.sourceToTarget(entityList, UserRoleDTO.class); - } - - private QueryWrapper getWrapper(Map params){ - String id = (String)params.get(FieldConstant.ID_HUMP); - - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); - - return wrapper; - } - - @Override - public UserRoleDTO get(String id) { - UserRoleEntity entity = baseDao.selectById(id); - return ConvertUtils.sourceToTarget(entity, UserRoleDTO.class); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void save(UserRoleDTO dto) { - UserRoleEntity entity = ConvertUtils.sourceToTarget(dto, UserRoleEntity.class); - insert(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(UserRoleDTO dto) { - UserRoleEntity entity = ConvertUtils.sourceToTarget(dto, UserRoleEntity.class); - updateById(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(String[] ids) { - // 逻辑删除(@TableLogic 注解) - baseDao.deleteBatchIds(Arrays.asList(ids)); - } - - /** - * @Description 根据用户Id、来源app、客户Id查询用户角色 - * @Param userRoleFormDTO - * @return UserRoleResultDTO - * @Author wangc - * @Date 2020.03.30 15:35 - **/ - @Override - public Result> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO) { - return new Result>().ok(baseDao.getUserRoleInfo(userRoleFormDTO)); - } + @Autowired + private UserRoleRedis userRoleRedis; + @Autowired + private RoleService roleService; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, UserRoleDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, UserRoleDTO.class); + } + + private QueryWrapper getWrapper(Map params) { + String id = (String) params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public UserRoleDTO get(String id) { + UserRoleEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, UserRoleDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(UserRoleDTO dto) { + UserRoleEntity entity = ConvertUtils.sourceToTarget(dto, UserRoleEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(UserRoleDTO dto) { + UserRoleEntity entity = ConvertUtils.sourceToTarget(dto, UserRoleEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + /** + * @return UserRoleResultDTO + * @Description 根据用户Id、来源app、客户Id查询用户角色 + * @Param userRoleFormDTO + * @Author wangc + * @Date 2020.03.30 15:35 + **/ + @Override + public Result> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO) { + return new Result>().ok(baseDao.getUserRoleInfo(userRoleFormDTO)); + } + + @Override + public Result saveUserRole(UserRoleDTO userRoleDTO) { + //获取角色ID + RoleDTO roleDTO = new RoleDTO(); + roleDTO.setApp(UserConstant.APP_RESI); + roleDTO.setRoleKey(userRoleDTO.getRoleKey()); + RoleDTO role = roleService.getRoleByKey(roleDTO); + userRoleDTO.setRoleId(role.getId()); + baseDao.insert(ConvertUtils.sourceToTarget(userRoleDTO, UserRoleEntity.class)); + return new Result(); + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/RoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/RoleDao.xml index 7dc2a737a2..01a93dd9d9 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/RoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/RoleDao.xml @@ -15,6 +15,18 @@ + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml index b73f06276c..5db6fd0047 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml @@ -19,6 +19,25 @@ + + + uri.id AS "id", + uri.user_id AS "userId", + uri.reg_mobile AS "regMobile", + uri.surname AS "surname", + uri.`name` AS "name", + uri.street AS "street", + uri.district AS "district", + uri.building_address AS "buildingAddress", + uri.resi_visit_id AS "resiVisitId", + uri.del_flag AS "delflag", + uri.revision AS "revision", + uri.created_by AS "createdby", + uri.created_time AS "createdtime", + uri.updated_by AS "updatedby", + uri.updated_time AS "updatedtime" + + INSERT INTO user_resi_info ( id, @@ -80,4 +99,13 @@ AND uc.USER_ID = #{userId} + +