根据登录人密码获取查询人手机号和身份证号
parent
f2b527d32a
commit
c8f344ebe2
|
|
@ -143,5 +143,11 @@ public class UserController {
|
||||||
|
|
||||||
return userService.updatePassword(userUpdatePassWordCmd);
|
return userService.updatePassword(userUpdatePassWordCmd);
|
||||||
}
|
}
|
||||||
|
@ApiOperation("根据登录人密码获取查询人手机号和身份证号")
|
||||||
|
@PostMapping("/getEncryInfo")
|
||||||
|
public SingleResponse<UserCO> getEncryInfo(@Validated @RequestBody UserCheckPassWordCmd userCheckPassWordCmd) {
|
||||||
|
return userService.getEncryInfo(userCheckPassWordCmd);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -83,6 +83,7 @@ public class UserAddExe {
|
||||||
userE.setRoleId(roleId);
|
userE.setRoleId(roleId);
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
|
||||||
res = userGateway.add(userE);
|
res = userGateway.add(userE);
|
||||||
if(corpInfoDO != null && !ObjectUtils.isEmpty(corpInfoDO.getCorpName())){
|
if(corpInfoDO != null && !ObjectUtils.isEmpty(corpInfoDO.getCorpName())){
|
||||||
corpName = corpInfoDO.getCorpName();
|
corpName = corpInfoDO.getCorpName();
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,9 @@ public class DepartmentQueryExe {
|
||||||
if (departmentPageQry.getEqCorpinfoId() == null) {
|
if (departmentPageQry.getEqCorpinfoId() == null) {
|
||||||
departmentPageQry.setEqCorpinfoId(AuthContext.getTenantId());
|
departmentPageQry.setEqCorpinfoId(AuthContext.getTenantId());
|
||||||
}
|
}
|
||||||
|
if(departmentPageQry.getEqParentId() == null){
|
||||||
|
departmentPageQry.setEqParentId(AuthContext.getTenantId());
|
||||||
|
}
|
||||||
Map<String, Object> parmas = PageQueryHelper.toHashMap(departmentPageQry);
|
Map<String, Object> parmas = PageQueryHelper.toHashMap(departmentPageQry);
|
||||||
PageResponse<DepartmentDO> pageResponse = departmentRepository.listPage(parmas);
|
PageResponse<DepartmentDO> pageResponse = departmentRepository.listPage(parmas);
|
||||||
List<DepartmentCO> examCenterCOS = departmentCoConvertor.converDOsToCOs(pageResponse.getData());
|
List<DepartmentCO> examCenterCOS = departmentCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||||
import com.zcloud.basic.info.command.convertor.UserCoConvertor;
|
import com.zcloud.basic.info.command.convertor.UserCoConvertor;
|
||||||
import com.zcloud.basic.info.domain.gateway.UserGateway;
|
import com.zcloud.basic.info.domain.gateway.UserGateway;
|
||||||
import com.zcloud.basic.info.domain.model.UserE;
|
import com.zcloud.basic.info.domain.model.UserE;
|
||||||
|
import com.zcloud.basic.info.dto.UserCheckPassWordCmd;
|
||||||
import com.zcloud.basic.info.dto.UserPageQry;
|
import com.zcloud.basic.info.dto.UserPageQry;
|
||||||
import com.zcloud.basic.info.dto.UserQryCmd;
|
import com.zcloud.basic.info.dto.UserQryCmd;
|
||||||
import com.zcloud.basic.info.dto.UserVerifyQryCmd;
|
import com.zcloud.basic.info.dto.UserVerifyQryCmd;
|
||||||
|
|
@ -17,6 +18,7 @@ import com.zcloud.basic.info.dto.clientobject.UserCO;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.UserDO;
|
import com.zcloud.basic.info.persistence.dataobject.UserDO;
|
||||||
import com.zcloud.basic.info.persistence.repository.UserRepository;
|
import com.zcloud.basic.info.persistence.repository.UserRepository;
|
||||||
import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity;
|
import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity;
|
||||||
|
import com.zcloud.gbscommon.utils.DesensitizationUtils;
|
||||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
|
|
@ -66,6 +68,9 @@ public class UserQueryExe {
|
||||||
Map<String, Object> params = PageQueryHelper.toHashMap(userQryCmd);
|
Map<String, Object> params = PageQueryHelper.toHashMap(userQryCmd);
|
||||||
List<UserDO> imgFilesDOList = userRepository.listAll(params);
|
List<UserDO> imgFilesDOList = userRepository.listAll(params);
|
||||||
List<UserCO> imgFilesCOList = userCoConvertor.converDOsToCOs(imgFilesDOList);
|
List<UserCO> imgFilesCOList = userCoConvertor.converDOsToCOs(imgFilesDOList);
|
||||||
|
//手机号脱敏
|
||||||
|
//身份照脱敏
|
||||||
|
imgFilesCOList.forEach(this::desensitize);
|
||||||
return MultiResponse.of(imgFilesCOList);
|
return MultiResponse.of(imgFilesCOList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,6 +85,7 @@ public class UserQueryExe {
|
||||||
UserDO userDO = userRepository.getInfoById(id);
|
UserDO userDO = userRepository.getInfoById(id);
|
||||||
UserCO userCO = new UserCO();
|
UserCO userCO = new UserCO();
|
||||||
BeanUtils.copyProperties(userDO, userCO);
|
BeanUtils.copyProperties(userDO, userCO);
|
||||||
|
desensitize(userCO);
|
||||||
return SingleResponse.of(userCO);
|
return SingleResponse.of(userCO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -101,17 +107,28 @@ public class UserQueryExe {
|
||||||
QueryWrapper<UserDO> userDOQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<UserDO> userDOQueryWrapper = new QueryWrapper<>();
|
||||||
userDOQueryWrapper.in("id",collection);
|
userDOQueryWrapper.in("id",collection);
|
||||||
List<UserDO> list = userRepository.list(userDOQueryWrapper);
|
List<UserDO> list = userRepository.list(userDOQueryWrapper);
|
||||||
return userCoConvertor.converDOsToCOs(list);
|
List<UserCO> userCOS = userCoConvertor.converDOsToCOs(list);
|
||||||
|
userCOS.forEach(this::desensitize);
|
||||||
|
return userCOS;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<UserCO> getUserList() {
|
public List<UserCO> getUserList() {
|
||||||
List<UserDO> list = userRepository.list();
|
List<UserDO> list = userRepository.list();
|
||||||
return userCoConvertor.converDOsToCOs(list);
|
List<UserCO> userCOS = userCoConvertor.converDOsToCOs(list);
|
||||||
|
userCOS.forEach(this::desensitize);
|
||||||
|
return userCOS;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void desensitize(UserCO userCO) {
|
||||||
|
userCO.setUserIdCard(DesensitizationUtils.idCardDesensitize(userCO.getUserIdCard()));
|
||||||
|
userCO.setPhone(DesensitizationUtils.mobileDesensitize(userCO.getPhone()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public UserCO getInfoByUserId(Long aLong) {
|
public UserCO getInfoByUserId(Long aLong) {
|
||||||
UserDO byId = userRepository.getById(aLong);
|
UserDO byId = userRepository.getById(aLong);
|
||||||
return userCoConvertor.converDOToCO(byId);
|
UserCO userCO = userCoConvertor.converDOToCO(byId);
|
||||||
|
desensitize(userCO);
|
||||||
|
return userCO;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -124,6 +141,9 @@ public class UserQueryExe {
|
||||||
params.put("userIdList", Arrays.asList(ids));
|
params.put("userIdList", Arrays.asList(ids));
|
||||||
}
|
}
|
||||||
List<UserDO> userDOList = userRepository.listAll(params);
|
List<UserDO> userDOList = userRepository.listAll(params);
|
||||||
|
//手机号脱敏
|
||||||
|
//身份照脱敏
|
||||||
|
userDOList.forEach(userDO -> desensitize(userCoConvertor.converDOToCO(userDO)));
|
||||||
List<UserExcelExportEntity> userExcelExportEntities = userCoConvertor.converDOsToExcelEntitys(userDOList);
|
List<UserExcelExportEntity> userExcelExportEntities = userCoConvertor.converDOsToExcelEntitys(userDOList);
|
||||||
UserE userE = new UserE();
|
UserE userE = new UserE();
|
||||||
userE.exportUserTable(httpServletResponse, userExcelExportEntities);
|
userE.exportUserTable(httpServletResponse, userExcelExportEntities);
|
||||||
|
|
@ -143,7 +163,16 @@ public class UserQueryExe {
|
||||||
UserDO userDO = userRepository.getInfoById(id);
|
UserDO userDO = userRepository.getInfoById(id);
|
||||||
UserCO userCO = new UserCO();
|
UserCO userCO = new UserCO();
|
||||||
BeanUtils.copyProperties(userDO, userCO);
|
BeanUtils.copyProperties(userDO, userCO);
|
||||||
|
desensitize(userCO);
|
||||||
return SingleResponse.of(userCO);
|
return SingleResponse.of(userCO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public SingleResponse<UserCO> getEncryInfo(UserCheckPassWordCmd userCheckPassWordCmd) {
|
||||||
|
UserE userE = new UserE();
|
||||||
|
BeanUtils.copyProperties(userCheckPassWordCmd, userE);
|
||||||
|
userE.encryptionPassword();
|
||||||
|
UserDO userDO = userRepository.getEncryInfo(userE);
|
||||||
|
return SingleResponse.of(userCoConvertor.converDOToCO(userDO));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -124,5 +124,9 @@ public class UserServiceImpl implements UserServiceI {
|
||||||
return userUpdateExe.executeUpdatePassword(userUpdatePassWordCmd);
|
return userUpdateExe.executeUpdatePassword(userUpdatePassWordCmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SingleResponse<UserCO> getEncryInfo(UserCheckPassWordCmd userCheckPassWordCmd) {
|
||||||
|
return userQueryExe.getEncryInfo(userCheckPassWordCmd);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,5 +50,7 @@ public interface UserServiceI {
|
||||||
UserCO getInfoByUserId(Long aLong);
|
UserCO getInfoByUserId(Long aLong);
|
||||||
void changePassword(Long id);
|
void changePassword(Long id);
|
||||||
Response updatePassword(UserUpdatePassWordCmd userUpdatePassWordCmd);
|
Response updatePassword(UserUpdatePassWordCmd userUpdatePassWordCmd);
|
||||||
|
|
||||||
|
SingleResponse<UserCO> getEncryInfo(UserCheckPassWordCmd userCheckPassWordCmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
package com.zcloud.basic.info.dto;
|
||||||
|
|
||||||
|
import com.alibaba.cola.dto.Command;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* web-client
|
||||||
|
*
|
||||||
|
* @Author zhangyue
|
||||||
|
* @Date 2025-11-04 14:07:38
|
||||||
|
*/
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class UserCheckPassWordCmd extends Command {
|
||||||
|
@ApiModelProperty(value = "GBS用户id", name = "id", required = true)
|
||||||
|
@NotNull(message = "GBS用户id不能为空")
|
||||||
|
private Long id;
|
||||||
|
@ApiModelProperty(value = "原密码", name = "password")
|
||||||
|
@NotEmpty(message = "原密码不能为空")
|
||||||
|
private String password;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -364,8 +364,12 @@ public class UserE extends BaseE {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void encryptionPassword() {
|
public void encryptionPassword() {
|
||||||
|
|
||||||
this.setPassword(Sm2Util.encryptHex(MD5.md5(password), publicKey));
|
this.setPassword(Sm2Util.encryptHex(MD5.md5(password), publicKey));
|
||||||
this.setNewPassword(Sm2Util.encryptHex(MD5.md5(newPassword), publicKey));
|
if(StringUtils.isNotEmpty(newPassword)){
|
||||||
|
this.setNewPassword(Sm2Util.encryptHex(MD5.md5(newPassword), publicKey));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,8 @@ import com.zcloud.basic.info.domain.model.UserE;
|
||||||
import com.zcloud.basic.info.persistence.dataobject.UserDO;
|
import com.zcloud.basic.info.persistence.dataobject.UserDO;
|
||||||
import org.apache.catalina.User;
|
import org.apache.catalina.User;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
|
@ -60,5 +62,6 @@ public interface UserRepository extends BaseRepository<UserDO> {
|
||||||
|
|
||||||
Response updatePassword(UserDO userDO);
|
Response updatePassword(UserDO userDO);
|
||||||
|
|
||||||
|
UserDO getEncryInfo(UserE userE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.alibaba.cola.dto.MultiResponse;
|
||||||
import com.alibaba.cola.dto.PageResponse;
|
import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.alibaba.cola.dto.Response;
|
import com.alibaba.cola.dto.Response;
|
||||||
import com.alibaba.cola.dto.SingleResponse;
|
import com.alibaba.cola.dto.SingleResponse;
|
||||||
|
import com.alibaba.cola.exception.BizException;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
|
@ -201,6 +202,9 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
|
||||||
|
|
||||||
SingleResponse<Long> gbsResult = userFacade.add(userAddCmd);
|
SingleResponse<Long> gbsResult = userFacade.add(userAddCmd);
|
||||||
userDO.setId(gbsResult.getData());
|
userDO.setId(gbsResult.getData());
|
||||||
|
if(userDO.getSort() == null){
|
||||||
|
userDO.setSort(9999);
|
||||||
|
}
|
||||||
save(userDO);
|
save(userDO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -293,5 +297,18 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
|
||||||
userUpdatePasswordCmd.setPassword(userDO.getNewPassword());
|
userUpdatePasswordCmd.setPassword(userDO.getNewPassword());
|
||||||
return userFacade.updatePassword(userUpdatePasswordCmd);
|
return userFacade.updatePassword(userUpdatePasswordCmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public UserDO getEncryInfo(UserE userE) {
|
||||||
|
// TODO 验证老密码是否正确
|
||||||
|
AccountPasswordCheckCmd accountPasswordCheckCmd = new AccountPasswordCheckCmd();
|
||||||
|
accountPasswordCheckCmd.setUserId(AuthContext.getUserId());
|
||||||
|
accountPasswordCheckCmd.setPassword(userE.getPassword());
|
||||||
|
SingleResponse<Long> response = accountFacade.checkPassword(accountPasswordCheckCmd);
|
||||||
|
if(!response.isSuccess()){
|
||||||
|
throw new BizException("密码错误");
|
||||||
|
}
|
||||||
|
return getById(userE.getId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue