webservice.cs 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Net;
  5. using System.Net.Http;
  6. using System.Xml;
  7. using System.Data;
  8. using ResfullApi.Models;
  9. using System.Configuration;
  10. using Microsoft.AspNetCore.Mvc;
  11. using Microsoft.Extensions.Configuration;
  12. using System.Xml.Linq;
  13. using ApiProcess.Process;
  14. namespace ApiProcess.Controllers
  15. {
  16. [Route("api/[controller]/[action]/data")]
  17. [ApiController]
  18. public class webservice : ControllerBase
  19. {
  20. /*
  21. http://10.226.40.11:8383/api/webservice/subRequest/data
  22. * Nhan cac dang ky va huy qua SMS
  23. *
  24. *
  25. * */
  26. static readonly log4net.ILog logger = log4net.LogManager.GetLogger(typeof(webservice));
  27. [HttpPost]
  28. //public string subRequest(HttpRequestMessage request)
  29. // public HttpResponseMessage subRequest(HttpRequestMessage request)
  30. //[Produces("text/xml")]
  31. public IActionResult subRequest([FromBody] XElement xml1)
  32. {
  33. string request = xml1.ToString();
  34. logger.Info("Request subRequest from MPS:" + request);
  35. string result = "";
  36. //string username1 = xml1.GetElementsByTagName("username")[0].InnerText;
  37. string ketqua = "0|success";
  38. ////log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  39. ////log4net.Config.XmlConfigurator.Configure();
  40. try
  41. {
  42. //string ten = xml1.Element("username").Value;
  43. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  44. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  45. XmlDocument xml = new XmlDocument();
  46. //logger.Debug(request.Content.ReadAsStreamAsync().Result);
  47. //xml.Load(request);
  48. xml.LoadXml(request);
  49. string username = xml.GetElementsByTagName("username")[0].InnerText;
  50. string password = xml.GetElementsByTagName("password")[0].InnerText;
  51. string serviceid = xml.GetElementsByTagName("serviceid")[0].InnerText;
  52. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  53. string chargetime = xml.GetElementsByTagName("chargetime")[0].InnerText;
  54. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  55. string mode = xml.GetElementsByTagName("mode")[0].InnerText;
  56. string amount = xml.GetElementsByTagName("amount")[0].InnerText;
  57. string command = xml.GetElementsByTagName("command")[0].InnerText;
  58. string transaction = xml.GetElementsByTagName("transaction")[0].InnerText;
  59. DataSet ds = webserviceDataAccess.ProcessSub(username,
  60. password,
  61. serviceid,
  62. msisdn,
  63. chargetime,
  64. paramss,
  65. mode,
  66. amount,
  67. command, prefix, transaction);
  68. if (ds != null & ds.Tables[0].Rows.Count > 0)
  69. {
  70. ketqua = ds.Tables[0].Rows[0][0].ToString();
  71. }
  72. logger.Debug("Process Request from MPS suceess");
  73. }
  74. catch (Exception ex)
  75. {
  76. logger.Debug("Process sub err: " + ex.ToString());
  77. }
  78. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  79. result = result + @"<S:Body>";
  80. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  81. result = result + @"<return>";
  82. result = result + ketqua;
  83. result = result + @"</return>";
  84. result = result + @"</subRequestResponse>";
  85. result = result + @"</S:Body>";
  86. result = result + @"</S:Envelope>";
  87. logger.Debug(result);
  88. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  89. Response.Headers.Add("Content-Type", "text/xml");
  90. //return Ok(result);
  91. return Content(result);
  92. }
  93. [HttpPost]
  94. //public string subRequest(HttpRequestMessage request)
  95. // public HttpResponseMessage subRequest(HttpRequestMessage request)
  96. //[Produces("text/xml")]
  97. public IActionResult subCheckBuy1Time([FromBody] XElement xml1)
  98. {
  99. string request = xml1.ToString();
  100. logger.Info("Request subCheckBuy1Time to MPS:" + request);
  101. string result = "";
  102. //string username1 = xml1.GetElementsByTagName("username")[0].InnerText;
  103. string ketqua = "0|success";
  104. ////log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  105. ////log4net.Config.XmlConfigurator.Configure();
  106. try
  107. {
  108. //string ten = xml1.Element("username").Value;
  109. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  110. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  111. XmlDocument xml = new XmlDocument();
  112. //logger.Debug(request.Content.ReadAsStreamAsync().Result);
  113. //xml.Load(request);
  114. xml.LoadXml(request);
  115. string username = xml.GetElementsByTagName("username")[0].InnerText;
  116. string password = xml.GetElementsByTagName("password")[0].InnerText;
  117. string serviceid = xml.GetElementsByTagName("serviceid")[0].InnerText;
  118. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  119. string chargetime = xml.GetElementsByTagName("chargetime")[0].InnerText;
  120. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  121. string mode = xml.GetElementsByTagName("mode")[0].InnerText;
  122. string amount = xml.GetElementsByTagName("amount")[0].InnerText;
  123. string command = xml.GetElementsByTagName("command")[0].InnerText;
  124. string transaction = xml.GetElementsByTagName("transaction")[0].InnerText;
  125. DataSet ds = webserviceDataAccess.ProcessCheckBuy1Time(username,
  126. password,
  127. serviceid,
  128. msisdn,
  129. chargetime,
  130. paramss,
  131. mode,
  132. amount,
  133. command, prefix, transaction);
  134. if (ds != null & ds.Tables[0].Rows.Count > 0)
  135. {
  136. ketqua = ds.Tables[0].Rows[0][0].ToString();
  137. }
  138. logger.Debug("Process Request from MPS suceess");
  139. }
  140. catch (Exception ex)
  141. {
  142. logger.Debug("Process sub err: " + ex.ToString());
  143. }
  144. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  145. result = result + @"<S:Body>";
  146. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  147. result = result + @"<return>";
  148. result = result + ketqua;
  149. result = result + @"</return>";
  150. result = result + @"</subRequestResponse>";
  151. result = result + @"</S:Body>";
  152. result = result + @"</S:Envelope>";
  153. logger.Debug(result);
  154. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  155. Response.Headers.Add("Content-Type", "text/xml");
  156. //return Ok(result);
  157. return Content(result);
  158. }
  159. /*
  160. http://10.226.40.11:8383/api/webservice/subUssdRequest/data
  161. * Nhan cac dang ky va huy qua USSD
  162. *
  163. *
  164. * */
  165. [HttpPost]
  166. //public string subRequest(HttpRequestMessage request)
  167. //public HttpResponseMessage subUssdRequest(HttpRequestMessage request)
  168. public IActionResult subUssdRequest([FromBody] XElement xml1)
  169. {
  170. string request = xml1.ToString();
  171. logger.Info("Request subUssdRequest from MPS:" + request);
  172. string result = "";
  173. string ketqua = "0";
  174. //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  175. //log4net.Config.XmlConfigurator.Configure();
  176. try
  177. {
  178. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  179. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  180. XmlDocument xml = new XmlDocument();
  181. xml.LoadXml(request);
  182. string username = xml.GetElementsByTagName("username")[0].InnerText;
  183. string password = xml.GetElementsByTagName("password")[0].InnerText;
  184. string servicename = xml.GetElementsByTagName("servicename")[0].InnerText;
  185. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  186. string chargetime = xml.GetElementsByTagName("chargetime")[0].InnerText;
  187. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  188. string mode = xml.GetElementsByTagName("mode")[0].InnerText;
  189. string amount = xml.GetElementsByTagName("amount")[0].InnerText;
  190. string transactionId = xml.GetElementsByTagName("transactionId")[0].InnerText;
  191. string other_and_more = xml.GetElementsByTagName("other_and_more")[0].InnerText;
  192. DataSet ds = webserviceDataAccess.ProcessSubUssd(username,
  193. password,
  194. servicename,
  195. msisdn,
  196. chargetime,
  197. paramss,
  198. mode,
  199. amount,
  200. transactionId,
  201. other_and_more,
  202. prefix);
  203. if (ds != null & ds.Tables[0].Rows.Count > 0)
  204. {
  205. ketqua = "0";
  206. }
  207. logger.Debug("Process Request from MPS suceess");
  208. }
  209. catch (Exception ex)
  210. {
  211. logger.Debug("Process sub err: " + ex.ToString());
  212. }
  213. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  214. result = result + @"<S:Body>";
  215. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  216. result = result + @"<return>";
  217. result = result + ketqua;
  218. result = result + @"</return>";
  219. result = result + @"</subRequestResponse>";
  220. result = result + @"</S:Body>";
  221. result = result + @"</S:Envelope>";
  222. logger.Debug(result);
  223. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  224. //return result;
  225. Response.Headers.Add("Content-Type", "text/xml");
  226. //return Ok(result);
  227. return Content(result);
  228. }
  229. /*
  230. http://10.226.40.11:8383/api/webservice/resultRequest/data
  231. * Nhan cac ket qua charge tu MPS
  232. *
  233. *
  234. * */
  235. [HttpPost]
  236. //public string resultRequest(HttpRequestMessage request)
  237. //public HttpResponseMessage resultRequest(HttpRequestMessage request)
  238. public IActionResult resultRequest([FromBody] XElement xml1)
  239. {
  240. string request = xml1.ToString();
  241. logger.Info("Request resultRequest from MPS:" + request);
  242. string result = "";
  243. string ketqua = "0|success";
  244. //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  245. //log4net.Config.XmlConfigurator.Configure();
  246. try
  247. {
  248. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  249. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  250. if (request == null) logger.Debug("Request charge from MPS is null");
  251. XmlDocument xml = new XmlDocument();
  252. xml.LoadXml(request);
  253. string username = xml.GetElementsByTagName("username")[0].InnerText;
  254. string password = xml.GetElementsByTagName("password")[0].InnerText;
  255. string serviceid = xml.GetElementsByTagName("serviceid")[0].InnerText;
  256. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  257. string chargetime = xml.GetElementsByTagName("chargetime")[0].InnerText;
  258. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  259. string mode = xml.GetElementsByTagName("mode")[0].InnerText;
  260. string amount = xml.GetElementsByTagName("amount")[0].InnerText;
  261. string cmd = xml.GetElementsByTagName("command")[0].InnerText;
  262. string transaction = xml.GetElementsByTagName("transaction")[0].InnerText;
  263. chargeObj _obj=new chargeObj();
  264. _obj.username = username;
  265. _obj.password = password;
  266. _obj.serviceid = serviceid;
  267. _obj.msisdn = msisdn;
  268. _obj.chargetime = chargetime;
  269. _obj.paramss = paramss;
  270. _obj.mode = mode;
  271. _obj.amount = amount;
  272. _obj.cmd = cmd;
  273. _obj.transaction = transaction;
  274. _obj.prefix = prefix;
  275. Variable.chargerObj.Enqueue(_obj);
  276. /*
  277. DataSet ds = webserviceDataAccess.ProcessCharge(username,
  278. password,
  279. serviceid,
  280. msisdn,
  281. chargetime,
  282. paramss,
  283. mode,
  284. amount,
  285. prefix,cmd,transaction);
  286. */
  287. //if (ds != null & ds.Tables[0].Rows.Count > 0)
  288. //{
  289. // ketqua = ds.Tables[0].Rows[0][0].ToString();
  290. //}
  291. logger.Debug("Input queu success");
  292. }
  293. catch (Exception ex)
  294. {
  295. logger.Debug("Process charge err: " + ex.ToString());
  296. }
  297. ketqua = "0";
  298. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  299. result = result + @"<S:Body>";
  300. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  301. result = result + @"<return>";
  302. result = result + ketqua;
  303. result = result + @"</return>";
  304. result = result + @"</subRequestResponse>";
  305. result = result + @"</S:Body>";
  306. result = result + @"</S:Envelope>";
  307. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  308. logger.Debug(result);
  309. Response.Headers.Add("Content-Type", "text/xml");
  310. //return Ok(result);
  311. return Content(result);
  312. }
  313. /*
  314. http://10.226.40.11:8383/api/webservice/proKeyWord/data
  315. * Xu ly cu phap tu MPS
  316. *
  317. *
  318. * */
  319. [HttpPost]
  320. //public string resultRequest(HttpRequestMessage request)
  321. //public HttpResponseMessage proKeyWord(HttpRequestMessage request)
  322. public IActionResult proKeyWord([FromBody] XElement xml1)
  323. {
  324. string request = xml1.ToString();
  325. logger.Info("Request proKeyWord from MPS:" + request);
  326. string result = "";
  327. string ketqua = "0|success";
  328. //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  329. //log4net.Config.XmlConfigurator.Configure();
  330. try
  331. {
  332. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  333. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  334. if (request == null) logger.Debug("Request proKeyWord from MPS is null");
  335. XmlDocument xml = new XmlDocument();
  336. xml.LoadXml(request);
  337. string username = xml.GetElementsByTagName("username")[0].InnerText;
  338. string password = xml.GetElementsByTagName("password")[0].InnerText;
  339. string serviceid = xml.GetElementsByTagName("serviceid")[0].InnerText;
  340. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  341. string chargetime = xml.GetElementsByTagName("chargetime")[0].InnerText;
  342. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  343. string mode = xml.GetElementsByTagName("mode")[0].InnerText;
  344. string amount = xml.GetElementsByTagName("amount")[0].InnerText;
  345. string cmd = xml.GetElementsByTagName("command")[0].InnerText;
  346. string transaction = xml.GetElementsByTagName("transaction")[0].InnerText;
  347. DataSet ds = webserviceDataAccess.ProcessKeyWord(username,
  348. password,
  349. serviceid,
  350. msisdn,
  351. chargetime,
  352. paramss,
  353. mode,
  354. amount,
  355. prefix, cmd, transaction);
  356. if (ds != null & ds.Tables[0].Rows.Count > 0)
  357. {
  358. ketqua = ds.Tables[0].Rows[0][0].ToString();
  359. }
  360. logger.Debug("Process Charge from MPS suceess");
  361. }
  362. catch (Exception ex)
  363. {
  364. logger.Debug("Process charge err: " + ex.ToString());
  365. }
  366. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  367. result = result + @"<S:Body>";
  368. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  369. result = result + @"<return>";
  370. result = result + ketqua;
  371. result = result + @"</return>";
  372. result = result + @"</subRequestResponse>";
  373. result = result + @"</S:Body>";
  374. result = result + @"</S:Envelope>";
  375. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  376. logger.Debug(result);
  377. //return result;
  378. Response.Headers.Add("Content-Type", "text/xml");
  379. //return Ok(result);
  380. return Content(result);
  381. }
  382. [HttpPost]
  383. //public string resultRequest(HttpRequestMessage request)
  384. //public HttpResponseMessage contentRequest(HttpRequestMessage request)
  385. public IActionResult contentRequest([FromBody] XElement xml1)
  386. {
  387. string request = xml1.ToString();
  388. logger.Info("Request contentRequest from MPS:" + request);
  389. string result = "";
  390. string ketqua = "";
  391. //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  392. //log4net.Config.XmlConfigurator.Configure();
  393. try
  394. {
  395. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  396. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  397. XmlDocument xml = new XmlDocument();
  398. xml.LoadXml(request);
  399. string username = xml.GetElementsByTagName("username")[0].InnerText;
  400. string password = xml.GetElementsByTagName("password")[0].InnerText;
  401. string serviceid = xml.GetElementsByTagName("serviceid")[0].InnerText;
  402. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  403. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  404. string mode = xml.GetElementsByTagName("mode")[0].InnerText;
  405. string amount = xml.GetElementsByTagName("amount")[0].InnerText;
  406. string transid = xml.GetElementsByTagName("transid")[0].InnerText;
  407. DataSet ds = webserviceDataAccess.ProcessGetContent(username,
  408. password,
  409. serviceid,
  410. msisdn,
  411. transid,
  412. paramss,
  413. mode,
  414. amount,
  415. prefix);
  416. if (ds != null & ds.Tables[0].Rows.Count > 0)
  417. {
  418. string status = ds.Tables[0].Rows[0]["status"].ToString();
  419. string msg = ds.Tables[0].Rows[0]["msg"].ToString();
  420. if (string.IsNullOrEmpty(msg))
  421. ketqua = "0";
  422. else
  423. ketqua = "0|" + msg;
  424. }
  425. logger.Debug("Process Charge from MPS suceess");
  426. }
  427. catch (Exception ex)
  428. {
  429. logger.Debug("Process charge err: " + ex.ToString());
  430. }
  431. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  432. result = result + @"<S:Body>";
  433. result = result + @"<contentRequestResponse xmlns=""http://contentws/xsd"">";
  434. result = result + @"<return>";
  435. result = result + ketqua;
  436. result = result + @"</return>";
  437. result = result + @"</contentRequestResponse>";
  438. result = result + @"</S:Body>";
  439. result = result + @"</S:Envelope>";
  440. logger.Debug(result);
  441. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  442. Response.Headers.Add("Content-Type", "text/xml");
  443. //return Ok(result);
  444. return Content(result);
  445. }
  446. [HttpPost]
  447. //public HttpResponseMessage changeZodiacNew(HttpRequestMessage request)
  448. public IActionResult changeZodiacNew([FromBody] XElement xml1)
  449. {
  450. string request = xml1.ToString();
  451. logger.Info("Request changeZodiacNew from MPS:" + request);
  452. string result = "";
  453. string ketqua = "0|success";
  454. //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  455. //log4net.Config.XmlConfigurator.Configure();
  456. try
  457. {
  458. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  459. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  460. XmlDocument xml = new XmlDocument();
  461. xml.LoadXml(request);
  462. string username = xml.GetElementsByTagName("username")[0].InnerText;
  463. string password = xml.GetElementsByTagName("password")[0].InnerText;
  464. string serviceid = xml.GetElementsByTagName("subServiceId")[0].InnerText;
  465. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  466. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  467. DataSet ds = webserviceDataAccess.changeZodiacNew(username,
  468. password,
  469. serviceid,
  470. msisdn,
  471. paramss
  472. );
  473. if (ds != null & ds.Tables[0].Rows.Count > 0)
  474. {
  475. ketqua = ds.Tables[0].Rows[0][0].ToString();
  476. }
  477. logger.Debug("Process Request change changeZodiacNew suceess");
  478. }
  479. catch (Exception ex)
  480. {
  481. logger.Debug("Process change Zodiac err: " + ex.ToString());
  482. }
  483. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  484. result = result + @"<S:Body>";
  485. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  486. result = result + @"<return>";
  487. result = result + ketqua;
  488. result = result + @"</return>";
  489. result = result + @"</subRequestResponse>";
  490. result = result + @"</S:Body>";
  491. result = result + @"</S:Envelope>";
  492. logger.Debug(result);
  493. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  494. //return result;
  495. Response.Headers.Add("Content-Type", "text/xml");
  496. //return Ok(result);
  497. return Content(result);
  498. }
  499. [HttpPost]
  500. //public HttpResponseMessage changeZodiac(HttpRequestMessage request)
  501. public IActionResult changeZodiac([FromBody] XElement xml1)
  502. {
  503. string request = xml1.ToString();
  504. logger.Info("Request changeZodiac from MPS:" + request);
  505. string result = "";
  506. string ketqua = "0|success";
  507. //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
  508. //log4net.Config.XmlConfigurator.Configure();
  509. try
  510. {
  511. //string prefix = ConfigurationSettings.AppSettings["PREFIX"];
  512. string prefix = Common.GetValuesAppSetting("webConfig", "PREFIX");
  513. XmlDocument xml = new XmlDocument();
  514. xml.LoadXml(request);
  515. string username = xml.GetElementsByTagName("username")[0].InnerText;
  516. string password = xml.GetElementsByTagName("password")[0].InnerText;
  517. string serviceid = xml.GetElementsByTagName("subServiceId")[0].InnerText;
  518. string msisdn = xml.GetElementsByTagName("msisdn")[0].InnerText;
  519. string paramss = xml.GetElementsByTagName("params")[0].InnerText;
  520. DataSet ds = webserviceDataAccess.changeZodiac(username,
  521. password,
  522. serviceid,
  523. msisdn,
  524. paramss
  525. );
  526. if (ds != null & ds.Tables[0].Rows.Count > 0)
  527. {
  528. ketqua = ds.Tables[0].Rows[0][0].ToString();
  529. }
  530. logger.Debug("Process Request change Zodiac suceess");
  531. }
  532. catch (Exception ex)
  533. {
  534. logger.Debug("Process change Zodiac err: " + ex.ToString());
  535. }
  536. result = result + @"<?xml version=""1.0""?> <S:Envelope xmlns:S=""http://schemas.xmlsoap.org/soap/envelope/"" >";
  537. result = result + @"<S:Body>";
  538. result = result + @"<subRequestResponse xmlns=""http://contentws/xsd"">";
  539. result = result + @"<return>";
  540. result = result + ketqua;
  541. result = result + @"</return>";
  542. result = result + @"</subRequestResponse>";
  543. result = result + @"</S:Body>";
  544. result = result + @"</S:Envelope>";
  545. logger.Debug(result);
  546. //return new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(result, System.Text.Encoding.UTF8, "text/xml") }; ;
  547. //return result;
  548. Response.Headers.Add("Content-Type", "text/xml");
  549. //return Ok(result);
  550. return Content(result);
  551. }
  552. }
  553. }