SmsConfig.ashx.cs 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673
  1. using LYFZ.WeixinServiceDate.DAL;
  2. using LYFZ.WeixinServiceDate.Model;
  3. using LYFZ.WinAPI;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Data;
  7. using System.Dynamic;
  8. using System.Linq;
  9. using System.Web;
  10. using System.Web.Security;
  11. namespace LYFZ.WeixinServers.api
  12. {
  13. /// <summary>
  14. /// SmsConfig 的摘要说明
  15. /// </summary>
  16. public class SmsConfig : IHttpHandler
  17. {
  18. public void ProcessRequest(HttpContext context)
  19. {
  20. string type = context.Request["type"];
  21. switch(type)
  22. {
  23. case "AddOrEditShortMessageTemple":
  24. AddOrEditShortMessageTemple(context);
  25. break;
  26. case "GetSmsCount":
  27. GetSmsCount(context);
  28. break;
  29. case "AddOrEditShortMessageConfig":
  30. AddOrEditShortMessageConfig(context);
  31. break;
  32. case "SendSmsCode":
  33. SendSmsCode(context);
  34. break;
  35. case "VerificationSmsCode":
  36. VerificationSmsCode(context);
  37. break;
  38. case "SearchOrderNumberByTelephone":
  39. SearchOrderNumberByTelephone(context);
  40. break;
  41. case "SearchOrderNumberByTelephone1":
  42. SearchOrderNumberByTelephone1(context);
  43. break;
  44. case "SearchOrderNumberByTelephone2":
  45. SearchOrderNumberByTelephone2(context);
  46. break;
  47. case "GetCloudErpOrderData":
  48. GetCloudErpOrderData(context);
  49. break;
  50. case "SendSms":
  51. SendSms(context);
  52. break;
  53. case "UnbindPhone":
  54. UnbindPhone(context);
  55. break;
  56. }
  57. }
  58. void UnbindPhone(HttpContext context)
  59. {
  60. string entId = context.Request["entId"];
  61. string openId = context.Request["openId"];
  62. DAL_BindStoreUser userDal = new DAL_BindStoreUser();
  63. Model_BindStoreUser userModel = userDal.GetStoreUserData(openId, entId);
  64. userModel.UserPhone = "";
  65. userDal.Update(userModel);
  66. dynamic dyObj1 = new ExpandoObject();
  67. dyObj1.code = 200;
  68. dyObj1.info = "请求成功";
  69. dyObj1.data ="解绑成功";
  70. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  71. }
  72. void GetCloudErpOrderData(HttpContext context)
  73. {
  74. string entId = context.Request.Headers["EnterpriseID"];
  75. string orderNumbe = context.Request["orderNumbe"];
  76. Dictionary<string, string> headers = new Dictionary<string, string>();
  77. headers.Add("EnterpriseID", entId);
  78. //string responseText = HttpClientHelper.PostResponse(
  79. // "http://webapi.lyfz.net/proxy.ashx/Api/TelephoneSearchControl.ashx/GetCloudErpOrderData",
  80. // "orderNumbe=" + orderNumbe + "",
  81. // "application/x-www-form-urlencoded",
  82. // headers
  83. // );
  84. string url = "http://p.lyfz.net/api/ChargeDataControl.ashx/GetDownLoadDataPageByNumber";
  85. string txt = (HttpClientHelper.PostResponse(url, "entID=" + entId + "&orderNumbe=" + orderNumbe + "&photoType=", "application/x-www-form-urlencoded"));
  86. dynamic dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(txt);
  87. //dyObj = dyObj.data;
  88. //dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(dyObj.Value);
  89. if (dyObj.code == 200)
  90. {
  91. dynamic dyObj1 = new ExpandoObject();
  92. dyObj1.code = 200;
  93. dyObj1.info = "请求成功";
  94. dyObj1.data =dyObj.data;
  95. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  96. }
  97. else
  98. {
  99. dynamic dyObj1 = new ExpandoObject();
  100. dyObj1.code = 199;
  101. dyObj1.info = "请求";
  102. dyObj1.data = dyObj.data;
  103. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  104. }
  105. }
  106. /// <summary>
  107. /// 获取订单数据
  108. /// </summary>
  109. /// <param name="context"></param>
  110. void SearchOrderNumberByTelephone1(HttpContext context)
  111. {
  112. string entId = context.Request.Headers["EnterpriseID"];
  113. string telephone = context.Request["telephone"];
  114. if(string.IsNullOrEmpty(telephone))
  115. {
  116. PrintData(context, "{\"Erp\":[],\"BaiDu\":[]}");
  117. return;
  118. }
  119. Dictionary<string, string> headers = new Dictionary<string, string>();
  120. headers.Add("EnterpriseID", entId);
  121. string responseText = HttpClientHelper.PostResponse(
  122. "http://webapi.lyfz.net/proxy.ashx/Api/TelephoneSearchControl.ashx/SearchOrderNumberByTelephone1",
  123. "telephone=" + telephone,
  124. "application/x-www-form-urlencoded",
  125. headers
  126. );
  127. dynamic dyObj =new ExpandoObject();
  128. dynamic dyObj1 = new ExpandoObject();
  129. try
  130. {
  131. dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(responseText);
  132. dyObj1.Erp = dyObj;
  133. }
  134. catch {
  135. dynamic tempDyObj = new ExpandoObject();
  136. tempDyObj.code = 199;
  137. tempDyObj.info = "请求失败";
  138. tempDyObj.data = responseText;
  139. dyObj1.Erp = tempDyObj;
  140. }
  141. responseText = HttpClientHelper.PostResponse(
  142. "http://p.lyfz.net/api/ChargeDataControl.ashx/GetBaiduDiskService",
  143. "telephone=" + telephone + "&entid=" + entId,
  144. "application/x-www-form-urlencoded",
  145. headers
  146. );
  147. dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(responseText);
  148. dyObj1.BaiDu = dyObj;
  149. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  150. }
  151. void SearchOrderNumberByTelephone2(HttpContext context)
  152. {
  153. string entId = context.Request.Headers["EnterpriseID"];
  154. string openId = context.Request["openId"];
  155. DAL_BindStoreUser userDal = new DAL_BindStoreUser();
  156. Model_BindStoreUser userModel = userDal.GetStoreUserData(openId, entId);
  157. Dictionary<string,string> headers=new Dictionary<string,string>();
  158. headers.Add("EnterpriseID", entId);
  159. if (!string.IsNullOrEmpty(userModel.UserPhone))
  160. {
  161. string responseText = HttpClientHelper.PostResponse(
  162. "http://p.lyfz.net/api/ChargeDataControl.ashx/GetClientDiskData",
  163. "telephone=" + userModel.UserPhone + "&entid=" + entId,
  164. "application/x-www-form-urlencoded",
  165. headers
  166. );
  167. dynamic dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(responseText);
  168. if (dyObj.code==200)
  169. {
  170. Newtonsoft.Json.Linq.JArray dyValueList = dyObj.data;
  171. foreach (Newtonsoft.Json.Linq.JObject jobj in dyValueList)
  172. {
  173. jobj["cd_BaiduUrl"] = jobj["cd_BaiduUrl"].ToString().Trim();
  174. jobj["cd_BaiduCode"] = jobj["cd_BaiduCode"].ToString().Trim();
  175. }
  176. }
  177. dynamic dyObj1 = new ExpandoObject();
  178. dyObj1.code = dyObj.code ;
  179. dyObj1.info = dyObj.info;
  180. dyObj1.data = dyObj.code == 200 ? dyObj.data : dyObj.info;
  181. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  182. }
  183. else
  184. {
  185. dynamic dyObj1 = new ExpandoObject();
  186. dyObj1.code = 199;
  187. dyObj1.info = "请求失败";
  188. dyObj1.data = "账号未绑定";
  189. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  190. }
  191. }
  192. void SearchOrderNumberByTelephone(HttpContext context)
  193. {
  194. string entId = context.Request.Headers["EnterpriseID"];
  195. string openId = context.Request["openId"];
  196. DAL_BindStoreUser userDal = new DAL_BindStoreUser();
  197. Model_BindStoreUser userModel = userDal.GetStoreUserData(openId, entId);
  198. Dictionary<string, string> headers = new Dictionary<string, string>();
  199. headers.Add("EnterpriseID", entId);
  200. if (!string.IsNullOrEmpty(userModel.UserPhone))
  201. {
  202. string responseText = HttpClientHelper.PostResponse(
  203. "http://webapi.lyfz.net/proxy.ashx/Api/TelephoneSearchControl.ashx/SearchOrderNumberByTelephone",
  204. "telephone=" + userModel.UserPhone,
  205. "application/x-www-form-urlencoded",
  206. headers
  207. );
  208. dynamic dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(responseText);
  209. dynamic dyObj1 = new ExpandoObject();
  210. dyObj1.code = dyObj.code;
  211. dyObj1.info = dyObj.info;
  212. dyObj1.data = dyObj.code == 200 ? dyObj.data : dyObj.info;
  213. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  214. }
  215. else
  216. {
  217. dynamic dyObj1 = new ExpandoObject();
  218. dyObj1.code = 199;
  219. dyObj1.info = "请求失败";
  220. dyObj1.data = "账号未绑定";
  221. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  222. }
  223. }
  224. void VerificationSmsCode(HttpContext context)
  225. {
  226. string entId = context.Request["entId"];
  227. string openId = context.Request["openId"];
  228. string userphone = context.Request["userphone"];
  229. string usercode = context.Request["usercode"];
  230. string username = context.Request["username"];
  231. string servicePath = context.Server.MapPath("/");
  232. string dirPath = servicePath + "/logs/SmsCode/" + entId + "/";
  233. string filePath = dirPath + "SmsCodeFile";
  234. string[] fileTextLine = { };
  235. string allFile = "";
  236. if (!System.IO.Directory.Exists(dirPath))
  237. {
  238. System.IO.Directory.CreateDirectory(dirPath);
  239. }
  240. if (System.IO.File.Exists(filePath))
  241. {
  242. fileTextLine = System.IO.File.ReadAllLines(filePath);
  243. allFile = System.IO.File.ReadAllText(filePath);
  244. }
  245. bool b = false;
  246. string iphoneCode="";
  247. string tempTxt = "";
  248. foreach (string txt in fileTextLine)
  249. {
  250. if (txt.IndexOf(userphone) != -1)
  251. {
  252. tempTxt = txt;
  253. string[] txtInfo = txt.Split('\t');
  254. iphoneCode = (txtInfo[1]);
  255. b = true;
  256. break;
  257. }
  258. }
  259. if (b)
  260. {
  261. if (iphoneCode == usercode)
  262. {
  263. allFile = allFile.Replace("\r\n" + tempTxt, "");
  264. System.IO.File.WriteAllText(filePath, allFile);
  265. Model_BindStoreUser userModel;
  266. DAL_BindStoreUser userDal = new DAL_BindStoreUser();
  267. userModel = userDal.GetStoreUserData(openId, entId);
  268. userModel.UserPhone = userphone;
  269. userModel.UserName = username;
  270. userDal.Update(userModel);
  271. dynamic dyObj1 = new ExpandoObject();
  272. dyObj1.code = 200;
  273. dyObj1.info = "请求成功";
  274. dyObj1.data = "验证通过";
  275. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  276. }
  277. else
  278. {
  279. dynamic dyObj1 = new ExpandoObject();
  280. dyObj1.code = 199;
  281. dyObj1.info = "请求失败";
  282. dyObj1.data = "验证码不正确";
  283. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  284. }
  285. }
  286. else
  287. {
  288. dynamic dyObj1 = new ExpandoObject();
  289. dyObj1.code = 199;
  290. dyObj1.info = "请求失败";
  291. dyObj1.data = "请点击生成验证码";
  292. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  293. }
  294. }
  295. private void SendSmsCode(HttpContext context)
  296. {
  297. string entId = context.Request["entId"];
  298. string userphone = context.Request["userphone"];
  299. string servicePath = context.Server.MapPath("/");
  300. string dirPath = servicePath + "/logs/SmsCode/" + entId+"/";
  301. string filePath = dirPath + "SmsCodeFile";
  302. string[] fileTextLine = { };
  303. string allFile = "";
  304. DAL_ShortMessageConfig messageConfigDAL = new DAL_ShortMessageConfig();
  305. Model_ShortMessageConfig messageConfigModel = messageConfigDAL.GetModel("smc_EntID = '" + entId + "'");
  306. if(!System.IO.Directory.Exists(dirPath))
  307. {
  308. System.IO.Directory.CreateDirectory(dirPath);
  309. }
  310. if(System.IO.File.Exists(filePath))
  311. {
  312. fileTextLine = System.IO.File.ReadAllLines(filePath);
  313. allFile = System.IO.File.ReadAllText(filePath);
  314. }
  315. Random r = new Random();
  316. int i = r.Next(100000, 999999);
  317. bool b = false;
  318. foreach(string txt in fileTextLine)
  319. {
  320. if(txt.IndexOf(userphone)!=-1)
  321. {
  322. string[] txtInfo = txt.Split('\t');
  323. i = Convert.ToInt32(txtInfo[1]);
  324. b = true;
  325. break;
  326. }
  327. }
  328. if(!b)
  329. {
  330. allFile += "\r\n" + userphone + "\t" + i.ToString();
  331. System.IO.File.WriteAllText(filePath, allFile);
  332. }
  333. if (string.IsNullOrEmpty(messageConfigModel.smc_SMAccount) || string.IsNullOrEmpty(messageConfigModel.smc_SMPwd))
  334. {
  335. dynamic dyObj1 = new ExpandoObject();
  336. dyObj1.code = 199;
  337. dyObj1.info = "请求失败";
  338. dyObj1.data = "未绑定短信账号";
  339. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  340. }
  341. else
  342. {
  343. string tempText = "会员绑定验证,验证码" + i.ToString()+"(短信编号:"+DateTime.Now.ToString("HHmmss")+")";
  344. string reportData = HttpClientHelper.PostResponse(
  345. "http://msg.lyfz.net:8600/ISmsService/SendMessage",
  346. "{\"account\":\"" +
  347. messageConfigModel.smc_SMAccount + "\",\"password\":\"" +
  348. FormsAuthentication.HashPasswordForStoringInConfigFile(messageConfigModel.smc_SMAccount + messageConfigModel.smc_SMPwd, "MD5").ToUpper() +
  349. "\",\"phone\":\"" + userphone + "\",\"content\":\"" + tempText + "\",\"time\":\"" + DateTime.Now + "\"}");
  350. dynamic dyObj1 = new ExpandoObject();
  351. dyObj1.code = 200;
  352. dyObj1.info = "请求成功";
  353. dyObj1.data = "验证码已发送";
  354. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  355. }
  356. }
  357. public void GetSmsCount(HttpContext context)
  358. {
  359. string account = context.Request["account"];
  360. string pwd = context.Request["pwd"];
  361. string pwdMd5 = FormsAuthentication.HashPasswordForStoringInConfigFile(account + pwd, "MD5").ToUpper();
  362. string reportData = HttpClientHelper.PostResponse(
  363. "http://msg.lyfz.net:8600/ISmsService/QueryLatestBalance",
  364. "{\"account\":\"" + account + "\",\"password\":\"" + pwdMd5 + "\"}");
  365. dynamic dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(reportData);
  366. if (dyObj.code == -1)
  367. {
  368. PrintData(context, "{\"code\":199,\"info\":\"请求失败\",\"data\":\"" + dyObj.msg + "\"}");
  369. //return new AjaxResult(EnumCode.AjaxResultCode.请求失败, dyObj.msg);
  370. }
  371. else
  372. {
  373. dynamic dyObj1 = new ExpandoObject();
  374. dyObj1.code = 200;
  375. dyObj1.info = "请求成功";
  376. dyObj1.data = dyObj.data;
  377. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  378. //return new AjaxResult(EnumCode.AjaxResultCode.请求成功, dyObj.data);
  379. }
  380. }
  381. public void AddOrEditShortMessageConfig(HttpContext context)
  382. {
  383. string entID = context.Request["entID"];
  384. string account = context.Request["account"];
  385. string pwd = context.Request["pwd"];
  386. DAL_ShortMessageConfig messageConfigDAL = new DAL_ShortMessageConfig();
  387. DataTable dtList = messageConfigDAL.GetList(" smc_EntID = '" + entID + "' ").Tables[0];
  388. if (dtList.Rows.Count > 0)
  389. {
  390. LYFZ.WeixinServiceDate.Model.Model_ShortMessageConfig config = new LYFZ.WeixinServiceDate.Model.Model_ShortMessageConfig();
  391. config.ID = new Guid(dtList.Rows[0]["ID"].ToString());
  392. config.smc_CreateTime = DateTime.Now;
  393. config.smc_EntID = entID;
  394. config.smc_SMAccount = account;
  395. config.smc_SMPwd = pwd;
  396. messageConfigDAL.Update(config);
  397. }
  398. else
  399. {
  400. LYFZ.WeixinServiceDate.Model.Model_ShortMessageConfig config = new LYFZ.WeixinServiceDate.Model.Model_ShortMessageConfig();
  401. config.smc_CreateTime = DateTime.Now;
  402. config.smc_EntID = entID;
  403. config.smc_SMAccount = account;
  404. config.smc_SMPwd = pwd;
  405. messageConfigDAL.Add(config);
  406. }
  407. PrintData(context, "{\"code\":200,\"info\":\"请求成功\",\"data\":\"数据修改成功!\"}");
  408. //return new AjaxResult(EnumCode.AjaxResultCode.请求成功, "数据修改成功!");
  409. }
  410. public void AddOrEditShortMessageTemple(HttpContext context)
  411. {
  412. string entID = context.Request["entID"];
  413. string templeText = context.Request["templeText"];
  414. DAL_ShortMessageTemple templeDAL = new DAL_ShortMessageTemple();
  415. DataTable dtList = templeDAL.GetList(" smt_EntID = '" + entID + "' ").Tables[0];
  416. if (dtList.Rows.Count > 0)
  417. {
  418. LYFZ.WeixinServiceDate.Model.Model_ShortMessageTemple templeMod = new LYFZ.WeixinServiceDate.Model.Model_ShortMessageTemple();
  419. templeMod.ID = new Guid(dtList.Rows[0]["ID"].ToString());
  420. templeMod.smt_CreateTime = DateTime.Now;
  421. templeMod.smt_EntID = entID;
  422. templeMod.smt_TempleText = templeText;
  423. templeDAL.Update(templeMod);
  424. }
  425. else
  426. {
  427. LYFZ.WeixinServiceDate.Model.Model_ShortMessageTemple templeMod = new LYFZ.WeixinServiceDate.Model.Model_ShortMessageTemple();
  428. templeMod.smt_CreateTime = DateTime.Now;
  429. templeMod.smt_EntID = entID;
  430. templeMod.smt_TempleText = templeText;
  431. templeDAL.Add(templeMod);
  432. }
  433. //return new AjaxResult(EnumCode.AjaxResultCode.请求成功, "数据修改成功!");
  434. PrintData(context, "{\"code\":200,\"info\":\"请求成功\",\"data\":\"数据修改成功!\"}");
  435. }
  436. void PrintData(HttpContext context,string msg)
  437. {
  438. context.Response.Write(msg);
  439. }
  440. public void SendSms(HttpContext context)
  441. {
  442. string entId = context.Request["entId"];
  443. //string tempText = context.Request["tempText"];
  444. string phone = context.Request["phone"];
  445. string orderNumber = context.Request["orderNumber"];
  446. string cusName = context.Request["cusName"];
  447. string cusSex = context.Request["cusSex"];
  448. string cusPhone = context.Request["cusPhone"];
  449. string ordType = context.Request["ordType"];
  450. string bdUrl = context.Request["bdUrl"];
  451. string bdCode = context.Request["bdCode"];
  452. DAL_ShortMessageTemple messageTempleDAL = new DAL_ShortMessageTemple();
  453. DAL_ShortMessageConfig messageConfigDAL = new DAL_ShortMessageConfig();
  454. Model_ShortMessageTemple messageTempleModel = messageTempleDAL.GetModel(" smt_EntID = '" + entId + "' ");
  455. Model_ShortMessageConfig messageConfigModel = messageConfigDAL.GetModel("smc_EntID = '" + entId + "'");
  456. string tempText = ReplaceSmsData(messageTempleModel,
  457. orderNumber, cusName, cusSex, cusPhone, ordType, bdUrl, bdCode);
  458. if (string.IsNullOrEmpty(messageTempleModel.smt_TempleText))
  459. {
  460. dynamic dyObj1 = new ExpandoObject();
  461. dyObj1.code = 199;
  462. dyObj1.info = "请求失败";
  463. dyObj1.data = "未设置短信模板,无法发送短信!";
  464. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  465. //return new AjaxResult(EnumCode.AjaxResultCode.请求失败, "未设置短信模板,无法发送短信!");
  466. }
  467. string reportData = HttpClientHelper.PostResponse(
  468. "http://msg.lyfz.net:8600/ISmsService/SendMessage",
  469. "{\"account\":\"" + messageConfigModel.smc_SMAccount + "\",\"password\":\"" +
  470. FormsAuthentication.HashPasswordForStoringInConfigFile(messageConfigModel.smc_SMAccount + messageConfigModel.smc_SMPwd, "MD5")
  471. .ToUpper() + "\",\"phone\":\"" + phone + "\",\"content\":\"" + tempText + "\",\"time\":\"" + DateTime.Now + "\"}");
  472. dynamic dyObj = Newtonsoft.Json.JsonConvert.DeserializeObject(reportData);
  473. if (dyObj.code == -1)
  474. {
  475. //WebCustomer.CloudServerData.DAL.SystemLogDAL.Single(Global.DbConn)
  476. // .SaveControlLog(
  477. // "无",
  478. // WebCustomer.CloudServerData.Enum.EnumLogType.短信发送.ToString(),
  479. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.ID,
  480. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.user_UserName,
  481. // "发送失败(" + dyObj.msg + "):" + tempText
  482. //);
  483. //return new AjaxResult(EnumCode.AjaxResultCode.请求失败, dyObj.msg);
  484. dynamic dyObj1 = new ExpandoObject();
  485. dyObj1.code = 199;
  486. dyObj1.info = tempText;
  487. dyObj1.data = dyObj.msg;
  488. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  489. }
  490. else
  491. {
  492. if (dyObj.data.code == 0)
  493. {
  494. // WebCustomer.CloudServerData.DAL.SystemLogDAL.Single(Global.DbConn)
  495. // .SaveControlLog(
  496. // "无",
  497. // WebCustomer.CloudServerData.Enum.EnumLogType.短信发送.ToString(),
  498. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.ID,
  499. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.user_UserName,
  500. // "短信发送成功(短信发送成功):" + tempText
  501. //);
  502. // return new AjaxResult(EnumCode.AjaxResultCode.请求成功, "短信发送成功!");
  503. dynamic dyObj1 = new ExpandoObject();
  504. dyObj1.code = 200;
  505. dyObj1.info = tempText;
  506. dyObj1.data = "短信发送成功!";
  507. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  508. }
  509. else if (dyObj.data.code == 100)
  510. {
  511. // WebCustomer.CloudServerData.DAL.SystemLogDAL.Single(Global.DbConn)
  512. // .SaveControlLog(
  513. // "无",
  514. // WebCustomer.CloudServerData.Enum.EnumLogType.短信发送.ToString(),
  515. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.ID,
  516. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.user_UserName,
  517. // "短信发送成功(服务器已授理并等待发送中):" + tempText
  518. //);
  519. // return new AjaxResult(EnumCode.AjaxResultCode.请求成功, "服务器已授理并等待发送中!");
  520. dynamic dyObj1 = new ExpandoObject();
  521. dyObj1.code = 200;
  522. dyObj1.info = tempText;
  523. dyObj1.data = "服务器已授理并等待发送中!";
  524. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  525. }
  526. else
  527. {
  528. // WebCustomer.CloudServerData.DAL.SystemLogDAL.Single(Global.DbConn)
  529. // .SaveControlLog(
  530. // "无",
  531. // WebCustomer.CloudServerData.Enum.EnumLogType.短信发送.ToString(),
  532. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.ID,
  533. // WebCustomer.CloudServerData.DAL.UserDAL.UserModel.user_UserName,
  534. // "短信发送失败(" + SmsCodeToMessage(dyObj.data.code) + "):" + tempText
  535. //);
  536. // return new AjaxResult(EnumCode.AjaxResultCode.请求失败, SmsCodeToMessage(dyObj.data.code));
  537. dynamic dyObj1 = new ExpandoObject();
  538. dyObj1.code = 199;
  539. dyObj1.info = tempText;
  540. dyObj1.data = SmsCodeToMessage(dyObj.data.code);
  541. PrintData(context, Newtonsoft.Json.JsonConvert.SerializeObject(dyObj1));
  542. }
  543. }
  544. //if (chargeDetail.DeleteList("ID ", "'" + id + "' "))
  545. //{
  546. // return new AjaxResult(EnumCode.AjaxResultCode.请求成功, "删除成功!");
  547. //}
  548. //else
  549. //{
  550. // return new AjaxResult(EnumCode.AjaxResultCode.请求失败, "删除失败!");
  551. //}
  552. }
  553. string SmsCodeToMessage(int code)
  554. {
  555. switch (code)
  556. {
  557. case -1:
  558. return "当前账号余额不足";
  559. case -2:
  560. return "当前账号错误";
  561. case -3:
  562. return "当前密码错误";
  563. case -4:
  564. return "参数不够或参数内容的类型错误";
  565. case -5:
  566. return "手机号码格式不对";
  567. case -6:
  568. return "短信内容编码不对";
  569. case -7:
  570. return "短信内容含有敏感字符";
  571. case -8:
  572. return "无接收数据";
  573. case -9:
  574. return "系统维护中";
  575. case -10:
  576. return "手机号码数量超长_每次最多5000个";
  577. case -11:
  578. return "短信内容超长_每条390个字符";
  579. case -12:
  580. return "其它错误";
  581. case -13:
  582. return "服务器错误";
  583. case -14:
  584. return "域名不正确 ";
  585. case -15:
  586. return "域名所在服务器未提交过IP ";
  587. case -16:
  588. return "硬件码不能小于5个字符";
  589. case -17:
  590. return "服务器连接失败";
  591. case -18:
  592. return "硬件码不能为空";
  593. case -19:
  594. return "查询的短信记录不存在或已被删除";
  595. case -20:
  596. return "短信超时过期忽略发送";
  597. case -21:
  598. return "提交异常_请联系服务商解决";
  599. default:
  600. return "不可知错误编码";
  601. }
  602. }
  603. string ReplaceSmsData(Model_ShortMessageTemple messageTempleModel,
  604. string cd_OrdNumber, string cd_CusNames,string cd_CusGenders,string cd_CusPhones,
  605. string cd_OrderType,string cd_BaiduUrl,string cd_BaiduCode)
  606. {
  607. string templeText = messageTempleModel.smt_TempleText;
  608. templeText = templeText.Replace("DDH", cd_OrdNumber);
  609. templeText = templeText.Replace("KHM",cd_CusNames);
  610. templeText = templeText.Replace("KHXB", cd_CusGenders);
  611. templeText = templeText.Replace("KHDH", cd_CusPhones);
  612. templeText = templeText.Replace("DDLX", cd_OrderType);
  613. templeText = templeText.Replace("LJDZ", cd_BaiduUrl);
  614. templeText = templeText.Replace("LJYZM", cd_BaiduCode);
  615. return templeText;
  616. }
  617. public bool IsReusable
  618. {
  619. get
  620. {
  621. return false;
  622. }
  623. }
  624. }
  625. }