Browse Source

内部询价和公共询价消息由每条从表记录产生一条修改为以每条主记录产生一条,增加邮件和短信提醒。

dongbw 8 years ago
parent
commit
e79b00be99

+ 111 - 1
src/main/java/com/uas/platform/b2b/erp/service/impl/PublicInquiryServiceImpl.java

@@ -1,6 +1,9 @@
 package com.uas.platform.b2b.erp.service.impl;
 
+import com.uas.message.mail.service.MailService;
 import com.uas.platform.b2b.core.util.ContextUtils;
+import com.uas.platform.b2b.core.util.DateFormatUtils;
+import com.uas.platform.b2b.core.util.ThreadTask;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.erp.model.BatchInProduct;
 import com.uas.platform.b2b.erp.model.BatchInquiry;
@@ -10,16 +13,21 @@ import com.uas.platform.b2b.event.PurcInquirySaveReleaseEvent;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.PurcInquiry;
 import com.uas.platform.b2b.model.PurcInquiryItem;
+import com.uas.platform.b2b.support.MessageConf;
 import com.uas.platform.b2b.support.SystemSession;
+import com.uas.platform.b2b.temporary.model.SmsMessage;
 import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.model.Status;
+import com.uas.platform.core.util.HttpUtil;
+import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import java.util.*;
+import java.util.regex.Pattern;
 
 /**
  * Created by hejq on 2017-09-18.
@@ -45,6 +53,12 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
     @Autowired
     protected  JdbcTemplate jdbcTemplate;
 
+    @Autowired
+    private MailService mailService;
+
+    @Autowired
+    private MessageConf messageConf;
+
     private final static ErpBufferedLogger logger = BufferedLoggerManager.getLogger(ErpBufferedLogger.class);
 
     @Override
@@ -93,6 +107,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
 
     @Override
     public void save(List<PurcInquiry> inquiries) {
+        List<PurcInquiryItem> inquiryItems = new ArrayList<>();
         if(!CollectionUtils.isEmpty(inquiries)) {
             for(PurcInquiry inquiry : inquiries) {
                 List<PurcInquiryItem> items = new ArrayList<PurcInquiryItem>();
@@ -104,15 +119,110 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
                 }
                 try {
                     items = purcInquiryItemDao.save(items);
-                    ContextUtils.publishEvent(new PurcInquirySaveReleaseEvent(items));
+                    inquiryItems.addAll(items);
                 } catch (Exception e) {
                     logger.log("公共询价保存出错", inquiry.getEnUU() + "," +inquiry.getCode() +" 保存失败", 0);
                     e.printStackTrace();
                 }
             }
+            // 产生消息
+            sendMessage(inquiryItems);
+            // 发送通知
+            sendRemind(inquiries);
         }
     }
 
+    /**
+     * 产生消息
+     * @param inquiryItems
+     */
+    private void sendMessage(final List<PurcInquiryItem> inquiryItems) {
+        ThreadTask.getInstance().execute(new Runnable() {
+            @Override
+            public void run() {
+                List<PurcInquiry> inquiries = PurcInquiryItem.distinct(inquiryItems);
+                List<PurcInquiryItem> items = new ArrayList<>();
+                for (PurcInquiry inquiry : inquiries) {
+                    Set<Long> enUUs = new HashSet<>();
+                    for (PurcInquiryItem inquiryItem : inquiry.getInquiryItems()) {
+                        if (!enUUs.contains(inquiryItem.getVendUU())) {
+                            items.add(inquiryItem);
+                            enUUs.add(inquiryItem.getVendUU());
+                        }
+                    }
+                }
+                ContextUtils.publishEvent(new PurcInquirySaveReleaseEvent(items));
+            }
+        });
+    }
+
+    /**
+     * 发送通知
+     *
+     * @param inquiries 采购询价单主表
+     * @return
+     */
+    private void sendRemind(final List<PurcInquiry> inquiries){
+        ThreadTask.getInstance().execute(new Runnable() {
+            @Override
+            public void run() {
+                for (PurcInquiry inquiry : inquiries) {
+                    // 一个询价单,给一个企业只发一封邮件
+                    Set<Long> enUUs = new HashSet<>();
+                    // 短信设置
+                    SmsMessage sms = new SmsMessage();
+                    List<Object> obj = new ArrayList<Object>();
+                    obj.add(inquiry.getEnterprise().getEnName());
+                    sms.setParams(obj);
+                    for (PurcInquiryItem inquiryItem : inquiry.getInquiryItems()) {
+                        if (!enUUs.contains(inquiryItem.getVendUU())) {
+                            // 查找业务员邮箱
+                            String userEmailSql = "select distinct us.user_email useremail from sec$users us " +
+                                    " left join sec$userrole ur on us.user_uu = ur.user_uu left join sec$roles sr " +
+                                    " on ur.role_id = sr.role_id where sr.role_desc = '业务员' and us.user_email is not null " +
+                                    " and sr.role_enuu = " + inquiryItem.getVendUU();
+                            List<String> userEmails = commonDao.query(userEmailSql, String.class);
+                            String userTelSql = "select distinct us.user_email useremail from sec$users us " +
+                                    " left join sec$userrole ur on us.user_uu = ur.user_uu left join sec$roles sr " +
+                                    " on ur.role_id = sr.role_id where sr.role_desc = '业务员' and us.user_email is not null " +
+                                    " and sr.role_enuu = " + inquiryItem.getVendUU();
+                            List<String> userTels = commonDao.query(userTelSql, String.class);
+                            // 发邮件
+                            Map<String, Object> model = new HashMap<String, Object>();
+                            model.put("vendorname", inquiryItem.getEnterprise().getEnName());
+                            model.put("custname", inquiry.getEnterprise().getEnName());
+                            model.put("date", DateFormatUtils.DATE_FORMAT.format(new Date()));
+                            for (String userEmail : userEmails) {
+                                String emailRegex = "[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?";
+                                if (Pattern.matches(emailRegex, userEmail)) {
+                                    try {
+                                        mailService.send(messageConf.getTplInquiryForB2B(), userEmail, model);
+                                    } catch (Exception e) {
+                                        logger.log("公共询价发送邮件出错", inquiry.getEnUU() + "," +inquiry.getCode() +" 发送失败", 0);
+                                        e.printStackTrace();
+                                    }
+                                }
+                            }
+                            // 发短信
+                            for (String userTel : userTels) {
+                                try {
+                                    sms.setReceiver(userTel);
+                                    sms.setTemplateId(messageConf.getMsgInquiryForB2B());
+                                    HttpUtil.sendPost(messageConf.getMessageUrl(), FlexJsonUtils.toJsonDeep(sms));
+
+                                } catch (Exception e) {
+                                    logger.log("公共询价发送短信出错", inquiry.getEnUU() + "," +inquiry.getCode() +" 发送失败", 0);
+                                    e.printStackTrace();
+                                }
+                            }
+                            enUUs.add(inquiryItem.getVendUU());
+                        }
+                    }
+                }
+            }
+        });
+    }
+
     @Override
     public void updateStatus(List<BatchInquiry> inquiries) {
         if(!CollectionUtils.isEmpty(inquiries)) {

+ 1 - 6
src/main/java/com/uas/platform/b2b/event/PurcInquirySaveReleaseEvent.java

@@ -58,12 +58,7 @@ public class PurcInquirySaveReleaseEvent extends SaveReleaseEvent<PagingReleaseD
         SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
         String inDate = formatter.format(purcInquiry.getDate());
         String endDate = formatter.format(purcInquiry.getEndDate());
-        String context;
-        if (item.getProduct().getTitle().length() > 10) {
-            context = purcInquiry.getEnterprise().getEnName() + "于" + inDate + "发起了对于\"" + item.getProduct().getTitle().substring(0, 9) + "...\"物料的询价,报价截止日期:" + endDate + "!";
-        } else {
-            context = purcInquiry.getEnterprise().getEnName() + "于" + inDate + "发起了对于\"" + item.getProduct().getTitle() + "\"物料的询价,报价截止日期:" + endDate + "!";
-        }
+        String context = "\"" + purcInquiry.getEnterprise().getEnName() + "\"发起了公共询价(" + codeValue + "),请快速报价!";
         PagingRelease release = new PagingRelease(emUU, emName, enUU, date, codeValue, from, title, context, type, isReply, category, table, sourceId, orderStatus, toVendor, url);
         // 公共询价无供应商UU
         Long vendUU = 1L;

+ 1 - 1
src/main/java/com/uas/platform/b2b/event/PurchaseInquiryItemSaveReleaseEvent.java

@@ -59,7 +59,7 @@ public class PurchaseInquiryItemSaveReleaseEvent extends SaveReleaseEvent<Paging
         String url = "#/sale/inquiry/" + inquiryItem.getInquiry().getId();
         SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         String orderDate = formatter.format(inquiryItem.getInquiry().getDate());
-        String context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "给您发送了一张新的采购询价单(" + codeValue + ")!";
+        String context = "您的合作伙伴\"" + inquiryItem.getInquiry().getEnterprise().getEnName() + "\"发布新的询价单(" + codeValue + "),请快速报价!";
         PagingRelease release = new PagingRelease(emUU, emName, enUU, date, codeValue, from, title, context, type, isReply, category, table, sourceId, orderStatus, toVendor, url);
         Long vendUU = inquiryItem.getVendUU();
         Long vendUserUU = inquiryItem.getVendUserUU();

+ 15 - 19
src/main/java/com/uas/platform/b2b/model/PurcInquiryItem.java

@@ -1,26 +1,10 @@
 package com.uas.platform.b2b.model;
 
-import java.util.Date;
-import java.util.Set;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.OrderBy;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-
+import com.alibaba.fastjson.annotation.JSONField;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
-import com.alibaba.fastjson.annotation.JSONField;
+import javax.persistence.*;
+import java.util.*;
 
 /**
  * 平台新增询价单明细
@@ -551,4 +535,16 @@ public class PurcInquiryItem {
 	public void setSourceid(Long sourceid) {
 		this.sourceid = sourceid;
 	}
+
+    public static List<PurcInquiry> distinct(List<PurcInquiryItem> inquiryItems) {
+		List<PurcInquiry> inquiries = new ArrayList<>();
+		Set<Long> keys = new HashSet<>();
+		for (PurcInquiryItem item : inquiryItems) {
+			if (!keys.contains(item.getInquiry().getId())) {
+				inquiries.add(item.getInquiry());
+				keys.add(item.getInquiry().getId());
+			}
+		}
+		return inquiries;
+    }
 }

+ 4 - 4
src/main/java/com/uas/platform/b2b/model/PurchaseInquiryItem.java

@@ -610,15 +610,15 @@ public class PurchaseInquiryItem {
 				&& this.agreed == null);
 	}
 
-    public static List<PurchaseInquiryItem> distinct(List<PurchaseInquiryItem> purcitems) {
-		List<PurchaseInquiryItem> inquiryItems = new ArrayList<>();
+    public static List<PurchaseInquiry> distinct(List<PurchaseInquiryItem> purcitems) {
+		List<PurchaseInquiry> inquiries = new ArrayList<>();
 		Set<Long> keys = new HashSet<>();
 		for (PurchaseInquiryItem item : purcitems) {
 			if (!keys.contains(item.getInquiry().getId())) {
-				inquiryItems.add(item);
+				inquiries.add(item.getInquiry());
 				keys.add(item.getInquiry().getId());
 			}
 		}
-		return inquiryItems;
+		return inquiries;
     }
 }

+ 1 - 1
src/main/java/com/uas/platform/b2b/service/impl/PurcInquiryServiceImpl.java

@@ -296,7 +296,7 @@ public class PurcInquiryServiceImpl implements PurcInquiryService {
 		}
 		List<PurchaseInquiryItem> purcitems = purchaseInquiryItemDao.save(items);
 		// 触发事件,产生消息
-		ContextUtils.publishEvent(new PurchaseInquiryItemSaveReleaseEvent(PurchaseInquiryItem.distinct(purcitems)));
+		ContextUtils.publishEvent(new PurchaseInquiryItemSaveReleaseEvent(purcitems));
 		if (purcitems.get(0).getId() != null) {
 			inquiry = inquiryDao.findOne(id);
 			inquiry.setEnteryStatus(Status.ENABLED.value());

+ 111 - 2
src/main/java/com/uas/platform/b2b/service/impl/PurchaseInquiryServiceImpl.java

@@ -1,27 +1,35 @@
 package com.uas.platform.b2b.service.impl;
 
+import com.uas.message.mail.service.MailService;
 import com.uas.platform.b2b.core.util.ContextUtils;
+import com.uas.platform.b2b.core.util.DateFormatUtils;
 import com.uas.platform.b2b.core.util.ThreadTask;
 import com.uas.platform.b2b.core.util.ThreadUtils;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.erp.model.Inquiry;
 import com.uas.platform.b2b.erp.model.QuotationDown;
 import com.uas.platform.b2b.erp.model.QuotationDownDetail;
+import com.uas.platform.b2b.erp.support.ErpBufferedLogger;
 import com.uas.platform.b2b.event.*;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.service.AttachService;
 import com.uas.platform.b2b.service.PurchaseInquiryService;
+import com.uas.platform.b2b.support.MessageConf;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.XingePusher;
 import com.uas.platform.b2b.temporary.model.InquiryMessage;
+import com.uas.platform.b2b.temporary.model.SmsMessage;
 import com.uas.platform.core.concurrent.IRunnable;
 import com.uas.platform.core.exception.IllegalOperatorException;
 import com.uas.platform.core.exception.IllegalStatusException;
+import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
+import com.uas.platform.core.util.HttpUtil;
+import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.search.b2b.model.PageParams;
 import com.uas.search.b2b.model.SPage;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -39,6 +47,7 @@ import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import java.util.*;
+import java.util.regex.Pattern;
 
 
 @Service
@@ -89,12 +98,45 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 	@Autowired
 	private DistributeDao distributeDao;
 
+	@Autowired
+	private MailService mailService;
+
+	@Autowired
+	private MessageConf messageConf;
+
+	private final static ErpBufferedLogger logger = BufferedLoggerManager.getLogger(ErpBufferedLogger.class);
+
 	@Override
 	public void save(List<PurchaseInquiryItem> inquiryItems) {
 		inquiryItems = purchaseInquiryItemDao.save(inquiryItems);
 		saveUserOrders(inquiryItems);
+		sendRemind(PurchaseInquiryItem.distinct(inquiryItems));
 		ContextUtils.publishEvent(new PurchaseInquiryItemSaveEvent(inquiryItems));
-		ContextUtils.publishEvent(new PurchaseInquiryItemSaveReleaseEvent(PurchaseInquiryItem.distinct(inquiryItems)));
+		sendMessage(inquiryItems);
+	}
+
+	/**
+	 * 产生消息
+	 * @param inquiryItems
+	 */
+	private void sendMessage(final List<PurchaseInquiryItem> inquiryItems) {
+		ThreadTask.getInstance().execute(new Runnable() {
+			@Override
+			public void run() {
+				List<PurchaseInquiry> inquiries = PurchaseInquiryItem.distinct(inquiryItems);
+				List<PurchaseInquiryItem> items = new ArrayList<>();
+				for (PurchaseInquiry inquiry : inquiries) {
+					Set<Long> enUUs = new HashSet<>();
+					for (PurchaseInquiryItem inquiryItem : inquiry.getInquiryItems()) {
+						if (!enUUs.contains(inquiryItem.getVendUU())) {
+							items.add(inquiryItem);
+							enUUs.add(inquiryItem.getVendUU());
+						}
+					}
+				}
+				ContextUtils.publishEvent(new PurchaseInquiryItemSaveReleaseEvent(items));
+			}
+		});
 	}
 
 	/**
@@ -155,6 +197,73 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 		});
 	}
 
+	/**
+	 * 发送通知
+	 *
+	 * @param inquiries 采购询价单主表
+	 * @return
+	 */
+	private void sendRemind(final List<PurchaseInquiry> inquiries){
+		ThreadTask.getInstance().execute(new Runnable() {
+			@Override
+			public void run() {
+				for (PurchaseInquiry inquiry : inquiries) {
+					// 一个询价单,给一个企业只发一封邮件
+					Set<Long> enUUs = new HashSet<>();
+					// 短信设置
+					SmsMessage sms = new SmsMessage();
+					List<Object> obj = new ArrayList<Object>();
+					obj.add(inquiry.getEnterprise().getEnName());
+					sms.setParams(obj);
+					for (PurchaseInquiryItem inquiryItem : inquiry.getInquiryItems()) {
+						if (!enUUs.contains(inquiryItem.getVendUU())) {
+							// 查找业务员邮箱
+							String userEmailSql = "select distinct us.user_email useremail from sec$users us " +
+									" left join sec$userrole ur on us.user_uu = ur.user_uu left join sec$roles sr " +
+									" on ur.role_id = sr.role_id where sr.role_desc = '业务员' and us.user_email is not null " +
+									" and sr.role_enuu = " + inquiryItem.getVendUU();
+							List<String> userEmails = commonDao.query(userEmailSql, String.class);
+							String userTelSql = "select distinct us.user_email useremail from sec$users us " +
+									" left join sec$userrole ur on us.user_uu = ur.user_uu left join sec$roles sr " +
+									" on ur.role_id = sr.role_id where sr.role_desc = '业务员' and us.user_email is not null " +
+									" and sr.role_enuu = " + inquiryItem.getVendUU();
+							List<String> userTels = commonDao.query(userTelSql, String.class);
+							// 发邮件
+							Map<String, Object> model = new HashMap<String, Object>();
+							model.put("vendorname", inquiryItem.getEnterprise().getEnName());
+							model.put("custname", inquiry.getEnterprise().getEnName());
+							model.put("date", DateFormatUtils.DATE_FORMAT.format(new Date()));
+							for (String userEmail : userEmails) {
+								String emailRegex = "[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?";
+								if (Pattern.matches(emailRegex, userEmail)) {
+									try {
+										mailService.send(messageConf.getTplInquiryForB2B(), userEmail, model);
+									} catch (Exception e) {
+										logger.log("内部询价发送邮件出错", inquiry.getEnUU() + "," +inquiry.getCode() +" 发送失败", 0);
+										throw new RuntimeException(e);
+									}
+								}
+							}
+							// 发短信
+							for (String userTel : userTels) {
+								try {
+									sms.setReceiver(userTel);
+									sms.setTemplateId(messageConf.getMsgInquiryForB2B());
+									HttpUtil.sendPost(messageConf.getMessageUrl(), FlexJsonUtils.toJsonDeep(sms));
+
+								} catch (Exception e) {
+									logger.log("内部询价发送短信出错", inquiry.getEnUU() + "," +inquiry.getCode() +" 发送失败", 0);
+									throw new RuntimeException(e);
+								}
+							}
+							enUUs.add(inquiryItem.getVendUU());
+						}
+					}
+				}
+			}
+		});
+	}
+
 	@Override
 	public List<PurchaseInquiryItem> findNotUploadReply() {
 		return purchaseInquiryItemDao.findByEnUUAndBackStatus(SystemSession.getUser().getEnterprise().getUu(),
@@ -594,7 +703,7 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 		}, inquiries).run();
 		List<PurchaseInquiryItem> savedInquiryItems = purchaseInquiryItemDao.save(newInquiryItems);
 		// 触发消息事件
-		ContextUtils.publishEvent(new PurchaseInquiryItemInvalidReleaseEvent(PurchaseInquiryItem.distinct(savedInquiryItems)));
+		ContextUtils.publishEvent(new PurchaseInquiryItemInvalidReleaseEvent(savedInquiryItems));
 	}
 
 	@Override

+ 45 - 0
src/main/java/com/uas/platform/b2b/support/MessageConf.java

@@ -32,6 +32,27 @@ public class MessageConf {
 	@Value("#{message.msgTenderForB2B}")
 	private String msgTenderForB2B;
 
+	/**
+	 * 邮件模版id:询价单提醒供应商报价
+	 * @return
+	 */
+	@Value("#{message.tplInquiryForB2B}")
+	private String tplInquiryForB2B;
+
+	/**
+	 * 短信模版id:询价单提醒供应商报价
+	 * @return
+	 */
+	@Value("#{message.msgInquiryForB2B}")
+	private String msgInquiryForB2B;
+
+	/**
+	 * 短信接口地址
+	 * @return
+	 */
+	@Value("#{message.messageUrl}")
+	private String messageUrl;
+
 	public String getTplInvitationForB2B() {
 		return tplInvitationForB2B;
 	}
@@ -63,4 +84,28 @@ public class MessageConf {
 	public void setMsgTenderForB2B(String msgTenderForB2B) {
 		this.msgTenderForB2B = msgTenderForB2B;
 	}
+
+	public String getTplInquiryForB2B() {
+		return tplInquiryForB2B;
+	}
+
+	public void setTplInquiryForB2B(String tplInquiryForB2B) {
+		this.tplInquiryForB2B = tplInquiryForB2B;
+	}
+
+	public String getMsgInquiryForB2B() {
+		return msgInquiryForB2B;
+	}
+
+	public void setMsgInquiryForB2B(String msgInquiryForB2B) {
+		this.msgInquiryForB2B = msgInquiryForB2B;
+	}
+
+	public String getMessageUrl() {
+		return messageUrl;
+	}
+
+	public void setMessageUrl(String messageUrl) {
+		this.messageUrl = messageUrl;
+	}
 }

+ 6 - 1
src/main/resources/dev/message.properties

@@ -1,4 +1,9 @@
 tplInvitationForB2B=e472f874-0579-4ca2-9bb8-2635109dc7f3
 msgInvitationForB2B=73c513f8-7423-49c4-b57c-50a63bd8a0af
 tplAfterBeAddedtoB2B=b9dee589-9fd8-45d3-9b2a-64b56d65e7e2
-msgTenderForB2B=f9e29b6f-4116-4d33-9bde-048aa037f8c6
+msgTenderForB2B=f9e29b6f-4116-4d33-9bde-048aa037f8c6
+
+## ×Ô¶¯Ñ¯¼Û±¨¼ÛÌáÐÑ
+tplInquiryForB2B=bc60d592-9651-4ca1-9305-0852fc7c4101
+msgInquiryForB2B=72cc98e4-0c2b-4d16-944b-2e0515048b8d
+messageUrl=http://message.ubtob.com/sms/send

+ 6 - 1
src/main/resources/prod/message.properties

@@ -1,4 +1,9 @@
 tplInvitationForB2B=e472f874-0579-4ca2-9bb8-2635109dc7f3
 msgInvitationForB2B=73c513f8-7423-49c4-b57c-50a63bd8a0af
 tplAfterBeAddedtoB2B=b9dee589-9fd8-45d3-9b2a-64b56d65e7e2
-msgTenderForB2B=f9e29b6f-4116-4d33-9bde-048aa037f8c6
+msgTenderForB2B=f9e29b6f-4116-4d33-9bde-048aa037f8c6
+
+## ×Ô¶¯Ñ¯¼Û±¨¼ÛÌáÐÑ
+tplInquiryForB2B=bc60d592-9651-4ca1-9305-0852fc7c4101
+msgInquiryForB2B=72cc98e4-0c2b-4d16-944b-2e0515048b8d
+messageUrl=http://message.ubtob.com/sms/send

+ 6 - 1
src/main/resources/test/message.properties

@@ -1,4 +1,9 @@
 tplInvitationForB2B=e472f874-0579-4ca2-9bb8-2635109dc7f3
 msgInvitationForB2B=73c513f8-7423-49c4-b57c-50a63bd8a0af
 tplAfterBeAddedtoB2B=b9dee589-9fd8-45d3-9b2a-64b56d65e7e2
-msgTenderForB2B=f9e29b6f-4116-4d33-9bde-048aa037f8c6
+msgTenderForB2B=f9e29b6f-4116-4d33-9bde-048aa037f8c6
+
+## ×Ô¶¯Ñ¯¼Û±¨¼ÛÌáÐÑ
+tplInquiryForB2B=bc60d592-9651-4ca1-9305-0852fc7c4101
+msgInquiryForB2B=72cc98e4-0c2b-4d16-944b-2e0515048b8d
+messageUrl=http://message.ubtob.com/sms/send