Browse Source

Merge remote-tracking branch 'origin/dev_1118' into dev_1118

# Conflicts:
#	esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java
dev
尹作梅 6 years ago
parent
commit
97ac2cb5b8
  1. 15
      esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/form/EpdcCompleteUserInfoFormDTO.java
  2. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/entity/ScanSwitchEntity.java
  3. 13
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java
  4. 2
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/resources/registry.conf
  5. 3
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml
  6. 5
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/EpdcCompleteAppUserDTO.java
  7. 5
      esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcCheckUserRegisterFromDTO.java
  8. 123
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

15
esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/form/EpdcCompleteUserInfoFormDTO.java

@ -57,4 +57,19 @@ public class EpdcCompleteUserInfoFormDTO implements Serializable {
*/
@NotBlank(message = "性别不能为空")
private String sex;
/**
* 微信code
*/
private String wxCode;
/**
* 用户信息
*/
private String encryptedData;
/**
* 加密算法的初始向量
*/
private String iv;
}

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/entity/ScanSwitchEntity.java

@ -59,12 +59,12 @@ public class ScanSwitchEntity extends BaseEpdcEntity {
/**
* 扫码开关名称
*/
private String scanFlagName;
//private String scanFlagName;
/**
* 维护状态名称
*/
private String maintainFlagName;
//private String maintainFlagName;
}

13
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java

