Browse Source

Merge remote-tracking branch 'origin/dev0.2' into dev0.2

master
yinzuomei 5 years ago
parent
commit
d88bb0baca
  1. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  2. 24
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/EpmetMessageFeignClient.java
  3. 21
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/EpmetMessageFeignClientFallback.java
  4. 31
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -16,6 +16,8 @@ public enum EpmetErrorCode {
MOBILE_HAS_BEEN_USED(8101, "该手机已被使用,请更换手机或使用原绑定的微信用户登录"),
MOBILE_CODE_ERROR(8102, "手机验证码错误"),
AUTO_CONFIRM_FAILED(8103, "自动认证失败"),
MOBILE_GET_CODE_ERROR(8104, "获取手机验证码失败"),
/**
* 手机号已存在

24
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/EpmetMessageFeignClient.java

@ -0,0 +1,24 @@
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.EpmetMessageFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
/**
* @author kamui
*/
@FeignClient(name = ServiceConstant.EPMET_MESSAGE_SERVER, fallback = EpmetMessageFeignClientFallback.class)
public interface EpmetMessageFeignClient {
/**
* 发送短信验证码
* @param mobile 手机号
* @return Result
*/
@GetMapping(value = "message/sms/captcha/{mobile}")
Result sendSmsCaptcha(@PathVariable String mobile);
}

21
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/EpmetMessageFeignClientFallback.java

@ -0,0 +1,21 @@
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.EpmetMessageFeignClient;
import org.springframework.stereotype.Component;
/**
* 消息服务降级
* @author zhaoqifeng
*/
@Component
public class EpmetMessageFeignClientFallback implements EpmetMessageFeignClient {
@Override
public Result sendSmsCaptcha(String mobile) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_MESSAGE_SERVER, "sendSmsCaptcha", mobile);
}
}

31
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java

@ -8,6 +8,7 @@ import com.epmet.constant.PartyMemberConstant;
import com.epmet.dto.UserResiInfoDTO;
import com.epmet.dto.UserRoleDTO;
import com.epmet.dto.form.UserResiInfoFormDTO;
import com.epmet.modules.feign.EpmetMessageFeignClient;
import com.epmet.modules.feign.EpmetUserFeignClient;
import com.epmet.modules.partymember.entity.*;
import com.epmet.modules.partymember.redis.PartymemberInfoRedis;
@ -17,11 +18,13 @@ import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO;
import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO;
import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmAutoDTO;
import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.Map;
/**
* 党员认证
@ -30,6 +33,7 @@ import java.util.Date;
* @date 2020/3/30 14:01
*/
@Service
@Slf4j
public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService {
@Autowired
@ -48,6 +52,8 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
private PartymemberConfirmManualService partymemberConfirmManualService;
@Autowired
private PartymemberRegisterRelationService partymemberRegisterRelationService;
@Autowired
private EpmetMessageFeignClient messageFeignClient;
private final static String BENCHMARK = "110010";
@ -74,8 +80,13 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
UserResiInfoFormDTO userResiInfoFormDTO = new UserResiInfoFormDTO();
userResiInfoFormDTO.setCustomerId(fromDto.getCustomerId());
userResiInfoFormDTO.setUserId(fromDto.getUserId());
Result<UserResiInfoDTO> userResiInfoResult = epmetUserFeignClient.getUserResiInfoDTO(userResiInfoFormDTO);
result.setPartyMemberInfo(ConvertUtils.sourceToTarget(userResiInfoResult.getData(), PartymemberInfoDTO.class));
UserResiInfoDTO userResiInfoResult = epmetUserFeignClient.getUserResiInfoDTO(userResiInfoFormDTO).getData();
PartymemberInfoDTO partyMemberInfo = ConvertUtils.sourceToTarget(userResiInfoResult,
PartymemberInfoDTO.class);
partyMemberInfo.setMobile(userResiInfoResult.getRegMobile());
partyMemberInfo.setEstate(userResiInfoResult.getDistrict());
partyMemberInfo.setBuilding(userResiInfoResult.getBuildingAddress());
result.setPartyMemberInfo(partyMemberInfo);
}
// 将访问行为存入热心居民申请行为记录表
@ -95,17 +106,21 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
partyMemberInfoParam.setMobile(fromDTO.getMobile());
PartymemberInfoDTO partyMemberInfoResult = partymemberInfoService.getPartyMemberInfoByMobile(partyMemberInfoParam);
if (null != partyMemberInfoResult) {
//TODO code待定
result.setCode(EpmetErrorCode.MOBILE_HAS_BEEN_USED.getValue());
result.setMsg(EpmetErrorCode.MOBILE_HAS_BEEN_USED.getName());
return result;
}
//TODO 生成短信验证码
String code = "0000";
//生成短信验证码
Map<String, String> message = (Map<String, String>) messageFeignClient.sendSmsCaptcha(fromDTO.getMobile()).getData();
if(null == message) {
result.setCode(EpmetErrorCode.MOBILE_GET_CODE_ERROR.getValue());
result.setMsg(EpmetErrorCode.MOBILE_GET_CODE_ERROR.getName());
return result;
}
//将验证码存入Redis
partyMemberInfoRedis.setUserMobileCode(fromDTO.getUserId(), fromDTO.getMobile(), code);
partyMemberInfoRedis.setUserMobileCode(fromDTO.getUserId(), fromDTO.getMobile(), message.get("code"));
//将访问记录更新到热心居民申请行为记录表
saveOrUpdateVisit(fromDTO.getVisitId(), null, PartyMemberConstant.OPERATE_OPERATE_SMS_CODE);
@ -125,7 +140,6 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
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;
@ -147,7 +161,6 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
partyMemberInfoEntity.setConfirmResult("1");
partymemberInfoService.insert(partyMemberInfoEntity);
//TODO code待定
result.setCode(EpmetErrorCode.AUTO_CONFIRM_FAILED.getValue());
result.setMsg(EpmetErrorCode.AUTO_CONFIRM_FAILED.getName());
} else {
@ -248,7 +261,7 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
* @return String
*/
@Transactional(rollbackFor = Exception.class)
private String saveOrUpdateVisit(String visitId, PartyMemberInitFromDTO fromDTO, String operate) {
public String saveOrUpdateVisit(String visitId, PartyMemberInitFromDTO fromDTO, String operate) {
PartymemberVisitEntity partymemberVisitEntity = new PartymemberVisitEntity();
if (null == visitId) {
partymemberVisitEntity.setCustomerId(fromDTO.getCustomerId());

Loading…
Cancel
Save