From 8acd087a34d2b3315d582288c9e3b4ef53ce2040 Mon Sep 17 00:00:00 2001 From: shenzhidan Date: Thu, 8 Jan 2026 17:40:46 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E8=81=94=E8=B0=83=E4=BA=BA=E5=91=98?= =?UTF-8?q?=E8=AF=81=E7=85=A7=E5=88=97=E8=A1=A8=E3=80=81=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../command/UserCertificateAddExe.java | 1 - .../convertor/UserCertificateCoConvertor.java | 4 ++++ .../query/UserCertificateQueryExe.java | 23 ++++++++++++++++++- .../dto/UserCertificateAddCmd.java | 3 +++ .../UserCertificateGatewayImpl.java | 3 ++- .../dataobject/UserCertificateDO.java | 5 +++- .../mapper/UserCertificateMapper.xml | 1 + 7 files changed, 36 insertions(+), 4 deletions(-) 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 a37f00b..33fe209 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 @@ -38,7 +38,6 @@ 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 a575b57..516eac0 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 @@ -29,5 +29,9 @@ public interface UserCertificateCoConvertor { List converStatDOsToStatCOs(List userCertificateStatDOs); UserCertificateCO converEToCO(UserCertificateE userCertificateE); + + List converDOsToEs(List userCertificateDOs); + + List converEsToCOs(List userCertificateEs); } 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 fb0b444..1de03c3 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 @@ -14,10 +14,13 @@ import com.zcloud.certificate.persistence.repository.UserCertificateRepository; import com.zcloud.gbscommon.utils.PageQueryHelper; import com.alibaba.cola.dto.PageResponse; import lombok.AllArgsConstructor; +import org.ehcache.core.util.CollectionUtil; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; import java.util.*; +import java.util.stream.Collectors; /** @@ -59,8 +62,26 @@ public class UserCertificateQueryExe { qry.setEqUserId(ssoUser.getUserId()); } Map params = PageQueryHelper.toHashMap(qry); + PageResponse iPage = userCertificateRepository.listPageWithUser(params); - List cos = userCertificateCoConvertor.converDOsToCOs(iPage.getData()); + + List userCertificateES = userCertificateCoConvertor.converDOsToEs(iPage.getData()); + List userIds = userCertificateES.stream().map(UserCertificateE::getUserId).distinct().collect(Collectors.toList()); + if (CollectionUtils.isEmpty(userIds)) { + return PageResponse.of(Collections.emptyList(), iPage.getTotalCount(), iPage.getPageSize(), iPage.getPageIndex()); + } + List userBasicInfos = userCertificateRepository.getUserNamesByUserIds(userIds); + + Map userInfoMap = userBasicInfos.stream() + .collect(Collectors.toMap(com.zcloud.certificate.domain.model.UserBasicInfo::getUserId, info -> info, (k1, k2) -> k1)); + + userCertificateES.forEach(e -> { + com.zcloud.certificate.domain.model.UserBasicInfo userBasicInfo = userInfoMap.get(e.getUserId()); + e.attach(userBasicInfo); + }); + + List cos = userCertificateCoConvertor.converEsToCOs(userCertificateES); + return PageResponse.of(cos, iPage.getTotalCount(), iPage.getPageSize(), iPage.getPageIndex()); } diff --git a/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificateAddCmd.java b/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificateAddCmd.java index 09f2c2a..7ab55a8 100644 --- a/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificateAddCmd.java +++ b/web-client/src/main/java/com/zcloud/certificate/dto/UserCertificateAddCmd.java @@ -28,6 +28,9 @@ public class UserCertificateAddCmd extends Command { @ApiModelProperty(value = "用户id", name = "userId", required = true) // @NotNull(message = "用户id不能为空") private Long userId; + + @ApiModelProperty(value = "业务主键ID") + private String userCertificateId; @ApiModelProperty(value = "1-特种作业,2-特种设备,3-主要负责人,4-安全生产管理人员", name = "type", required = true) @NotNull(message = "1-特种作业,2-特种设备,3-主要负责人,4-安全生产管理人员不能为空") diff --git a/web-infrastructure/src/main/java/com/zcloud/certificate/gatewayimpl/UserCertificateGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/certificate/gatewayimpl/UserCertificateGatewayImpl.java index f202c4d..4ae6904 100644 --- a/web-infrastructure/src/main/java/com/zcloud/certificate/gatewayimpl/UserCertificateGatewayImpl.java +++ b/web-infrastructure/src/main/java/com/zcloud/certificate/gatewayimpl/UserCertificateGatewayImpl.java @@ -23,7 +23,8 @@ public class UserCertificateGatewayImpl implements UserCertificateGateway { @Override public Boolean add(UserCertificateE userCertificateE) { - UserCertificateDO d = new UserCertificateDO(Tools.get32UUID()); + UserCertificateDO d = new UserCertificateDO(userCertificateE.getUserCertificateId()); +// UserCertificateDO d = new UserCertificateDO(Tools.get32UUID()); BeanUtils.copyProperties(userCertificateE, d,"userCertificateId"); userCertificateRepository.save(d); return true; diff --git a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserCertificateDO.java b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserCertificateDO.java index e3a398c..a258dc2 100644 --- a/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserCertificateDO.java +++ b/web-infrastructure/src/main/java/com/zcloud/certificate/persistence/dataobject/UserCertificateDO.java @@ -1,7 +1,9 @@ package com.zcloud.certificate.persistence.dataobject; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.annotation.TableName; import com.jjb.saas.framework.repository.basedo.BaseDO; +import com.zcloud.gbscommon.utils.Tools; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; @@ -82,7 +84,8 @@ public class UserCertificateDO extends BaseDO { private LocalDate reviewDate; public UserCertificateDO(String userCertificateId) { - this.userCertificateId = userCertificateId; + if (StrUtil.isNotBlank(userCertificateId)) this.userCertificateId = userCertificateId; + else this.userCertificateId = Tools.get32UUID(); } } diff --git a/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml b/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml index b9e7f47..3af8695 100644 --- a/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml +++ b/web-infrastructure/src/main/resources/mapper/UserCertificateMapper.xml @@ -22,6 +22,7 @@ LEFT JOIN post p ON p.id = u.post_id WHERE 1=1 + AND uc.delete_enum = 'false' AND uc.tenant_id = #{params.tenantId}