using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using YTSoft.BaseCallCenter.MVCWeb.Commons;
using YTSoft.BaseCallCenter.MVCWeb.Models;
namespace YTSoft.BaseCallCenter.MVCWeb.Controllers
{
public class SMSManagerController : Controller
{
BLL.T_SMS_SentSMS smsBLL = new BLL.T_SMS_SentSMS();
public ActionResult SMSSentList()
{
CallScreenModel callScreenModel = new CallScreenModel();
return View(callScreenModel);
}
///
/// 获取数据列表
///
/// 当前页码
/// 每页数据量
/// 查询条件
///
[ActionName("SMSSentData")]
[HttpGet]
public string SMSSentData(DateTime? NowDateTime, int page, int limit, string dateParty,
string phoneNumber, int? status)
{
//数据结果集
ResponseData dataModel = new ResponseData();
string sql = "";
//客户电话
if (!string.IsNullOrEmpty(phoneNumber))
{
sql += " and TelNum like '%" + phoneNumber.Trim() + "%'";
}
//状态
if (status != null)
{
sql += " and State =" + status;
}
if (!string.IsNullOrEmpty(dateParty))
{
string startDate = dateParty.Substring(0, 19);
string endDate = dateParty.Substring(21);
sql += " and SendTime>= '" + startDate + "'";
sql += " and SendTime<= '" + endDate + "'";
}
DataTable dt = new DataTable();
int recordCount = 0;
Model.PageData pageModel = new Model.PageData();
dt = BLL.PagerBLL.GetListPager(
"T_SMS_SentSMS",
"SMSID",
" *,CONVERT(varchar,SendTime, 120 ) as SendTimeNew"
+ " ,(CASE State WHEN 1 THEN '成功' WHEN '0' THEN '失败' ELSE NULL END) as StateName",
sql,
"ORDER BY SendTime desc",
limit,
page,
true,
out recordCount);
dataModel.code = 0;
dataModel.count = recordCount;
dataModel.data = dt;
return JsonConvert.SerializeObject(dataModel);
}
///
/// 舆情发送短信接口
///
/// 近24小时内舆情数量
///
[ActionName("MessageNotice")]
[HttpGet]
public bool MessageNotice(string MessageContent)
{
//数据结果集
bool SendResult = false;
try
{
string smsUrl = "http://www.jc-chn.cn/smsSend.do?username=hry168&password=c1cafe2731b8d88a0f397667facdfbf2&mobile=1863859958&content=";
System.Web.HttpUtility.UrlEncode("发现负面舆情!" + MessageContent, System.Text.Encoding.UTF8);
Model.T_SMS_SentSMS model = new Model.T_SMS_SentSMS();
model.State = 0;
model.SendTime = DateTime.Now;
model.MaxSendCount = 5;
// model.F_CustomerID = MessageCount;//舆情条数
model.Content = MessageContent;
for (int i = 1; i <= model.MaxSendCount; i++)
{
model.CurSentCount = i;
string addWxResult = HttpHelper.HttpSMSSend(smsUrl);
//判断返回接口是否发送成功!
if (!string.IsNullOrEmpty(addWxResult) && !addWxResult.Contains("-") && int.Parse(addWxResult) > 0)
{
SendResult = true;
model.State = 1;//发送成功
//将短信发送信息存储到内容中
smsBLL.Add(model);
break;
}
//将短信发送信息存储到内容中
smsBLL.Add(model);
}
}
catch (Exception ex)
{
}
return SendResult;
}
}
}