using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Xml; using System.Data; using ResfullApi.Models; using System.Configuration; using Newtonsoft.Json.Linq; using ResfullApi.Models.edu; using Newtonsoft.Json; using Microsoft.AspNetCore.Mvc; using CommonObj.model; namespace ApiProcess.Controllers { [ApiController] [Route("api/[controller]/[action]/data")] public class edu : ControllerBase { static readonly log4net.ILog logger = log4net.LogManager.GetLogger(typeof(edu)); //{"users":"50912345678","serviceId":"2","categoryCode":"VOCABULARY"} [HttpPost] public IActionResult getLessonOfCategory([FromBody] dynamic sendData) { ////log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); ////log4net.Config.XmlConfigurator.Configure(); LESSONOFCATEGORY response = new LESSONOFCATEGORY(); 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 categoryCode = Convert.ToString(userObj["categoryCode"]); if (string.IsNullOrEmpty(categoryCode)) categoryCode = "-1"; if (string.IsNullOrEmpty(users)) users = "-1"; logger.Info("New request income getLessonOfCategory :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.CATEGORY_GET(users, serviceid, categoryCode); logger.Info("Call database CATEGORY_GET success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "success"; response.LIST_CATEGORY = new CATEGORY[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { CATEGORY cateObj = new CATEGORY(); cateObj.ID = ds_regist.Tables[0].Rows[j]["ID"].ToString(); cateObj.CODE = ds_regist.Tables[0].Rows[j]["CODE"].ToString(); cateObj.NAME = ds_regist.Tables[0].Rows[j]["NAME"].ToString(); cateObj.DESCRIPTION = ds_regist.Tables[0].Rows[j]["DESCRIPTION"].ToString(); cateObj.INTRODUCTION = ds_regist.Tables[0].Rows[j]["INTRODUCTION"].ToString(); cateObj.ICON_PATH = ds_regist.Tables[0].Rows[j]["ICON_PATH"].ToString(); cateObj.SERVICE_ID = ds_regist.Tables[0].Rows[j]["SERVICE_ID"].ToString(); DataSet dsCourse = ResfullApi.Models.edu.lotoDataAccess.COURSE_GET(users, serviceid, ds_regist.Tables[0].Rows[j]["ID"].ToString()); if (dsCourse != null & dsCourse.Tables[0].Rows.Count > 0) { cateObj.LIST_COURSE = new COURSE[dsCourse.Tables[0].Rows.Count]; for (int k = 0; k < dsCourse.Tables[0].Rows.Count; k++) { COURSE courseObj = new COURSE(); courseObj.ID = dsCourse.Tables[0].Rows[k]["ID"].ToString(); courseObj.CODE = dsCourse.Tables[0].Rows[k]["CODE"].ToString(); courseObj.NAME = dsCourse.Tables[0].Rows[k]["NAME"].ToString(); courseObj.DESCRIPTION = dsCourse.Tables[0].Rows[k]["DESCRIPTION"].ToString(); courseObj.INTRODUCTION = dsCourse.Tables[0].Rows[k]["INTRODUCTION"].ToString(); courseObj.IS_LEARN = dsCourse.Tables[0].Rows[k]["is_learn"].ToString(); courseObj.EXP_DATE = dsCourse.Tables[0].Rows[k]["expdate"].ToString(); courseObj.ICON_PATH = dsCourse.Tables[0].Rows[k]["ICON_PATH"].ToString(); courseObj.LOGO_PAHT = dsCourse.Tables[0].Rows[k]["LOGO_PAHT"].ToString(); courseObj.CATEGORY_ID = dsCourse.Tables[0].Rows[k]["CATEGORY_ID"].ToString(); DataSet dsLesson = ResfullApi.Models.edu.lotoDataAccess.LESSON_GET(users, serviceid, dsCourse.Tables[0].Rows[k]["ID"].ToString()); if (dsLesson != null & dsLesson.Tables[0].Rows.Count > 0) { courseObj.LIST_LESSON = new LESSON[dsLesson.Tables[0].Rows.Count]; for(int m=0;m< dsLesson.Tables[0].Rows.Count;m++) { LESSON lessonObj = new LESSON(); lessonObj.ID = dsLesson.Tables[0].Rows[m]["ID"].ToString(); lessonObj.CODE = dsLesson.Tables[0].Rows[m]["CODE"].ToString(); lessonObj.NAME = dsLesson.Tables[0].Rows[m]["NAME"].ToString(); lessonObj.DESCRIPTION = dsLesson.Tables[0].Rows[m]["DESCRIPTION"].ToString(); lessonObj.INTRODUCTION = dsLesson.Tables[0].Rows[m]["INTRODUCTION"].ToString(); lessonObj.ICON_PATH = dsLesson.Tables[0].Rows[m]["ICON_PATH"].ToString(); lessonObj.LOGO_PAHT = dsLesson.Tables[0].Rows[m]["LOGO_PAHT"].ToString(); lessonObj.COURSE_ID = dsLesson.Tables[0].Rows[m]["COURSE_ID"].ToString(); courseObj.LIST_LESSON[m] = lessonObj; } } cateObj.LIST_COURSE[k] = courseObj; } } response.LIST_CATEGORY[j] = cateObj; } } else { response.status = "1"; response.message = "Nodata"; } } catch (Exception ex) { response.status = "-1"; response.message = "Err Exception"; } logger.Info("Responase to web: " + response.ToString()); return Ok(response); } //{"users":"50912345678","serviceId":"2","lessonId":"1"} [HttpPost] public IActionResult getContentOfVocabulary([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); VOCABULARY_LIST response = new VOCABULARY_LIST(); 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 lessonId = Convert.ToString(userObj["lessonId"]); if (string.IsNullOrEmpty(lessonId)) lessonId = "-1"; if (string.IsNullOrEmpty(users)) users = "-1"; logger.Info("New request income getContentOfVocabulary :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.VOCABULARY_GET(users, serviceid, lessonId); logger.Info("Call database VOCABULARY_GET success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.LIST_VOCABULARY = new VOCABULARY[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { VOCABULARY obj = new VOCABULARY(); obj.ID = ds_regist.Tables[0].Rows[j]["ID"].ToString(); obj.NAME_GLOBAL = ds_regist.Tables[0].Rows[j]["NAME_GLOBAL"].ToString(); obj.NAME_LOCAL = ds_regist.Tables[0].Rows[j]["NAME_LOCAL"].ToString(); obj.DESCRIPTION_GLOBAL = ds_regist.Tables[0].Rows[j]["DESCRIPTION_GLOBAL"].ToString(); obj.DESCRIPTION_LOCAL = ds_regist.Tables[0].Rows[j]["DESCRIPTION_LOCAL"].ToString(); obj.INTRODUCTION_GLOBAL = ds_regist.Tables[0].Rows[j]["INTRODUCTION_GLOBAL"].ToString(); obj.INTRODUCTION_LOCAL = ds_regist.Tables[0].Rows[j]["INTRODUCTION_LOCAL"].ToString(); obj.CONTENT = ds_regist.Tables[0].Rows[j]["CONTENT"].ToString(); obj.CONTENT_TYPE = ds_regist.Tables[0].Rows[j]["CONTENT_TYPE"].ToString(); obj.EXAMPLE = ds_regist.Tables[0].Rows[j]["EXAMPLE"].ToString(); obj.SPELL = ds_regist.Tables[0].Rows[j]["SPELL"].ToString(); obj.PICTURE = ds_regist.Tables[0].Rows[j]["PICTURE"].ToString(); obj.LESSON_ID = ds_regist.Tables[0].Rows[j]["LESSON_ID"].ToString(); response.LIST_VOCABULARY[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); } //{"users":"50912345678","serviceId":"2","lessonId":"7"} [HttpPost] public IActionResult getContentOfListen([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); LISTEN_LIST response = new LISTEN_LIST(); 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 lessonId = Convert.ToString(userObj["lessonId"]); if (string.IsNullOrEmpty(users)) users = "-1"; if (string.IsNullOrEmpty(lessonId)) lessonId = "-1"; logger.Info("New request income getContentOfVocabulary :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.LISTEN_GET(users, serviceid, lessonId); logger.Info("Call database VOCABULARY_GET success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.LIST_LISTEN = new LISTEN[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { LISTEN obj = new LISTEN(); obj.ID = ds_regist.Tables[0].Rows[j]["ID"].ToString(); obj.NAME = ds_regist.Tables[0].Rows[j]["NAME"].ToString(); obj.DESCRIPTION = ds_regist.Tables[0].Rows[j]["DESCRIPTION"].ToString(); obj.INTRODUCTION_GLOBAL = ds_regist.Tables[0].Rows[j]["INTRODUCTION_GLOBAL"].ToString(); obj.INTRODUCTION_LOCAL = ds_regist.Tables[0].Rows[j]["INTRODUCTION_LOCAL"].ToString(); obj.PICTURE = ds_regist.Tables[0].Rows[j]["PICTURE"].ToString(); obj.CONTENT = ds_regist.Tables[0].Rows[j]["CONTENT"].ToString(); obj.CONTENT_TYPE = ds_regist.Tables[0].Rows[j]["CONTENT_TYPE"].ToString(); obj.LESSON_ID = ds_regist.Tables[0].Rows[j]["LESSON_ID"].ToString(); response.LIST_LISTEN[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); } //{"users":"50912345678","serviceId":"2","lessonId":"7"} [HttpPost] public IActionResult getContentOfGrammar([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); GRAMMAR_LIST response = new GRAMMAR_LIST(); 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 lessonId = Convert.ToString(userObj["lessonId"]); if (string.IsNullOrEmpty(lessonId)) lessonId = "-1"; if (string.IsNullOrEmpty(users)) users = "-1"; logger.Info("New request income getContentOfVocabulary :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.GRAMMAR_GET(users, serviceid, lessonId); logger.Info("Call database VOCABULARY_GET success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.LIST_GRAMMAR = new GRAMMAR[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { GRAMMAR grammarObj = new GRAMMAR(); grammarObj.ID = ds_regist.Tables[0].Rows[j]["ID"].ToString(); grammarObj.NAME = ds_regist.Tables[0].Rows[j]["NAME"].ToString(); grammarObj.DESCRIPTION = ds_regist.Tables[0].Rows[j]["DESCRIPTION"].ToString(); grammarObj.INTRODUCTION = ds_regist.Tables[0].Rows[j]["INTRODUCTION"].ToString(); grammarObj.PICTURE = ds_regist.Tables[0].Rows[j]["PICTURE"].ToString(); grammarObj.LESSON_ID = ds_regist.Tables[0].Rows[j]["LESSON_ID"].ToString(); DataSet dsGrammarEx = ResfullApi.Models.edu.lotoDataAccess.GRAMMAR_EX_GET(users, serviceid, ds_regist.Tables[0].Rows[j]["ID"].ToString()); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { grammarObj.LIST_GRAMMAR_EX = new GRAMMAR_EX[dsGrammarEx.Tables[0].Rows.Count]; for (int k = 0; k < dsGrammarEx.Tables[0].Rows.Count; k++) { GRAMMAR_EX grammarExObj = new GRAMMAR_EX(); grammarExObj.ID = dsGrammarEx.Tables[0].Rows[k]["ID"].ToString(); grammarExObj.NAME = dsGrammarEx.Tables[0].Rows[k]["NAME"].ToString(); grammarExObj.DESCRIPTION = dsGrammarEx.Tables[0].Rows[k]["DESCRIPTION"].ToString(); grammarExObj.INTRODUCTION = dsGrammarEx.Tables[0].Rows[k]["INTRODUCTION"].ToString(); grammarExObj.PICTURE = dsGrammarEx.Tables[0].Rows[k]["PICTURE"].ToString(); grammarExObj.CONTENT = dsGrammarEx.Tables[0].Rows[k]["CONTENT"].ToString(); grammarExObj.CONTENT_TYPE = dsGrammarEx.Tables[0].Rows[k]["CONTENT_TYPE"].ToString(); grammarExObj.GRAMMAR_ID = dsGrammarEx.Tables[0].Rows[k]["GRAMMAR_ID"].ToString(); grammarObj.LIST_GRAMMAR_EX[k] = grammarExObj; } } response.LIST_GRAMMAR[j] = grammarObj; } } 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); } //{"users":"50912345678","serviceId":"2","lessonId":"1"} [HttpPost] public IActionResult getContentOfQuestion([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); QUESTION_LIST response = new QUESTION_LIST(); 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 lessonId = Convert.ToString(userObj["lessonId"]); if (string.IsNullOrEmpty(lessonId)) lessonId = "-1"; if (string.IsNullOrEmpty(users)) users = "-1"; logger.Info("New request income getContentOfQuestion :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.QUESTION_GET(users, serviceid, lessonId); logger.Info("Call database VOCABULARY_GET success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.LIST_QUESTION = new QUESTION[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { QUESTION obj = new QUESTION(); obj.ID = ds_regist.Tables[0].Rows[j]["ID"].ToString(); obj.NAME = ds_regist.Tables[0].Rows[j]["NAME"].ToString(); obj.DESCRIPTION = ds_regist.Tables[0].Rows[j]["DESCRIPTION"].ToString(); obj.ICON_PATH = ds_regist.Tables[0].Rows[j]["ICON_PATH"].ToString(); obj.CONTENT = ds_regist.Tables[0].Rows[j]["CONTENT"].ToString(); obj.CONTENT_TYPE = ds_regist.Tables[0].Rows[j]["CONTENT_TYPE"].ToString(); obj.QUESTION_TYPE = ds_regist.Tables[0].Rows[j]["QUESTION_TYPE"].ToString(); obj.ANSWER_TRUE = ds_regist.Tables[0].Rows[j]["ANSWER_TRUE"].ToString(); obj.ANSWER1 = ds_regist.Tables[0].Rows[j]["ANSWER1"].ToString(); obj.ANSWER2 = ds_regist.Tables[0].Rows[j]["ANSWER2"].ToString(); obj.ANSWER3 = ds_regist.Tables[0].Rows[j]["ANSWER3"].ToString(); obj.ANSWER4 = ds_regist.Tables[0].Rows[j]["ANSWER4"].ToString(); response.LIST_QUESTION[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); } // {"users":"123","serviceId":"23","lessonId":"1",list} [HttpPost] public IActionResult getAnsweerOfQuestion([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); responseObjUtil response = new responseObjUtil(); response.status = "-1"; response.message = "Err unknow"; try { ANSWER_RESULT data = JsonConvert.DeserializeObject(sendData.ToString()); logger.Info("New request income getAnsweerOfQuestion :" + data.ToString()); string lessonId = data.LESSON_ID; string question_info = ""; if(data.ANSWER_LIST.Length>0) { for(int i=0;i 0) { response.status = ds_regist.Tables[0].Rows[0]["status"].ToString(); response.message = ds_regist.Tables[0].Rows[0]["message"].ToString(); } } catch (Exception ex) { logger.Info("Err:" + ex.ToString()); } logger.Info("Responase to web: " + response.ToString()); return Ok(response); } //{"users":"50940240716","serviceId":"30","courseId":"50912345678","codeBuy":"1","requestId":"-1","otp":"-1"} public IActionResult buyCourse([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); mpsResponseEx response = new mpsResponseEx(); response.status = "-1"; response.message = "Err unknow"; logger.Info("New request income buyCourse :" + sendData.ToString()); string mps_ip = "127.0.0.1"; string mps_port = "0000"; try { var userObj = JObject.Parse(sendData.ToString()); string users = Convert.ToString(userObj["users"]); string serviceid = Convert.ToString(userObj["serviceId"]); string courseId = Convert.ToString(userObj["courseId"]); string codeBuy = Convert.ToString(userObj["codeBuy"]); string requestId = Convert.ToString(userObj["requestId"]); string otp = Convert.ToString(userObj["otp"]); if (string.IsNullOrEmpty(courseId)) courseId = "-1"; if (string.IsNullOrEmpty(requestId)) requestId = "-1"; if (string.IsNullOrEmpty(otp)) otp = "-1"; DataSet ds_mps_info = DataAccess.MPS_GET_BY_ID(serviceid); mps_ip = ds_mps_info.Tables[0].Rows[0]["MPS_IP"].ToString(); mps_port = ds_mps_info.Tables[0].Rows[0]["MPS_PORT"].ToString(); logger.Info("Start call charg money"); string data = "requestId=" + requestId + "&msisdn=" + users + "&otp=" + otp + "&serviceid=" + serviceid + "&subServiceCode=" + codeBuy; logger.Info("Request call charge: " + data); string response111 = Common.SocketUnSyn(data, mps_ip, Convert.ToInt32(mps_port), 12000); logger.Info("Result call charge: " + response111); mpsResponse resCallMps = JsonConvert.DeserializeObject(response111); if (resCallMps.responseCode == "0") { logger.Info("charge money success :"); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.COURSE_BUY(users, serviceid, courseId, codeBuy); logger.Info("Call database COURSE_BUY success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = ds_regist.Tables[0].Rows[0]["status"].ToString(); response.message = ds_regist.Tables[0].Rows[0]["message"].ToString(); response.requestId = resCallMps.requestID; return Ok(response); } } else if (resCallMps.responseCode == "100") { response.status = "100"; response.message = "Send OTP success to user, pls send this function with OTP & requestID agian for finsh"; response.requestId = resCallMps.requestID; return Ok(response); } else if (resCallMps.responseCode == "401") { response.status = "-12"; response.message = "Not enough money "; return Ok(response); } else if (resCallMps.responseCode == "415") { response.status = "-13"; response.message = "Invalid OTP code"; return Ok(response); } else if (resCallMps.responseCode == "416") { response.status = "-14"; response.message = "Incorrect OTP code/ OTP code expired"; return Ok(response); } else if (resCallMps.responseCode == "417") { response.status = "-15"; response.message = "Confirm OTP via USSD time out"; return Ok(response); } else { response.status = "-10"; response.message = "System err"; return Ok(response); } } catch (Exception ex) { logger.Info("Err:" + ex.ToString()); } return Ok(response); } //{"users":"856000111113","serviceId":"2","categoryCode":"VOCABULARY"} [HttpPost] public IActionResult getCourseHis([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); COURSE_HIS_LIST response = new COURSE_HIS_LIST(); 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 categoryCode = Convert.ToString(userObj["categoryCode"]); logger.Info("New request income getCourseHis :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.COURSE_GET_HIS(users, serviceid, categoryCode); logger.Info("Call database COURSE_GET_HIS success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.LIST_COURSE_HIS = new COURSE_HIS[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { COURSE_HIS courseObj = new COURSE_HIS(); courseObj.ID = ds_regist.Tables[0].Rows[j]["ID"].ToString(); courseObj.CODE = ds_regist.Tables[0].Rows[j]["CODE"].ToString(); courseObj.NAME = ds_regist.Tables[0].Rows[j]["NAME"].ToString(); courseObj.DESCRIPTION = ds_regist.Tables[0].Rows[j]["DESCRIPTION"].ToString(); courseObj.INTRODUCTION = ds_regist.Tables[0].Rows[j]["INTRODUCTION"].ToString(); courseObj.IS_LEARN = ds_regist.Tables[0].Rows[j]["is_learn"].ToString(); courseObj.EXP_DATE = ds_regist.Tables[0].Rows[j]["expdate"].ToString(); courseObj.ICON_PATH = ds_regist.Tables[0].Rows[j]["ICON_PATH"].ToString(); courseObj.LOGO_PAHT = ds_regist.Tables[0].Rows[j]["LOGO_PAHT"].ToString(); courseObj.CATEGORY_ID = ds_regist.Tables[0].Rows[j]["CATEGORY_ID"].ToString(); courseObj.TOTAL_LESSON = ds_regist.Tables[0].Rows[j]["TOTAL_LESSON"].ToString(); courseObj.TOTAL_LESSON_LEARN = ds_regist.Tables[0].Rows[j]["TOTAL_LESSON_LEARN"].ToString(); courseObj.PERCENT = ds_regist.Tables[0].Rows[j]["PERCENT"].ToString(); response.LIST_COURSE_HIS[j] = courseObj; } } 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); } //{"users":"856000111113","serviceId":"2"} [HttpPost] public IActionResult getRanking([FromBody] dynamic sendData) { //log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //log4net.Config.XmlConfigurator.Configure(); RANKING_LIST response = new RANKING_LIST(); 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"]); logger.Info("New request income getRanking :" + sendData.ToString()); DataSet ds_regist = ResfullApi.Models.edu.lotoDataAccess.RANKINGE_GET_LIST(users, serviceid); logger.Info("Call database RANKINGE_GET_LIST success:"); if (ds_regist != null & ds_regist.Tables[0].Rows.Count > 0) { response.status = "0"; response.message = "Success"; response.LIST_RANKING = new RANKING[ds_regist.Tables[0].Rows.Count]; for (int j = 0; j < ds_regist.Tables[0].Rows.Count; j++) { RANKING obj = new RANKING(); obj.SEQ = ds_regist.Tables[0].Rows[j]["SEQ"].ToString(); obj.USERS_ID = ds_regist.Tables[0].Rows[j]["USERS_ID"].ToString(); obj.USERS = ds_regist.Tables[0].Rows[j]["USERS"].ToString(); obj.MSISDN = ds_regist.Tables[0].Rows[j]["MSISDN"].ToString(); obj.SERVICE_ID = ds_regist.Tables[0].Rows[j]["SERVICE_ID"].ToString(); obj.FULLNAME = ds_regist.Tables[0].Rows[j]["FULLNAME"].ToString(); obj.BIRTHDAY = ds_regist.Tables[0].Rows[j]["BIRTHDAY"].ToString(); obj.PICTURE = ds_regist.Tables[0].Rows[j]["PICTURE"].ToString(); obj.TOTAL_SCORE = ds_regist.Tables[0].Rows[j]["TOTAL_SCORE"].ToString(); response.LIST_RANKING[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); } } }