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 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) 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 8d5085b8..7b9d9255 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 @@ -248,7 +248,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()) @@ -281,6 +283,11 @@ public class ChangeRecordServiceImpl extends ServiceImpl changeRecordBills = changeRecordBillService.listById(visaId); @@ -731,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())); } // 三种单据 @@ -1390,7 +1394,8 @@ 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(), @@ -1548,7 +1547,7 @@ public class ChangeRecordServiceImpl extends ServiceImpl