From bb3fa9b9d0018be2c7bcc3203c4ed5ce6330176f Mon Sep 17 00:00:00 2001 From: xudawei Date: Thu, 6 Feb 2025 15:47:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20(REQ-3300)=20=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E7=AD=BE=E8=AF=81=E8=AF=A6=E6=83=85-=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../visa/api/enums/VisaButtonTypeEnum.java | 7 ++-- .../visa/api/enums/VisaLogTypeEnum.java | 2 +- .../api/response/VisaDetailByIdResponse.java | 26 ++++++++++++ .../visa/server/domain/ChangeRecord.java | 4 +- .../visa/server/domain/ChangeRecordBill.java | 2 +- .../visa/server/domain/ChangeRecordLog.java | 11 ----- .../server/domain/ChangeRecordRelation.java | 2 +- .../mq/producer/VisaChangeLogPayload.java | 1 - .../service/impl/ChangeRecordServiceImpl.java | 40 ++++++++++++++----- 9 files changed, 66 insertions(+), 29 deletions(-) diff --git a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaButtonTypeEnum.java b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaButtonTypeEnum.java index 197ad022..bead5a3c 100644 --- a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaButtonTypeEnum.java +++ b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaButtonTypeEnum.java @@ -6,7 +6,7 @@ import com.google.common.collect.Sets; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Getter; -import org.springframework.util.CollectionUtils; +import org.apache.commons.collections4.CollectionUtils; import java.util.Map; import java.util.Objects; @@ -108,9 +108,10 @@ public enum VisaButtonTypeEnum { switch (bizTypeSet) { case CREATE: case CONFIRM: - return bizTypeBtnMap.get(bizTypeSet.name() + status.name()); + case OTHER: case APPROVE: - + Set buttonTypeEnumSet = bizTypeBtnMap.get(bizTypeSet.name() + status.name()); + return CollectionUtils.isNotEmpty(buttonTypeEnumSet) ? buttonTypeEnumSet : Sets.newHashSet(); default: throw new ServiceException("单据确认业务类型不匹配"); } diff --git a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaLogTypeEnum.java b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaLogTypeEnum.java index c3097342..78e226f8 100644 --- a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaLogTypeEnum.java +++ b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/enums/VisaLogTypeEnum.java @@ -19,7 +19,7 @@ public enum VisaLogTypeEnum { CHAT_GROUP("chat_group", "发起群聊洽商","发起群聊洽商","%s发起群聊洽商"), EDIT_FORM("edit_form", "编辑表单","%s编辑表单","%s编辑表单"), - EDIT_AMOUNT("edit_amount", "编辑金额变化","%s编辑金额变化","原值:金额变化:%s;/n 新值:金额变化:%s;"), + EDIT_AMOUNT("edit_amount", "编辑金额变化","%s编辑金额变化","原值:金额变化:%s;
新值:金额变化:%s;"), UPLOAD_FILE("upload_file", "上传附件","%s上传附件","%s上传%d个附件:%s"), DELETE_UPLOAD_FILE("delete_upload_file", "删除附件","%s删除附件","%s删除%d个附件:"), TO_EXECUTE("to_execute", "发起执行","发起执行", "%s发起执行"), diff --git a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/response/VisaDetailByIdResponse.java b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/response/VisaDetailByIdResponse.java index b791dc12..a68d964c 100644 --- a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/response/VisaDetailByIdResponse.java +++ b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/response/VisaDetailByIdResponse.java @@ -247,6 +247,20 @@ public class VisaDetailByIdResponse { } + @Data + @Builder + @NoArgsConstructor + @AllArgsConstructor + public static class RelationProfessional { + + /** + * code + */ + private String code; + } + + + @Data @Builder @NoArgsConstructor @@ -270,6 +284,18 @@ public class VisaDetailByIdResponse { } + @Data + @Builder + @NoArgsConstructor + @AllArgsConstructor + public static class RelationArea { + /** + * id + */ + private Long id; + + } + @Data @Builder @NoArgsConstructor diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecord.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecord.java index 52250cc2..524914ff 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecord.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecord.java @@ -61,7 +61,7 @@ public class ChangeRecord extends BaseEntity { */ @TableField(value = "relation_area", typeHandler = FastjsonTypeHandler.class) - private JSONObject relationArea; + private JSONArray relationArea; /** * 专业集合 @@ -138,7 +138,7 @@ public class ChangeRecord extends BaseEntity { /** * 修改人id */ - @TableField(value = "updateBy") + @TableField(value = "update_by") private Long updateBy; } diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordBill.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordBill.java index 97fcbbfe..68aa9d1b 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordBill.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordBill.java @@ -65,7 +65,7 @@ public class ChangeRecordBill extends BaseEntity { /** * 修改人id */ - @TableField(value = "updateBy") + @TableField(value = "update_by") private Long updateBy; } diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordLog.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordLog.java index 128e1b2d..aece4fc2 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordLog.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordLog.java @@ -56,22 +56,11 @@ public class ChangeRecordLog extends BaseEntity { @TableField(value = "order_by") private Integer orderBy; - /** - * 操作时间 - */ - @TableField(value = "operation_time") - private Date operationTime; /** * 创建人id */ @TableField(value = "create_by") private Long createBy; - /** - * 修改人id - */ - @TableField(value = "updateBy") - private Long updateBy; - } diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordRelation.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordRelation.java index b0846124..079a9eaf 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordRelation.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/domain/ChangeRecordRelation.java @@ -68,7 +68,7 @@ public class ChangeRecordRelation extends BaseEntity { /** * 修改人id */ - @TableField(value = "updateBy") + @TableField(value = "update_by") private Long updateBy; } diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/producer/VisaChangeLogPayload.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/producer/VisaChangeLogPayload.java index 0cafa4a0..3ff07e3c 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/producer/VisaChangeLogPayload.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/producer/VisaChangeLogPayload.java @@ -37,7 +37,6 @@ public class VisaChangeLogPayload implements Serializable { .action(log.getAction()) .title(log.getTitle()) .content(log.getContent()) - .operateTime(log.getOperationTime()) .personId(log.getCreateBy()) .build(); return Event.builder() diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/impl/ChangeRecordServiceImpl.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/impl/ChangeRecordServiceImpl.java index 9dfc6c37..7465579a 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/impl/ChangeRecordServiceImpl.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/impl/ChangeRecordServiceImpl.java @@ -8,7 +8,6 @@ import cn.axzo.basics.common.constant.enums.OrganizationalNodeTypeEnum; import cn.axzo.basics.common.util.AssertUtil; import cn.axzo.basics.common.util.NumberUtil; import cn.axzo.basics.profiles.dto.basic.PersonProfileDto; -import cn.axzo.basics.report.api.ReportServiceSDK; import cn.axzo.basics.report.api.sheet.SheetWrapper; import cn.axzo.framework.domain.ServiceException; import cn.axzo.framework.domain.web.result.PageData; @@ -50,12 +49,12 @@ import cn.axzo.nanopart.visa.server.dto.VisaConfirmDto; import cn.axzo.nanopart.visa.server.dto.VisaLogParam; import cn.axzo.nanopart.visa.server.mapper.ChangeRecordDao; import cn.axzo.nanopart.visa.server.rpc.ApolloConstructionAreaGateway; -import cn.axzo.nanopart.visa.server.rpc.VisaCooperateShipGateway; import cn.axzo.nanopart.visa.server.rpc.DrawingMajorGateway; import cn.axzo.nanopart.visa.server.rpc.MsgCenterGateway; +import cn.axzo.nanopart.visa.server.rpc.ProjectApiGateway; +import cn.axzo.nanopart.visa.server.rpc.VisaCooperateShipGateway; import cn.axzo.nanopart.visa.server.rpc.VisaOrganizationalNodeUserGateway; import cn.axzo.nanopart.visa.server.rpc.VisaProfileGateway; -import cn.axzo.nanopart.visa.server.rpc.ProjectApiGateway; import cn.axzo.nanopart.visa.server.rpc.WorkflowGateway; import cn.axzo.nanopart.visa.server.rpc.WorkspaceGateway; import cn.axzo.nanopart.visa.server.service.ChangeRecordBillService; @@ -73,12 +72,12 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Lists; -import com.google.common.collect.Sets; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.MapUtils; @@ -328,8 +327,8 @@ public class ChangeRecordServiceImpl extends ServiceImpl buildArea(List areaIds) { + private List buildArea(JSONArray relationArea) { + if (CollectionUtils.isEmpty(relationArea)) { + return Lists.newArrayList(); + } + List relationAreaList = relationArea.toJavaList(VisaDetailByIdResponse.RelationArea.class); + if (CollectionUtils.isEmpty(relationAreaList)) { + return Lists.newArrayList(); + } + List areaIds = relationAreaList.stream() + .filter(item -> Objects.nonNull(item.getId())) + .map(VisaDetailByIdResponse.RelationArea::getId).collect(Collectors.toList()); if (CollectionUtils.isEmpty(areaIds)) { return Lists.newArrayList(); } @@ -944,10 +953,23 @@ public class ChangeRecordServiceImpl extends ServiceImpl buildProfession(Long projectId, Set majorCodes) { - if (Objects.isNull(projectId) || CollectionUtils.isEmpty(majorCodes)) { + private List buildProfession(Long projectId, JSONArray relationProfessional) { + + if (Objects.isNull(projectId) || CollectionUtils.isEmpty(relationProfessional)) { return Lists.newArrayList(); } + List professionalList = relationProfessional.toJavaList(VisaDetailByIdResponse.RelationProfessional.class); + + if (CollectionUtils.isEmpty(professionalList)) { + return Lists.newArrayList(); + } + Set majorCodes = professionalList.stream() + .filter(item -> StringUtils.hasText(item.getCode())) + .map(VisaDetailByIdResponse.RelationProfessional::getCode).collect(Collectors.toSet()); + if (CollectionUtils.isEmpty(majorCodes)) { + return Lists.newArrayList(); + } + List majorRespList = drawingMajorGateway.list(projectId, majorCodes, true); if (CollectionUtils.isEmpty(majorCodes)) { return Lists.newArrayList();