微信消息推送
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

391 lines
23 KiB

package com.ynxbd.push.helper;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.ynxbd.push.entity.tencent.SendMessageTemplate;
import com.ynxbd.push.entity.tencent.TemplateJsonValue;
import com.ynxbd.push.entity.tencent.TemplateRemark;
/**
* 模版消息发送第二步的流水线
*
* @Project WebApi
* @Name TemplateMessageDataHelper 得到json字符串的方法
* @Author 李进才
* @Date 2020/5/25
* @Version v1.0.0
* @Copyright @ 2017 云南新八达科技有限公司 All rights reserved.
* Get1 排队叫号提醒 OPENTM417349950
* Get2 检验结果通知 OPENTM414005941
* Get3 预约挂号失败通知 OPENTM416881028
* Get4 缴费成功通知 OPENTM411327952
* Get5 住院押金不足提醒 OPENTM417724268
* Get6 挂号成功通知 OPENTM413793502
* Get7 缴费失败通知 OPENTM411721506
* Get8 退费通知 OPENTM207453484
* Get9 取消预约通知 OPENTM402119642
* Get10 预约医生停诊通知 OPENTM401974562
* Get11 挂号失败通知 OPENTM406437214
* Get12 预约挂号成功通知 TM00103
* Get13 检查报告提醒 OPENTM202187595
* Get14 信息完善提醒 OPENTM409876442
* Get15 健康卡成功升级通知 OPENTM417520543
*/
public class TemplateJsonStringHelper {
/**
* 模版1 排队叫号提醒 已测试
*
* @param key openId 用户id
* url 跳转链接
* department:科室
* doctor:医生
* first:标题
* currentNumber:当前号码
* selfNumber:本人号码
* waitNumber:等待人数
* remark:备注
* template_id 模版id
* @return
*/
public static String get1(SendMessageTemplate key) throws JsonProcessingException {
// return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\""+key.getDepartment()+"\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\""+key.getDoctor()+"\"},\"first\":{\"color\":\"#173177\",\"value\":\""+key.getFirst()+"\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\""+key.getCurrentNumber()+"\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\""+key.getSelfNumber()+"\"},\"keyword5\":{\"color\":\"#173177\",\"value\":\""+key.getWaitNumber()+"\"},\"remark\":{\"color\":\"#173177\",\"value\":\""+key.getRemark()+"\"}},\"template_id\":\""+key.getTemplate_id()+"\",\"touser\":\""+key.getOpenId()+"\",\"url\":\""+key.getUrl()+"\"}";
return TemplateAllKeyWordJson.getTemplateJsonData(key.getTemplate_id(),
key.getOpenId(),
key.getUrl(),
TemplateRemark.builder().value(key.getFirst()).color("#173177").build(),
TemplateRemark.builder().value(key.getRemark()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getDepartment()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getDoctor()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getCurrentNumber()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getSelfNumber()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getWaitNumber()).color("#173177").build());
}
/**
* 模版2 检验结果通知 已测试
*
* @param key
* @return openId 用户id
* url 跳转链接
* item 就诊项目
* patientName 病人姓名
* first 标题
* time 检验时间
* remark 备注
* template_id 模版id
*/
public static String get2(SendMessageTemplate key) throws JsonProcessingException {
// return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\""+key.getItem()+"\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\""+key.getPatientName()+"\"},\"first\":{\"color\":\"#173177\",\"value\":\""+key.getFirst()+"\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\""+key.getTime()+"\"},\"remark\":{\"color\":\"#173177\",\"value\":\""+key.getRemark()+"\"}},\"template_id\":\""+key.getTemplate_id()+"\",\"touser\":\""+key.getOpenId()+"\",\"url\":\""+key.getUrl()+"\"}";
return TemplateAllKeyWordJson.getTemplateJsonData(key.getTemplate_id(),
key.getOpenId(),
key.getUrl(),
TemplateRemark.builder().value(key.getFirst()).color("#173177").build(),
TemplateRemark.builder().value(key.getRemark()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getItem()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getPatientName()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getTime()).color("#173177").build());
}
/**
* 模版3 预约挂号失败通知 已测试
*
* @param key
* @return template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* department 科室
* doctor 医生
* patientName 病人
* time 预约时间
*/
public static String get3(SendMessageTemplate key) throws JsonProcessingException {
// return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\""+key.getDepartment()+"\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\""+key.getDoctor()+"\"},\"first\":{\"color\":\"#173177\",\"value\":\""+key.getFirst()+"\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\""+key.getPatientName()+"\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\""+key.getTime()+"\"},\"remark\":{\"color\":\"#173177\",\"value\":\""+key.getRemark()+"\"}},\"template_id\":\""+key.getTemplate_id()+"\",\"touser\":\""+key.getOpenId()+"\",\"url\":\""+key.getUrl()+"\"}";
return TemplateAllKeyWordJson.getTemplateJsonData(key.getTemplate_id(),
key.getOpenId(),
key.getUrl(),
TemplateRemark.builder().value(key.getFirst()).color("#173177").build(),
TemplateRemark.builder().value(key.getRemark()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getDepartment()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getDoctor()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getPatientName()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getTime()).color("#173177").build());
}
/**
* 模版4 缴费成功通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* patientName 缴费人姓名
* department 科室
* doctor 医生
* money 总金额
* time 缴费时间
*
* @param key
* @return
*/
public static String get4(SendMessageTemplate key) throws JsonProcessingException {
// return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\""+key.getPatientName()+"\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\""+key.getDepartment()+"\"},\"first\":{\"color\":\"#173177\",\"value\":\""+key.getFirst()+"\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\""+key.getDoctor()+"\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\""+key.getMoney()+"\"},\"keyword5\":{\"color\":\"#173177\",\"value\":\""+key.getTime()+"\"},\"remark\":{\"color\":\"#173177\",\"value\":\""+key.getRemark()+"\"}},\"template_id\":\""+key.getTemplate_id()+"\",\"touser\":\""+key.getOpenId()+"\",\"url\":\""+key.getUrl()+"\"}";
return TemplateAllKeyWordJson.getTemplateJsonData(key.getTemplate_id(),
key.getOpenId(),
key.getUrl(),
TemplateRemark.builder().value(key.getFirst()).color("#173177").build(),
TemplateRemark.builder().value(key.getRemark()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getPatientName()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getDepartment()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getDoctor()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getMoney()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getTime()).color("#173177").build());
}
/**
* 模版5 住院押金不足提醒 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* patientName 就诊人
* seq 住院号
* bedNumber 床位号
* department 科室
* money 押金余额
*
* @param key
* @return
*/
public static String get5(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getSeq() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getBedNumber() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"keyword5\":{\"color\":\"#173177\",\"value\":\"" + key.getMoney() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版6 挂号成功通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* patientName 就诊人
* hospitalName 医院名称
* department 科室
* doctor 医生
* time 就诊时间
*
* @param key
* @return
*/
public static String get6(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getHospitalName() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"keyword5\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版7 缴费失败通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* patientName 就诊人
* seq 订单号
* department 科室
* doctor 医生
* money 金额
*
* @param key
* @return
*/
public static String get7(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getSeq() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"keyword5\":{\"color\":\"#173177\",\"value\":\"" + key.getMoney() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版8 退费通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* seq 订单号
* money 退款金额
* time 退费时间
* arrivalTime 到账时间
*
* @param key
* @return
*/
public static String get8(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getSeq() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getMoney() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getArrivalTime() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版9 取消预约通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* hospitalName 医院名称
* department 科室
* doctor 医生
* time 就诊时间
*
* @param key
* @return
*/
public static String get9(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getHospitalName() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版10 预约医生停诊通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* patientName 就诊人
* hospitalName 医院名称
* department 科室
* doctor 医生
* time 原定时间
*
* @param key
* @return
*/
public static String get10(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getHospitalName() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"keyword5\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版11 挂号失败通知 已测试
* template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* remark 备注
* hospitalName 医院名称
* department 科室
* doctor 医生
* time 就诊时间
*
* @param key
* @return
*/
public static String get11(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getHospitalName() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"keyword4\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版12 预约挂号成功通知 已测试(非keyword)
*
* @param key
* @return template_id 模版id
* openId 用户id
* url 跳转链接
* first 标题
* patientName 病人姓名
* patientSex 病人性别
* hospitalName 医院名称
* department 科室
* doctor 医生
* seq 流水号
* remark 备注
*/
public static String get12(SendMessageTemplate key) {
return "{\"data\":{\"department\":{\"color\":\"#173177\",\"value\":\"" + key.getDepartment() + "\"},\"doctor\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"hospitalName\":{\"color\":\"#173177\",\"value\":\"" + key.getHospitalName() + "\"},\"patientName\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"patientSex\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientSex() + "\"},\"remark\":{\"color\":\""+key.getRemarkColor()+"\",\"value\":\"" + key.getRemark() + "\"},\"seq\":{\"color\":\"#173177\",\"value\":\"" + key.getSeq() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版13 检查报告提醒 已测试
*
* @param key
* @return openId 用户id
* url 跳转链接
* item 就诊项目
* patientName 病人姓名
* first 标题
* time 检验时间
* remark 备注
* template_id 模版id
*/
public static String get13(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getItem() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版14 信息完善提醒 已测试
*
* @param key
* @return openId 用户id
* url 跳转链接
* messageType 信息类型
* hospitalName 医院
* first 标题
* time 检验时间
* remark 备注
* template_id 模版id
*/
public static String get14(SendMessageTemplate key) {
if (key.getUrl().isEmpty()) {
//健康卡链接
key.setUrl("https://mp.weixin.qq.com/insurance/card/creditjump?cityid=999999&from=1HPEm43YG0j6674z7Usu8Q.%3D#wechat_redirect");
}
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getMessageType() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getHospitalName() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
/**
* 模版15 健康卡成功升级通知 已测试
*
* @param key
* @return openId 用户id
* url 跳转链接
* time 升级时间
* updateDescription 升级说明
* first 标题
* time 检验时间
* remark 备注
* template_id 模版id
*/
public static String get15(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getTime() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getUpdateDescription() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
public static String get16(SendMessageTemplate key) {
return "{\"data\":{\"keyword1\":{\"color\":\"#173177\",\"value\":\"" + key.getDoctor() + "\"},\"keyword2\":{\"color\":\"#173177\",\"value\":\"" + key.getPatientName() + "\"},\"keyword3\":{\"color\":\"#173177\",\"value\":\"" + key.getFollowUpStaff() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
public static String getReportTip(SendMessageTemplate key) {
return "{\"data\":{\"character_string12\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword1() + "\"},\"thing3\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword2() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"character_string9\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword3() + "\"},\"time14\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword4() + "\"},\"thing5\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword5() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
public static String getUniversal(SendMessageTemplate key) {
return "{\"data\":{\"time13\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword1() + "\"},\"thing16\":{\"color\":\"#173177\",\"value\":\"" + key.getKeyword2() + "\"},\"first\":{\"color\":\"#173177\",\"value\":\"" + key.getFirst() + "\"},\"remark\":{\"color\":\"#173177\",\"value\":\"" + key.getRemark() + "\"}},\"template_id\":\"" + key.getTemplate_id() + "\",\"touser\":\"" + key.getOpenId() + "\",\"url\":\"" + key.getUrl() + "\"}";
}
public static String get(SendMessageTemplate key) throws JsonProcessingException {
return TemplateAllKeyWordJson.getTemplateJsonData(key.getTemplate_id(),
key.getOpenId(),
key.getUrl(),
key.getAppId(),
key.getPagePath(),
TemplateRemark.builder().value(key.getFirst()).color("#173177").build(),
TemplateRemark.builder().value(key.getRemark()).color("#173177").build(),
TemplateJsonValue.builder().value(key.getKeyword1()).color(key.getKeyword1Color()).build(),
TemplateJsonValue.builder().value(key.getKeyword2()).color(key.getKeyword2Color()).build(),
TemplateJsonValue.builder().value(key.getKeyword3()).color(key.getKeyword3Color()).build(),
TemplateJsonValue.builder().value(key.getKeyword4()).color(key.getKeyword4Color()).build(),
TemplateJsonValue.builder().value(key.getKeyword5()).color(key.getKeyword5Color()).build());
}
}