飞书通知优化及添加会销协作人通知增加移动端跳转
This commit is contained in:
@@ -17,8 +17,8 @@ public enum FeiShuNoticeMsgEnum {
|
||||
INTENTION_APPLY("加盟意向申请", "您有一个【加盟意向申请】待审核,申请人 {0} 手机号 {1} 于 {2} 提交加盟意向申请,请及时处理", "img_v2_c909097d-67d1-4c11-a911-a2584b67ca6g", "1567d83b966f2d312fd7fcd2e72dbce9"),
|
||||
FOLLOW_TASK("线索跟进任务", "{0}", "img_v2_1960b7ef-8c4e-4c3d-8b67-3d918a85578g", "1567d83b966f2d312fd7fcd2e72dbce9"),
|
||||
INTERVIEW_APPOINTMENT("面试预约申请", "您有一个【面试预约申请】待处理,预约人 {0} 手机号 {1} ,预约面试时间 {2} ","img_v2_107bb06b-2a7a-43e1-a6ae-e5d2f2dae17g", "1567d83b966f2d312fd7fcd2e72dbce9"),
|
||||
EXHIBITION_COLLABORATOR("会销协作通知", "{0} 已将您添加为【{1}】的会销协作人,日期为 {2},地点为“{3}” ","img_v3_026c_d561bb71-f085-40ca-9c36-5fe134cacd2g", "1567d83b966f2d312fd7fcd2e72dbce9", "/joint-sales/manage-detail", "/mobile/joint-sales/manage-detail"),
|
||||
PARTNER_SIGNUP_EXHIBITION("线索已报名会销", "您跟进的线索客户{0} {1} 已报名于 {2} 举办的【{3}】 ,地点为“{4}”","img_v3_026c_5bcf178d-19e6-4445-9677-f748a3f916fg", "1567d83b966f2d312fd7fcd2e72dbce9", "/clue/details"),
|
||||
EXHIBITION_COLLABORATOR("会销协作通知", "{0} 已将您添加为【{1}】的会销协作人,日期为 {2},地点为“{3}” ","img_v3_026c_d561bb71-f085-40ca-9c36-5fe134cacd2g", "1567d83b966f2d312fd7fcd2e72dbce9", "/joint-sales/manage-detail?id={0}", "/mobile/joint-sales/manage-detail?id={0}"),
|
||||
PARTNER_SIGNUP_EXHIBITION("线索已报名会销", "您跟进的线索客户{0} {1} 已报名于 {2} 举办的【{3}】 ,地点为“{4}”","img_v3_026c_5bcf178d-19e6-4445-9677-f748a3f916fg", "1567d83b966f2d312fd7fcd2e72dbce9", "/clue/details?lineId={0}&clueType=private&partnerId={1}"),
|
||||
;
|
||||
|
||||
private String title;
|
||||
|
||||
@@ -86,12 +86,11 @@ public class EventCenterHttpRequest {
|
||||
public void sendFeiShuNotice(FeiShuNoticeMsgEnum msgEnum, List<String> receiverIds, Object... objects) throws ApiException {
|
||||
//1. 组织消息参数,SendMsgRequest 的 cardParams,需要填入的参数为模板中 ${} 中的参数
|
||||
HashMap<String, String> cardParams = new HashMap<>();
|
||||
String pathVariable = getPathVariable(msgEnum, objects);
|
||||
String PCPath = null;
|
||||
String mobilePath = null;
|
||||
String PCPath = getPath(msgEnum.getPCPath(), false, objects);
|
||||
String mobilePath = getPath(msgEnum.getMobilePath(), true, objects);
|
||||
try {
|
||||
PCPath = URLEncoder.encode(msgEnum.getPCPath() + pathVariable, "UTF-8");
|
||||
mobilePath = URLEncoder.encode(msgEnum.getMobilePath() + pathVariable, "UTF-8");
|
||||
PCPath = URLEncoder.encode(PCPath, "UTF-8");
|
||||
mobilePath = URLEncoder.encode(mobilePath, "UTF-8");
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
throw new ApiException("URL 编码错误");
|
||||
}
|
||||
@@ -168,25 +167,25 @@ public class EventCenterHttpRequest {
|
||||
createSingleEvent(createEventRequest);
|
||||
}
|
||||
|
||||
private String getPathVariable(FeiShuNoticeMsgEnum msgEnum, Object... objects) {
|
||||
StringBuilder pathVariable = new StringBuilder();
|
||||
switch (msgEnum) {
|
||||
case EXHIBITION_COLLABORATOR:
|
||||
pathVariable.append("?id=").append(objects[0]);
|
||||
System.arraycopy(objects, 1, objects, 0, objects.length - 1);
|
||||
break;
|
||||
case PARTNER_SIGNUP_EXHIBITION:
|
||||
pathVariable.append("?lineId=")
|
||||
.append(objects[0])
|
||||
.append("&clueType=private")
|
||||
.append("&partnerId=")
|
||||
.append(objects[1]);
|
||||
System.arraycopy(objects, 2, objects, 0, objects.length - 2);
|
||||
break;
|
||||
default:
|
||||
return "";
|
||||
/**
|
||||
* 根据消息路径模板返回格式化参数后的路径
|
||||
* @param pathPattern 路径模板
|
||||
* @param whetherSpliceParamsArray 是否裁剪参数,将数组用于格式化的参数从数组中裁剪
|
||||
* @param objects 参数数组
|
||||
* @return 格式化后的带参数路径
|
||||
*/
|
||||
private String getPath(String pathPattern, boolean whetherSpliceParamsArray, Object... objects) {
|
||||
//无需格式化
|
||||
if (!pathPattern.contains("{0}")) {
|
||||
return pathPattern;
|
||||
}
|
||||
return new String(pathVariable);
|
||||
MessageFormat messageFormat = new MessageFormat(pathPattern);
|
||||
int paramsCount = messageFormat.getFormatsByArgumentIndex().length;
|
||||
String wholePath = messageFormat.format(objects);
|
||||
if (whetherSpliceParamsArray) {
|
||||
System.arraycopy(objects, paramsCount, objects, 0, objects.length - paramsCount);
|
||||
}
|
||||
return wholePath;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -96,6 +96,10 @@ class EventRequestTest extends AbstractJUnit4SpringContextTests {
|
||||
eventCenterHttpRequest.sendSmsVariable(testPhone, SMSMsgEnum.EXHIBITION_INFO_UPDATE, "测试", "2023-12-24", "1008611", testWXUrl);
|
||||
//8. 展会结束
|
||||
eventCenterHttpRequest.sendSmsVariable(testPhone, SMSMsgEnum.EXHIBITION_CLOSE, "");
|
||||
randomStr = RandomUtil.randomString(12);
|
||||
testWXUrl = wxUrlPrefix + randomStr;
|
||||
//8. 面试未通过结束
|
||||
eventCenterHttpRequest.sendSmsVariable(testPhone, SMSMsgEnum.INTERVIEW_REJECT, "不太行", testWXUrl);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user