using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; using log4net; using AIAHTML5.API.Constants; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using AIAHTML5.API.Models; using System.Collections; namespace AIAHTML5.API.Controllers { public class LicenseTermConditionController : ApiController { // GET api/licensetermcondition public IEnumerable Get() { return new string[] { "value1", "value2" }; } // GET api/licensetermcondition/5 public string Get(int id) { return "value"; } // POST api/licensetermcondition public HttpResponseMessage Post([FromBody]JObject userLicenseInfo) { ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); logger.Debug("inside POST"); HttpResponseMessage response = null; Newtonsoft.Json.Linq.JObject userInfo = new Newtonsoft.Json.Linq.JObject(); userInfo.Add("accountNumber", userLicenseInfo["licenseeAccountNumber"]); try { int licenseId = Convert.ToInt32(userLicenseInfo["userLicenseId"]); User user = new User(); dynamic userModules = null; // assigned to avoid unassigned local variable compilation error; dynamic result = AIAHTML5.API.Models.Users.UpdateLicenseTerm(userLicenseInfo); if (Convert.ToString(result) != AIAConstants.EXCEPTION_IN_AIAHTML5) { if (Convert.ToInt32(result) > 0) { user.Modules = Users.getModuleListByLicenseId(licenseId); userModules = JsonConvert.SerializeObject(user); response = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(userModules) }; } else { response = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.LICENSE_TERM_CONDITION_UPDATE_FAILED) }; } } else { response = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.EXCEPTION_IN_AIAHTML5) }; } } catch (Exception ex) { logger.Fatal("Exception in UpdateLicenseTerm for AccountNumber =" + userLicenseInfo["licenseeAccountNumber"] + " Exception= " + ex.Message + ", STACKTRACE: " + ex.StackTrace); ArrayList supportMailList = UserUtility.GetSupportMailList(); string mailSubject = AIAConstants.EXCEPTION_IN_AIAHTML5_MAIL_SUBJECT; string mailBody = "MESSAGE: " + ex.Message + ", STACKTRACE: " + ex.StackTrace; UserUtility.SendEmail(userInfo, supportMailList, "", mailSubject, mailBody); response = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(AIAConstants.EXCEPTION_IN_AIAHTML5) }; } return response; } // PUT api/licensetermcondition/5 public void Put(int id, [FromBody]string value) { } // DELETE api/licensetermcondition/5 public void Delete(int id) { } } }