Merge branch 'dev_sys_config' into dev

# Conflicts:
#	web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java
#	web-app/src/main/java/com/zcloud/basic/info/command/UserImportExe.java
#	web-app/src/main/java/com/zcloud/basic/info/command/UserUpdateExe.java
#	web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoE.java
#	web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java
dev
zhangyue 2026-08-12 15:59:03 +08:00
commit 49d840ea7d
19 changed files with 227 additions and 182 deletions

View File

@ -2,10 +2,10 @@ package com.zcloud.basic.info.facade;
import com.alibaba.cola.dto.MultiResponse; 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.SingleResponse; import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.basic.info.api.CorpInfoServiceI; import com.zcloud.basic.info.api.CorpInfoServiceI;
import com.zcloud.basic.info.command.convertor.CorpInfoCoConvertor; import com.zcloud.basic.info.command.convertor.CorpInfoCoConvertor;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.dto.CorpInfoAddCmd; import com.zcloud.basic.info.dto.CorpInfoAddCmd;
import com.zcloud.basic.info.dto.CorpInfoPageQry; import com.zcloud.basic.info.dto.CorpInfoPageQry;
import com.zcloud.basic.info.dto.CorpInfoUpdateCmd; import com.zcloud.basic.info.dto.CorpInfoUpdateCmd;
@ -17,8 +17,11 @@ import com.zcloud.gbscommon.zcloudcorp.request.ZcloudCorpInfoPageQry;
import com.zcloud.gbscommon.zcloudcorp.request.ZcloudCorpInfoUpdateCmd; import com.zcloud.gbscommon.zcloudcorp.request.ZcloudCorpInfoUpdateCmd;
import com.zcloud.gbscommon.zcloudcorp.response.ZcloudCorpInfoCO; import com.zcloud.gbscommon.zcloudcorp.response.ZcloudCorpInfoCO;
import com.zcloud.gbscommon.zclouddepartment.response.ZcloudDepartmentInfoCo; import com.zcloud.gbscommon.zclouddepartment.response.ZcloudDepartmentInfoCo;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import org.apache.dubbo.config.annotation.DubboReference;
import org.apache.dubbo.config.annotation.DubboService; import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.http.ResponseEntity;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Collection; import java.util.Collection;
@ -30,6 +33,9 @@ public class ZcloudCorpFacadeImpl implements ZcloudCorpFacade {
private CorpInfoServiceI corpInfoService; private CorpInfoServiceI corpInfoService;
@Resource @Resource
private CorpInfoCoConvertor corpInfoCoConvertor; private CorpInfoCoConvertor corpInfoCoConvertor;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Override @Override
public SingleResponse<ZcloudCorpInfoCO> getCorpInfoById(Long id) { public SingleResponse<ZcloudCorpInfoCO> getCorpInfoById(Long id) {
CorpInfoCO info = corpInfoService.info(id); CorpInfoCO info = corpInfoService.info(id);
@ -83,7 +89,16 @@ public class ZcloudCorpFacadeImpl implements ZcloudCorpFacade {
@Override @Override
public MultiResponse<Integer> listCorpType(Integer enterpriseType) { public MultiResponse<Integer> listCorpType(Integer enterpriseType) {
return MultiResponse.of(CorpTypeEnum.getCodesByEnterpriseType(enterpriseType)); return MultiResponse.of(zcloudTenantTypeConfigFacade.getCodesByEnterpriseType(enterpriseType));
}
public Response saveAdminCorp() {
Integer type = zcloudTenantTypeConfigFacade.getDefaultType("defaultType0001");
if (type == null){
return Response.buildFailure("请先配置默认类型");
}
return Response.buildSuccess();
} }
} }

View File

@ -8,7 +8,6 @@ import com.jjb.saas.system.client.tenant.request.OtaTenantAddCmd;
import com.zcloud.basic.info.command.convertor.CorpFormCoConvertor; import com.zcloud.basic.info.command.convertor.CorpFormCoConvertor;
import com.zcloud.basic.info.command.convertor.CorpInfoXgfCoConvertor; import com.zcloud.basic.info.command.convertor.CorpInfoXgfCoConvertor;
import com.zcloud.basic.info.domain.enums.CorpFormTypeEnum; import com.zcloud.basic.info.domain.enums.CorpFormTypeEnum;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.gateway.CorpFormGateway; import com.zcloud.basic.info.domain.gateway.CorpFormGateway;
import com.zcloud.basic.info.domain.gateway.CorpInfoGateway; import com.zcloud.basic.info.domain.gateway.CorpInfoGateway;
import com.zcloud.basic.info.domain.gateway.UserGateway; import com.zcloud.basic.info.domain.gateway.UserGateway;
@ -21,6 +20,7 @@ import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO;
import com.zcloud.basic.info.persistence.repository.*; import com.zcloud.basic.info.persistence.repository.*;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Tools; import com.zcloud.gbscommon.utils.Tools;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
@ -52,7 +52,8 @@ public class CorpInfoAddExe {
private final CorpFormCoConvertor corpFormCoConvertor; private final CorpFormCoConvertor corpFormCoConvertor;
private final CorpFormGateway corpFormGateway; private final CorpFormGateway corpFormGateway;
private final CorpFormRepository corpFormRepository; private final CorpFormRepository corpFormRepository;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long execute(CorpInfoAddCmd cmd) { public Long execute(CorpInfoAddCmd cmd) {
@ -68,7 +69,8 @@ public class CorpInfoAddExe {
examTypeE.checkList(corpinfoByCode == null ? 0 : corpinfoByCode.size()); examTypeE.checkList(corpinfoByCode == null ? 0 : corpinfoByCode.size());
} }
try { try {
examTypeE.initPassWord(cmd.getType());
examTypeE.initPassWord(zcloudTenantTypeConfigFacade.getPasswordByCode(cmd.getType()));
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
@ -102,7 +104,8 @@ public class CorpInfoAddExe {
UserE userE = new UserE(); UserE userE = new UserE();
userE.initCorpInfo(examTypeE,departmentId,corpInfoId);
userE.initCorpInfo(examTypeE,departmentId,corpInfoId, zcloudTenantTypeConfigFacade.getUserTypeByCode(examTypeE.getType()));
userRepository.addCorpUser(userE); userRepository.addCorpUser(userE);
UserEmploymentLogE userEmploymentLogE = new UserEmploymentLogE(); UserEmploymentLogE userEmploymentLogE = new UserEmploymentLogE();
@ -111,5 +114,10 @@ public class CorpInfoAddExe {
userEmploymentLogRepository.addCorpUserEmploymentLog(userEmploymentLogE); userEmploymentLogRepository.addCorpUserEmploymentLog(userEmploymentLogE);
return corpInfoId; return corpInfoId;
} }
@Transactional(rollbackFor = Exception.class)
public Long saveAdminCorp() {
return null;
}
} }

View File

@ -9,13 +9,13 @@ import com.jjb.saas.system.client.tenant.request.OtaTenantAddCmd;
import com.zcloud.basic.info.command.convertor.CorpFormCoConvertor; import com.zcloud.basic.info.command.convertor.CorpFormCoConvertor;
import com.zcloud.basic.info.command.convertor.CorpInfoXgfCoConvertor; import com.zcloud.basic.info.command.convertor.CorpInfoXgfCoConvertor;
import com.zcloud.basic.info.domain.enums.CorpFormTypeEnum; import com.zcloud.basic.info.domain.enums.CorpFormTypeEnum;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.gateway.CorpFormGateway; import com.zcloud.basic.info.domain.gateway.CorpFormGateway;
import com.zcloud.basic.info.domain.gateway.CorpInfoXgfGateway; import com.zcloud.basic.info.domain.gateway.CorpInfoXgfGateway;
import com.zcloud.basic.info.domain.model.CorpFormE; import com.zcloud.basic.info.domain.model.CorpFormE;
import com.zcloud.basic.info.domain.model.CorpInfoXgfE; import com.zcloud.basic.info.domain.model.CorpInfoXgfE;
import com.zcloud.basic.info.dto.CorpInfoXgfAddCmd; import com.zcloud.basic.info.dto.CorpInfoXgfAddCmd;
import com.zcloud.basic.info.dto.CorpInfoXgfItemCmd; import com.zcloud.basic.info.dto.CorpInfoXgfItemCmd;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
@ -44,13 +44,16 @@ public class CorpInfoXgfAddExe {
@DubboReference @DubboReference
private TenantFacade tenantFacade; private TenantFacade tenantFacade;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long execute(CorpInfoXgfAddCmd cmd) { public Long execute(CorpInfoXgfAddCmd cmd) {
CorpInfoXgfE corpInfoXgfE = new CorpInfoXgfE(); CorpInfoXgfE corpInfoXgfE = new CorpInfoXgfE();
BeanUtils.copyProperties(cmd, corpInfoXgfE); BeanUtils.copyProperties(cmd, corpInfoXgfE);
Long corpInfoId ; Long corpInfoId ;
try { try {
corpInfoXgfE.setType(CorpTypeEnum.serviceProvider.getCode()); // TODO zcloudTenantTypeConfigFacade这个方法是否废弃。目前写死CODE
corpInfoXgfE.setType(3);
corpInfoId = corpInfoXgfGateway.addInfo(corpInfoXgfE); corpInfoId = corpInfoXgfGateway.addInfo(corpInfoXgfE);
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException(e); throw new RuntimeException(e);
@ -62,6 +65,7 @@ public class CorpInfoXgfAddExe {
otaTenantAddCmd.setAccount(corpInfoXgfE.getCorpName()); otaTenantAddCmd.setAccount(corpInfoXgfE.getCorpName());
otaTenantAddCmd.setTenantId(corpInfoId); otaTenantAddCmd.setTenantId(corpInfoId);
otaTenantAddCmd.setTenantName(corpInfoXgfE.getCorpName()); otaTenantAddCmd.setTenantName(corpInfoXgfE.getCorpName());
// TODO zcloudTenantTypeConfigFacade这个方法是否废弃。目前写死密码
otaTenantAddCmd.setPassword("Aa@12345678"); otaTenantAddCmd.setPassword("Aa@12345678");
log.info("CorpInfoXgfAddExe,新增企业调用GBS请求:{}",otaTenantAddCmd.toString()); log.info("CorpInfoXgfAddExe,新增企业调用GBS请求:{}",otaTenantAddCmd.toString());
Response response = tenantFacade.addOtaTenant(otaTenantAddCmd); Response response = tenantFacade.addOtaTenant(otaTenantAddCmd);

View File

@ -7,7 +7,6 @@ import com.zcloud.basic.info.command.convertor.DepartmentSuperviseCoConvertor;
import com.zcloud.basic.info.command.query.CorpInfoQueryExe; import com.zcloud.basic.info.command.query.CorpInfoQueryExe;
import com.zcloud.basic.info.command.query.DepartmentQueryExe; import com.zcloud.basic.info.command.query.DepartmentQueryExe;
import com.zcloud.basic.info.domain.enums.CommonFlagEnum; import com.zcloud.basic.info.domain.enums.CommonFlagEnum;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.gateway.DepartmentGateway; import com.zcloud.basic.info.domain.gateway.DepartmentGateway;
import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway; import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
import com.zcloud.basic.info.domain.model.DepartmentE; import com.zcloud.basic.info.domain.model.DepartmentE;

View File

@ -34,6 +34,7 @@ import com.zcloud.basic.info.persistence.repository.*;
import com.zcloud.gbscommon.dahua.cmd.DaHuaPersonSyncCmd; import com.zcloud.gbscommon.dahua.cmd.DaHuaPersonSyncCmd;
import com.zcloud.gbscommon.dahua.facade.ZcloudDaHuaFacade; import com.zcloud.gbscommon.dahua.facade.ZcloudDaHuaFacade;
import com.zcloud.gbscommon.utils.*; import com.zcloud.gbscommon.utils.*;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -105,6 +106,8 @@ public class UserAddExe {
private final DaHuaConfig daHuaConfig; private final DaHuaConfig daHuaConfig;
@DubboReference @DubboReference
private ZcloudDaHuaFacade zcloudDaHuaFacade; private ZcloudDaHuaFacade zcloudDaHuaFacade;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public boolean execute(UserAddCmd cmd) { public boolean execute(UserAddCmd cmd) {
@ -188,9 +191,9 @@ public class UserAddExe {
userE.setRoleId(roleId); userE.setRoleId(roleId);
} }
try { try {
userE.setUserType(CorpTypeEnum.getUserTypeByCode(corpInfoDO.getType())); userE.setUserType(zcloudTenantTypeConfigFacade.getUserTypeByCode(corpInfoDO.getType()));
userE.resetPassword(corpInfoDO.getType()); userE.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
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();
@ -1004,7 +1007,7 @@ public class UserAddExe {
if (corpInfoDO == null) { if (corpInfoDO == null) {
throw new BizException("企业信息不存在corpinfoId=" + userE.getCorpinfoId()); throw new BizException("企业信息不存在corpinfoId=" + userE.getCorpinfoId());
} }
userE.setUserType(CorpTypeEnum.getUserTypeByCode(corpInfoDO.getType())); userE.setUserType(zcloudTenantTypeConfigFacade.getUserTypeByCode(corpInfoDO.getType()));
Long roleId = userRepository.getDefaultRoleId(); Long roleId = userRepository.getDefaultRoleId();
if (roleId == null) { if (roleId == null) {
throw new BizException("未创建默认通用角色,请联系管理员"); throw new BizException("未创建默认通用角色,请联系管理员");
@ -1043,7 +1046,9 @@ public class UserAddExe {
} }
} else { } else {
List<UserE> userEList = userCoConvertor.convertDOsToEs(userList); List<UserE> userEList = userCoConvertor.convertDOsToEs(userList);
userE.checkXGfPhone(userEList); // TODO zcloudTenantTypeConfigFacade特定业务写死的defaultType0003
Integer xgfCode = zcloudTenantTypeConfigFacade.getDefaultType("defaultType0003");
userE.checkXGfPhone(userEList,xgfCode);
Optional<UserDO> optionalUserDO = userList.stream() Optional<UserDO> optionalUserDO = userList.stream()
.filter(u -> AuthContext.getTenantId().equals(u.getCorpinfoId()) || u.getCorpinfoId() == null) .filter(u -> AuthContext.getTenantId().equals(u.getCorpinfoId()) || u.getCorpinfoId() == null)
.findFirst(); .findFirst();

View File

@ -29,6 +29,7 @@ import com.zcloud.basic.info.persistence.repository.UserRepository;
import com.zcloud.gbscommon.excelEntity.UserExcelImportEntity; import com.zcloud.gbscommon.excelEntity.UserExcelImportEntity;
import com.zcloud.gbscommon.utils.ExcelUtils; import com.zcloud.gbscommon.utils.ExcelUtils;
import com.zcloud.gbscommon.utils.UuidUtil; import com.zcloud.gbscommon.utils.UuidUtil;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -63,7 +64,8 @@ public class UserImportExe {
private DeptFacade deptFacade; private DeptFacade deptFacade;
@DubboReference @DubboReference
private UserFacade userFacade; private UserFacade userFacade;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void importUserTable(MultipartFile file, Integer corpFlag) { public void importUserTable(MultipartFile file, Integer corpFlag) {
Long corpinfoId = AuthContext.getTenantId(); Long corpinfoId = AuthContext.getTenantId();
@ -418,7 +420,7 @@ public class UserImportExe {
user.setUserIdCard(null); user.setUserIdCard(null);
user.setPersonnelType(importEntity.getPersonnelType()); user.setPersonnelType(importEntity.getPersonnelType());
user.setPersonnelTypeName(importEntity.getPersonnelType()); user.setPersonnelTypeName(importEntity.getPersonnelType());
user.resetPassword(corpInfoDO.getType()); user.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
userGateway.add(user); userGateway.add(user);
String corpName = null; String corpName = null;
if(corpInfoDO != null && !ObjectUtils.isEmpty(corpInfoDO.getCorpName())){ if(corpInfoDO != null && !ObjectUtils.isEmpty(corpInfoDO.getCorpName())){

View File

@ -32,6 +32,8 @@ import com.zcloud.gbscommon.zcloudhidden.request.HiddenUpdateCmd;
import com.zcloud.gbscommon.zcloudhidden.response.HiddenListByUserCO; import com.zcloud.gbscommon.zcloudhidden.response.HiddenListByUserCO;
import com.zcloud.gbscommon.zcloudrisk.facade.ZcloudRiskFacade; import com.zcloud.gbscommon.zcloudrisk.facade.ZcloudRiskFacade;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -96,6 +98,10 @@ public class UserUpdateExe {
@Value("${file.upload.url:}") @Value("${file.upload.url:}")
private String fileUrl; private String fileUrl;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void execute(UserUpdateCmd userUpdateCmd) { public void execute(UserUpdateCmd userUpdateCmd) {
log.info("【用户编辑execute入口】开始执行, id={}, name={}, phone={}", log.info("【用户编辑execute入口】开始执行, id={}, name={}, phone={}",
@ -138,9 +144,10 @@ public class UserUpdateExe {
CorpInfoDO corpInfoDO = corpInfoRepository.getById(userDO.getCorpinfoId()); CorpInfoDO corpInfoDO = corpInfoRepository.getById(userDO.getCorpinfoId());
if(corpInfoDO != null){ if(corpInfoDO != null){
if(corpInfoDO.getType() == CorpTypeEnum.serviceProvider.getCode() // TODO 相关方内容先写死
|| corpInfoDO.getType() == CorpTypeEnum.cargoOwner.getCode() List<Integer> typeList = zcloudTenantTypeConfigFacade.listTypeByParentName("相关方");
|| corpInfoDO.getType() == CorpTypeEnum.portUnit.getCode()){ Set<Integer> typeSet = new HashSet<>(typeList);
if(typeSet.contains(corpInfoDO.getType())){
// 先把其他相关方的账号找出来 // 先把其他相关方的账号找出来
List<UserDO> userByPhoneList = userRepository.listByPhone(userDO.getPhone()); List<UserDO> userByPhoneList = userRepository.listByPhone(userDO.getPhone());
List<Long> userIds = userByPhoneList.stream().map(UserDO::getId).collect(Collectors.toList()); List<Long> userIds = userByPhoneList.stream().map(UserDO::getId).collect(Collectors.toList());
@ -162,12 +169,13 @@ public class UserUpdateExe {
} }
if(detail.getData() != null){ if(detail.getData() != null){
// 调用底座修改账号 // 调用底座修改账号
userE.resetPassword(corpInfoDO.getType());
userE.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
userGateway.updateInfoAndPasswordByGBS(userE); userGateway.updateInfoAndPasswordByGBS(userE);
if(!userE.getPhone().equals(userDO.getPhone())){ if(!userE.getPhone().equals(userDO.getPhone())){
// 修改账号了,需要重置密码 // 修改账号了,需要重置密码
UserE u = new UserE(); UserE u = new UserE();
u.resetPassword(corpInfoDO.getType()); u.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
for (Long userId : userIds) { for (Long userId : userIds) {
userRepository.changePassword(userId, u.getPassword()); userRepository.changePassword(userId, u.getPassword());
} }
@ -201,11 +209,11 @@ public class UserUpdateExe {
if(detail.getData() != null){ if(detail.getData() != null){
// 调用底座修改账号 // 调用底座修改账号
userGateway.updateInfoAndPasswordByGBS(userE); userGateway.updateInfoAndPasswordByGBS(userE);
userE.resetPassword(corpInfoDO.getType()); userE.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
if(!userE.getPhone().equals(userDO.getPhone())){ if(!userE.getPhone().equals(userDO.getPhone())){
// 账号修改了,需要重置密码 // 账号修改了,需要重置密码
UserE u = new UserE(); UserE u = new UserE();
u.resetPassword(corpInfoDO.getType()); u.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
userRepository.changePassword(userDO.getId(), u.getPassword()); userRepository.changePassword(userDO.getId(), u.getPassword());
} }
} }
@ -802,7 +810,8 @@ public class UserUpdateExe {
UserE userE = new UserE(); UserE userE = new UserE();
UserDO userDO = userRepository.getById( id); UserDO userDO = userRepository.getById( id);
CorpInfoDO corpInfoDO = corpInfoRepository.getById(userDO.getCorpinfoId()); CorpInfoDO corpInfoDO = corpInfoRepository.getById(userDO.getCorpinfoId());
userE.resetPassword(corpInfoDO.getType());
userE.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(corpInfoDO.getType()));
userRepository.changePassword(id, userE.getPassword()); userRepository.changePassword(id, userE.getPassword());
} }

View File

@ -9,8 +9,6 @@ import com.jjb.saas.framework.auth.utils.AuthContext;
import com.jjb.saas.security.starter.api.co.DecryptCmd; import com.jjb.saas.security.starter.api.co.DecryptCmd;
import com.zcloud.basic.info.command.convertor.CorpInfoCoConvertor; import com.zcloud.basic.info.command.convertor.CorpInfoCoConvertor;
import com.zcloud.basic.info.domain.enums.CorpFormTypeEnum; import com.zcloud.basic.info.domain.enums.CorpFormTypeEnum;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.enums.UserTypeEnum;
import com.zcloud.basic.info.domain.model.CorpDepartmentE; import com.zcloud.basic.info.domain.model.CorpDepartmentE;
import com.zcloud.basic.info.domain.model.DepartmentE; import com.zcloud.basic.info.domain.model.DepartmentE;
import com.zcloud.basic.info.domain.model.UserE; import com.zcloud.basic.info.domain.model.UserE;
@ -24,8 +22,10 @@ import com.zcloud.basic.info.dto.clientobject.UserCO;
import com.zcloud.basic.info.persistence.dataobject.*; import com.zcloud.basic.info.persistence.dataobject.*;
import com.zcloud.basic.info.persistence.repository.*; import com.zcloud.basic.info.persistence.repository.*;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -50,6 +50,8 @@ public class CorpInfoQueryExe {
private final UserQualificationInfoRepository userQualificationInfoRepository; private final UserQualificationInfoRepository userQualificationInfoRepository;
private final CorpFormRepository corpFormRepository; private final CorpFormRepository corpFormRepository;
private final CorpInfoCoConvertor corpFormCoConvertor; private final CorpInfoCoConvertor corpFormCoConvertor;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
// private final SecurityClientApi securityClientApi; // private final SecurityClientApi securityClientApi;
// private final DesenstizationClientUtil desenstizationClientUtil; // private final DesenstizationClientUtil desenstizationClientUtil;
@ -296,7 +298,8 @@ public class CorpInfoQueryExe {
throw new BizException("企业不存在"); throw new BizException("企业不存在");
} }
//是相关方才会校验 //是相关方才会校验
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType(UserTypeEnum.XGF.getCode()); // TODO zcloudTenantTypeConfigFacade特定业务写死的defaultType0003
List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType(zcloudTenantTypeConfigFacade.getDefaultType("defaultType0003"));
if (!enterpriseType.contains(corpInfoDO.getType())) { if (!enterpriseType.contains(corpInfoDO.getType())) {
return true; return true;

View File

@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.basic.info.command.convertor.DepartmentCoConvertor; import com.zcloud.basic.info.command.convertor.DepartmentCoConvertor;
import com.zcloud.basic.info.domain.enums.CommonFlagEnum; import com.zcloud.basic.info.domain.enums.CommonFlagEnum;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.dto.*; import com.zcloud.basic.info.dto.*;
import com.zcloud.basic.info.dto.clientobject.*; import com.zcloud.basic.info.dto.clientobject.*;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO; import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
@ -17,6 +16,7 @@ import com.zcloud.basic.info.persistence.repository.UserRepository;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Tools; import com.zcloud.gbscommon.utils.Tools;
import com.zcloud.gbscommon.zclouddepartment.face.ZcloudDepartmentFacade; import com.zcloud.gbscommon.zclouddepartment.face.ZcloudDepartmentFacade;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
@ -44,6 +44,9 @@ public class DepartmentQueryExe {
@DubboReference @DubboReference
private ZcloudDepartmentFacade zcloudDepartmentFacade; private ZcloudDepartmentFacade zcloudDepartmentFacade;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
/** /**
* *
* *
@ -189,7 +192,7 @@ public class DepartmentQueryExe {
public Collection<DepartmentTreeInfoCO> listAllTreeByCorpType(DepartmentTreeQry qry) { public Collection<DepartmentTreeInfoCO> listAllTreeByCorpType(DepartmentTreeQry qry) {
Map<String, Object> parmas = PageQueryHelper.toHashMap(qry); Map<String, Object> parmas = PageQueryHelper.toHashMap(qry);
List<Integer> enterpriseType =CorpTypeEnum.getCodesByEnterpriseType(qry.getEnterpriseType()); List<Integer> enterpriseType =zcloudTenantTypeConfigFacade.getCodesByEnterpriseType(qry.getEnterpriseType());
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
parmas.put("inType",enterpriseType); parmas.put("inType",enterpriseType);
} }

View File

@ -16,7 +16,6 @@ import com.zcloud.basic.info.command.convertor.UserCoConvertor;
import com.zcloud.basic.info.constant.RedisConstant; import com.zcloud.basic.info.constant.RedisConstant;
import com.zcloud.basic.info.domain.config.NineCompanyConfig; import com.zcloud.basic.info.domain.config.NineCompanyConfig;
import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum; import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum;
import com.zcloud.basic.info.domain.enums.UserTypeEnum;
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.*; import com.zcloud.basic.info.dto.*;
@ -32,6 +31,7 @@ import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Tools; import com.zcloud.gbscommon.utils.Tools;
import com.zcloud.gbscommon.utils.ZcloudRedisUtil; import com.zcloud.gbscommon.utils.ZcloudRedisUtil;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
@ -61,7 +61,8 @@ public class UserQueryExe {
private ZcloudRedisUtil zcloudRedisUtil; private ZcloudRedisUtil zcloudRedisUtil;
private final UserExpandInfoRepository userExpandInfoRepository; private final UserExpandInfoRepository userExpandInfoRepository;
private final NineCompanyConfig nineCompanyConfig; private final NineCompanyConfig nineCompanyConfig;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
/** /**
* *
@ -288,9 +289,11 @@ public class UserQueryExe {
if(CollUtil.isEmpty(userDOList)){ if(CollUtil.isEmpty(userDOList)){
throw new BizException("用户不存在"); throw new BizException("用户不存在");
} }
// TODO zcloudTenantTypeConfigFacade特定业务写死的defaultType0003
Integer xgfCode = zcloudTenantTypeConfigFacade.getDefaultType("defaultType0003");
//获取在职的用户取第一个 //获取在职的用户取第一个
UserDO userDO = userDOList.stream().filter(userDO1 -> UserEmploymentFlagEnum.ON.getCode().equals(userDO1.getEmploymentFlag())) UserDO userDO = userDOList.stream().filter(userDO1 -> UserEmploymentFlagEnum.ON.getCode().equals(userDO1.getEmploymentFlag()))
.filter(userDO1 -> UserTypeEnum.XGF.getCode().equals(userDO1.getUserType())).findFirst().orElse(null); .filter(userDO1 -> xgfCode.equals(userDO1.getUserType())).findFirst().orElse(null);
if(userDO == null){ if(userDO == null){
userDO = userDOList.get(0); userDO = userDOList.get(0);
} }

View File

@ -8,7 +8,6 @@ import com.jjb.saas.security.starter.api.co.DecryptCmd;
import com.zcloud.basic.info.api.CorpInfoServiceI; import com.zcloud.basic.info.api.CorpInfoServiceI;
import com.zcloud.basic.info.command.*; import com.zcloud.basic.info.command.*;
import com.zcloud.basic.info.command.query.CorpInfoQueryExe; import com.zcloud.basic.info.command.query.CorpInfoQueryExe;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.dto.*; import com.zcloud.basic.info.dto.*;
import com.zcloud.basic.info.dto.clientobject.*; import com.zcloud.basic.info.dto.clientobject.*;
import com.zcloud.gbscommon.utils.Tools; import com.zcloud.gbscommon.utils.Tools;
@ -156,5 +155,10 @@ public class CorpInfoServiceImpl implements CorpInfoServiceI {
public CorpUserSummaryCO corpUserSummary(CorpUserSummaryQry qry) { public CorpUserSummaryCO corpUserSummary(CorpUserSummaryQry qry) {
return corpInfoQueryExe.corpUserSummary(qry); return corpInfoQueryExe.corpUserSummary(qry);
} }
@Override
public void saveAdminCorp() {
corpInfoAddExe.saveAdminCorp();
}
} }

View File

@ -59,5 +59,7 @@ public interface CorpInfoServiceI {
PageResponse<CorpUserStatisticCO> corpUserStatisticPage(CorpUserStatisticQry qry); PageResponse<CorpUserStatisticCO> corpUserStatisticPage(CorpUserStatisticQry qry);
CorpUserSummaryCO corpUserSummary(CorpUserSummaryQry qry); CorpUserSummaryCO corpUserSummary(CorpUserSummaryQry qry);
void saveAdminCorp();
} }

View File

@ -1,91 +1,91 @@
package com.zcloud.basic.info.domain.enums; //package com.zcloud.basic.info.domain.enums;
//
import cn.hutool.core.collection.CollUtil; //import cn.hutool.core.collection.CollUtil;
import lombok.Getter; //import lombok.Getter;
//
import java.util.*; //import java.util.*;
import java.util.stream.Collectors; //import java.util.stream.Collectors;
//
/** ///**
* corp_info type(0-1-2-3-4-5-) // * corp_info 中的type字段枚举(0-普通企业1-集团单位2-股份单位3-相关方企业4-货主单位5-驻港单位)
* enterpriseType // * 与传入enterpriseType中的关联关系
* .1 2 3 // * .企业类型1监管 2企业 3相关方
*/ // */
@Getter //@Getter
public enum CorpTypeEnum { //public enum CorpTypeEnum {
// TODO 若修改默认密码通知前端同步修改 // // TODO 若修改默认密码通知前端同步修改
OrdinaryEnterprises(0,"普通企业",UserTypeEnum.QY.getCode(), "Bb@12345678"), // OrdinaryEnterprises(0,"普通企业",UserTypeEnum.QY.getCode(), "Bb@12345678"),
groupUnits(1, "集团单位",UserTypeEnum.QY.getCode(), "Bb@12345678"), // groupUnits(1, "集团单位",UserTypeEnum.QY.getCode(), "Bb@12345678"),
share(2,"股份单位",UserTypeEnum.JG.getCode(), "Aa@12345678"), // share(2,"股份单位",UserTypeEnum.JG.getCode(), "Aa@12345678"),
serviceProvider(3, "相关方企业",UserTypeEnum.XGF.getCode(), "Cc@12345678"), // serviceProvider(3, "相关方企业",UserTypeEnum.XGF.getCode(), "Cc@12345678"),
cargoOwner(4, "货主单位",UserTypeEnum.XGF.getCode(), "Cc@12345678"), // cargoOwner(4, "货主单位",UserTypeEnum.XGF.getCode(), "Cc@12345678"),
portUnit(5, "驻港单位",UserTypeEnum.XGF.getCode(), "Cc@12345678"), // portUnit(5, "驻港单位",UserTypeEnum.XGF.getCode(), "Cc@12345678"),
materialCenter(6, "物资中心",UserTypeEnum.QY.getCode(), "Bb@12345678"); // materialCenter(6, "物资中心",UserTypeEnum.QY.getCode(), "Bb@12345678");
//
private static final Map<Integer, List<Integer>> ENTERPRISE_TYPE_CODE_MAP = new HashMap<>(); // private static final Map<Integer, List<Integer>> ENTERPRISE_TYPE_CODE_MAP = new HashMap<>();
//
private final Integer code; // private final Integer code;
private final String name; // private final String name;
//传入的企业类型企业类型 1监管 2企业 3相关方 // //传入的企业类型企业类型 1监管 2企业 3相关方
private final Integer userType; // private final Integer userType;
private final String defaultPassword; // private final String defaultPassword;
//
CorpTypeEnum(Integer code, String name, Integer userType, String defaultPassword) { // CorpTypeEnum(Integer code, String name, Integer userType, String defaultPassword) {
this.code = code; // this.code = code;
this.name = name; // this.name = name;
this.userType = userType; // this.userType = userType;
this.defaultPassword = defaultPassword; // this.defaultPassword = defaultPassword;
} // }
static { // static {
Arrays.stream(CorpTypeEnum.values()) // Arrays.stream(CorpTypeEnum.values())
.collect(Collectors.groupingBy(CorpTypeEnum::getUserType)) // .collect(Collectors.groupingBy(CorpTypeEnum::getUserType))
.forEach((userType, corpTypes) -> // .forEach((userType, corpTypes) ->
ENTERPRISE_TYPE_CODE_MAP.put( // ENTERPRISE_TYPE_CODE_MAP.put(
userType, // userType,
corpTypes.stream().map(CorpTypeEnum::getCode).collect(Collectors.toList()) // corpTypes.stream().map(CorpTypeEnum::getCode).collect(Collectors.toList())
) // )
); // );
} // }
//
public static List<Integer> getCodesByEnterpriseType(Integer enterpriseType) { // public static List<Integer> getCodesByEnterpriseType(Integer enterpriseType) {
return ENTERPRISE_TYPE_CODE_MAP.getOrDefault(enterpriseType, Collections.emptyList()); // return ENTERPRISE_TYPE_CODE_MAP.getOrDefault(enterpriseType, Collections.emptyList());
} // }
public static List<Integer> getCodesByEnterpriseType(List<Integer> enterpriseTypeList) { // public static List<Integer> getCodesByEnterpriseType(List<Integer> enterpriseTypeList) {
if(CollUtil.isEmpty(enterpriseTypeList)){ // if(CollUtil.isEmpty(enterpriseTypeList)){
return null; // return null;
} // }
return enterpriseTypeList.stream() // return enterpriseTypeList.stream()
.flatMap(enterpriseType -> // .flatMap(enterpriseType ->
ENTERPRISE_TYPE_CODE_MAP.getOrDefault(enterpriseType, Collections.emptyList()).stream()) // ENTERPRISE_TYPE_CODE_MAP.getOrDefault(enterpriseType, Collections.emptyList()).stream())
.distinct() // .distinct()
.collect(Collectors.toList()); // .collect(Collectors.toList());
//
} // }
//
public static Integer getUserTypeByCode(Integer code) { // public static Integer getUserTypeByCode(Integer code) {
for (CorpTypeEnum corpType : values()) { // for (CorpTypeEnum corpType : values()) {
if (corpType.code.equals(code)) { // if (corpType.code.equals(code)) {
return corpType.userType; // return corpType.userType;
} // }
} // }
return null; // return null;
} // }
//
public static String getPasswordByCode(Integer code) { // public static String getPasswordByCode(Integer code) {
for (CorpTypeEnum corpType : values()) { // for (CorpTypeEnum corpType : values()) {
if (corpType.code.equals(code)) { // if (corpType.code.equals(code)) {
return corpType.defaultPassword; // return corpType.defaultPassword;
} // }
} // }
return null; // return null;
} // }
//
public static String getNameByCode(Integer code) { // public static String getNameByCode(Integer code) {
for (CorpTypeEnum corpType : values()) { // for (CorpTypeEnum corpType : values()) {
if (corpType.code.equals(code)) { // if (corpType.code.equals(code)) {
return corpType.name; // return corpType.name;
} // }
} // }
return null; // return null;
} // }
} //}

View File

@ -1,29 +0,0 @@
package com.zcloud.basic.info.domain.enums;
import lombok.Getter;
@Getter
public enum UserTypeEnum {
JG(1,"监管"),
QY(2,"企业"),
XGF(3,"相关方")
;
private final Integer code;
private final String name;
UserTypeEnum(Integer code, String name) {
this.code = code;
this.name = name;
}
public static Integer getUserType(Integer corpType){
if (corpType.equals(CorpTypeEnum.OrdinaryEnterprises.getCode()) ||
corpType.equals(CorpTypeEnum.groupUnits.getCode())){
return UserTypeEnum.QY.getCode();
}else if (corpType.equals(CorpTypeEnum.share.getCode())){
return UserTypeEnum.JG.getCode();
}else {
return UserTypeEnum.XGF.getCode();
}
}
}

View File

@ -4,7 +4,7 @@ import com.alibaba.cola.domain.Entity;
import com.alibaba.cola.exception.BizException; import com.alibaba.cola.exception.BizException;
import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.framework.auth.utils.AuthContext;
import com.jjb.saas.framework.domain.model.BaseE; import com.jjb.saas.framework.domain.model.BaseE;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum; import com.zcloud.basic.info.domain.enums.CorpStateEnum;
import com.zcloud.gbscommon.utils.MD5; import com.zcloud.gbscommon.utils.MD5;
import com.zcloud.gbscommon.utils.Sm2Util; import com.zcloud.gbscommon.utils.Sm2Util;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
@ -188,8 +188,8 @@ public class CorpInfoE extends BaseE {
@ApiModelProperty(value = "港区1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西") @ApiModelProperty(value = "港区1:秦皇岛港区,2:秦皇岛东,3:秦皇岛西")
private Integer portArea; private Integer portArea;
public void initPassWord(Integer type) { public void initPassWord(String password) {
String encrypt = Sm2Util.encryptHex(MD5.md5(CorpTypeEnum.getPasswordByCode(type)), publicKey); String encrypt = Sm2Util.encryptHex(MD5.md5(password), publicKey);
this.setPassword(encrypt); this.setPassword(encrypt);
} }

View File

@ -5,10 +5,10 @@ import com.alibaba.cola.exception.BizException;
import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.framework.auth.utils.AuthContext;
import com.jjb.saas.framework.domain.model.BaseE; import com.jjb.saas.framework.domain.model.BaseE;
import com.jjb.saas.framework.utils.DataEncryptDecryptUtil; import com.jjb.saas.framework.utils.DataEncryptDecryptUtil;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum; import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum;
import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum; import com.zcloud.basic.info.domain.enums.UserFlowFlagEnum;
import com.zcloud.basic.info.domain.enums.UserTypeEnum; import com.zcloud.basic.info.domain.enums.UserTypeEnum;
import com.zcloud.basic.info.domain.gateway.DepartmentGateway;
import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity; import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity;
import com.zcloud.gbscommon.utils.ExcelUtils; import com.zcloud.gbscommon.utils.ExcelUtils;
import com.zcloud.gbscommon.utils.MD5; import com.zcloud.gbscommon.utils.MD5;
@ -281,12 +281,12 @@ public class UserE extends BaseE {
} }
} }
public void initCorpInfo(CorpInfoE examTypeE, Long departmentId, Long corpInfoId) { public void initCorpInfo(CorpInfoE examTypeE, Long departmentId, Long corpInfoId, Integer userType) {
this.setId(corpInfoId); this.setId(corpInfoId);
this.setName(examTypeE.getCorpName()); this.setName(examTypeE.getCorpName());
this.setUsername(examTypeE.getCorpName()); this.setUsername(examTypeE.getCorpName());
this.setDepartmentId(departmentId); this.setDepartmentId(departmentId);
this.setUserType(CorpTypeEnum.getUserTypeByCode(examTypeE.getType())); this.setUserType(userType);
this.setCorpinfoId(corpInfoId); this.setCorpinfoId(corpInfoId);
this.setOrgId(examTypeE.getTenantId()); this.setOrgId(examTypeE.getTenantId());
this.setTenantId(examTypeE.getTenantId()); this.setTenantId(examTypeE.getTenantId());
@ -298,8 +298,8 @@ public class UserE extends BaseE {
} }
} }
public void resetPassword(Integer type) { public void resetPassword(String password) {
String encrypt = Sm2Util.encryptHex(MD5.md5(CorpTypeEnum.getPasswordByCode(type)), publicKey); String encrypt = Sm2Util.encryptHex(MD5.md5(password), publicKey);
this.setPassword(encrypt); this.setPassword(encrypt);
} }
@ -378,7 +378,7 @@ public class UserE extends BaseE {
} }
} }
public void checkXGfPhone(List<UserE> userEList) { public void checkXGfPhone(List<UserE> userEList, Integer xgfCode) {
//判断在其他企业是否是固定人员 //判断在其他企业是否是固定人员
List<UserE> userList = userEList.stream(). List<UserE> userList = userEList.stream().
@ -393,7 +393,7 @@ public class UserE extends BaseE {
} }
userEList.forEach(userE -> { userEList.forEach(userE -> {
//如果是企业不是相关方企业,则不行 //如果是企业不是相关方企业,则不行
if(!userE.getUserType().equals(UserTypeEnum.XGF.getCode()) && (UserEmploymentFlagEnum.ON.getCode().equals(userE.getEmploymentFlag()) if(!userE.getUserType().equals(xgfCode) && (UserEmploymentFlagEnum.ON.getCode().equals(userE.getEmploymentFlag())
|| UserEmploymentFlagEnum.ENTRY_AUDIT.getCode().equals(userE.getEmploymentFlag()) || UserEmploymentFlagEnum.ENTRY_AUDIT.getCode().equals(userE.getEmploymentFlag())
|| UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode().equals(userE.getEmploymentFlag()))){ || UserEmploymentFlagEnum.RESIGNATION_AUDIT.getCode().equals(userE.getEmploymentFlag()))){
throw new BizException("当前手机号已存在"); throw new BizException("当前手机号已存在");

View File

@ -12,6 +12,7 @@ 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.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.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -37,7 +38,8 @@ public class UserGatewayImpl implements UserGateway {
private final UserRepository userRepository; private final UserRepository userRepository;
@DubboReference @DubboReference
private UserFacade userFacade; private UserFacade userFacade;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean add(UserE userE) { public Boolean add(UserE userE) {
@ -74,7 +76,8 @@ public class UserGatewayImpl implements UserGateway {
// 新增用户默认在职 // 新增用户默认在职
userE.setEmploymentFlag(UserEmploymentFlagEnum.ON.getCode()); userE.setEmploymentFlag(UserEmploymentFlagEnum.ON.getCode());
BeanUtils.copyProperties(userE, d); BeanUtils.copyProperties(userE, d);
userE.resetPassword(3); // TODO zcloudTenantTypeConfigFacade 相关方默认写死
userE.resetPassword(zcloudTenantTypeConfigFacade.getPasswordByCode(3));
d.setPassword(userE.getPassword()); d.setPassword(userE.getPassword());
userRepository.saveUserXgf(d); userRepository.saveUserXgf(d);
userE.setId(d.getId()); userE.setId(d.getId());

View File

@ -21,7 +21,6 @@ import com.jjb.saas.system.client.unit.facade.UnitFacade;
import com.jjb.saas.system.client.unit.request.OpeUnitAddCmd; import com.jjb.saas.system.client.unit.request.OpeUnitAddCmd;
import com.jjb.saas.system.client.unit.request.OpeUnitUpdateCmd; import com.jjb.saas.system.client.unit.request.OpeUnitUpdateCmd;
import com.jjb.saas.system.client.user.facade.UserFacade; import com.jjb.saas.system.client.user.facade.UserFacade;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.enums.CorpUseFlagEnum; import com.zcloud.basic.info.domain.enums.CorpUseFlagEnum;
import com.zcloud.basic.info.domain.enums.MenuEnum; import com.zcloud.basic.info.domain.enums.MenuEnum;
import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO;
@ -32,6 +31,7 @@ import com.zcloud.basic.info.persistence.mapper.CorpInfoMapper;
import com.zcloud.basic.info.persistence.repository.CorpInfoRepository; import com.zcloud.basic.info.persistence.repository.CorpInfoRepository;
import com.zcloud.basic.info.utils.Query; import com.zcloud.basic.info.utils.Query;
import com.zcloud.gbscommon.utils.PageQueryHelper; import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
@ -64,6 +64,9 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
@DubboReference @DubboReference
private TenantTypeFacade tenantTypeFacade; private TenantTypeFacade tenantTypeFacade;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Override @Override
public PageResponse<CorpInfoDO> listPage(Map<String, Object> params) { public PageResponse<CorpInfoDO> listPage(Map<String, Object> params) {
@ -85,7 +88,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
} }
private void initParams(QueryWrapper<CorpInfoDO> queryWrapper, String menuPerms, Map<String, Object> params){ private void initParams(QueryWrapper<CorpInfoDO> queryWrapper, String menuPerms, Map<String, Object> params){
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
queryWrapper.in("type", enterpriseType); queryWrapper.in("type", enterpriseType);
} }
@ -98,7 +101,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
&& params.get("enterpriseTypeList") instanceof List){ && params.get("enterpriseTypeList") instanceof List){
List<Integer> enterpriseTypeList = (List<Integer>) params.get("enterpriseTypeList"); List<Integer> enterpriseTypeList = (List<Integer>) params.get("enterpriseTypeList");
if (enterpriseTypeList != null && enterpriseTypeList.size() > 0){ if (enterpriseTypeList != null && enterpriseTypeList.size() > 0){
List<Integer> entTypeList = CorpTypeEnum.getCodesByEnterpriseType(enterpriseTypeList); List<Integer> entTypeList = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType(enterpriseTypeList);
if (CollUtil.isNotEmpty(entTypeList)) { if (CollUtil.isNotEmpty(entTypeList)) {
queryWrapper.in("type", entTypeList); queryWrapper.in("type", entTypeList);
} }
@ -117,7 +120,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
IPage<CorpInfoDO> iPage = new Query<CorpInfoDO>().getPage(params); IPage<CorpInfoDO> iPage = new Query<CorpInfoDO>().getPage(params);
QueryWrapper<CorpInfoDO> queryWrapper = new QueryWrapper<>(); QueryWrapper<CorpInfoDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
queryWrapper.in("type", enterpriseType); queryWrapper.in("type", enterpriseType);
} }
@ -135,7 +138,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
public List<CorpInfoDO> listAll(Map<String, Object> params) { public List<CorpInfoDO> listAll(Map<String, Object> params) {
QueryWrapper<CorpInfoDO> queryWrapper = new QueryWrapper<>(); QueryWrapper<CorpInfoDO> queryWrapper = new QueryWrapper<>();
queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
queryWrapper.in("type", enterpriseType); queryWrapper.in("type", enterpriseType);
} }
@ -144,7 +147,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
&& params.get("enterpriseTypeList") instanceof List){ && params.get("enterpriseTypeList") instanceof List){
List<Integer> enterpriseTypeList = (List<Integer>) params.get("enterpriseTypeList"); List<Integer> enterpriseTypeList = (List<Integer>) params.get("enterpriseTypeList");
if (enterpriseTypeList != null && enterpriseTypeList.size() > 0){ if (enterpriseTypeList != null && enterpriseTypeList.size() > 0){
List<Integer> entTypeList = CorpTypeEnum.getCodesByEnterpriseType(enterpriseTypeList); List<Integer> entTypeList = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType(enterpriseTypeList);
if (CollUtil.isNotEmpty(entTypeList)) { if (CollUtil.isNotEmpty(entTypeList)) {
queryWrapper.in("type", entTypeList); queryWrapper.in("type", entTypeList);
} }
@ -170,7 +173,15 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
Map<String, Long> tenantTypeMap = tenantTypeResponse.getData().stream().collect(Collectors.toMap(TenantTypeCO::getTenantTypeName, TenantTypeCO::getId)); Map<String, Long> tenantTypeMap = tenantTypeResponse.getData().stream().collect(Collectors.toMap(TenantTypeCO::getTenantTypeName, TenantTypeCO::getId));
OpeUnitAddCmd ouac = new OpeUnitAddCmd(); OpeUnitAddCmd ouac = new OpeUnitAddCmd();
ouac.setTenantName(corpInfoDO.getCorpName()); ouac.setTenantName(corpInfoDO.getCorpName());
ouac.setTenantTypeId(tenantTypeMap.get(CorpTypeEnum.getNameByCode(corpInfoDO.getType()))); log.info("tenantTypeMap:{}",tenantTypeMap);
log.info("tenantTypeMap:{}",tenantTypeMap.toString());
log.info("tenantTypeResponse:{}",tenantTypeResponse.toString());
System.out.println(corpInfoDO.getType()+"-------------------corpInfoDO.getType()");
log.info("corpInfoDO.getType()", corpInfoDO.getType());
log.info("zcloudTenantTypeConfigFacade.getNameByCode(corpInfoDO.getType()):{}", zcloudTenantTypeConfigFacade.getNameByCode(corpInfoDO.getType()));
ouac.setTenantTypeId(tenantTypeMap.get(zcloudTenantTypeConfigFacade.getNameByCode(corpInfoDO.getType())));
log.info("ouac", ouac.getTenantTypeId());
//企业类型(0-普通企业1-集团单位2-股份单位3-相关方企业4-货主单位5-驻港单位) //企业类型(0-普通企业1-集团单位2-股份单位3-相关方企业4-货主单位5-驻港单位)
// if(corpInfoDO.getType() == 0 || corpInfoDO.getType() == 1 || corpInfoDO.getType() == 2){ // if(corpInfoDO.getType() == 0 || corpInfoDO.getType() == 1 || corpInfoDO.getType() == 2){
// ouac.setTenantTypeId(1990693345743208448L); // ouac.setTenantTypeId(1990693345743208448L);
@ -264,7 +275,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
params.put("type", Arrays.asList(params.get("eqType"))); params.put("type", Arrays.asList(params.get("eqType")));
} else { } else {
if (ObjectUtil.isNotEmpty(params.get("enterpriseType"))) { if (ObjectUtil.isNotEmpty(params.get("enterpriseType"))) {
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
params.put("type", enterpriseType); params.put("type", enterpriseType);
} }
@ -323,7 +334,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
CorpInfoDO corpInfoDO = corpInfoMapper.selectById(AuthContext.getTenantId()); CorpInfoDO corpInfoDO = corpInfoMapper.selectById(AuthContext.getTenantId());
if(corpInfoDO == null) if(corpInfoDO == null)
throw new BizException("当前企业不存在"); throw new BizException("当前企业不存在");
if(CorpTypeEnum.share.getCode().equals(corpInfoDO.getType())) if(zcloudTenantTypeConfigFacade.getDefaultType("defaultType0001").equals(corpInfoDO.getType()))
return true; return true;
return false; return false;
} }
@ -340,7 +351,7 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
public PageResponse<CorpUserStatisticDO> corpUserStatisticPage(Map<String, Object> params) { public PageResponse<CorpUserStatisticDO> corpUserStatisticPage(Map<String, Object> params) {
IPage<CorpUserStatisticDO> iPage = new Query<CorpUserStatisticDO>().getPage(params); IPage<CorpUserStatisticDO> iPage = new Query<CorpUserStatisticDO>().getPage(params);
if (ObjectUtil.isNotEmpty(params.get("enterpriseType"))) { if (ObjectUtil.isNotEmpty(params.get("enterpriseType"))) {
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
params.put("type", enterpriseType); params.put("type", enterpriseType);
} }

View File

@ -22,10 +22,8 @@ import com.jjb.saas.system.client.role.response.RoleCO;
import com.jjb.saas.system.client.user.facade.UserFacade; import com.jjb.saas.system.client.user.facade.UserFacade;
import com.jjb.saas.system.client.user.request.*; import com.jjb.saas.system.client.user.request.*;
import com.jjb.saas.system.client.user.response.UserDetailCO; import com.jjb.saas.system.client.user.response.UserDetailCO;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.enums.MenuEnum; import com.zcloud.basic.info.domain.enums.MenuEnum;
import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum; import com.zcloud.basic.info.domain.enums.UserEmploymentFlagEnum;
import com.zcloud.basic.info.domain.enums.UserTypeEnum;
import com.zcloud.basic.info.domain.model.UserE; import com.zcloud.basic.info.domain.model.UserE;
import com.zcloud.basic.info.persistence.dataobject.DepartmentLeaderStatictiscDO; import com.zcloud.basic.info.persistence.dataobject.DepartmentLeaderStatictiscDO;
import com.zcloud.basic.info.persistence.dataobject.UserCorpInfoDO; import com.zcloud.basic.info.persistence.dataobject.UserCorpInfoDO;
@ -37,6 +35,7 @@ import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Query; import com.zcloud.gbscommon.utils.Query;
import com.zcloud.gbscommon.utils.Tools; import com.zcloud.gbscommon.utils.Tools;
import com.zcloud.gbscommon.zcloudimgfiles.facade.ZcloudImgFilesFacade; import com.zcloud.gbscommon.zcloudimgfiles.facade.ZcloudImgFilesFacade;
import com.zcloud.gbscommon.zcloudsysconfig.facade.ZcloudTenantTypeConfigFacade;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboReference;
@ -73,6 +72,9 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
@Autowired @Autowired
private RemoteEventPublisher remoteEventPublisher; private RemoteEventPublisher remoteEventPublisher;
@DubboReference
private ZcloudTenantTypeConfigFacade zcloudTenantTypeConfigFacade;
@Override @Override
public PageResponse<UserDO> listPage(Map<String, Object> params) { public PageResponse<UserDO> listPage(Map<String, Object> params) {
@ -132,7 +134,7 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
} }
} }
QueryWrapper<UserDO> queryWrapper = new QueryWrapper<>(); QueryWrapper<UserDO> queryWrapper = new QueryWrapper<>();
List<Integer> enterpriseType = CorpTypeEnum.getCodesByEnterpriseType((Integer) params.get("enterpriseType")); List<Integer> enterpriseType = zcloudTenantTypeConfigFacade.getCodesByEnterpriseType((Integer) params.get("enterpriseType"));
if (CollUtil.isNotEmpty(enterpriseType)) { if (CollUtil.isNotEmpty(enterpriseType)) {
params.remove("enterpriseType"); params.remove("enterpriseType");
queryWrapper.in("c.type", enterpriseType); queryWrapper.in("c.type", enterpriseType);
@ -435,7 +437,8 @@ public class UserRepositoryImpl extends BaseRepositoryImpl<UserMapper, UserDO> i
// 相关方 // 相关方
userDO.setCorpinfoId(null); userDO.setCorpinfoId(null);
// 默认是相关方 // 默认是相关方
userDO.setUserType(UserTypeEnum.XGF.getCode()); // TODO zcloudTenantTypeConfigFacade特定业务写死的defaultType0003
userDO.setUserType(zcloudTenantTypeConfigFacade.getDefaultType("defaultType0003"));
save(userDO); save(userDO);
} }