EOS/Controllers/DropDownDataController.cs
Nidhi Bhargava f0c1ab20e1 code push
2025-09-04 16:25:07 +05:30

300 lines
12 KiB
C#

using LoggingHelper;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using GODATA.RoleServices;
using GODATA.AuthenticationServices;
using RestSharp;
using Newtonsoft.Json;
using Kendo.Mvc.UI;
using Kendo.Mvc.Extensions;
using GODATA.Models.Ticket;
using GODATA.Models.UserInventory;
using GODATA.Models.DropDownData;
namespace GODATA.Controllers
{
[GODATA.MvcApplication.SessionExpire]
public class DropDownDataController : Controller
{
/// <summary>
/// Global variable for Notifications repository.
/// </summary>
private TicketAdministrationRepository objTicketAdministrationRepository = null;
/// <summary>
/// Global variable for Ticket administration repository.
/// </summary>
private DropDownDataRepository objDropDownDataRepository = null;
#region Global Variables
/// <summary>
/// Represent object of LoggingUtility class
/// </summary>
LoggingUtility objLog = new LoggingUtility();
/// <summary>
/// Represent string object contain log file path
/// </summary>
//string path = "~/Log/";
string path = System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["PathLog"]);
/// <summary>
/// Represent string object contain log status
/// </summary>
string logtf = (ConfigurationManager.AppSettings["Log"]);
/// <summary>
/// Represent string object contain Error log status
/// </summary>
string errorlogtf = (ConfigurationManager.AppSettings["ErrorLog"]);
/// <summary>
/// getting application name from AppSetting in web.config file
/// </summary>
private static string _appName = ConfigurationManager.AppSettings["ApplicationName"].ToString();
/// <summary>
/// getting web api token from AppSetting in web.config file
/// </summary>
private static string _securityToken = ConfigurationManager.AppSettings["RESTfulSecurityToken"].ToString();
/// <summary>
/// getting user's utc minutes from session
/// </summary>
private static string _timeOffSetMinutes = null;
/// <summary>
/// getting login user's id
/// </summary>
private static string _LoginUserId = null;
/// <summary>
/// getting login user's name
/// </summary>
private static string _LoginUserName = null;
/// <summary>
/// getting time zone id from AppSetting in web.config file
/// </summary>
private static string _TimeZoneId = ConfigurationManager.AppSettings["TimeZoneId"].ToString();
/// <summary>
/// getting rest api url from AppSetting in web.config file
/// </summary>
private static string _RestClientUrl = ConfigurationManager.AppSettings["RestfulApiUrl"].ToString();
#endregion
public ActionResult Index()
{
return View();
}
/// <summary>
/// Get all languages list
/// </summary>
/// <returns>returns json of language list</returns>
public ActionResult GetAllLanguageList()
{
objLog.AddLogFile("DropDownData_GetAllLanguagesList", DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
try
{
objDropDownDataRepository = new DropDownDataRepository();
//Get Languages List
List<LanguageModel> oLanguageList = objDropDownDataRepository.GetLanguagesList();
List<SelectListItem> oLanguageNameList = new List<SelectListItem>();
foreach (LanguageModel items in oLanguageList)
{
oLanguageNameList.Add(new SelectListItem { Text = items.LanguageName, Value = items.LanguageName });
}
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = true, list = oLanguageNameList.OrderBy(o => o.Text) }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
objLog.ErrorLogFile("DropDownData_GetAllLanguagesList", ex.Message, path, errorlogtf);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
throw ex;
}
}
/// <summary>
/// Get source list of toll free no.
/// </summary>
/// <returns>returns json of source list<</returns>
public ActionResult GetSourceListOfTollFreeNo()
{
objLog.AddLogFile("DropDownData_GetSourceListOfTollFreeNo", DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
try
{
objDropDownDataRepository = new DropDownDataRepository();
//Get Source List
List<TollFreeSourceModel> oTollFreeSourceList = objDropDownDataRepository.GetSourceListOfTollFreeNo();
List<SelectListItem> oTollFreeSourceNameList = new List<SelectListItem>();
foreach (TollFreeSourceModel items in oTollFreeSourceList)
{
oTollFreeSourceNameList.Add(new SelectListItem { Text = items.ReasonName, Value = items.ReasonName });
}
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = true, list = oTollFreeSourceNameList.OrderBy(o => o.Text) }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
objLog.ErrorLogFile("DropDownData_GetSourceListOfTollFreeNo", ex.Message, path, errorlogtf);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
throw ex;
}
}
/// <summary>
/// Get warrenty list of toll free no.
/// </summary>
/// <returns>return list</returns>
public ActionResult GetWarrentyAmcList()
{
objLog.AddLogFile("DropDownData_GetWarrentyAmcList", DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
try
{
objDropDownDataRepository = new DropDownDataRepository();
//Get warrenty List
List<WarrentyModel> oWarrentyAmcList = objDropDownDataRepository.GetWarrentyAmcList();
List<SelectListItem> oWarrentyAmcNameList = new List<SelectListItem>();
foreach (WarrentyModel items in oWarrentyAmcList)
{
oWarrentyAmcNameList.Add(new SelectListItem { Text = items.ReasonName, Value = items.ReasonName });
}
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = true, list = oWarrentyAmcNameList.OrderBy(o => o.Text) }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
objLog.ErrorLogFile("DropDownData_GetWarrentyAmcList", ex.Message, path, errorlogtf);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
throw ex;
}
}
/// <summary>
/// Get city list based on state id
/// </summary>
/// <param name="stateVal">Integer type state id</param>
/// <returns>returns json of cities state wise</returns>
public ActionResult showCityStateWise(int stateVal)
{
objLog.AddLogFile("DropDownData_showCityStateWise", DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
try
{
if (stateVal != 0)
{
objTicketAdministrationRepository = new TicketAdministrationRepository();
//Getting City List
List<CityModel> oCityList = objTicketAdministrationRepository.GetCityList(stateVal);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = true, list = oCityList.OrderBy(o => o.CityName) }, JsonRequestBehavior.AllowGet);
}
else
{
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = false }, JsonRequestBehavior.AllowGet);
}
}
catch (Exception ex)
{
objLog.ErrorLogFile("DropDownData_showCityStateWise", ex.Message, path, errorlogtf);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
throw ex;
}
}
#region get dealer ticket reasons
/// <summary>
/// Get all languages list
/// </summary>
/// <returns>returns json of language list</returns>
public ActionResult GetReasonForDealerTicket()
{
objLog.AddLogFile("DropDownData_GetReasonForDealerTicket", DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
try
{
objDropDownDataRepository = new DropDownDataRepository();
//Get Source List
List<TollFreeSourceModel> oReasonForDealerTicketList = objDropDownDataRepository.GetReasonForDealerTicket();
List<SelectListItem> oReasonForDealerTicketNameList = new List<SelectListItem>();
foreach (TollFreeSourceModel items in oReasonForDealerTicketList)
{
oReasonForDealerTicketNameList.Add(new SelectListItem { Text = items.ReasonName, Value = items.ReasonName });
}
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = true, list = oReasonForDealerTicketNameList.OrderBy(o => o.Text) }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
objLog.ErrorLogFile("DropDownData_GetReasonForDealerTicket", ex.Message, path, errorlogtf);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
throw ex;
}
}
#endregion
#region get state list region wise
/// <summary>
///
/// </summary>
/// <param name="regionVal"></param>
/// <returns></returns>
public ActionResult showStateRegionWise(int regionVal)
{
objLog.AddLogFile("DropDownData_showCityStateWise", DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
try
{
if (regionVal != 0)
{
objTicketAdministrationRepository = new TicketAdministrationRepository();
//Getting City List
List<StateModel> oStateList = objTicketAdministrationRepository.GetStateListRegionWise(regionVal);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = true, list = oStateList.OrderBy(o => o.StateAlias) }, JsonRequestBehavior.AllowGet);
}
else
{
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
return Json(new { success = false }, JsonRequestBehavior.AllowGet);
}
}
catch (Exception ex)
{
objLog.ErrorLogFile("DropDownData_showCityStateWise", ex.Message, path, errorlogtf);
objLog.AddLogFile(DateTime.Now.ToString(ConfigurationManager.AppSettings["dateTimeFormat"]), path, logtf);
throw ex;
}
}
#endregion
}
}