diff --git a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java index 5c23739d4..0fb751d3e 100644 --- a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java @@ -387,6 +387,7 @@ public enum ErrorCode{ */ MSG_MODEL_NOT_FOUND(27000, "找不到短信模板"), MSG_CONFIG_NOT_FOUND(27001, "找不到短信配置"), + MSG_CONFIG_ACCOUNT(27002, "短信条数剩余不足"), /** * 拼团 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java index f408e5f87..cc749854f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java @@ -701,6 +701,7 @@ public class WxFlowServiceImpl implements WxFlowService { Long businessId = Long.parseLong(mapInfo.get("businessId").toString()); String email = (String)userMap.get("email"); List> variables = (List)mapInfo.get("variables"); + Integer flowType = (Integer)mapInfo.get("businessType"); // 判断下个节点是否有设置审批人,没有,直接通过,有,发短信通知 if(!isEnded(processInstanceId)){ @@ -736,6 +737,12 @@ public class WxFlowServiceImpl implements WxFlowService { mailMsg.setModelId(EnumMailMsgModel.MAIL_APPLY_NODIFY.getCode()); mailMsg.setTo(new String[]{email}); mailMsg.setTenantId(tenantId); + if(1 == flowType.intValue() || 3 == flowType.intValue()){ + msgReplaceMap.put("bustype","合同"); + }else if(2 == flowType.intValue()){ + msgReplaceMap.put("bustype","账单"); + msgReplaceMap.put("contract", businessId.toString()); + } mailMsg.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(mailMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); } @@ -769,6 +776,12 @@ public class WxFlowServiceImpl implements WxFlowService { mailMsg.setModelId(EnumMailMsgModel.MAIL_PASS_NODIFY.getCode()); mailMsg.setTo(new String[]{email}); mailMsg.setTenantId(tenantId); + if(1 == flowType.intValue() || 3 == flowType.intValue()){ + msgReplaceMap.put("bustype","合同"); + }else if(2 == flowType.intValue()){ + msgReplaceMap.put("bustype","账单"); + msgReplaceMap.put("contract", businessId.toString()); + } mailMsg.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(mailMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); } diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java index 17f7883d7..cd4f9f9f6 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java @@ -63,6 +63,9 @@ public class SendCallBackSmsServiceImpl implements MsgSendService { if (wxMsgConfig.getRemains() < record.getExpectSendNumber()) { throw new MallinkException(ErrorCode.MSG_SUM_INSUFFICENT); } + if(wxMsgConfig.getTotal() <=0l){ + throw new MallinkException(ErrorCode.MSG_CONFIG_ACCOUNT); + } } WxCouponInject couponInject = record.getCouponInject(); diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java index befcc01a2..5a6fa9e9b 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java @@ -54,8 +54,10 @@ public class SendSmsServiceImpl implements MsgSendService { if(CollectionUtils.isEmpty(wxMsgConfigs)){ throw new MallinkException(ErrorCode.MSG_CONFIG_NOT_FOUND); } - wxMsgConfig = wxMsgConfigs.get(0); + if(wxMsgConfig.getTotal() <=0l){ + throw new MallinkException(ErrorCode.MSG_CONFIG_ACCOUNT); + } WxMsgValidationcodeModel wxMsgValidationcodeModel = new WxMsgValidationcodeModel(); wxMsgValidationcodeModel.setTenantId(record.getTenantId());