|
@@ -21,7 +21,9 @@ import javax.xml.transform.dom.DOMSource;
|
|
|
import javax.xml.transform.stream.StreamResult;
|
|
|
import java.io.*;
|
|
|
import java.net.Socket;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.Calendar;
|
|
|
+import java.util.Date;
|
|
|
|
|
|
|
|
|
* 通用插件
|
|
@@ -30,6 +32,36 @@ import java.util.Calendar;
|
|
|
*/
|
|
|
public class DemoSMSSender implements SMSSender {
|
|
|
protected static final Log log = LogFactory.getLog(DemoSMSSender.class);
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean sendMessage(String phone, String message, String signature) {
|
|
|
+ Boolean flag = false;
|
|
|
+
|
|
|
+ DynamicObject jkpzxx = BusinessDataServiceHelper.loadSingle("nckd_jkpzxx",new QFilter[]{new QFilter("number","=","dxyz")});
|
|
|
+ String servername = jkpzxx.getString("nckd_servername");
|
|
|
+ String port = jkpzxx.getString("nckd_port");
|
|
|
+
|
|
|
+ String bodyxml = createSingleMessageRequest(phone,message);
|
|
|
+
|
|
|
+ JSONObject cbsReturnJson =socketService(servername,port,bodyxml);
|
|
|
+ if(cbsReturnJson!=null) {
|
|
|
+ JSONObject reMessage = cbsReturnJson.getJSONObject("Message");
|
|
|
+ JSONObject reBodyInfo = reMessage.getJSONObject("BodyInfo");
|
|
|
+ if ("success".equals(reBodyInfo.getString("Fs_retMsg"))) {
|
|
|
+ if ("000".equals(reBodyInfo.getString("Fs_retCode"))) {
|
|
|
+ flag = true;
|
|
|
+ log.info("短信前置机响应成功,前置机接口发送成功");
|
|
|
+ } else {
|
|
|
+ log.info("短信前置机响应成功,前置机接口发送失败");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ log.info("短信发送前置机响应失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return flag;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public boolean sendMessage(String phone, String message) {
|
|
|
Boolean flag = false;
|
|
@@ -73,28 +105,25 @@ public class DemoSMSSender implements SMSSender {
|
|
|
|
|
|
createElement(doc, body, "Fs_channelcode", "JSX");
|
|
|
createElement(doc, body, "Fs_transcode", "SingleMsg");
|
|
|
- createElement(doc, body, "Fs_rpid", "");
|
|
|
+ createElement(doc, body, "Fs_rpid", "12345");
|
|
|
createElement(doc, body, "Fs_phone", phone);
|
|
|
createElement(doc, body, "Fs_ParamCount", "2");
|
|
|
createElement(doc, body, "ParamName1", "SmsVerifyCode");
|
|
|
- createElement(doc, body, "ParamValue1", "");
|
|
|
+ String ParamValue1 = message.substring(4,10);
|
|
|
+ createElement(doc, body, "ParamValue1", ParamValue1);
|
|
|
createElement(doc, body, "ParamName2", "SceneName");
|
|
|
- createElement(doc, body, "ParamValue2", "");
|
|
|
+ createElement(doc, body, "ParamValue2", "wj");
|
|
|
|
|
|
createElement(doc, body, "Fs_regOrg", "");
|
|
|
createElement(doc, body, "Fs_bizId", "00007");
|
|
|
createElement(doc, body, "Fs_templateld", "2409029227");
|
|
|
|
|
|
- Calendar calendar = Calendar.getInstance();
|
|
|
- int year = calendar.get(Calendar.YEAR);
|
|
|
- int month = calendar.get(Calendar.MONTH) + 1;
|
|
|
- int day = calendar.get(Calendar.DAY_OF_MONTH);
|
|
|
- int hour = calendar.get(Calendar.HOUR_OF_DAY);
|
|
|
- int minute = calendar.get(Calendar.MINUTE);
|
|
|
- int second = calendar.get(Calendar.SECOND);
|
|
|
- String Fs_reqDate = String.valueOf(year)+String.valueOf(month)+String.valueOf(day);
|
|
|
+ Date now = new Date();
|
|
|
+ SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd HHmmss");
|
|
|
+ String nowStr = formatter.format(now);
|
|
|
+ String Fs_reqDate = nowStr.substring(0,8);
|
|
|
createElement(doc, body, "Fs_reqDate", Fs_reqDate);
|
|
|
- String Fs_regTime = tranTime(hour,minute,second);
|
|
|
+ String Fs_regTime = nowStr.substring(9,15);
|
|
|
createElement(doc, body, "Fs_regTime", Fs_regTime);
|
|
|
|
|
|
TransformerFactory transformerFactory = TransformerFactory.newInstance();
|