using Newtonsoft.Json.Linq; using ResfullApi.Models; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Net; using System.Net.Http; using Microsoft.AspNetCore.Mvc; using ApiProcess.Models.bet; using Microsoft.Extensions.Caching.Memory; namespace ApiProcess.Controllers { [ApiController] [Route("api/[controller]/[action]/data")] public class happyCall : ControllerBase { static readonly log4net.ILog logger = log4net.LogManager.GetLogger(typeof(happyCall)); private IMemoryCache memoryCache; public happyCall(IMemoryCache memoryCache) { this.memoryCache = memoryCache; } //{"users":"50912345678","serviceId":"2","code":"-1","fromDate":"01/08/2020","toDate":"01/08/2020","winType":"-1"} [HttpPost] public IActionResult searchCode([FromBody] dynamic sendData) { ////log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); ////log4net.Config.XmlConfigurator.Configure(); happyCallList response = new happyCallList(); response.status = "-1"; response.message = "Err unknow"; try { var userObj = JObject.Parse(sendData.ToString()); string users = Convert.ToString(userObj["users"]); string serviceid = Convert.ToString(userObj["serviceId"]); string code = Convert.ToString(userObj["code"]); string fromDate = Convert.ToString(userObj["fromDate"]); string toDate = Convert.ToString(userObj["toDate"]); string winType = Convert.ToString(userObj["winType"]); if (string.IsNullOrEmpty(users)) users = "-1"; if (string.IsNullOrEmpty(code)) code = "-1"; if (string.IsNullOrEmpty(winType)) winType = "-1"; logger.Info("New request income searchCode Happy :" + sendData.ToString()); DataSet ds_regist = happyDataAccess.SearchCode(users, serviceid, code,fromDate,toDate,winType); logger.Info("Call database SearchCode success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.listHappCall = new ResfullApi.Models.happyCall[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { ResfullApi.Models.happyCall obj = new ResfullApi.Models.happyCall(); obj.id = ds_regist.Tables[0].Rows[j]["id"].ToString(); obj.msisdn = ds_regist.Tables[0].Rows[j]["msisdn"].ToString(); obj.code = ds_regist.Tables[0].Rows[j]["code"].ToString(); obj.sysdate = ds_regist.Tables[0].Rows[j]["vsysdate"].ToString(); obj.isSub = ds_regist.Tables[0].Rows[j]["IS_SUB"].ToString(); obj.isWin = ds_regist.Tables[0].Rows[j]["IS_WIN"].ToString(); obj.type = ds_regist.Tables[0].Rows[j]["CMD"].ToString(); response.listHappCall[j] = obj; } } else { response.status = "1"; response.message = "No data"; } } catch (Exception ex) { response.status = "-1"; response.message = "Err unknow"; logger.Info("Err:" + ex.ToString()); } logger.Info("Responase to web: " + response.ToString()); return Ok(response); } } }