From 20222626a793b52dd447ea33e22ba023645d17f5 Mon Sep 17 00:00:00 2001 From: hezhiqiang Date: Thu, 8 Jan 2026 11:50:49 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=A2=9E=E5=8A=A0app=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E8=A1=A8=E7=A4=BA=202=E3=80=81=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../command/UserCertificateAddExe.java | 5 ++ .../convertor/UserCertificateCoConvertor.java | 3 + .../query/CorpCertificateQueryExe.java | 16 +---- .../query/UserCertificateQueryExe.java | 72 ++++++------------- .../dto/UserCertificatePageQry.java | 15 ++++ .../domain/model/UserBasicInfo.java | 4 +- .../domain/model/UserCertificateE.java | 17 +++++ .../mapper/UserCertificateMapper.java | 5 +- .../repository/UserCertificateRepository.java | 11 +-- .../impl/UserCertificateRepositoryImpl.java | 16 +++-- .../mapper/UserCertificateMapper.xml | 8 ++- 11 files changed, 88 insertions(+), 84 deletions(-) rename web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserDO.java => web-domain/src/main/java/com/zcloud/certificate/domain/model/UserBasicInfo.java (90%) diff --git a/web-app/src/main/java/com/zcloud/certificate/command/UserCertificateAddExe.java b/web-app/src/main/java/com/zcloud/certificate/command/UserCertificateAddExe.java index af624db..99e2060 100644 --- a/web-app/src/main/java/com/zcloud/certificate/command/UserCertificateAddExe.java +++ b/web-app/src/main/java/com/zcloud/certificate/command/UserCertificateAddExe.java @@ -1,5 +1,7 @@ package com.zcloud.certificate.command; +import com.jjb.saas.framework.auth.model.SSOUser; +import com.jjb.saas.framework.auth.utils.AuthContext; import com.zcloud.certificate.domain.gateway.UserCertificateGateway; import com.zcloud.certificate.domain.model.UserCertificateE; import com.zcloud.certificate.dto.UserCertificateAddCmd; @@ -27,6 +29,8 @@ public class UserCertificateAddExe { UserCertificateE userCertificateE = new UserCertificateE(); BeanUtils.copyProperties(cmd, userCertificateE); + SSOUser ssoUser = AuthContext.getCurrentUser(); + Boolean certificate = userCertificateGateway.checkCertificateExist(userCertificateE); if (certificate) { throw new BizException("证书编号已存在"); @@ -34,6 +38,7 @@ public class UserCertificateAddExe { boolean res = false; try { + userCertificateE.setCorpinfoId(ssoUser != null ? ssoUser.getTenantId() : null); res = userCertificateGateway.add(userCertificateE); } catch (Exception e) { throw new RuntimeException(e); diff --git a/web-app/src/main/java/com/zcloud/certificate/command/convertor/UserCertificateCoConvertor.java b/web-app/src/main/java/com/zcloud/certificate/command/convertor/UserCertificateCoConvertor.java index cc29a02..a575b57 100644 --- a/web-app/src/main/java/com/zcloud/certificate/command/convertor/UserCertificateCoConvertor.java +++ b/web-app/src/main/java/com/zcloud/certificate/command/convertor/UserCertificateCoConvertor.java @@ -1,5 +1,6 @@ package com.zcloud.certificate.command.convertor; +import com.zcloud.certificate.domain.model.UserCertificateE; import com.zcloud.certificate.dto.clientobject.UserCertificateCO; import com.zcloud.certificate.dto.clientobject.UserCertificateStatCO; import com.zcloud.certificate.persistence.dataobject.UserCertificateDO; @@ -26,5 +27,7 @@ public interface UserCertificateCoConvertor { UserCertificateCO converDOToCO(UserCertificateDO userCertificateDO); List converStatDOsToStatCOs(List userCertificateStatDOs); + + UserCertificateCO converEToCO(UserCertificateE userCertificateE); } diff --git a/web-app/src/main/java/com/zcloud/certificate/command/query/CorpCertificateQueryExe.java b/web-app/src/main/java/com/zcloud/certificate/command/query/CorpCertificateQueryExe.java index cedb381..e43afa1 100644 --- a/web-app/src/main/java/com/zcloud/certificate/command/query/CorpCertificateQueryExe.java +++ b/web-app/src/main/java/com/zcloud/certificate/command/query/CorpCertificateQueryExe.java @@ -65,19 +65,9 @@ public class CorpCertificateQueryExe { public PageResponse statPage(CorpCertificateStatPageQry qry) { Map params = PageQueryHelper.toHashMap(qry); - - PageResponse pageResponse = - corpCertificateRepository.statPage(params); - - List cos = - corpCertificateStatCoConvertor.convertRowsToCOs(pageResponse.getData()); - - return PageResponse.of( - cos, - pageResponse.getTotalCount(), - pageResponse.getPageSize(), - pageResponse.getPageIndex() - ); + PageResponse pageResponse = corpCertificateRepository.statPage(params); + List cos = corpCertificateStatCoConvertor.convertRowsToCOs(pageResponse.getData()); + return PageResponse.of(cos, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); } diff --git a/web-app/src/main/java/com/zcloud/certificate/command/query/UserCertificateQueryExe.java b/web-app/src/main/java/com/zcloud/certificate/command/query/UserCertificateQueryExe.java index 5aae53e..fb0b444 100644 --- a/web-app/src/main/java/com/zcloud/certificate/command/query/UserCertificateQueryExe.java +++ b/web-app/src/main/java/com/zcloud/certificate/command/query/UserCertificateQueryExe.java @@ -1,24 +1,23 @@ package com.zcloud.certificate.command.query; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jjb.saas.framework.auth.model.SSOUser; +import com.jjb.saas.framework.auth.utils.AuthContext; import com.zcloud.certificate.command.convertor.UserCertificateCoConvertor; +import com.zcloud.certificate.domain.model.UserCertificateE; import com.zcloud.certificate.dto.CorpCertificateStatPageQry; import com.zcloud.certificate.dto.UserCertificatePageQry; import com.zcloud.certificate.dto.clientobject.UserCertificateCO; import com.zcloud.certificate.dto.clientobject.UserCertificateStatCO; import com.zcloud.certificate.persistence.dataobject.UserCertificateDO; import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO; -import com.zcloud.certificate.persistence.dataobject.UserDO; import com.zcloud.certificate.persistence.repository.UserCertificateRepository; import com.zcloud.gbscommon.utils.PageQueryHelper; import com.alibaba.cola.dto.PageResponse; import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Component; import java.util.*; -import java.util.function.Function; -import java.util.stream.Collectors; /** @@ -38,42 +37,31 @@ public class UserCertificateQueryExe { * @return */ public UserCertificateCO queryById(Long id) { - UserCertificateCO userCertificateCO = userCertificateCoConvertor.converDOToCO(userCertificateRepository.getById(id)); - if (userCertificateCO == null) { + UserCertificateDO certDO = userCertificateRepository.getById(id); + if (certDO == null) { return null; } - // 查询用户名 在职状态并设置 - UserDO userDO = userCertificateRepository.getUserNamesByUserIds(Collections.singletonList(userCertificateCO.getUserId())).stream().findFirst().orElse(null); - if (userDO != null) { - userCertificateCO.setUserName(userDO.getUserName()); - userCertificateCO.setEmploymentStatus(userDO.getEmploymentStatus()); - userCertificateCO.setPostName(userDO.getPostName()); - userCertificateCO.setDepartmentName(userDO.getDepartmentName()); - userCertificateCO.setCorpinfoName(userDO.getCorpinfoName()); - } - return userCertificateCO; + UserCertificateE e = new UserCertificateE(); + BeanUtils.copyProperties(certDO, e); + com.zcloud.certificate.domain.model.UserBasicInfo userBasicInfo = userCertificateRepository.getUserNamesByUserIds(Collections.singletonList(e.getUserId())).stream().findFirst().orElse(null); + e.attach(userBasicInfo); + return userCertificateCoConvertor.converEToCO(e); } + /** * 分页 * * @return */ public PageResponse execute(UserCertificatePageQry qry) { + if (qry.getIsAppQuery() != null) { + SSOUser ssoUser = AuthContext.getCurrentUser(); + qry.setEqUserId(ssoUser.getUserId()); + } Map params = PageQueryHelper.toHashMap(qry); - - IPage iPage = userCertificateRepository.listPageWithUser(new Page<>(qry.getPageIndex(), qry.getPageSize()), params); - List cos = Optional.ofNullable(iPage.getRecords()) - .orElse(Collections.emptyList()) - .stream() - .map(userCertificateCoConvertor::converDOToCO) - .collect(Collectors.toList()); - - return PageResponse.of( - cos, - (int) iPage.getTotal(), - (int) iPage.getSize(), - (int) iPage.getCurrent() - ); + PageResponse iPage = userCertificateRepository.listPageWithUser(params); + List cos = userCertificateCoConvertor.converDOsToCOs(iPage.getData()); + return PageResponse.of(cos, iPage.getTotalCount(), iPage.getPageSize(), iPage.getPageIndex()); } /** @@ -81,25 +69,9 @@ public class UserCertificateQueryExe { */ public PageResponse execute(CorpCertificateStatPageQry qry) { Map params = PageQueryHelper.toHashMap(qry); - - IPage page = new Page<>( - qry.getPageIndex(), - qry.getPageSize() - ); - - IPage result = - userCertificateRepository.selectCorpCertificateStatPage(page, params); - - List cos = userCertificateCoConvertor.converStatDOsToStatCOs( - Optional.ofNullable(result.getRecords()).orElse(Collections.emptyList()) - ); - - return PageResponse.of( - cos, - (int)result.getTotal(), - (int) result.getSize(), - (int) result.getCurrent() - ); + PageResponse result = userCertificateRepository.selectCorpCertificateStatPage(params); + List cos = userCertificateCoConvertor.converStatDOsToStatCOs(result.getData()); + return PageResponse.of(cos, result.getTotalCount(), result.getPageSize(), result.getPageIndex()); } diff --git a/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificatePageQry.java b/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificatePageQry.java index 3858e52..15a444c 100644 --- a/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificatePageQry.java +++ b/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificatePageQry.java @@ -30,6 +30,9 @@ public class UserCertificatePageQry extends PageQuery { @ApiModelProperty(value = "姓名", name = "likeUserName") private String likeUserName; + @ApiModelProperty(value = "用户ID", name = "eqUserId") + private Long eqUserId; + /** * 操作类别 */ @@ -53,5 +56,17 @@ public class UserCertificatePageQry extends PageQuery { */ @ApiModelProperty(value = "企业ID", name = "eqCorpinfoId") private Long eqCorpinfoId; + + /** + * 岗位名称 + */ + @ApiModelProperty(value = "岗位名称", name = "likePostName") + private String likePostName; + + /** + * app 端查询表示 + */ + @ApiModelProperty(value = "app 端查询表示", name = "isAppQuery") + private Integer isAppQuery; } diff --git a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserDO.java b/web-domain/src/main/java/com/zcloud/certificate/domain/model/UserBasicInfo.java similarity index 90% rename from web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserDO.java rename to web-domain/src/main/java/com/zcloud/certificate/domain/model/UserBasicInfo.java index cde65ee..eb9ca74 100644 --- a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserDO.java +++ b/web-domain/src/main/java/com/zcloud/certificate/domain/model/UserBasicInfo.java @@ -1,10 +1,10 @@ -package com.zcloud.certificate.persistence.dataobject; +package com.zcloud.certificate.domain.model; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data -public class UserDO { +public class UserBasicInfo { @ApiModelProperty(value = "用户ID") private Long userId; diff --git a/web-domain/src/main/java/com/zcloud/certificate/domain/model/UserCertificateE.java b/web-domain/src/main/java/com/zcloud/certificate/domain/model/UserCertificateE.java index d8ef215..cf21d71 100644 --- a/web-domain/src/main/java/com/zcloud/certificate/domain/model/UserCertificateE.java +++ b/web-domain/src/main/java/com/zcloud/certificate/domain/model/UserCertificateE.java @@ -55,5 +55,22 @@ public class UserCertificateE extends BaseE { private LocalDate certificateDateEnd; //复审日期 private LocalDate reviewDate; + //用户名 + private String userName; + //在职状态 + private Integer employmentStatus; + //部门名称 + private String departmentName; + //企业名称 + private String corpinfoName; + + public void attach(UserBasicInfo userBasicInfo) { + if (userBasicInfo == null) return; + this.userName = userBasicInfo.getUserName(); + this.employmentStatus = userBasicInfo.getEmploymentStatus(); + this.departmentName = userBasicInfo.getDepartmentName(); + this.corpinfoName = userBasicInfo.getCorpinfoName(); + } + } diff --git a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/mapper/UserCertificateMapper.java b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/mapper/UserCertificateMapper.java index 99e1e7c..fefc5f8 100644 --- a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/mapper/UserCertificateMapper.java +++ b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/mapper/UserCertificateMapper.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.zcloud.certificate.persistence.dataobject.UserCertificateDO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO; -import com.zcloud.certificate.persistence.dataobject.UserDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -22,7 +21,7 @@ public interface UserCertificateMapper extends BaseMapper { /** * 根据批量userId查询用户名称 */ - List selectUserNamesByUserIds(List userIds); + List selectUserNamesByUserIds(List userIds); /** * 分页查询用户证书信息,包含用户名称 @@ -32,7 +31,7 @@ public interface UserCertificateMapper extends BaseMapper { /** * 根据企业/相关方类型查询各企业/相关方各类人员证书数量 */ - IPage selectCorpCertificateStatPage(IPage page, @Param("params") Map params); + IPage selectCorpCertificateStatPage(IPage page, @Param("params") Map params); diff --git a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/UserCertificateRepository.java b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/UserCertificateRepository.java index 25afd1d..298f819 100644 --- a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/UserCertificateRepository.java +++ b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/UserCertificateRepository.java @@ -2,10 +2,8 @@ package com.zcloud.certificate.persistence.repository; import com.zcloud.certificate.persistence.dataobject.UserCertificateDO; import com.alibaba.cola.dto.PageResponse; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.jjb.saas.framework.repository.repo.BaseRepository; import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO; -import com.zcloud.certificate.persistence.dataobject.UserDO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -22,19 +20,16 @@ public interface UserCertificateRepository extends BaseRepository getUserNamesByUserIds(List userIds); + List getUserNamesByUserIds(List userIds); /** * 分页查询包含用户信息 */ - IPage listPageWithUser(IPage page, Map params); + PageResponse listPageWithUser(Map params); /** * 根据企业/相关方类型查询各企业/相关方各类人员证书数量 */ - IPage selectCorpCertificateStatPage( - IPage page, - @Param("params") Map params - ); + PageResponse selectCorpCertificateStatPage(@Param("params") Map params); } diff --git a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/impl/UserCertificateRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/impl/UserCertificateRepositoryImpl.java index 51c8c6e..e0ac4b1 100644 --- a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/impl/UserCertificateRepositoryImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/repository/impl/UserCertificateRepositoryImpl.java @@ -2,7 +2,6 @@ package com.zcloud.certificate.persistence.repository.impl; import com.zcloud.certificate.persistence.dataobject.UserCertificateDO; import com.zcloud.certificate.persistence.dataobject.UserCertificateStatDO; -import com.zcloud.certificate.persistence.dataobject.UserDO; import com.zcloud.certificate.persistence.mapper.UserCertificateMapper; import com.zcloud.certificate.persistence.repository.UserCertificateRepository; import com.alibaba.cola.dto.PageResponse; @@ -15,7 +14,6 @@ import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; -import java.util.Collections; import java.util.List; import java.util.Map; @@ -40,18 +38,22 @@ public class UserCertificateRepositoryImpl extends BaseRepositoryImpl getUserNamesByUserIds(List userIds) { + public List getUserNamesByUserIds(List userIds) { return userCertificateMapper.selectUserNamesByUserIds(userIds); } @Override - public IPage listPageWithUser(IPage page, Map params) { - return userCertificateMapper.selectPageWithUser(page, params); + public PageResponse listPageWithUser(Map params) { + IPage page = new Query().getPage(params); + IPage iPage = userCertificateMapper.selectPageWithUser(page, params); + return PageHelper.pageToResponse(iPage, iPage.getRecords()); } @Override - public IPage selectCorpCertificateStatPage(IPage page, Map params) { - return userCertificateMapper.selectCorpCertificateStatPage(page, params); + public PageResponse selectCorpCertificateStatPage(Map params) { + IPage page = new Query().getPage(params); + IPage iPage = userCertificateMapper.selectCorpCertificateStatPage(page, params); + return PageHelper.pageToResponse(iPage, iPage.getRecords()); } } diff --git a/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml b/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml index 1d2a2d9..64c06aa 100644 --- a/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml @@ -44,12 +44,18 @@ AND uc.corpinfo_id = #{params.eqCorpinfoId} + + AND uc.post_name LIKE CONCAT('%', #{params.likePostName}, '%') + + + AND uc.user_id = #{params.eqUserId} + ORDER BY uc.create_time DESC - SELECT u.id AS userId, u.name AS userName,