diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java b/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java index 1072b7b..ad83cc8 100644 --- a/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java +++ b/web-adapter/src/main/java/com/zcloud/basic/info/web/CorpInfoController.java @@ -50,6 +50,12 @@ public class CorpInfoController { } } + @ApiOperation("判断企业名称是否重复, true:没重复, false:有重复") + @PostMapping("/checkCorpName") + public SingleResponse checkCorpName(@Validated @RequestBody CorpInfoCheckNameQry qry) { + return SingleResponse.of(corpInfoService.checkCorpName(qry)); + } + @ApiOperation("分页") @PostMapping("/list") public PageResponse page(@Validated @RequestBody CorpInfoPageQry qry) { diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java index f849075..5ce081a 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java @@ -74,6 +74,13 @@ public class UserAddExe { UserEmploymentLogE userEmploymentLogE = new UserEmploymentLogE(); BeanUtils.copyProperties(userE, userEmploymentLogE); boolean res = false; + if(ObjectUtils.isEmpty(userE.getRoleId())){ + Long roleId = userRepository.getDefaultRoleId(); + if (roleId == null){ + throw new BizException("未创建默认通用角色,请联系管理员"); + } + userE.setRoleId(roleId); + } try { res = userGateway.add(userE); if(corpInfoDO != null && !ObjectUtils.isEmpty(corpInfoDO.getCorpName())){ diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java index c7837a8..ea543be 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java +++ b/web-app/src/main/java/com/zcloud/basic/info/command/query/CorpInfoQueryExe.java @@ -8,10 +8,7 @@ import com.zcloud.basic.info.command.convertor.CorpInfoCoConvertor; import com.zcloud.basic.info.domain.model.CorpDepartmentE; import com.zcloud.basic.info.domain.model.CorpInfoE; import com.zcloud.basic.info.domain.model.DepartmentE; -import com.zcloud.basic.info.dto.CorpDepartmentQry; -import com.zcloud.basic.info.dto.CorpInfoCheckCodeQry; -import com.zcloud.basic.info.dto.CorpInfoPageQry; -import com.zcloud.basic.info.dto.CorpUserMiddleQry; +import com.zcloud.basic.info.dto.*; import com.zcloud.basic.info.dto.clientobject.CorpDepartmentCO; import com.zcloud.basic.info.dto.clientobject.CorpInfoCO; import com.zcloud.basic.info.dto.clientobject.CorpUserMiddleCO; @@ -83,6 +80,16 @@ public class CorpInfoQueryExe { } } + public Boolean executeCheckCorpName(CorpInfoCheckNameQry qry) { + Map parmas = PageQueryHelper.toHashMap(qry); + Long count = corpInfoRepository.checkCorpName(parmas); + if (count > 0){ + return false; + }else { + return true; + } + } + public PageResponse corpDepartlist(CorpDepartmentQry corpDepartmentQry) { Map parmas = PageQueryHelper.toHashMap(corpDepartmentQry); PageResponse pageResponse = corpInfoRepository.listPage(parmas); diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java index 5aae70d..82d2492 100644 --- a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java +++ b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java @@ -54,6 +54,11 @@ public class CorpInfoServiceImpl implements CorpInfoServiceI { return corpInfoQueryExe.execute(qry); } + @Override + public Boolean checkCorpName(CorpInfoCheckNameQry qry) { + return corpInfoQueryExe.executeCheckCorpName(qry); + } + @Override public void edit(CorpInfoUpdateCmd corpInfoUpdateCmd) { corpInfoUpdateExe.execute(corpInfoUpdateCmd); diff --git a/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java b/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java index da1d062..9fa714b 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java +++ b/web-client/src/main/java/com/zcloud/basic/info/api/CorpInfoServiceI.java @@ -23,6 +23,8 @@ public interface CorpInfoServiceI { Boolean checkCorpCode(CorpInfoCheckCodeQry qry); + Boolean checkCorpName(CorpInfoCheckNameQry qry); + void edit(CorpInfoUpdateCmd cmd); void remove(Long id); diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoCheckNameQry.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoCheckNameQry.java new file mode 100644 index 0000000..7122a9f --- /dev/null +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoCheckNameQry.java @@ -0,0 +1,39 @@ +package com.zcloud.basic.info.dto; + +import com.alibaba.cola.dto.PageQuery; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; + + +/** + * web-client + * + * @Author zhaokai + * @Date 2025-10-30 15:12:50 + */ +@Data +public class CorpInfoCheckNameQry { + + /** + * 查询条件操作前缀,支持以下几种数据库查询操作: + * - `like`: 模糊匹配查询,对应SQL的LIKE操作符 + * - `eq`: 等值查询,对应SQL的=操作符 + * - `gt`: 大于比较查询 + * - `lt`: 小于比较查询 + * - `ge`: 大于等于比较查询 + * - `le`: 小于等于比较查询 + * - `ne`: 不等比较查询,对应SQL的!=操作符 + */ + + + @ApiModelProperty(value = "企业id", name = "id") + private Long id; + + @ApiModelProperty(value = "企业名称", name = "corpName", required = true) + @NotEmpty(message = "企业名称不能为空") + private String corpName; + +} + diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/UserAddCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/UserAddCmd.java index 1c68bcc..ff1a63c 100644 --- a/web-client/src/main/java/com/zcloud/basic/info/dto/UserAddCmd.java +++ b/web-client/src/main/java/com/zcloud/basic/info/dto/UserAddCmd.java @@ -51,7 +51,6 @@ public class UserAddCmd extends Command { private Long postId; @ApiModelProperty(value = "角色id", name = "roleId", required = true) - @NotNull(message = "角色id不能为空") private Long roleId; @ApiModelProperty(value = "邮箱", name = "email") diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java index e44d86a..3bed954 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java @@ -28,5 +28,7 @@ public interface CorpInfoRepository extends BaseRepository { List getCorpinfoByCodeAndId(String code, Long id); + Long checkCorpName(Map parmas); + } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java index 691bffc..8ad741d 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java @@ -50,5 +50,7 @@ public interface UserRepository extends BaseRepository { void updateUserName(UserDO userDO); Map getDepartmentLeaderByDepartmentId(List departmentIds); + + Long getDefaultRoleId(); } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java index 96f4a3e..be07c91 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java @@ -140,5 +140,15 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl parmas) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("corp_name", parmas.get("corpName")); + queryWrapper.ne("id", parmas.get("id")); + return corpInfoMapper.selectCount(queryWrapper); + } + + } diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java index dffe890..dd608be 100644 --- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserRepositoryImpl.java @@ -1,11 +1,9 @@ package com.zcloud.basic.info.persistence.repository.impl; -import cn.hutool.core.collection.CollUtil; import com.alibaba.cola.dto.MultiResponse; import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.Response; 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.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -13,16 +11,15 @@ import com.jjb.saas.framework.auth.model.SSOUser; import com.jjb.saas.framework.auth.utils.AuthContext; import com.jjb.saas.framework.repository.common.PageHelper; import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; -import com.jjb.saas.system.client.dept.request.DeptUpdateCmd; import com.jjb.saas.system.client.role.facade.RoleFacade; 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.request.*; -import com.zcloud.basic.info.domain.model.CorpInfoE; +import com.jjb.saas.system.client.user.request.RoleDeptAddCmd; +import com.jjb.saas.system.client.user.request.UserAddCmd; +import com.jjb.saas.system.client.user.request.UserUpdateCmd; +import com.jjb.saas.system.client.user.request.UserUpdatePasswordCmd; import com.zcloud.basic.info.domain.model.UserE; -import com.zcloud.basic.info.persistence.dataobject.DepartmentDO; import com.zcloud.basic.info.persistence.dataobject.DepartmentLeaderStatictiscDO; -import com.zcloud.basic.info.persistence.dataobject.ImgFilesDO; import com.zcloud.basic.info.persistence.dataobject.UserDO; import com.zcloud.basic.info.persistence.mapper.UserMapper; import com.zcloud.basic.info.persistence.repository.UserRepository; @@ -32,7 +29,6 @@ import com.zcloud.gbscommon.utils.Tools; import lombok.RequiredArgsConstructor; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.BeanUtils; -import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; @@ -63,7 +59,7 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i IPage iPage = new Query().getPage(params); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params, "u."); - queryWrapper.orderByDesc("u.create_time"); + queryWrapper.orderByDesc("u.sort"); queryWrapper.eq("u.delete_enum", "FALSE"); IPage result = userMapper.selectUserPage(iPage, queryWrapper); return PageHelper.pageToResponse(result, result.getRecords()); @@ -185,7 +181,6 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i @Override public void saveUser(UserDO userDO) { UserAddCmd userAddCmd = new UserAddCmd(); -// MultiResponse roleCOList = roleFacade.listRoles(); userAddCmd.setAccount(userDO.getUsername()); userAddCmd.setName(userDO.getName()); RoleDeptAddCmd roleDeptAddCmd = new RoleDeptAddCmd(); @@ -246,5 +241,19 @@ public class UserRepositoryImpl extends BaseRepositoryImpl i .collect(Collectors.toMap(DepartmentLeaderStatictiscDO::getDepartmentId, DepartmentLeaderStatictiscDO::getDepartmentLeaderNameList)); return departmentLeaderMap; } + + @Override + public Long getDefaultRoleId() { + MultiResponse multiResponse = roleFacade.listRoles(); + if (multiResponse.isSuccess()){ + List roleCOList = multiResponse.getData(); + for (RoleCO roleCO : roleCOList) { + if ("默认通用角色".equals(roleCO.getRoleName())){ + return roleCO.getId(); + } + } + } + return null; + } }