add 企微通知

This commit is contained in:
shuo.wang
2025-02-17 11:04:42 +08:00
parent 5e7351fbfa
commit f78fddf06f
15 changed files with 255 additions and 77 deletions

View File

@@ -1,12 +1,15 @@
package com.cool.store.enums;
import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils;
import com.cool.store.constants.CommonConstants;
import lombok.extern.slf4j.Slf4j;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.Map;
import java.util.Objects;
import java.util.StringJoiner;
/**
* @author zhangchenbiao
@@ -14,15 +17,16 @@ import java.util.Objects;
* @Description:
* @date 2024-03-27 10:50
*/
@Slf4j
public enum MessageEnum {
MESSAGE_1("您有一份加盟意向申请,请查收。", "##### 加盟商姓名:${partnerUsername}\n##### 手机号码:${partnerMobile}\n##### 意向加盟区域:${wantShopName}\n"),
MESSAGE_2("您收到一份邀约面谈预约,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 预约时间:${appointmentTime}\n"),
MESSAGE_1("您有一份加盟意向申请,请查收。", "加盟商姓名:${partnerUsername}\n手机号码${partnerMobile}\n"),
MESSAGE_2("您收到一份邀约面谈预约,请查收", "加盟商姓名:${partnerUsername}\n预约时间${appointmentTime}\n"),
MESSAGE_3("您收到一份一次面审预约,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 预约时间:${appointmentTime}\n"),
MESSAGE_3_1("您的线索已预约一次面审,请关注", "##### 加盟商姓名:${partnerUsername}\n面审官${interviewUsername}\n##### 预约时间:${appointmentTime}\n"),
MESSAGE_4("您有线索未通过面审,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 面审时间:${interviewTime}\n##### 面审官:${interviewUsername}\n"),
MESSAGE_5("您收到一份缴纳意向金审核,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 缴费时间:${payTime}\n"),
MESSAGE_6("收到一份加盟意向协议信息审核,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 手机号码:${partnerMobile}\n##### 信息提交时间:${submitTime}\n"),
MESSAGE_5("您收到一份缴纳意向金审核,请查收", "加盟商姓名:${partnerUsername}\n手机号码:${partnerMobile}\n"),
MESSAGE_6("一份加盟意向协议待提交,请查收", "加盟商姓名:${partnerUsername}\n手机号码${partnerMobile}\n"),
MESSAGE_7("您提交的一份加盟意向协议OA审核未通过请查收", "##### 加盟商姓名:${partnerUsername}\n##### 审批提交时间:${submitTime}\n"),
MESSAGE_8("您有一位加盟商待安排体验门店及体验时间,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 手机号码:${partnerMobile}\n"),
MESSAGE_9("您有一位加盟商已放弃门店体验,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 手机号码:${partnerMobile}\n"),
@@ -31,20 +35,20 @@ public enum MessageEnum {
MESSAGE_11("您的一个铺位已审核通过,请查收", "##### 铺位名称:${pointName}\n##### 铺位地址:${pointAddress}\n"),
MESSAGE_12("您的一个铺位审核未通过,请查收", "##### 铺位名称:${pointName}\n##### 铺位地址:${pointAddress}\n##### 未通过原因:${reason}\n"),
MESSAGE_13("您有一个铺位需要审核,请查收", "##### 铺位名称:${pointName}\n##### 铺位地址:${pointAddress}\n"),
MESSAGE_14("已为您分配一位加盟商,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 手机号码:${partnerMobile}\n##### 意向加盟区域:${wantShopName}\n"),
MESSAGE_15("您有一份加盟商上传的租赁合同待审核,请查收", "##### 加盟商姓名:${partnerUsername}\n##### 提交时间:${submitTime}\n"),
MESSAGE_14("已为您分配一位加盟商,待推送铺位,请查收", "加盟商姓名:${partnerUsername}\n手机号码${partnerMobile}\n"),
MESSAGE_15("您有一份加盟商上传的租赁合同待审核,请查收", " 加盟商姓名:${partnerUsername}\n手机号码:${partnerMobile}\n"),
MESSAGE_16("您有一家门店待提交系统建店申请,请查收", "##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_16_1("您有一家门店待提交系统建店申请,请查收", "##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_17("您收到一份证照信息审核申请,请查收", "##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_18("您有一个门店已缴纳加盟费/保证金,请审核", "##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_19("您有一个门店待提交加盟合同审核,请查收", "##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_18("您有一个门店已缴纳加盟费/保证金,请审核", " 门店名称:${storeName}\n 加盟商姓名:${partnerName}\n 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_19("您有一个门店待提交加盟合同,请查收", "门店名称:${storeName}\n加盟商姓名${partnerName}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_20("您有一个门店的加盟合同审核未通过,请查收", "##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_21("加盟商已登记一位员工,请及时安排培训", "##### 员工姓名:${userName}】,员工手机号码:${mobile}】,登记时间:【${registerTime}"),
MESSAGE_22("您收到一位员工由您带教,请查收", "##### 员工姓名:【${userName}】,员工手机号码:【${mobile}】,登记时间:【${registerTime}】"),
MESSAGE_23("您有一个门店待发布加盟费/保证金账单,请查收", "##### 加盟商姓名:${partnerName}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_24("您有一个门店待预约三方验收时间,请查收", "##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerUsername}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_21("您有一个门店待提交培训人员,请查收", "加盟商姓名:${partnerUsername}\n手机号码:${partnerMobile}"),
MESSAGE_22("您收到一位员工由您带教,请查收", "员工姓名:【${userName}】,员工手机号码:【${mobile}】,登记时间:【${registerTime}】"),
MESSAGE_23("您有一个门店待发布加盟费/保证金账单,请查收", "加盟商姓名:${partnerName}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_24("您有一个门店待预约三方验收时间,请查收", "门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_25("您有一个门店待进行三方验收,请查收","##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerUsername}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_26("您有一个门店需要上传开业运营方案,请查收","##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerUsername}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_26("您有一个门店需要上传开业运营方案,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_27("您有一个门店需要上传首批订货清单,请查收","##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerUsername}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_28("您有一个门店需要进行视觉验收,请查收","##### 门店名称:${storeName}\n##### 加盟商姓名:${partnerUsername}\n##### 加盟商手机号码:${partnerMobile}\n"),
@@ -55,6 +59,15 @@ public enum MessageEnum {
MESSAGE_33("您有一位加盟商已放弃门店体验,请查收","##### 加盟商姓名:${partnerUsername}\n##### 加盟商手机号码:${partnerMobile}\n"),
MESSAGE_34("您有一个门店待提交发票,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_35("您有一个门店设计阶段待提交,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_36("您有一个门店施工阶段待提交,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_37("您有一个门店装修验收待验收,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_38("您有一个门店POS信息待提交请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_39("您有一个门店订货系统信息待提交,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_40("您有一个门店信发系统信息待提交,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_41("您有一个门店营帐通信息待提交,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
MESSAGE_42("您有一个门店开业运营方案待审核,请查收","门店名称:${storeName}\n加盟商姓名${partnerUsername}\n加盟商手机号码${partnerMobile}\n"),
;
@@ -174,4 +187,40 @@ public enum MessageEnum {
return null;
}
public String getQWMessageUrl(String qywxUrl2, String corpId, Map<String, String> paramMap) {
if (StringUtils.isAnyBlank(qywxUrl2, corpId) ) {
return "";
}
String messageUrl = null;
try {
String noticeUrl = String.format(qywxUrl2, corpId, "qw_self_dkf","common");
String finalUrl = buildUrlWithParams(noticeUrl, paramMap);
log.info("finalUrl:{}", finalUrl);
messageUrl = URLEncoder.encode(finalUrl, "UTF-8");
messageUrl = String.format(CommonConstants.WX_SELF_AUTH_URL, corpId, messageUrl);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return messageUrl;
}
/**
* 拼接参数
* @param url
* @param paramMap
* @return
*/
public static String buildUrlWithParams(String url, Map<String, String> paramMap) {
// 检查 URL 是否已经包含参数
StringJoiner urlWithParams = new StringJoiner("&", url.contains("?") ? "&" : "?", "");
// 遍历 Map拼接参数
for (Map.Entry<String, String> entry : paramMap.entrySet()) {
urlWithParams.add(entry.getKey() + "=" + entry.getValue());
}
// 返回拼接后的 URL
return url + urlWithParams.toString();
}
}

View File

@@ -44,6 +44,7 @@ public enum UserRoleEnum {
DESIGN_CUSTOMER(390000000L,"设计客服"),
CONSTRUCTION_CUSTOMER(400000000L,"施工客服"),
BRANCH_OFFICE(1724233283449L,"分布内勤"),
FINANCE(1735895867344L,"财务"),
;
private Long code;