123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188 |
- package kd.cosmic.jkjt.tmc.bei.common.constant;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import kd.cosmic.jkjt.tmc.bei.common.CommonUtils;
- import java.math.BigDecimal;
- public class MsgWarnTemplateConstant {
- /** 飞书消息模板 */
- public static final String TEMPLATESTR = "{\"schema\":\"2.0\",\"config\":{\"update_multi\":true,\"style\":{\"text_size\":{\"normal_v2\":{\"default\":\"normal\",\"pc\":\"normal\",\"mobile\":\"heading\"}}}},\"body\":{\"direction\":\"vertical\",\"padding\":\"12px 12px 12px 12px\",\"elements\":[{\"tag\":\"div\",\"text\":{\"tag\":\"plain_text\",\"content\":\"付款信息\",\"text_size\":\"normal_v2\",\"text_align\":\"left\",\"text_color\":\"default\"},\"margin\":\"0px 0px 0px 0px\"}]},\"header\":{\"title\":{\"tag\":\"plain_text\",\"content\":\"\"},\"subtitle\":{\"tag\":\"plain_text\",\"content\":\"消息发送\"},\"template\":\"blue\",\"padding\":\"12px 12px 12px 12px\"}}";
- public static final String TEMPLATESTR_OTHERACCOUNT = "{\"schema\":\"2.0\",\"config\":{\"update_multi\":true,\"style\":{\"text_size\":{\"normal_v2\":{\"default\":\"normal\",\"pc\":\"normal\",\"mobile\":\"heading\"}}}},\"body\":{\"direction\":\"vertical\",\"padding\":\"12px 12px 12px 12px\",\"elements\":[{\"tag\":\"div\",\"text\":{\"tag\":\"plain_text\",\"content\":\"按公司规定,此账户严禁对私转账\",\"text_size\":\"normal_v2\",\"text_align\":\"left\",\"text_color\":\"red\"},\"margin\":\"0px 0px 0px 0px\"},{\"tag\":\"div\",\"text\":{\"tag\":\"plain_text\",\"content\":\"付款信息\",\"text_size\":\"normal_v2\",\"text_align\":\"left\",\"text_color\":\"default\"},\"margin\":\"0px 0px 0px 0px\"}]},\"header\":{\"title\":{\"tag\":\"plain_text\",\"content\":\"\"},\"subtitle\":{\"tag\":\"plain_text\",\"content\":\"消息发送\"},\"template\":\"blue\",\"padding\":\"12px 12px 12px 12px\"}}";
- // 收款通知模板
- /** 大额转账消息格式化
- * @param payerAccount 付方账户
- * @param payerAccountId 付方账号
- * @param payerBank 付方开户行
- * @param amount 支出金额
- * @param receiver 收方
- * @param description 摘要
- * @param time 时间
- * @return 格式化后的字符串
- */
- public static String formatLargeTransMessage(String payerAccount, String payerAccountId, String payerBank, String amount,
- String receiver, String description, String time) {
- String MSGTEMPLATE_LARGETRANS = new StringBuffer()
- .append("收款方:").append("%s").append("\r\n")
- .append("支出金额:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("摘要:").append("%s").append("\r\n")
- .append("时间:").append("%s").append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_LARGETRANS,receiver,amount,payerAccount, payerAccountId, payerBank, description, time);
- }
- public static String formatDailyMessage(String payerAccount, String payerAccountId, String payerBank,
- String receiver, String paymentCount, String totalAmount) {
- String MSGTEMPLATE_PAYMENT_NOTIFICATION = new StringBuffer()
- .append("收款方:").append("%s").append("\r\n")
- .append("合计金额:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("付款笔数:").append("%s").append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_PAYMENT_NOTIFICATION,
- receiver,
- totalAmount,
- payerAccount,
- payerAccountId,
- payerBank,
- paymentCount);
- }
- public static String formatOtherAccountMessage(String payerAccount, String payerAccountId, String payerBank, String amount,
- String receiver, String description, String time) {
- String MSGTEMPLATE_LARGETRANS = new StringBuffer()
- .append("收款方:").append("%s").append("\r\n")
- .append("金额:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("摘要:").append("%s").append("\r\n")
- .append("时间:").append("%s").append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_LARGETRANS,receiver,amount,payerAccount, payerAccountId, payerBank, description, time);
- }
- /** 付款通知消息格式化
- * @param amount 支出金额
- * @param payerAccount 付方账户
- * @param payerAccountId 付方账号
- * @param payerBank 付方开户行
- * @param receiver 收方
- * @param description 摘要
- * @param time 时间
- * @return 格式化后的字符串
- */
- public static String formatAccChangeDebitMessage(String amount, String payerAccount, String payerAccountId, String payerBank,
- String receiver, String description, String time) {
- String MSGTEMPLATE_ACCCHANGE_DEBIT = new StringBuffer()
- .append("收款方:").append("%s").append("\r\n")
- .append("转出金额:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("摘要:").append("%s").append("\r\n")
- .append("时间:").append("%s").append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_ACCCHANGE_DEBIT, receiver,amount, payerAccount, payerAccountId, payerBank, description, time);
- }
- public static String formatNonDirectMessageDebit(String time,String payerAccount, String payerAccountId, String payerBank,
- String paymentCount, String totalAmount) {
- String wyAmountStr = CommonUtils.convertToTenThousandYuan(new BigDecimal(totalAmount));
- String MSGTEMPLATE_PAYMENT_NOTIFICATION = new StringBuffer()
- .append("时间:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("付款笔数:").append("%s").append("\r\n")
- .append("合计金额:").append("%s元,").append(wyAmountStr).append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_PAYMENT_NOTIFICATION,
- time,
- payerAccount,
- payerAccountId,
- payerBank,
- paymentCount,
- totalAmount);
- }
- public static String formatNonDirectMessageCredit(String time,String payerAccount, String payerAccountId, String payerBank,
- String paymentCount, String totalAmount) {
- String wyAmountStr = CommonUtils.convertToTenThousandYuan(new BigDecimal(totalAmount));
- String MSGTEMPLATE_PAYMENT_NOTIFICATION = new StringBuffer()
- .append("时间:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("收款笔数:").append("%s").append("\r\n")
- .append("合计金额:").append("%s元,").append(wyAmountStr).append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_PAYMENT_NOTIFICATION,
- time,
- payerAccount,
- payerAccountId,
- payerBank,
- paymentCount,
- totalAmount);
- }
- /** 收款通知消息格式化
- * @param amount 到账金额
- * @param payerAccount 付方账户
- * @param payerAccountId 付方账号
- * @param payerBank 付方开户行
- * @param receiver 收方
- * @param description 摘要
- * @param time 到账时间
- * @return 格式化后的字符串
- */
- public static String formatAccChangeCreditMessage(String amount, String payerAccount, String payerAccountId, String payerBank,
- String receiver, String description, String time) {
- String MSGTEMPLATE_ACCCHANGE_CREDIT = new StringBuffer()
- .append("收款方:").append("%s").append("\r\n")
- .append("到账金额:").append("%s").append("\r\n")
- .append("付款方账户:").append("%s").append("\r\n")
- .append("付款方账号:").append("%s").append("\r\n")
- .append("付款方开户行:").append("%s").append("\r\n")
- .append("摘要:").append("%s").append("\r\n")
- .append("到账时间:").append("%s").append("\r\n")
- .toString();
- return String.format(MSGTEMPLATE_ACCCHANGE_CREDIT, receiver,amount, payerAccount, payerAccountId, payerBank, description, time);
- }
- public static String getFeishuTemplate(String title , String content) {
- return getFeishuTemplate(title,content,TEMPLATESTR);
- }
- public static String getFeishuTemplate(String title , String content , String template) {
- JSONObject templateObj = JSON.parseObject(template);
- templateObj.getJSONObject("header").getJSONObject("subtitle").put("content", title);
- JSONArray elements = templateObj.getJSONObject("body").getJSONArray("elements");
- for(int i = 0; i < elements.size(); i++){
- String contentTemplate = elements.getJSONObject(i).getJSONObject("text").getString("content");
- if("付款信息".equals(contentTemplate)){
- elements.getJSONObject(i).getJSONObject("text").put("content", content);
- break;
- }
- }
- return templateObj.toJSONString();
- }
- }
|