|
|
|
@ -57,6 +57,7 @@ import com.elink.esua.epdc.dto.epdc.result.EpdcUserRegisterAuditMsgResultDTO; |
|
|
|
import com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO; |
|
|
|
import com.elink.esua.epdc.enums.AppUserAuditStateEnum; |
|
|
|
import com.elink.esua.epdc.enums.AppUserStatesEnum; |
|
|
|
import com.elink.esua.epdc.enums.PartyMemberRegFlagEnum; |
|
|
|
import com.elink.esua.epdc.exception.UserModuleErrorCode; |
|
|
|
import com.elink.esua.epdc.feign.AdminFeignClient; |
|
|
|
import com.elink.esua.epdc.service.UserGridRelationService; |
|
|
|
@ -168,37 +169,104 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void audit(UserDTO dto) { |
|
|
|
|
|
|
|
String userId = dto.getId(); |
|
|
|
UserEntity findUser = this.baseDao.selectById(userId); |
|
|
|
// 手动认证为党员
|
|
|
|
if (YesOrNoEnum.YES.value().equals(dto.getPartyFlag())) { |
|
|
|
// 校验是否为党员
|
|
|
|
checkUserInfoForPartyMember(findUser); |
|
|
|
} |
|
|
|
// createdTime作为提交注册时间,registerTime作为注册审核时间(即注册时间)
|
|
|
|
dto.setRegisterTime(new Date()); |
|
|
|
//先删除以前审核未通过的那条数据
|
|
|
|
UserEntity entity = ConvertUtils.sourceToTarget(dto, UserEntity.class); |
|
|
|
// createdTime作为提交注册时间,registerTime作为注册审核时间(即注册时间)
|
|
|
|
entity.setRegisterTime(new Date()); |
|
|
|
updateById(entity); |
|
|
|
/*JSONArray jsonArray = JSON.parseArray(dto.getTagIds()); |
|
|
|
for (int i = 0; i < jsonArray.size(); i++) { |
|
|
|
String tagId = jsonArray.getString(i); |
|
|
|
UserTagRelationDTO userTagRelationDTO = new UserTagRelationDTO(); |
|
|
|
userTagRelationDTO.setUserId(entity.getId()); |
|
|
|
userTagRelationDTO.setTagId(tagId); |
|
|
|
userTagRelationService.save(userTagRelationDTO); |
|
|
|
}*/ |
|
|
|
//组装数据并插入用户认证历史表(epdc_user_authenticate_history)
|
|
|
|
UserEntity userEntity = this.baseDao.selectById(entity.getId()); |
|
|
|
// 组装数据并插入用户认证历史表
|
|
|
|
saveUserAuthenticateHistory(findUser, dto.getPartyFlag(), dto.getRemark(), dto.getState()); |
|
|
|
// 修改党员库信息
|
|
|
|
if (YesOrNoEnum.YES.value().equals(dto.getPartyFlag())) { |
|
|
|
updatePartyMember(findUser, dto.getRegisterTime()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 更新党员库信息 |
|
|
|
* |
|
|
|
* @param findUser 用户信息 |
|
|
|
* @param registerTime 认证时间 |
|
|
|
* @return void |
|
|
|
* @author work@yujt.net.cn |
|
|
|
* @date 2020/2/5 17:50 |
|
|
|
*/ |
|
|
|
private void updatePartyMember(UserEntity findUser, Date registerTime) { |
|
|
|
PartyMembersEntity partyMembersEntity = new PartyMembersEntity(); |
|
|
|
partyMembersEntity.setRegistFlag(PartyMemberRegFlagEnum.MANUAL.getValue()); |
|
|
|
partyMembersEntity.setDeptId(findUser.getDeptId()); |
|
|
|
partyMembersEntity.setAllDeptIds(findUser.getAllDeptIds()); |
|
|
|
partyMembersEntity.setAllDeptNames(findUser.getAllDeptNames()); |
|
|
|
partyMembersEntity.setParentDeptIds(findUser.getParentDeptIds()); |
|
|
|
partyMembersEntity.setParentDeptNames(findUser.getParentDeptNames()); |
|
|
|
partyMembersEntity.setMobile(findUser.getMobile()); |
|
|
|
partyMembersEntity.setRegistTime(registerTime); |
|
|
|
|
|
|
|
UpdateWrapper<PartyMembersEntity> partyUpdate = new UpdateWrapper<>(); |
|
|
|
partyUpdate.eq(UserFieldConsant.IDENTITY_NO, findUser.getIdentityNo()) |
|
|
|
.eq(UserFieldConsant.REAL_NAME, findUser.getRealName()); |
|
|
|
this.partyMembersDao.update(partyMembersEntity, partyUpdate); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 组装数据并插入用户认证历史表(epdc_user_authenticate_history) |
|
|
|
* |
|
|
|
* @param userEntity 用户信息 |
|
|
|
* @param partyFlag 是否党员 |
|
|
|
* @param remark 审核备注 |
|
|
|
* @param userState 审核状态 |
|
|
|
* @return void |
|
|
|
* @author work@yujt.net.cn |
|
|
|
* @date 2020/2/5 17:49 |
|
|
|
*/ |
|
|
|
private void saveUserAuthenticateHistory(UserEntity userEntity, String partyFlag, String remark, String userState) { |
|
|
|
// 组装数据并插入用户认证历史表(epdc_user_authenticate_history)
|
|
|
|
UserAuthenticateHistoryEntity userAuthenticateHistoryEntity = new UserAuthenticateHistoryEntity(); |
|
|
|
userAuthenticateHistoryEntity.setUserId(userEntity.getId()); |
|
|
|
userAuthenticateHistoryEntity.setMobile(userEntity.getMobile()); |
|
|
|
userAuthenticateHistoryEntity.setRealName(userEntity.getRealName()); |
|
|
|
userAuthenticateHistoryEntity.setAddress(userEntity.getAddress()); |
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedFlag(userEntity.getState());//状态(0-已注册,1-已完善信息待审核,2-信息审核不通过,3-信息审核通过)
|
|
|
|
if (NumConstant.THREE_STR.equals(entity.getState())) { |
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedFlag(YesOrNoEnum.YES.value()); |
|
|
|
} else { |
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedFlag(YesOrNoEnum.NO.value()); |
|
|
|
} |
|
|
|
userAuthenticateHistoryEntity.setRemark(dto.getRemark()); |
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedType(AuthenticatedConsant.partyAuth); // 新维护的 认证类别(0-居民认证,1-党员认证,2-志愿者认证)
|
|
|
|
userAuthenticateHistoryEntity.setRemark(remark); |
|
|
|
// 状态(0-已注册,1-已完善信息待审核,2-信息审核不通过,3-信息审核通过)
|
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedFlag( |
|
|
|
AppUserStatesEnum.STATE_INFORMATION_PASSED.value().equals(userState) ? |
|
|
|
YesOrNoEnum.YES.value() : YesOrNoEnum.NO.value()); |
|
|
|
// 新维护的 认证类别(0-居民认证,1-党员认证,2-志愿者认证)
|
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedType(YesOrNoEnum.YES.equals(partyFlag) |
|
|
|
? AuthenticatedConsant.partyAuth : AuthenticatedConsant.userAuth); |
|
|
|
userAuthenticateHistoryDao.insert(userAuthenticateHistoryEntity); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 校验用户是否有匹配的党员信息 |
|
|
|
* |
|
|
|
* @param userEntity 用户信息 |
|
|
|
* @return void |
|
|
|
* @author work@yujt.net.cn |
|
|
|
* @date 2020/2/5 17:49 |
|
|
|
*/ |
|
|
|
private void checkUserInfoForPartyMember(UserEntity userEntity) { |
|
|
|
// 手动认证为党员
|
|
|
|
if (StringUtils.isBlank(userEntity.getIdentityNo())) { |
|
|
|
throw new RenException("该用户未完善身份证号码"); |
|
|
|
} |
|
|
|
QueryWrapper<UserEntity> wrapper = new QueryWrapper<>(); |
|
|
|
wrapper.eq(UserFieldConsant.IDENTITY_NO, userEntity.getIdentityNo()) |
|
|
|
.eq(UserFieldConsant.REAL_NAME, userEntity.getRealName()); |
|
|
|
Integer count = this.baseDao.selectCount(wrapper); |
|
|
|
if (count == NumConstant.ZERO) { |
|
|
|
throw new RenException("党员库中无此人信息"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
public Result<UserDTO> getUserForLoginByOpenId(String openId) { |
|
|
|
@ -349,7 +417,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
|
userEntity.setFaceImg(null); |
|
|
|
userEntity.setId(userId); |
|
|
|
//用户已绑定手机号时不更新手机号
|
|
|
|
if(StringUtils.isNotBlank(existUser.getMobile())){ |
|
|
|
if (StringUtils.isNotBlank(existUser.getMobile())) { |
|
|
|
userEntity.setMobile(existUser.getMobile()); |
|
|
|
} |
|
|
|
this.updateById(userEntity); |
|
|
|
@ -487,7 +555,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
|
if (selectCount > NumConstant.ZERO) { |
|
|
|
return new Result().error("手机号已被注册"); |
|
|
|
} |
|
|
|
//党员都需要查重
|
|
|
|
//党员都需要查重
|
|
|
|
if (YesOrNoEnum.YES.value().equals(userDto.getPartyFlag())) { |
|
|
|
userWrapper = new QueryWrapper<>(); |
|
|
|
userWrapper.eq(UserFieldConsant.IDENTITY_NO, userDto.getIdentityNo()) |
|
|
|
@ -531,7 +599,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
|
partyMembersEntity.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); |
|
|
|
partyMembersEntity.setGridId(userGridRelation.getGridId()); |
|
|
|
partyMembersEntity.setGridName(userGridRelation.getGrid()); |
|
|
|
partyMembersEntity.setRegistFlag(YesOrNoEnum.YES.value()); |
|
|
|
partyMembersEntity.setRegistFlag(PartyMemberRegFlagEnum.AUTO.getValue()); |
|
|
|
partyMembersEntity.setRegistTime(oldEntity.getRegisterTime()); |
|
|
|
QueryWrapper<PartyMembersEntity> partyWrapper = new QueryWrapper<>(); |
|
|
|
partyWrapper.eq(UserFieldConsant.IDENTITY_NO, identityNo) |
|
|
|
@ -578,7 +646,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem |
|
|
|
userAuthenticateHistoryEntity.setAuthenticatedType(AuthenticatedConsant.partyAuth); |
|
|
|
userAuthenticateHistoryDao.insert(userAuthenticateHistoryEntity); |
|
|
|
} else { |
|
|
|
userDto.setState(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value()); |
|
|
|
userDto.setState(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value()); |
|
|
|
} |
|
|
|
// 昵称前缀
|
|
|
|
String nicknamePrefix = "网格长-"; |
|
|
|
|