@ -110,7 +110,7 @@ public class AppUserServiceImpl implements AppUserService {
@Override
public Result<EpdcAppAuthorizationDTO> checkRegister(EpdcCheckRegisterFormDTO formDto) {
WxMaJscode2SessionResult wxMaJscode2SessionResult=new WxMaJscode2SessionResult();
WxMaJscode2SessionResult wxMaJscode2SessionResult = new WxMaJscode2SessionResult();
wxMaJscode2SessionResult.setOpenid(formDto.getOpenId());
return this.getTokenByOpenId(wxMaJscode2SessionResult);
}
@ -669,6 +669,7 @@ public class AppUserServiceImpl implements AppUserService {
// 查询当前微信注册状态
EpdcCheckUserRegisterFromDTO checkFromDto = new EpdcCheckUserRegisterFromDTO();
checkFromDto.setOpenId(openId);
checkFromDto.setWxUnionId(unionId);
checkFromDto.setGridId(formDto.getGridId());
Result<EpdcUserRegisterInfoResultDTO> userResult = userFeignClient.getUserRegisterState(checkFromDto);
if (!userResult.success()) {
@ -764,8 +765,18 @@ public class AppUserServiceImpl implements AppUserService {
@Override
public Result<EpdcAppAuthorizationDTO> completeUserInfo(TokenDto tokenDto, EpdcCompleteUserInfoFormDTO infoDto) {
WxMaUserInfo wxMaUserInfo = null;
if (StringUtils.isNotBlank(infoDto.getWxCode())) {
String sessionKey = this.getUserSessionKey(infoDto.getWxCode());
wxMaUserInfo = wxMaServiceUtils.normalWxMaService().getUserService().getUserInfo(sessionKey, infoDto.getEncryptedData(), infoDto.getIv());
if (StringUtils.isBlank(wxMaUserInfo.getUnionId())) {
return new Result().error("解析微信开放平台ID失败");
}
}
UserDTO userDto = ConvertUtils.sourceToTarget(infoDto, UserDTO.class);
userDto.setId(tokenDto.getUserId());
userDto.setWxUnionId(wxMaUserInfo.getUnionId());
// 党员提交,验证身份证号
if (YesOrNoEnum.YES.value().equals(userDto.getPartyFlag())) {

2
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/resources/registry.conf

@ -14,7 +14,7 @@ config {
type = "nacos"
nacos {
serverAddr = "nacos.server-addr"
serverAddr = "@nacos.server-addr@"
namespace = "public"
cluster = "default"
}

3
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml

@ -37,6 +37,9 @@
item.USER_FACE,
item.IS_PARTY_MEMBER,
item.CREATED_TIME,
eve.APPROVE_NUM,
eve.OPPOSE_NUM,
eve.COMMENT_NUM,
( eve.APPROVE_NUM + eve.OPPOSE_NUM + eve.COMMENT_NUM + eve.BROWSE_NUM ) AS statementNum,
cate.CATEGORY_NAME,
img.IMG_URL,

5
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/EpdcCompleteAppUserDTO.java

@ -94,4 +94,9 @@ public class EpdcCompleteAppUserDTO implements Serializable {
*/
private String state;
/**
* 微信unionId
*/
private String wxUnionId;
}

5
esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/form/EpdcCheckUserRegisterFromDTO.java

@ -17,6 +17,11 @@ public class EpdcCheckUserRegisterFromDTO implements Serializable {
*/
private String openId;
/**
* 微信unionId
*/
private String wxUnionId;
/**
* 网格ID
*/

123
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

@ -92,6 +92,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
private AdminFeignClient adminFeignClient;
@Autowired
private PartyAuthenticationFailedDao partyAuthenticationFailedDao;
@Override
public PageData<UserDTO> page(Map<String, Object> params) {
this.verifyParams(params);
@ -363,22 +364,24 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
@Override
public Result<EpdcUserRegisterInfoResultDTO> checkUserRegisterState(EpdcCheckUserRegisterFromDTO fromDto) {
QueryWrapper<UserEntity> wrapper = new QueryWrapper<>();
wrapper.eq(UserFieldConsant.WX_OPEN_ID, fromDto.getOpenId())
.select(FieldConstant.ID, UserFieldConsant.NICKNAME, UserFieldConsant.FACE_IMG,
FieldConstant.MOBILE, UserFieldConsant.REAL_NAME,
FieldConstant.STATE, UserFieldConsant.PARTY_FLAG, UserFieldConsant.REMARK)
.orderByDesc(FieldConstant.CREATED_TIME);
List<UserEntity> userEntityList = this.baseDao.selectList(wrapper);
UserDTO userDto = this.selectUserByWxInfo(fromDto.getOpenId(), fromDto.getWxUnionId());
// QueryWrapper<UserEntity> wrapper = new QueryWrapper<>();
// wrapper.eq(UserFieldConsant.WX_OPEN_ID, fromDto.getOpenId())
// .select(FieldConstant.ID, UserFieldConsant.NICKNAME, UserFieldConsant.FACE_IMG,
// FieldConstant.MOBILE, UserFieldConsant.REAL_NAME,
// FieldConstant.STATE, UserFieldConsant.PARTY_FLAG, UserFieldConsant.REMARK)
// .orderByDesc(FieldConstant.CREATED_TIME);
// List<UserEntity> userEntityList = this.baseDao.selectList(wrapper);
EpdcUserRegisterInfoResultDTO resultDto = new EpdcUserRegisterInfoResultDTO();
resultDto.setGridId(fromDto.getGridId());
// 已注册
if (CollUtil.isNotEmpty(userEntityList) && null != userEntityList.get(NumConstant.ZERO)) {
UserEntity userEntity = userEntityList.get(NumConstant.ZERO);
resultDto.setUserDTO(ConvertUtils.sourceToTarget(userEntity, UserDTO.class));
if (null != userDto) {
resultDto.setUserDTO(userDto);
// 获取用户关联当前网格信息
UserGridRelationDTO relationInfo = userGridRelationService.getUserRelationInfo(userEntity.getId(), fromDto.getGridId());
UserGridRelationDTO relationInfo = userGridRelationService.getUserRelationInfo(userDto.getId(), fromDto.getGridId());
// 未绑定当前网格
if (null == relationInfo) {
resultDto.setRegisterState(NumConstant.ONE);
@ -505,11 +508,21 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
String identityNo = userDto.getIdentityNo();
if (YesOrNoEnum.YES.value().equals(userDto.getPartyFlag())) {
PartyMembersEntity partyMembersEntity = new PartyMembersEntity();
//修改数据库结构
partyMembersEntity.setAllDeptNames(userGridRelation.getStreet() + "-" + userGridRelation.getCommunity() + "-" + userGridRelation.getGrid());
partyMembersEntity.setAllDeptIds(userGridRelation.getStreetId() + "," + userGridRelation.getCommunityId() + "," + userGridRelation.getGridId());
partyMembersEntity.setParentDeptNames(userGridRelation.getStreet() + "-" + userGridRelation.getCommunity());
partyMembersEntity.setParentDeptIds(userGridRelation.getStreetId() + "," + userGridRelation.getCommunityId());
Result<ParentAndAllDeptDTO> parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(userGridRelation.getGrid());
if (!parentAndAllDeptDTOResult.success()) {
return new Result<UserDTO>().error(parentAndAllDeptDTOResult.getMsg());
}
partyMembersEntity.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames());
partyMembersEntity.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds());
partyMembersEntity.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames());
partyMembersEntity.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds());
// //修改数据库结构
// partyMembersEntity.setAllDeptNames(userGridRelation.getStreet() + "-" + userGridRelation.getCommunity() + "-" + userGridRelation.getGrid());
// partyMembersEntity.setAllDeptIds(userGridRelation.getStreetId() + "," + userGridRelation.getCommunityId() + "," + userGridRelation.getGridId());
// partyMembersEntity.setParentDeptNames(userGridRelation.getStreet() + "-" + userGridRelation.getCommunity());
// partyMembersEntity.setParentDeptIds(userGridRelation.getStreetId() + "," + userGridRelation.getCommunityId());
partyMembersEntity.setGridId(userGridRelation.getGridId());
partyMembersEntity.setGridName(userGridRelation.getGrid());
@ -611,25 +624,25 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
if (StringUtils.isBlank(formDTO.getAuthenticatedFlag())) {
formDTO.setAuthenticatedFlag(YesOrNoEnum.NO.value());
}
UserDTO userDTO = this.get(formDTO.getUserId());
if (null != userDTO) {
userDTO.setRemark(formDTO.getRemark());//审核不通过的原因 - 2019.12.05.zy
UserDTO userDto = this.get(formDTO.getUserId());
if (null != userDto) {
userDto.setRemark(formDTO.getRemark());//审核不通过的原因 - 2019.12.05.zy
if (YesOrNoEnum.NO.value().equals(formDTO.getAuthenticatedFlag())) {//不通过
userDTO.setState(AppUserStatesEnum.STATE_INFORMATION_NOT_PASSED.value());
userDto.setState(AppUserStatesEnum.STATE_INFORMATION_NOT_PASSED.value());
} else if (YesOrNoEnum.YES.value().equals(formDTO.getAuthenticatedFlag())) {//通过
userDTO.setState(AppUserStatesEnum.STATE_INFORMATION_PASSED.value());
userDto.setState(AppUserStatesEnum.STATE_INFORMATION_PASSED.value());
} else {
throw new RenException("是否认证通过数据不匹配");
}
this.update(userDTO);
this.update(userDto);
//插入认证历史表
UserAuthenticateHistoryEntity authenticateHistoryEntity = new UserAuthenticateHistoryEntity();
authenticateHistoryEntity.setUserId(userDTO.getId());
authenticateHistoryEntity.setMobile(userDTO.getMobile());
authenticateHistoryEntity.setRealName(userDTO.getRealName());
authenticateHistoryEntity.setAddress(userDTO.getAddress());
authenticateHistoryEntity.setUserId(userDto.getId());
authenticateHistoryEntity.setMobile(userDto.getMobile());
authenticateHistoryEntity.setRealName(userDto.getRealName());
authenticateHistoryEntity.setAddress(userDto.getAddress());
authenticateHistoryEntity.setAuthenticatedFlag(formDTO.getAuthenticatedFlag());//是否认证通过 0未通过1通过
//authenticateHistoryEntity.setRemark(userDTO.getRemark());
//authenticateHistoryEntity.setRemark(userDto.getRemark());
authenticateHistoryEntity.setRemark(formDTO.getRemark()); //审核不通过的原因 - 2019.12.05.zy
userAuthenticateHistoryDao.insert(authenticateHistoryEntity);
}
@ -731,36 +744,48 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
**/
@Override
public Result<UserDTO> queryUserDto(EpdcAppQueryUserInfoFormDTO formDTO) {
if (!StringUtils.isNotBlank(formDTO.getUnionId()) && !StringUtils.isNotBlank(formDTO.getOpenId())) {
return new Result<UserDTO>().error("openId、unionId不能同时为空");
UserDTO userDto = this.selectUserByWxInfo(formDTO.getOpenId(), formDTO.getUnionId());
if (null != userDto) {
QueryWrapper<UserGridRelationEntity> ugWrapper = new QueryWrapper<>();
ugWrapper.eq(UserFieldConsant.USER_ID, userDto.getId())
.orderByDesc(UserFieldConsant.SWITCHED_TIME);
List<UserGridRelationDTO> gridRelations = userGridRelationService.listUserGrid(userDto.getId());
if (CollUtil.isNotEmpty(gridRelations)) {
userDto.setGridId(gridRelations.get(NumConstant.ZERO).getGridId());
userDto.setGrid(gridRelations.get(NumConstant.ZERO).getGrid());
return new Result<UserDTO>().ok(userDto);
}
}
return new Result();
}
/**
* 根据微信信息查询用户
*
* @param openId
* @param unionId
* @return com.elink.esua.epdc.dto.UserDTO
* @author work@yujt.net.cn
* @date 2019/12/7 17:19
*/
private UserDTO selectUserByWxInfo(String openId, String unionId) {
if (!StringUtils.isNotBlank(openId) && !StringUtils.isNotBlank(unionId)) {
throw new RenException("openId、unionId不能同时为空");
}
QueryWrapper<UserEntity> wrapper = new QueryWrapper<>();
UserEntity userEntity = null;
if (StringUtils.isNotBlank(formDTO.getUnionId())) {
wrapper.eq(UserFieldConsant.WX_UNION_ID, formDTO.getUnionId());
if (StringUtils.isNotBlank(unionId)) {
wrapper.eq(UserFieldConsant.WX_UNION_ID, unionId);
userEntity = this.baseDao.selectOne(wrapper);
}
if (null == userEntity) {
wrapper.eq(UserFieldConsant.WX_UNION_ID, formDTO.getUnionId())
.eq(StringUtils.isNotBlank(formDTO.getOpenId()), UserFieldConsant.WX_OPEN_ID, formDTO.getOpenId())
.orderByDesc(FieldConstant.CREATED_TIME);
wrapper.eq(UserFieldConsant.WX_UNION_ID, unionId)
.or()
.eq(StringUtils.isNotBlank(openId), UserFieldConsant.WX_OPEN_ID, openId)
.orderByDesc(FieldConstant.CREATED_TIME);
userEntity = this.baseDao.selectOne(wrapper);
}
if (null != userEntity) {
QueryWrapper<UserGridRelationEntity> ugWrapper = new QueryWrapper<>();
ugWrapper.eq(UserFieldConsant.USER_ID, userEntity.getId())
.orderByDesc(UserFieldConsant.SWITCHED_TIME);
List<UserGridRelationDTO> gridRelations = userGridRelationService.listUserGrid(userEntity.getId());
if (CollUtil.isNotEmpty(gridRelations)) {
UserDTO dto = ConvertUtils.sourceToTarget(userEntity, UserDTO.class);
dto.setGridId(gridRelations.get(NumConstant.ZERO).getGridId());
dto.setGrid(gridRelations.get(NumConstant.ZERO).getGrid());
return new Result<UserDTO>().ok(dto);
}
} else {
return new Result<UserDTO>().error("没有找到用户信息");
}
return new Result<>();
return ConvertUtils.sourceToTarget(userEntity, UserDTO.class);
}
}

Loading…
Cancel
Save