From d181c3d292f7b93ba74d08d4450a22c663c29af0 Mon Sep 17 00:00:00 2001 From: xudawei Date: Mon, 17 Feb 2025 10:15:01 +0800 Subject: [PATCH 1/5] =?UTF-8?q?feat:=20(REQ-3300)=20=E5=8D=95=E6=8D=AE?= =?UTF-8?q?=E6=9C=80=E6=96=B0=E7=9A=84=E7=8A=B6=E6=80=81=E6=98=AF=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E7=8A=B6=E6=80=81=E5=88=99=E8=BF=94=E5=9B=9Efalse?= =?UTF-8?q?=EF=BC=8C=E4=B8=8D=E5=86=8D=E6=8A=9B=E5=87=BA=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/service/impl/ChangeRecordServiceImpl.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) 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 75bfb1a3..8cdebbe7 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 @@ -241,7 +241,9 @@ public class ChangeRecordServiceImpl extends ServiceImpl preStatusList = this.buildPreStatus(request.getUpdateStatus()); // 2 更新状态 - this.updateVisaStatus(request.getVisaId(), preStatusList, request.getUpdateStatus()); + if (!this.updateVisaStatus(request.getVisaId(), preStatusList, request.getUpdateStatus())) { + return false; + } // 3 新增日志 this.addLogWhenChangeStatus(request, VisaLogParam.builder() .personId(request.getPersonId()) @@ -274,6 +276,11 @@ public class ChangeRecordServiceImpl extends ServiceImpl Date: Mon, 17 Feb 2025 10:25:39 +0800 Subject: [PATCH 2/5] =?UTF-8?q?feat:=20(REQ-3300)=20=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E4=B8=AD=E6=9C=AA=E6=9F=A5=E8=AF=A2=E5=88=B0=E5=8D=95=E6=8D=AE?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../visa/server/service/impl/ChangeRecordServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 00883d8d..0d35c7f0 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 @@ -375,6 +375,9 @@ public class ChangeRecordServiceImpl extends ServiceImpl changeRecordBills = changeRecordBillService.listById(visaId); @@ -1398,7 +1401,8 @@ public class ChangeRecordServiceImpl extends ServiceImpl Date: Mon, 17 Feb 2025 10:34:47 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat(REQ-3300)=20-=20=E8=B0=83=E6=95=B4IM?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E7=BE=A4=E5=90=8E=EF=BC=8C=E5=8F=91=E9=80=81?= =?UTF-8?q?=E5=8D=A1=E7=89=87=E5=92=8C=E9=A6=96=E6=9D=A1=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../im/ImGroupsCreatedEventHandler.java | 17 ++++++----------- .../visa/server/service/VisaHelper.java | 11 +++++++++++ .../service/impl/ChangeRecordServiceImpl.java | 16 ++-------------- 3 files changed, 19 insertions(+), 25 deletions(-) diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupsCreatedEventHandler.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupsCreatedEventHandler.java index 61b178be..f6f42c09 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupsCreatedEventHandler.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupsCreatedEventHandler.java @@ -27,6 +27,7 @@ import cn.axzo.nanopart.visa.server.rpc.OrganizationalUnitGateway; import cn.axzo.nanopart.visa.server.rpc.VisaProfileGateway; import cn.axzo.nanopart.visa.server.service.ChangeRecordConfirmService; import cn.axzo.nanopart.visa.server.service.ChangeRecordService; +import cn.axzo.nanopart.visa.server.service.VisaHelper; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.google.common.collect.Sets; @@ -37,7 +38,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import javax.annotation.Resource; -import java.math.BigDecimal; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -91,13 +91,14 @@ public class ImGroupsCreatedEventHandler implements EventHandler, InitializingBe Map bizGroupInfo = group.getBizGroupInfo(); HashSet imReceiveAccounts = Sets.newHashSet(String.valueOf(group.getTid())); GroupGetOwnerRequest ownerRequest = new GroupGetOwnerRequest(); + ownerRequest.setTid(group.getTid()); GroupGetOwnerResponse groupOwner = msgCenterGateway.getGroupOwner(ownerRequest); AssertUtil.isTrue(Objects.nonNull(groupOwner) && Objects.nonNull(groupOwner.getOwner()), "im group owner is null"); GroupMemberInfo owner = groupOwner.getOwner(); - Long visaId = (Long) bizGroupInfo.getOrDefault(IM_GROUP_BIZ_INFO_VISA_ID, ""); + Long visaId = Long.valueOf(bizGroupInfo.getOrDefault(IM_GROUP_BIZ_INFO_VISA_ID, 0).toString()); String visaType = (String) bizGroupInfo.getOrDefault(IM_GROUP_BIZ_INFO_VISA_TYPE, ""); - Long ownerWorkspaceId = (Long) bizGroupInfo.getOrDefault(IM_GROUP_BIZ_INFO_INITIATOR_WORKSPACE_ID, 0L); + Long ownerWorkspaceId = Long.valueOf(bizGroupInfo.getOrDefault(IM_GROUP_BIZ_INFO_INITIATOR_WORKSPACE_ID, 0).toString()); ChangeRecord visa = changeRecordService.getById(visaId); AssertUtil.notNull(visa, "visa record is null"); @@ -121,20 +122,14 @@ public class ImGroupsCreatedEventHandler implements EventHandler, InitializingBe ChangeRecordConfirm creator = creators.get(0); OrganizationalUnitVO unitInfo = organizationalUnitGateway.getUnitInfo(creator.getOuId()); PersonProfileDto profile = visaProfileGateway.getProfile(creator.getPersonId()); - String amountDesc = "不变"; - if (visa.getAmountChange().compareTo(BigDecimal.ZERO) > 0) { - amountDesc = "增加" + visa.getAmountChange().toPlainString() + "元"; - } else if (visa.getAmountChange().compareTo(BigDecimal.ZERO) < 0) { - amountDesc = "减少" + visa.getAmountChange().toPlainString() + "元"; - } cardRequest.setBizParam(new JSONObject(Maps.of( "topic", group.getName(), "reason", visa.getReason(), "initiatorName", profile.getRealName(), "initiatorUnitName", unitInfo.getName(), - "visaType", VisaTypeEnum.valueOfCode(visaType).getDesc(), - "amountChange", amountDesc + "visaType", VisaTypeEnum.valueOf(visaType).getDesc(), + "amountChange", VisaHelper.buildChangeAmount(visa.getAmountChange()) ))); msgCenterGateway.sendCardToCroup(cardRequest); diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/VisaHelper.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/VisaHelper.java index c2041a66..f1540924 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/VisaHelper.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/service/VisaHelper.java @@ -27,6 +27,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; import javax.annotation.Resource; +import java.math.BigDecimal; import java.util.Collection; import java.util.Collections; import java.util.HashMap; @@ -229,4 +230,14 @@ public class VisaHelper { }); return returnMap; } + + public static String buildChangeAmount(BigDecimal changeAmount) { + String amountDesc = "不变"; + if (changeAmount.compareTo(BigDecimal.ZERO) > 0) { + amountDesc = "增加" + changeAmount.abs().toPlainString() + "元"; + } else if (changeAmount.compareTo(BigDecimal.ZERO) < 0) { + amountDesc = "减少" + changeAmount.abs().toPlainString() + "元"; + } + return amountDesc; + } } 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 0d35c7f0..e8e53987 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 @@ -741,13 +741,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl 0) { - amountDesc = "增加" + req.getAmountChange().abs().toPlainString() + "元"; - } else if (req.getAmountChange().compareTo(BigDecimal.ZERO) < 0) { - amountDesc = "减少" + req.getAmountChange().abs().toPlainString() + "元"; - } - formVariables.put(FORM_FIELD_AMOUNT_CHANGE, amountDesc); + formVariables.put(FORM_FIELD_AMOUNT_CHANGE, VisaHelper.buildChangeAmount(req.getAmountChange())); } // 三种单据 @@ -1547,12 +1541,6 @@ public class ChangeRecordServiceImpl extends ServiceImpl 0) { - amountDesc = "增加" + visa.getAmountChange().toPlainString() + "元"; - } else if (visa.getAmountChange().compareTo(BigDecimal.ZERO) < 0) { - amountDesc = "减少" + visa.getAmountChange().toPlainString() + "元"; - } cardRequest.setBizParam(new JSONObject(Maps.of( "topic", visa.getTopic(), @@ -1560,7 +1548,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl Date: Mon, 17 Feb 2025 10:45:36 +0800 Subject: [PATCH 4/5] =?UTF-8?q?feat(REQ-3300)=20-=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E4=BB=8E=20IM=20=E7=BE=A4=E4=B8=AD=E8=8E=B7=E5=8F=96=E6=89=A9?= =?UTF-8?q?=E5=B1=95=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mq/listener/im/ImGroupAddMembersEventHandler.java | 7 ++++--- .../mq/listener/im/ImGroupRemoveMembersEventHandler.java | 3 +-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupAddMembersEventHandler.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupAddMembersEventHandler.java index d27d18b1..a43b1d31 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupAddMembersEventHandler.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupAddMembersEventHandler.java @@ -66,9 +66,10 @@ public class ImGroupAddMembersEventHandler implements EventHandler, Initializing Map profileMap = visaProfileGateway.getProfileMap(Lists.newArrayList(group.getOwnerPersonId(), member.getPersonId())); - String visaId = (String) group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_VISA_ID, ""); + + Long visaId = Long.valueOf(group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_VISA_ID, 0).toString()); String visaType = (String) group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_VISA_TYPE, ""); - Long workspaceId = (Long) group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_INITIATOR_WORKSPACE_ID, 0L); + Long workspaceId = Long.valueOf(group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_INITIATOR_WORKSPACE_ID, 0).toString()); PersonProfileDto memberProfile = profileMap.getOrDefault(member.getPersonId(), null); PersonProfileDto ownerProfile = profileMap.getOrDefault(group.getOwnerPersonId(), null); @@ -83,7 +84,7 @@ public class ImGroupAddMembersEventHandler implements EventHandler, Initializing .imReceiveModel(new PersonV3DTO.ReceiveModel(member.getPersonOuId(), workspaceId)) .build())); notice.setBizEventMappingCode(refreshableConfiguration.getImGroupAddMemberNoticeEventCode()); - notice.setBizCode(visaId); + notice.setBizCode(String.valueOf(visaId)); notice.setBizExtParams(new JSONObject(Maps.of( "initiatorName", ownerProfile.getRealName(), "visaType", VisaTypeEnum.valueOfCode(visaType).getDesc(), diff --git a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupRemoveMembersEventHandler.java b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupRemoveMembersEventHandler.java index c2ab3bf6..047969d9 100644 --- a/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupRemoveMembersEventHandler.java +++ b/visa/visa-server/src/main/java/cn/axzo/nanopart/visa/server/mq/listener/im/ImGroupRemoveMembersEventHandler.java @@ -55,8 +55,7 @@ public class ImGroupRemoveMembersEventHandler implements EventHandler, Initializ } private void removeMemberVote(GroupInfo group, GroupMemberInfo member) { - Long visaId = (Long) group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_VISA_ID, ""); - + Long visaId = Long.valueOf(group.getBizGroupInfo().getOrDefault(IM_GROUP_BIZ_INFO_VISA_ID, 0).toString()); changeRecordRelationService.clearImOperationParticipate(ImGroupOperationClearReq.builder() .clearAll(false) From c085dfa68941178816e2f7701e8639cd8b106775 Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Mon, 17 Feb 2025 11:20:03 +0800 Subject: [PATCH 5/5] =?UTF-8?q?feat(REQ-3300)=20-=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E5=BE=85=E5=8A=9E=E5=8F=98=E9=87=8F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/axzo/nanopart/visa/api/constant/VisaConstant.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/constant/VisaConstant.java b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/constant/VisaConstant.java index 481e9d7f..95bfe821 100644 --- a/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/constant/VisaConstant.java +++ b/visa/visa-api/src/main/java/cn/axzo/nanopart/visa/api/constant/VisaConstant.java @@ -16,7 +16,7 @@ public interface VisaConstant { /** * 用于发送待办的变量名 */ - String WORKFLOW_PENDING_TOPIC = "theme"; + String WORKFLOW_PENDING_TOPIC = "topic"; String MSG_CENTER_APP_CODE = "nanopart-visa"; /** * IM 群的扩展信息:变洽签 ID