123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- <!doctype html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>发送短消息</title>
- <meta name="viewport"
- content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
- <link href="../css/mui.min.css" rel="stylesheet" />
- <!-- 引入自定义样式 -->
- <link rel="stylesheet" type="text/css" href="../css/app.css" />
- <link rel="stylesheet" type="text/css" href="../css/app.new.css" />
- <!-- 引入字体 -->
- <link rel="stylesheet" href="../fonts/TTTGB-Medium.css" />
- <link rel="stylesheet" href="../fonts/font-time.css" />
- <link rel="stylesheet" href="../fonts/font-jt.css" />
- <!-- 引入弹窗及选择器样式 -->
- <link rel="stylesheet" type="text/css" href="../css/mui.picker.min.css" />
- <link rel="stylesheet" type="text/css" href="../css/mui.poppicker.css" />
- <!-- 引入空间分析结果样式 -->
- <link rel="stylesheet" href="../css/sms.css">
- <link rel="stylesheet" href="../css/cr.map.css">
- </head>
- <body>
- <div class="cr-layout-flex-v" id="divResult">
- </div>
- </body>
- </html>
- <!-- 引入mui脚本 -->
- <script src="../js/mui.min.js" type="text/javascript" charset="utf-8"></script>
- <!-- 引入弹窗及选择器脚本 -->
- <script src="../js/mui.picker.min.js" type="text/javascript" charset="utf-8"></script>
- <script src="../js/mui.poppicker.js" type="text/javascript" charset="utf-8"></script>
- <!-- 引入jQuery脚本 -->
- <script src="../js/jquery.js" type="text/javascript" charset="utf-8"></script>
- <!-- 引入通用脚本 -->
- <script src="../js/common.js" type="text/javascript" charset="utf-8"></script>
- <!-- 进入webview脚本 -->
- <script src="../js/webview.js" type="text/javascript" charset="utf-8"></script>
- <!-- 引入存储脚本 -->
- <script src="../js/save.js" type="text/javascript" charset="utf-8"></script>
- <!-- 引入ajax脚本 -->
- <script src="../js/ajax.js" type="text/javascript" charset="utf-8"></script>
- <script type="text/javascript">
- /* mui初始化 */
- mui.init({
- swipeBack: false,
- });
- /* 初始化 */
- plusInit(function() {
- /* 增加右侧菜单 */
- var wv = plus.webview.currentWebview();
- wv.setStyle({
- titleNView: {
- buttons: [{
- 'float': 'right',
- fontSrc: '../fonts/iconfont.ttf',
- text: '\ue827',
- onclick: EventSendSMS,
- }, {
- 'float': 'right',
- fontSrc: '../fonts/iconfont.ttf',
- text: '\ue6c6',
- onclick: EventSelectAll,
- }]
- }
- });
- beginQuerySMS();
- });
- /* 统计分析结果 */
- let smsResult = [];
- /**
- * 查询短消息内容
- */
- function beginQuerySMS() {
- sendAjax({
- url: 'appQuerySMS',
- waitMessage: '查询中...',
- data: {},
- success: function(resData) {
- $("#divResult").html('');
- countResult = [];
- let index = 1;
- for (let item of resData) {
- smsResult.push({
- number: index++,
- toName: item.toName,
- toMobile: '18954008227', //item.toMobile,
- msg: item.msg,
- cDate: item.cDate,
- isOk: false,
- })
- }
- muiShowWaitLoading('加载中...');
- createOACItem('divResult', smsResult, 0);
- },
- error: function(err) {
- muiAlertError(err);
- }
- })
- }
- /**
- * 创建展示项
- * @param {string} domId 控件Id
- * @param {JSON} datas 数据集
- * @param {int} index 索引
- */
- function createOACItem(domId, datas, index) {
- if (index == datas.length) {
- muiCloseWaitLoading();
- muiToast('加载完成!');
- appendClickEventByClassName('jt-nowrap');
- };
- var div = document.createElement('div');
- var data = datas[index];
- if (index == datas.length - 1) {
- div.className = 'jt-sms-content-row jt-sms-content-row-last';
- } else {
- div.className = 'jt-sms-content-row';
- }
- var strHtml = "";
- strHtml += "<span class='jt-icon'>" + data.number + "</span>";
- strHtml += "<span class='jt-name jt-nowrap'>" + data.toName + "</span>";
- strHtml += "<span class='jt-mobile jt-nowrap'>" + data.toMobile + "</span>";
- strHtml += "<span class='jt-message jt-nowrap'>" + data.msg + "</span>";
- strHtml += "<input name='checkbox' type='checkbox' onclick=\"selSMS(this,'" + index + "')\">";
- div.innerHTML = strHtml;
- $(div).hide();
- $('#' + domId).append(div);
- $(div).slideDown(200, function() {
- createOACItem(domId, datas, index + 1);
- });
- }
- /**
- * 选择发送
- * @param {Object} obj checkbox
- * @param {int} index 索引
- */
- function selSMS(obj, index) {
- smsResult[index].isOk = obj.checked;
- console.log(JSON.stringify(smsResult[index]));
- }
- /**
- * 发送短消息
- */
- function EventSendSMS() {
- sendSMSCollection = [];
- sendSMSError = [];
- for (let item of smsResult) {
- if (item.isOk) {
- sendSMSCollection.push(item);
- }
- }
- if (sendSMSCollection.length === 0) {
- muiAlert('请先选择需要发送短消息的账号!', '警告');
- } else {
- sendSMSToServer(0);
- }
- }
- let isAllChecked = false;
- /**
- * 全选
- */
- function EventSelectAll() {
- isAllChecked = !isAllChecked;
- $('[name="checkbox"]').each(function(index, element) {
- $(element).prop('checked', isAllChecked);
- smsResult[index].isOk = isAllChecked;
- })
- }
- /* 需要发送消息的主体 */
- let sendSMSCollection = [];
- let sendSMSError = [];
- /**
- * 发送消息
- * @param {int} index sms索引
- */
- function sendSMSToServer(index) {
- if (index === sendSMSCollection.length) {
- /* 发送完成 */
- if (sendSMSError.length === 0) {
- muiAlert('全部发送成功!', '提示');
- } else {
- let errName = undefined;
- for (let err of sendSMSError) {
- if (errName) {
- errName = errName + "," + err.name;
- } else {
- errName = err.name;
- }
- }
- muiAlertError('以下账号消息发送失败:' + errName);
- }
- } else {
- let sms = sendSMSCollection[index];
- sendAjax({
- waitMessage: '发送中...',
- data: {
- name: '[' + sms.toName + ']',
- content: sms.msg,
- mobile: sms.toMobile,
- },
- url: 'appSendSMS',
- success: function(resData) {
- sendSMSToServer(index + 1);
- },
- error: function(err) {
- sendSMSToServer(index + 1);
- sendSMSError.push({
- name: sms.toName,
- });
- }
- })
- }
- }
- </script>
|