1684 lines
81 KiB
C#
1684 lines
81 KiB
C#
using GODATA.AuthenticationServices;
|
|
using GODATA.Models.Ticket;
|
|
using GODATA.Models.Tracking;
|
|
using GODATA.Models.UserInventory;
|
|
using GODATA.RoleServices;
|
|
using Kendo.Mvc.Extensions;
|
|
using Kendo.Mvc.UI;
|
|
using LoggingHelper;
|
|
using Newtonsoft.Json;
|
|
using RestSharp;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Configuration;
|
|
using System.Linq;
|
|
using System.Net.Http;
|
|
using System.Net.Http.Headers;
|
|
using System.Threading.Tasks;
|
|
using System.Web;
|
|
using System.Web.Mvc;
|
|
|
|
namespace GODATA.Models.Ticket
|
|
{
|
|
public class TicketAdministrationRepository
|
|
{
|
|
#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
|
|
|
|
#region Rest Api for customer inventory
|
|
|
|
/// <summary>
|
|
/// Post method to get all states list
|
|
/// </summary>
|
|
/// <returns>returns list type of state model</returns>
|
|
public List<StateModel> GetStateList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/global?state=ttpl", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
return client.Execute<List<StateModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetStateList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get city list state wise
|
|
/// </summary>
|
|
/// <param name="StateId">Integer type representation of state id</param>
|
|
/// <returns>returns city model type list</returns>
|
|
public List<CityModel> GetCityList(int StateId)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/global?state=ttpl&city=ttpl", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("StateId", StateId);
|
|
return client.Execute<List<CityModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCityList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Get method to get vehicle model type list
|
|
/// </summary>
|
|
/// <returns>return list of type vehicle model model</returns>
|
|
public List<VehicleModelModel> GetVehicleModelList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?Global=gl&VehicleType=vt", Method.GET);
|
|
return client.Execute<List<VehicleModelModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetVehicleModelList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Get method to get vehicle type list
|
|
/// </summary>
|
|
/// <returns>return list of vehicle type model</returns>
|
|
public List<VehicleTypeModel> GetVehicleTypeList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?Type=Vehicletype", Method.POST);
|
|
return client.Execute<List<VehicleTypeModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetVehicleTypeList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get vehicle details registration no. wise
|
|
/// </summary>
|
|
/// <param name="RegistrationNo">String type representation for vehicle's registration no.</param>
|
|
/// <returns>returns list of vehicle details</returns>
|
|
public List<VehicleModel> GetVehicleDetailsRegistrationNoWise(string RegistrationNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Vehicle", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("Id", "");
|
|
request.AddParameter("RegistrationNo", RegistrationNo);
|
|
return client.Execute<List<VehicleModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetVehicleDetailsRegistrationNoWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// Post method to get vehicle details registration no. wise
|
|
/// </summary>
|
|
/// <param name="RegistrationNo">String type representation for vehicle's registration no.</param>
|
|
/// <returns>returns list of vehicle details</returns>
|
|
public List<CustomerModel> GetVehicleDetailsRegistrationNoWiseByThirdParty(string RegistrationNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?checkRegistartionNoandGetDetail=dddd", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("Id", "");
|
|
request.AddParameter("VehicleRegistrationNumber", RegistrationNo);
|
|
return client.Execute<List<CustomerModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetVehicleDetailsRegistrationNoWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
#region Get Escalation Level Membbers
|
|
|
|
/// <summary>
|
|
/// Get escalation level members details
|
|
/// </summary>
|
|
/// <param name="dealerId">Dealer ID</param>
|
|
/// <param name="vehicleTagging">Vehicle Tagging</param>
|
|
/// <returns>return model</returns>
|
|
public EscalationMemberLevel GetEscalationMemberDetailsDealerVehicleTypeWise(string dealerId, string vehicleTagging)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Ticket?operation=getescalationlevels", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("DelerId", dealerId);
|
|
request.AddParameter("VehicleType", vehicleTagging);
|
|
return client.Execute<EscalationMemberLevel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetEscalationMemberDetailsDealerVehicleTypeWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
|
|
/// <summary>
|
|
/// Post method to get customer details of a vehicle based on vehicle's registration no.
|
|
/// </summary>
|
|
/// <param name="registrationNo">String type representation for vehicle's registration no.</param>
|
|
/// <returns>returns list of customer details</returns>
|
|
public List<CustomerModel> GetCustomerDetails(string registrationNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/ticket", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("VehicleRegistrationNumber", registrationNo);
|
|
return client.Execute<List<CustomerModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCustomerDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get vehicle's owner's details based on registration no and mobile no.
|
|
/// </summary>
|
|
/// <param name="RegistrationNo">String type representation for vehicle's registration no.</param>
|
|
/// <param name="OwnerMobileNo">String type representation for vehicle's owner's mobile no.</param>
|
|
/// <returns></returns>
|
|
public List<CustomerOwnerModel> GetCustomerOwnerDetails(string RegistrationNo, string OwnerMobileNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Customer?customer=vipin", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("CustomerId", "");
|
|
request.AddParameter("VehicleRegistrationNumber", RegistrationNo);
|
|
request.AddParameter("CustomerMobileNumber1", OwnerMobileNo);
|
|
return client.Execute<List<CustomerOwnerModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCustomerDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to create new customer
|
|
/// </summary>
|
|
/// <param name="model">customer model</param>
|
|
/// <returns>return customer model</returns>
|
|
public CustomerModel Restful_AddNewCustomer(CustomerModel model)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Customer", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("CustomerModel.VehicleRegistrationNumber", model.VehicleRegistrationNumber);
|
|
request.AddParameter("CustomerModel.CustomerCustomerName", model.CustomerCustomerName);
|
|
request.AddParameter("CustomerModel.CustomerAlias", model.CustomerAlias);
|
|
request.AddParameter("CustomerModel.CustomerMobileNumber1", model.CustomerMobileNumber1);
|
|
request.AddParameter("CustomerModel.CustomerMobileNumber2", model.CustomerMobileNumber2);
|
|
request.AddParameter("CustomerModel.CustomerMobileNumber3", model.CustomerMobileNumber3);
|
|
request.AddParameter("CustomerModel.CustomerAddress", model.CustomerAddress);
|
|
request.AddParameter("CustomerModel.CustomerEmailId", model.CustomerEmailId);
|
|
request.AddParameter("CustomerModel.CustomerCity", model.CustomerCity);
|
|
request.AddParameter("CustomerModel.CustomerState", model.CustomerStateName);
|
|
request.AddParameter("CustomerModel.InIsOwner", "false");
|
|
request.AddParameter("CustomerModel.thirdPartyInfoupdatedornot", model.thirdPartyInfoupdatedornot);
|
|
request.AddParameter("OwnerModel.CustomerCustomerName", model.CustomerOwnerName);
|
|
request.AddParameter("OwnerModel.VehicleRegistrationNumber", model.VehicleRegistrationNumber);
|
|
request.AddParameter("OwnerModel.CustomerAlias", model.CustomerOwnerAlias);
|
|
request.AddParameter("OwnerModel.CustomerMobileNumber1", model.CustomerOwnerMobileNo1);
|
|
request.AddParameter("OwnerModel.CustomerMobileNumber2", model.CustomerOwnerMobileNo2);
|
|
request.AddParameter("OwnerModel.CustomerMobileNumber3", model.CustomerOwnerMobileNo3);
|
|
request.AddParameter("OwnerModel.CustomerAddress", model.CustomerOwnerAddress);
|
|
request.AddParameter("OwnerModel.CustomerEmailId", model.CustomerOwnerEmailId);
|
|
request.AddParameter("OwnerModel.CustomerCity", model.CustomerOwnerCity);
|
|
request.AddParameter("OwnerModel.CustomerState", model.CustomerOwnerStateName);
|
|
request.AddParameter("OwnerModel.InIsOwner", "true");
|
|
request.AddParameter("VehicleModel.RegistrationNo", model.VehicleRegistrationNumber);
|
|
request.AddParameter("VehicleModel.VehicleNumberPlate", model.VehicleNumberPlate);
|
|
request.AddParameter("VehicleModel.ModelNumber", model.VehicleModelNumber);
|
|
request.AddParameter("VehicleModel.VehicleType", model.VehicleType);
|
|
request.AddParameter("VehicleModel.InstallationDate", model.InstallationDate);
|
|
//added on 6-07-2020
|
|
request.AddParameter("CustomerModel.KamUser", model.KamUser);
|
|
request.AddParameter("CustomerModel.CustomerId", model.CustomerId);
|
|
request.AddParameter("CustomerModel.CustomerType", model.CustomerType);
|
|
|
|
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
|
|
return client.Execute<CustomerModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_AddNewCustomer", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Rest API for ticket administration
|
|
|
|
/// <summary>
|
|
/// Post method to get open tickets history
|
|
/// </summary>
|
|
/// <param name="registrationNo">vehicle registration no.</param>
|
|
/// <param name="mobileNo">customer or owner mobile no.</param>
|
|
/// <param name="complaintNo">ticket id</param>
|
|
/// <returns>returns list of open tickets</returns>
|
|
public List<TicketModel> GetOpenTicketHistory(string registrationNo, string mobileNo, string complaintNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?OpenTicket=cc&OpenTicket1=ccc", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("VehicleRegisterNumber", registrationNo);
|
|
request.AddParameter("CustomerContactNo", mobileNo);
|
|
request.AddParameter("TicketId", complaintNo);
|
|
return client.Execute<List<TicketModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetOpenTicketHistory", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get close tickets history
|
|
/// </summary>
|
|
/// <param name="registrationNo">vehicle registration no.</param>
|
|
/// <param name="mobileNo">customer or owner mobile no.</param>
|
|
/// <param name="complaintNo">ticket id</param>
|
|
/// <returns>returns list of close tickets</returns>
|
|
public List<TicketModel> GetCloseTicketHistory(string registrationNo, string mobileNo, string complaintNo)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?CloseTicket=cc&CloseTicket1=ccc", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("VehicleRegisterNumber", registrationNo);
|
|
request.AddParameter("CustomerContactNo", mobileNo);
|
|
request.AddParameter("TicketId", complaintNo);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<List<TicketModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCloseTicketHistory", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get open or close ticket details(full)
|
|
/// </summary>
|
|
/// <param name="ticketId">ticket id</param>
|
|
/// <param name="ticketStatus">ticket status</param>
|
|
/// <returns>return list of open close ticket details</returns>
|
|
public List<TicketOpenCloseModel> Restful_GetOpenCloseTicketDetails(string ticketId, string ticketStatus)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?Ticket=cc&Ticket1=ccc", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", ticketId);
|
|
request.AddParameter("OpenCloseStatus", ticketStatus);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<List<TicketOpenCloseModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetOpenCloseTicketDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get customer details
|
|
/// </summary>
|
|
/// <param name="registrationNo">vehicle's registration no.</param>
|
|
/// <param name="mobileNo">customer or owner mobile no.</param>
|
|
/// <param name="complaintNo">ticket id</param>
|
|
/// <returns>return list of customer details</returns>
|
|
public List<CustomerModel> GetCustomerDetails(string registrationNo, string mobileNo, string complaintNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/ticket", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("VehicleRegistrationNumber", registrationNo);
|
|
request.AddParameter("CustomerMobile1", mobileNo);
|
|
request.AddParameter("TicketNo", complaintNo);
|
|
return client.Execute<List<CustomerModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCustomerDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get nearest vans and dealers from breakdown location
|
|
/// </summary>
|
|
/// <param name="StateName">breakdown location's state name</param>
|
|
/// <param name="Limit">vans and dealers list limit</param>
|
|
/// <returns>return list</returns>
|
|
public List<VanDealerModel> GetAllNearestVansDealersList(string StateName, string Limit)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/ticket?ticket=&ticket1=&ticket2=&ticket3=", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("UserId", _LoginUserId);
|
|
request.AddParameter("StateName", StateName);
|
|
request.AddParameter("Limit", Limit);
|
|
return client.Execute<List<VanDealerModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetAllNearestVansDealersList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
///// <summary>
|
|
///// Post method to get state list
|
|
///// </summary>
|
|
///// <returns>return list of states</returns>
|
|
//public List<StateModel> GetStateList()
|
|
//{
|
|
// var client = new RestSharp.RestClient(_RestClientUrl);
|
|
// var request = new RestRequest("Api/global?state=ttpl", Method.POST);
|
|
// request.AddParameter("Token", _securityToken);
|
|
// return client.Execute<List<StateModel>>(request).Data;
|
|
//}
|
|
|
|
/// <summary>
|
|
/// Post method to get route list
|
|
/// </summary>
|
|
/// <returns>return list of routes</returns>
|
|
public List<RouteModel> GetRoutesList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Route", Method.GET);
|
|
request.AddParameter("Token", _securityToken);
|
|
return client.Execute<List<RouteModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetRoutesList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get owner details
|
|
/// </summary>
|
|
/// <param name="RegistrationNo">vehicle's registration no.</param>
|
|
/// <returns>return list of owner's details</returns>
|
|
public List<CustomerOwnerModel> GetCustomerOwnerDetails(string RegistrationNo)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Customer?customer=vipin", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("CustomerId", "");
|
|
request.AddParameter("VehicleRegistrationNumber", RegistrationNo);
|
|
request.AddParameter("CustomerMobileNumber1", "");
|
|
return client.Execute<List<CustomerOwnerModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCustomerOwnerDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
///// <summary>
|
|
///// Post method to get vehicle's details
|
|
///// </summary>
|
|
///// <param name="RegistrationNo">vehicle's registration no.</param>
|
|
///// <returns>return list of vehicle's details</returns>
|
|
//public List<VehicleModel> GetVehicleDetailsRegistrationNoWise(string RegistrationNo)
|
|
//{
|
|
// var client = new RestSharp.RestClient(_RestClientUrl);
|
|
// var request = new RestRequest("Api/Vehicle", Method.POST);
|
|
// request.AddParameter("Token", _securityToken);
|
|
// request.AddParameter("Id", "");
|
|
// request.AddParameter("RegistrationNo", RegistrationNo);
|
|
// return client.Execute<List<VehicleModel>>(request).Data;
|
|
//}
|
|
|
|
///// <summary>
|
|
///// Post method to get vehicle model list
|
|
///// </summary>
|
|
///// <returns>return list</returns>
|
|
//public List<VehicleModelModel> GetVehicleModelList()
|
|
//{
|
|
// var client = new RestSharp.RestClient(_RestClientUrl);
|
|
// var request = new RestRequest("Api/Global?Global=gl&VehicleType=vt", Method.GET);
|
|
// return client.Execute<List<VehicleModelModel>>(request).Data;
|
|
//}
|
|
|
|
/// <summary>
|
|
/// Post method to get open ticket activities details
|
|
/// </summary>
|
|
/// <param name="ticketId">ticket id</param>
|
|
/// <returns>return list of open tickets activities</returns>
|
|
public List<OpenTicketActivityDetails> GetOpenTicketActivityDetails(string ticketId)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Activity", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", ticketId);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<List<OpenTicketActivityDetails>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetOpenTicketActivityDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to get close ticket activities details
|
|
/// </summary>
|
|
/// <param name="ticketId">ticket id</param>
|
|
/// <returns>return list of close tickets activities</returns>
|
|
public List<CloseTicketActivityDetails> GetCloseTicketActivityDetails(string ticketId)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Activity?Close=c", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", ticketId);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<List<CloseTicketActivityDetails>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCloseTicketActivityDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Get method to get ticket status list
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public List<TicketStatus> GetTicketStatusList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/TicketStatus", Method.GET);
|
|
return client.Execute<List<TicketStatus>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetTicketStatusList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Post method to update ticket and insert new activity
|
|
/// </summary>
|
|
/// <param name="model">ticket model</param>
|
|
/// <returns>return model</returns>
|
|
public TicketModel CreateTicket(TicketModel model)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?Ticket=tt", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
//request.AddParameter("Description", model.listDescription[0].ToString());
|
|
request.AddParameter("Description", model.Description);
|
|
request.AddParameter("AssignedTo", model.AssignedTo);
|
|
request.AddParameter("ReportedVia", model.ReportedVia);
|
|
request.AddParameter("TicketStatus", model.TicketStatus);
|
|
request.AddParameter("Priority", model.Priority);
|
|
request.AddParameter("CustomerScore", model.CustomerScore);
|
|
request.AddParameter("CreatedBy", _LoginUserId);
|
|
request.AddParameter("CreationTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("LastModifiedBy", _LoginUserName);
|
|
request.AddParameter("LastModifiedTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("BreakdownLocation", model.BreakdownLocation);
|
|
request.AddParameter("BreakdownLongitude", model.BreakdownLongitude);
|
|
request.AddParameter("BreakdownLattitude", model.BreakdownLattitude);
|
|
request.AddParameter("AssignedToUserId", model.AssignedToUserId);
|
|
request.AddParameter("AssignedToUserLattitude", model.AssignedToUserLattitude);
|
|
request.AddParameter("AssignedToUserLongitude", model.AssignedToUserLongitude);
|
|
request.AddParameter("IsDeclined", model.Isdeclined);
|
|
request.AddParameter("EstimatedTimeForJobCompletion", model.EstimatedTimeForJobCompletion);
|
|
request.AddParameter("TotalTicketLifecycleTimeSla", model.TotalTicketLifecycleTimeSla);
|
|
request.AddParameter("EstimatedTimeForJobCompletionSubmitTime", model.EstimatedTimeForJobCompletionSubmitTime);
|
|
request.AddParameter("VehicleRegistrationNumber", model.VehicleRegisterNumber);
|
|
request.AddParameter("BreakdownLocationLandmark", model.BreakdownLocationLandmark);
|
|
request.AddParameter("RouteId", model.RouteId);
|
|
request.AddParameter("CustomerContactNo", model.CustomerContactNo);
|
|
request.AddParameter("TicketId", model.TicketId);
|
|
request.AddParameter("RepairCost ", model.RepairCost);
|
|
request.AddParameter("DefaultSlaTime", model.DefaultSlaTime);
|
|
request.AddParameter("SlaMissedReason ", model.SlaMissedReason);
|
|
request.AddParameter("SuggestionComment", model.SuggestionComment);
|
|
request.AddParameter("JobCompleteResponseTime", model.JobCompleteResponseTime);
|
|
request.AddParameter("DefaultCol2", model.DefaultCol2);
|
|
request.AddParameter("DefaultCol3", model.DefaultCol3);
|
|
request.AddParameter("StateName", model.StateName);
|
|
request.AddParameter("CityName", model.CityName);
|
|
request.AddParameter("ChassisNo", model.ChassisNo);
|
|
request.AddParameter("CallerLanguage", model.CallerLanguage);
|
|
request.AddParameter("Warranty", model.Warranty);
|
|
request.AddParameter("TollFreeeNoSource", model.TollFreeeNoSource);
|
|
request.AddParameter("VehicleTagging", model.VehicleTagging);
|
|
request.AddParameter("KmCovered", model.KmCovered);
|
|
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
request.AddParameter("OpportunityLost", model.OpportunityLost);
|
|
request.AddParameter("_24HrsReason", model._24HrsReason);
|
|
request.AddParameter("EstimateDistance", model.EstimateDistance);
|
|
request.AddParameter("OtherRemarks", model.OtherRemarks); //dealer ticket reason
|
|
request.AddParameter("positionDateTime", model.positionDateTime);
|
|
//Added By Mayuri on 29 July 2025
|
|
request.AddParameter("EPS_prod_type", model.EPS_prod_type);
|
|
return client.Execute<TicketModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_CreateTicket", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Post method to update ticket and insert new activity
|
|
/// </summary>
|
|
/// <param name="model">ticket model</param>
|
|
/// <returns>return model</returns>
|
|
public TicketModel UpdateTicketDetails(TicketModel model)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?TicketUpdate=tt&TicketUpdate1=t", Method.POST);
|
|
|
|
if (model.TicketStatus == 6)
|
|
{
|
|
model.Isdeclined = true;
|
|
}
|
|
else
|
|
{
|
|
model.Isdeclined = false;
|
|
}
|
|
|
|
request.AddParameter("Token", _securityToken);
|
|
//request.AddParameter("Description", model.listDescription[0].ToString());
|
|
request.AddParameter("Description", model.Description);
|
|
request.AddParameter("AssignedTo", model.AssignedTo);
|
|
request.AddParameter("ReportedVia", model.ReportedVia);
|
|
request.AddParameter("TicketStatus", model.TicketStatus);
|
|
request.AddParameter("Priority", model.Priority);
|
|
request.AddParameter("CustomerScore", model.CustomerScore);
|
|
request.AddParameter("CreatedBy", model.CreatedBy);
|
|
request.AddParameter("CreationTime", model.CreationTime);
|
|
request.AddParameter("LastModifiedBy", _LoginUserName);
|
|
request.AddParameter("LastModifiedTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("BreakdownLocation", model.BreakdownLocation);
|
|
request.AddParameter("BreakdownLongitude", model.BreakdownLongitude);
|
|
request.AddParameter("BreakdownLattitude", model.BreakdownLattitude);
|
|
request.AddParameter("AssignedToUserId", model.AssignedToUserId);
|
|
request.AddParameter("AssignedToUserLattitude", model.AssignedToUserLattitude);
|
|
request.AddParameter("AssignedToUserLongitude", model.AssignedToUserLongitude);
|
|
request.AddParameter("IsDeclined", model.Isdeclined);
|
|
request.AddParameter("EstimatedTimeForJobCompletion", model.EstimatedTimeForJobCompletion);
|
|
request.AddParameter("TotalTicketLifecycleTimeSla", model.TotalTicketLifecycleTimeSla);
|
|
request.AddParameter("EstimatedTimeForJobCompletionSubmitTime", model.EstimatedTimeForJobCompletionSubmitTime);
|
|
request.AddParameter("VehicleRegistrationNumber", model.VehicleRegisterNumber);
|
|
request.AddParameter("BreakdownLocationLandmark", model.BreakdownLocationLandmark);
|
|
request.AddParameter("RouteId", model.RouteId);
|
|
request.AddParameter("CustomerContactNo", model.CustomerContactNo);
|
|
request.AddParameter("TicketId", model.TicketId);
|
|
request.AddParameter("RepairCost", model.RepairCost);
|
|
request.AddParameter("DefaultSlaTime", model.DefaultSlaTime);
|
|
request.AddParameter("SlaMissedReason ", model.SlaMissedReason);
|
|
request.AddParameter("SuggestionComment", model.SuggestionComment);
|
|
request.AddParameter("JobCompleteResponseTime", model.JobCompleteResponseTime);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
request.AddParameter("OpportunityLost", model.OpportunityLostType+"-"+ model.OpportunityLost);
|
|
request.AddParameter("_24HrsReason", model._24HrsReason);
|
|
request.AddParameter("EstimateDistance", model.EstimateDistance);
|
|
request.AddParameter("OtherRemarks", model.OtherRemarks); //dealer ticket reason
|
|
request.AddParameter("TicketPrevStatusAliasId", model.ticketPrevStatusAliasId);
|
|
request.AddParameter("OdometerReading", model.OdometerReading);
|
|
request.AddParameter("ChassisNo", model.ChassisNo);//dealer ticket reason
|
|
request.AddParameter("PreviousOdometerReading", model.PreviousOdometerReading);
|
|
request.AddParameter("VehicleType", model.VehicleType);
|
|
request.AddParameter("TicketIdAlias", model.TicketIdAlias);
|
|
request.AddParameter("TicketClosedReason", model.TicketClosedReason); //added on 25-11-2020
|
|
return client.Execute<TicketModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_UpdateTicketDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region Rest API for Feedback
|
|
|
|
/// <summary>
|
|
/// Get data of dropdown list in feedback page
|
|
/// </summary>
|
|
/// <param name="dropDownName">string representation of dropdown list name</param>
|
|
/// <returns>return list</returns>
|
|
public List<FeedbackSuggestionComplaintModel> GetFeedbackDropDownDataList(string dropDownName)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?Type=" + dropDownName, Method.POST);
|
|
return client.Execute<List<FeedbackSuggestionComplaintModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("DropDownDataRepository_GetFeedbackDropDownDataList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region FeedBack
|
|
|
|
/// <summary>
|
|
/// Get feedback details based on ticket id
|
|
/// </summary>
|
|
/// <param name="ticketId">string re
|
|
///
|
|
/// esentation of ticket id</param>
|
|
/// <param name="ticketCreationtime">string representation of ticket creation time</param>
|
|
/// <returns>return model</returns>
|
|
public FeedBackModel GetFeedBackDetailsTicketIdWise(string ticketId, string ticketCreationtime)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/FeedBack?type=get", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", ticketId);
|
|
request.AddParameter("CreationTime", ticketCreationtime);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<FeedBackModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("DropDownDataRepository_GetFeedBackDetailsTicketIdWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Submit Feedback Reasons based on ticket id
|
|
/// </summary>
|
|
/// <param name="model">FeedBackModel</param>
|
|
/// <param name="submitType">string representation of submit type Reason or Feedback</param>
|
|
/// <returns>return model</returns>
|
|
public FeedBackModel CreateFeedbackReason(FeedBackModel model, string submitType)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/FeedBack?type=insert", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", model.TicketId);
|
|
request.AddParameter("ReasonMoreThan24Hrs", model.ReasonMoreThan24Hrs);
|
|
request.AddParameter("CallStatus", model.CallStatus);
|
|
request.AddParameter("Complaint", model.Complaint);
|
|
request.AddParameter("SuggestionComplaint", model.SuggestionComplaint);
|
|
request.AddParameter("FeedBackEaseOfGettingCall", model.FeedBackEaseOfGettingCall);
|
|
request.AddParameter("FeedBackResponseOfCallCenter", model.FeedBackResponseOfCallCenter);
|
|
request.AddParameter("FeedBackTimelyUpdationByDealer", model.FeedBackTimelyUpdationByDealer);
|
|
request.AddParameter("FeedBackTotalRepairTime", model.FeedBackTotalRepairTime);
|
|
request.AddParameter("FeedBackEosCharges", model.FeedBackEosCharges);
|
|
request.AddParameter("FeedBackOverAllExperience", model.FeedBackOverAllExperience);
|
|
request.AddParameter("OtherRemark", "");
|
|
if (submitType == "feedback")
|
|
{
|
|
request.AddParameter("FeedBackagent", _LoginUserName);
|
|
}
|
|
else
|
|
{
|
|
request.AddParameter("FeedBackagent", null);
|
|
}
|
|
request.AddParameter("CreationTime", model.CreationTime);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<FeedBackModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_CreateFeedbackReason", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Get feedback details based on ticket id
|
|
/// </summary>
|
|
/// <param name="ticketId">string representation of ticket id</param>
|
|
/// <param name="ticketCreationtime">string representation of ticket creation time</param>
|
|
/// <returns>return model</returns>
|
|
public FeedBackModel GetFeedBackHistoryDetailsTicketIdWise(string ticketId)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/FeedBack?type=gethistory", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", ticketId);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<FeedBackModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("DropDownDataRepository_GetFeedBackDetailsTicketIdWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Manage Escallation
|
|
|
|
/// <summary>
|
|
/// Get dealer list organization id wise
|
|
/// </summary>
|
|
/// <param name="dealerOrganizationId">dealer organization id</param>
|
|
/// <returns>return list</returns>
|
|
public List<DealerListOrganizationWise> GetDealerListOrganizationWise(int? dealerOrganizationId)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Dealer?GetDealer=tt", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("Id", _LoginUserId);
|
|
request.AddParameter("DealerOrganizationId", dealerOrganizationId);
|
|
return client.Execute<List<DealerListOrganizationWise>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetDealerListOrganizationWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Get, Insert, Edit and Delete an Escalation
|
|
/// </summary>
|
|
/// <param name="escalationId">Escalation Id</param>
|
|
/// <param name="action">Users's Action(Insert/Edit/Get/Delete/GetAll/Count)</param>
|
|
/// <param name="model">EscalationModel Model</param>
|
|
/// <param name="escalationDataModel">EscalationMatrix Model</param>
|
|
/// <param name="limit">page size</param>
|
|
/// <param name="offset">offset</param>
|
|
/// <param name="query">filter query</param>
|
|
/// <param name="organizationId">region's organization id</param>
|
|
/// <returns>Returns model</returns>
|
|
public EscalationModel GetSetEditDeleteEscalationLevel(string escalationId, string action, EscalationModel model, EscalationMatrix escalationDataModel, Int32 limit, Int32 offset, string query, int? organizationId)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/EscalationMatrix", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("Action", action);
|
|
request.AddParameter("Limit", limit);
|
|
request.AddParameter("Offset", offset);
|
|
request.AddParameter("Condition", query);
|
|
request.AddParameter("organization_id", organizationId);
|
|
request.AddParameter("Id", escalationId == null ? string.Empty : escalationId);
|
|
if (escalationDataModel != null)
|
|
{
|
|
request.AddParameter("manager_name", escalationDataModel.manager_name);
|
|
request.AddParameter("region_name", escalationDataModel.region_name);
|
|
request.AddParameter("city", escalationDataModel.city);
|
|
request.AddParameter("state", escalationDataModel.StateName);
|
|
request.AddParameter("dealer_name_id", escalationDataModel.dealer_name_id);
|
|
request.AddParameter("manager_level", escalationDataModel.manager_level);
|
|
request.AddParameter("blind_spot", "yes");
|
|
request.AddParameter("emails", escalationDataModel.emails);
|
|
request.AddParameter("phones", escalationDataModel.phones);
|
|
request.AddParameter("van_type", escalationDataModel.van_type);
|
|
request.AddParameter("alarm_age", escalationDataModel.alarm_age);
|
|
request.AddParameter("notification_type", escalationDataModel.notification_type);
|
|
request.AddParameter("alarm_age_sla_not_met", escalationDataModel.alarm_age_sla_not_met);
|
|
request.AddParameter("alarm_age_ticket_not_closed", escalationDataModel.alarm_age_ticket_not_closed);
|
|
request.AddParameter("alarm_age_van_not_live", escalationDataModel.alarm_age_van_not_live);
|
|
request.AddParameter("alarm_age_eicher_promise_48hrs", escalationDataModel.alarm_age_eicher_promise_48hrs);
|
|
request.AddParameter("editEscalationAll", escalationDataModel.editEscalationAll);
|
|
}
|
|
return client.Execute<EscalationModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetSetEditDeleteEscalationLevel", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region dealer list for dealer wise dashboard
|
|
|
|
|
|
/// <summary>
|
|
/// Get dealer list with dealer user id for dealer wise dashboard
|
|
/// </summary>
|
|
/// <returns>return dealer list</returns>
|
|
public List<DealerUserIdList> GetDealerListUserIdWise()
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Dealer?dealerDashboard=tt", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("UserId", _LoginUserId);
|
|
return client.Execute<List<DealerUserIdList>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetDealerListUserIdWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
#endregion
|
|
|
|
#region get tracking device alias wise for open ticket report
|
|
|
|
/// <summary>
|
|
/// Get tracking list device alias wise for open ticket report
|
|
/// </summary>
|
|
/// <param name="deviceAlias">device alias of van whom to ticket is assigned</param>
|
|
/// <param name="creationTime">ticket creation time</param>
|
|
/// <returns>return tracking list</returns>
|
|
public List<ListTracking> GetTrackingListDeviceAliasWise(string deviceAlias, DateTime creationTime)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Tracking?trackingDeviceWise=999", Method.POST);
|
|
//var request = new RestRequest("Api/Tracking?tracking=ttttt&tracking1=ttttt", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("DeviceAlias", deviceAlias);
|
|
request.AddParameter("FromDate", creationTime);
|
|
request.AddParameter("ToDate", DateTime.Now);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<List<ListTracking>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetDealerListUserIdWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
#region get kam ticket details
|
|
|
|
/// <summary>
|
|
/// Post method to get KAM ticket's details
|
|
/// </summary>
|
|
/// <param name="kamTicketId">KAM's ticket id</param>
|
|
/// <returns>returns list of KAM tickets</returns>
|
|
public List<KamTicketModel> GetKamTicketDetails(Int32 kamTicketId)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/openticket?kam=1&ticket=tt&ticket1=tt", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("kamticketid", kamTicketId);
|
|
return client.Execute<List<KamTicketModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetKamTicketDetails", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
#region update contact no. in whole application through manage escalation
|
|
|
|
public EscalationModel UpdateContactNo(string oldContacts, string newContacts, string NewManagerName)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/EscalationMatrix?phone", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("OLdContactNumber", oldContacts);
|
|
request.AddParameter("NewContactNumber", newContacts);
|
|
request.AddParameter("NewManagerName", NewManagerName);
|
|
return client.Execute<EscalationModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_UpdateContactNo", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
#region save ticket feature
|
|
|
|
/// <summary>
|
|
/// Post method to get close tickets history
|
|
/// </summary>
|
|
/// <param name="registrationNo">vehicle registration no.</param>
|
|
/// <param name="mobileNo">customer or owner mobile no.</param>
|
|
/// <param name="complaintNo">ticket id</param>
|
|
/// <returns>returns list of close tickets</returns>
|
|
public List<DummyOpenTicketDetail> GetSaveTicketHistory(string registrationNo, string mobileNo, string complaintNo)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?OpenDummyTicket=sd&OpenDummyTicket1=cc&OpenDummyTicket2=vvc", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("VehicleRegisterNumber", registrationNo);
|
|
request.AddParameter("CustomerContactNo", mobileNo);
|
|
request.AddParameter("TicketId", complaintNo);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<List<DummyOpenTicketDetail>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetSaveTicketHistory", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Post method to update ticket and insert new activity
|
|
/// </summary>
|
|
/// <param name="model">ticket model</param>
|
|
/// <returns>return model</returns>
|
|
public TicketModel SaveTicketDetails(TicketModel model)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?dummy=1&DummyTicket1=cc&DummyTicket2=vvc", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
//request.AddParameter("Description", model.listDescription[0].ToString());
|
|
request.AddParameter("Description", model.Description);
|
|
request.AddParameter("AssignedTo", model.AssignedTo);
|
|
request.AddParameter("ReportedVia", model.ReportedVia);
|
|
request.AddParameter("TicketStatus", model.TicketStatus);
|
|
request.AddParameter("Priority", model.Priority);
|
|
request.AddParameter("CustomerScore", model.CustomerScore);
|
|
request.AddParameter("CreatedBy", _LoginUserId);
|
|
request.AddParameter("CreationTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("LastModifiedBy", _LoginUserName);
|
|
request.AddParameter("LastModifiedTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("BreakdownLocation", model.BreakdownLocation);
|
|
request.AddParameter("BreakdownLongitude", model.BreakdownLongitude);
|
|
request.AddParameter("BreakdownLattitude", model.BreakdownLattitude);
|
|
request.AddParameter("AssignedToUserId", model.AssignedToUserId);
|
|
request.AddParameter("AssignedToUserLattitude", model.AssignedToUserLattitude);
|
|
request.AddParameter("AssignedToUserLongitude", model.AssignedToUserLongitude);
|
|
request.AddParameter("IsDeclined", model.Isdeclined);
|
|
request.AddParameter("EstimatedTimeForJobCompletion", model.EstimatedTimeForJobCompletion);
|
|
request.AddParameter("TotalTicketLifecycleTimeSla", model.TotalTicketLifecycleTimeSla);
|
|
request.AddParameter("EstimatedTimeForJobCompletionSubmitTime", model.EstimatedTimeForJobCompletionSubmitTime);
|
|
request.AddParameter("VehicleRegistrationNumber", model.VehicleRegisterNumber);
|
|
request.AddParameter("BreakdownLocationLandmark", model.BreakdownLocationLandmark);
|
|
request.AddParameter("RouteId", model.RouteId);
|
|
request.AddParameter("CustomerContactNo", model.CustomerContactNo);
|
|
request.AddParameter("TicketId", model.TicketId);
|
|
request.AddParameter("RepairCost ", model.RepairCost);
|
|
request.AddParameter("DefaultSlaTime", model.DefaultSlaTime);
|
|
request.AddParameter("SlaMissedReason ", model.SlaMissedReason);
|
|
request.AddParameter("SuggestionComment", model.SuggestionComment);
|
|
request.AddParameter("JobCompleteResponseTime", model.JobCompleteResponseTime);
|
|
request.AddParameter("DefaultCol2", model.DefaultCol2);
|
|
request.AddParameter("DefaultCol3", model.DefaultCol3);
|
|
request.AddParameter("StateName", model.StateName);
|
|
request.AddParameter("CityName", model.CityName);
|
|
|
|
request.AddParameter("CallerLanguage", model.CallerLanguage);
|
|
request.AddParameter("Warranty", model.Warranty);
|
|
request.AddParameter("TollFreeeNoSource", model.TollFreeeNoSource);
|
|
request.AddParameter("VehicleTagging", model.VehicleTagging);
|
|
request.AddParameter("KmCovered", model.KmCovered);
|
|
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
request.AddParameter("OpportunityLost", model.OpportunityLost);
|
|
request.AddParameter("_24HrsReason", model._24HrsReason);
|
|
request.AddParameter("EstimateDistance", model.EstimateDistance);
|
|
request.AddParameter("OtherRemarks", model.OtherRemarks); //dealer ticket reason
|
|
return client.Execute<TicketModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_CreateTicket", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
//------------------added on 23-12-2020(start)-------------------------------
|
|
public VanReachedTimeModel DateTimeOfVanReached(VanReachedTimeModel model)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/OpenTicket?vanReached=1&vanReached1=cc&vanReached2=vvc&vanReached3=pp&vanReached4=pp&vanReached5=pp1", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("VanReachedTime", model.VanReachedTime);
|
|
request.AddParameter("TicketIdAlias", model.TicketIdAlias);
|
|
return client.Execute<VanReachedTimeModel>(request).Data;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw ex;
|
|
}
|
|
}
|
|
//------------------added on 23-12-2020 (end)-------------------------------
|
|
|
|
|
|
#endregion
|
|
|
|
#region get region wise state list
|
|
|
|
/// <summary>
|
|
/// Post method to get city list state wise
|
|
/// </summary>
|
|
/// <param name="StateId">Integer type representation of state id</param>
|
|
/// <returns>returns city model type list</returns>
|
|
public List<StateModel> GetStateListRegionWise(int regionId)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?state=sa&state1=as&state2=as", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("Id", regionId);
|
|
return client.Execute<List<StateModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCityList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
public List<Telematic_Model> GetChasis_Details(string chassisno)
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?Chassis_Detail=sss", Method.POST);
|
|
//request.AddParameter("Token", _securityToken);
|
|
//request.AddParameter("Id", "");
|
|
request.AddParameter("chassis_no", chassisno);
|
|
return client.Execute<List<Telematic_Model>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetVehicleDetailsRegistrationNoWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// GEt engine number by search.
|
|
/// </summary>
|
|
/// <param name="engineBySearch">enginenumber</param>
|
|
|
|
/// <returns>return list</returns>
|
|
|
|
public List<Engine_SRCH_Model> GetEngineNoByEOSApiSearch(string engineBySearch)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?engineSearch=yes", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("UserId", _LoginUserId);
|
|
request.AddParameter("EngineSearch", engineBySearch);
|
|
return client.Execute<List<Engine_SRCH_Model>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("GetEngineNoByEOSApiSearch", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// GEt chassis number by search.
|
|
/// </summary>
|
|
/// <param name="StateName">breakdown location's state name</param>
|
|
/// <param name="Limit">vans and dealers list limit</param>
|
|
/// <returns>return list</returns>
|
|
public List<CHASSIS_SRCH_Model> GetChassisNoByEOSApiSearch(string chassisBySearch)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?chassisSearch=yes", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("UserId", _LoginUserId);
|
|
request.AddParameter("ChassisSearch", chassisBySearch);
|
|
return client.Execute<List<CHASSIS_SRCH_Model>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("GetChassisNoByEOSApiSearch", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// GEt chassis number by search.
|
|
/// </summary>
|
|
/// <param name="StateName">breakdown location's state name</param>
|
|
/// <param name="Limit">vans and dealers list limit</param>
|
|
/// <returns>return list</returns>
|
|
public CHASSIS_ODOMETER_Model GetOdoMeterBYChassisNumber(string chassisNumber, string ticketIDAlias)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Global?chassisSearch=yes&getOdoMeter=yes", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("UserId", _LoginUserId);
|
|
request.AddParameter("ChassisNo", chassisNumber);
|
|
request.AddParameter("TicketIdAlias", ticketIDAlias);
|
|
return client.Execute<CHASSIS_ODOMETER_Model>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("GetChassisNoByEOSApiSearch", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Submit Feedback Reasons based on ticket id
|
|
/// </summary>
|
|
/// <param name="model">FeedBackModel</param>
|
|
/// <param name="submitType">string representation of submit type Reason or Feedback</param>
|
|
/// <returns>return model</returns>
|
|
public FeedBackModel CreateCustomerFeedbackReason(FeedBackModel model, string submitType)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/FeedBack?type=insert&type2=reason", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", model.TicketId);
|
|
request.AddParameter("IsCustomerSatisfied", model.IsCustomerSatisfied);
|
|
request.AddParameter("SelectedOption", model.SelectedOption);
|
|
request.AddParameter("SelectedReason", model.SelectedReason);
|
|
|
|
if (submitType == "customer_feedback")
|
|
{
|
|
request.AddParameter("FeedBackagent", _LoginUserName);
|
|
}
|
|
else
|
|
{
|
|
request.AddParameter("FeedBackagent", null);
|
|
}
|
|
request.AddParameter("CreationTime", model.CreationTime);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<FeedBackModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_CreateFeedbackReason", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Get customer feedback details based on ticket id
|
|
/// </summary>
|
|
/// <param name="ticketId">string representation of ticket id</param>
|
|
/// <param name="ticketCreationtime">string representation of ticket creation time</param>
|
|
/// <returns>return model</returns>
|
|
public FeedBackModel GetCustomerFeedBackHistoryDetailsTicketIdWise(string ticketId)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/FeedBack?type=getCustomerFeedbackHistory", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("TicketId", ticketId);
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
return client.Execute<FeedBackModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("DropDownDataRepository_GetFeedBackDetailsTicketIdWise", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Post method to get all dummy tickets by mobile
|
|
/// </summary>
|
|
/// <returns>returns list type of state model</returns>
|
|
public List<GetDummyTicket> GetDummyTicketsByMobileList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Ticket?dummy=ttpl", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
return client.Execute<List<GetDummyTicket>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetStateList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// Post method to create new customer
|
|
/// </summary>
|
|
/// <param name="model">customer model</param>
|
|
/// <returns>return customer model</returns>
|
|
public CustomerModel Restful_UpdateCustomer(CustomerModel model)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Customer?updatecustomer=c1", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("CustomerModel.Id", model.Id);
|
|
request.AddParameter("CustomerModel.CustomerId", model.CustomerId);
|
|
request.AddParameter("CustomerModel.CustomerType", model.CustomerType);
|
|
request.AddParameter("CustomerModel.CustomerMobileNumber1", model.CustomerMobileNumber1);
|
|
request.AddParameter("CustomerModel.VehicleRegistrationNumber", model.VehicleRegistrationNumber);
|
|
request.AddParameter("CustomerModel.RegistrationNumber", model.RegistrationNumber);
|
|
//----------- added on 01-03-2021 start ---------------------------
|
|
request.AddParameter("CustomerModel.VehicleModelNumber", model.VehicleModelNumber);
|
|
request.AddParameter("CustomerModel.VehicleType", model.VehicleType);
|
|
//----------- added on 01-03-2021 start ---------------------------
|
|
|
|
|
|
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
|
|
return client.Execute<CustomerModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_AddNewCustomer", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
//------------ added on 19-01-2021 start -----------------------------
|
|
public List<DraftTicketDetailModel> GetReasonForCancelDraftTicket()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Ticket?dummyTicket=cancelReasonList&dummyTicket1=cancelReasonList1", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
return client.Execute<List<DraftTicketDetailModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetDraftTicketCancelList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
public DraftTicketDetailModel SaveDraftTicketCancelReason(DraftTicketDetailModel oDraftTicketDetailModel)
|
|
{
|
|
try
|
|
{
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Ticket?updateDraftTicketCancelReason=c1&updateDraftTicketCancelReason1=c2&updateDraftTicketCancelReason2=c2", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
request.AddParameter("DraftTicketId", oDraftTicketDetailModel.DraftTicketId);
|
|
request.AddParameter("RegistrationNumber", oDraftTicketDetailModel.RegistrationNumber);
|
|
request.AddParameter("ChassisNumber", oDraftTicketDetailModel.ChassisNumber);
|
|
request.AddParameter("DraftTicketCancelReason", oDraftTicketDetailModel.DraftTicketCancelReason);
|
|
request.AddParameter("OthersReason", oDraftTicketDetailModel.OthersReason);
|
|
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
|
|
return client.Execute<DraftTicketDetailModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_DraftTicket", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
//------------ added on 19-01-2021 end --------------------------------
|
|
|
|
//-----------------------added on 09-03-2021 start -------------------------------------
|
|
|
|
public List<CancelledDraftTicketModel> GetCancelledDraftTicketsList()
|
|
{
|
|
try
|
|
{
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/Ticket?cancelDummyTickets=ttpl&cancelDummyTickets1=list", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
return client.Execute<List<CancelledDraftTicketModel>>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_GetCancelledDraftTicketList", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
//-----------------------added on 09-03-2021 end ---------------------------------------
|
|
//Added By Mayuri on 17 July 2025
|
|
public TicketModel CreateTicketEPSNonHarvester(TicketModel model)
|
|
{
|
|
try
|
|
{
|
|
_LoginUserId = HttpContext.Current.Session["UserId"].ToString();
|
|
_LoginUserName = HttpContext.Current.Session["UserName"].ToString();
|
|
_timeOffSetMinutes = HttpContext.Current.Session["UtcMinute"].ToString();
|
|
|
|
var client = new RestSharp.RestClient(_RestClientUrl);
|
|
var request = new RestRequest("Api/EPSNonHarvester?Ticket=tt", Method.POST);
|
|
request.AddParameter("Token", _securityToken);
|
|
//request.AddParameter("Description", model.listDescription[0].ToString());
|
|
request.AddParameter("Description", model.Description);
|
|
request.AddParameter("AssignedTo", model.AssignedTo);
|
|
request.AddParameter("ReportedVia", model.ReportedVia);
|
|
request.AddParameter("TicketStatus", model.TicketStatus);
|
|
request.AddParameter("Priority", model.Priority);
|
|
request.AddParameter("CustomerScore", model.CustomerScore);
|
|
request.AddParameter("CreatedBy", _LoginUserId);
|
|
request.AddParameter("CreationTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("LastModifiedBy", _LoginUserName);
|
|
request.AddParameter("LastModifiedTime", DateTime.Now.ToString("dd-MMM-yyyy HH:mm:ss"));
|
|
request.AddParameter("BreakdownLocation", model.BreakdownLocation);
|
|
request.AddParameter("BreakdownLongitude", model.BreakdownLongitude);
|
|
request.AddParameter("BreakdownLattitude", model.BreakdownLattitude);
|
|
request.AddParameter("AssignedToUserId", model.AssignedToUserId);
|
|
request.AddParameter("AssignedToUserLattitude", model.AssignedToUserLattitude);
|
|
request.AddParameter("AssignedToUserLongitude", model.AssignedToUserLongitude);
|
|
request.AddParameter("IsDeclined", model.Isdeclined);
|
|
request.AddParameter("EstimatedTimeForJobCompletion", model.EstimatedTimeForJobCompletion);
|
|
request.AddParameter("TotalTicketLifecycleTimeSla", model.TotalTicketLifecycleTimeSla);
|
|
request.AddParameter("EstimatedTimeForJobCompletionSubmitTime", model.EstimatedTimeForJobCompletionSubmitTime);
|
|
request.AddParameter("VehicleRegistrationNumber", model.VehicleRegisterNumber);
|
|
request.AddParameter("BreakdownLocationLandmark", model.BreakdownLocationLandmark);
|
|
request.AddParameter("RouteId", model.RouteId);
|
|
request.AddParameter("CustomerContactNo", model.CustomerContactNo);
|
|
request.AddParameter("TicketId", model.TicketId);
|
|
request.AddParameter("RepairCost ", model.RepairCost);
|
|
request.AddParameter("DefaultSlaTime", model.DefaultSlaTime);
|
|
request.AddParameter("SlaMissedReason ", model.SlaMissedReason);
|
|
request.AddParameter("SuggestionComment", model.SuggestionComment);
|
|
request.AddParameter("JobCompleteResponseTime", model.JobCompleteResponseTime);
|
|
request.AddParameter("DefaultCol2", model.DefaultCol2);
|
|
request.AddParameter("DefaultCol3", model.DefaultCol3);
|
|
request.AddParameter("StateName", model.StateName);
|
|
request.AddParameter("CityName", model.CityName);
|
|
request.AddParameter("ChassisNo", model.ChassisNo);
|
|
request.AddParameter("CallerLanguage", model.CallerLanguage);
|
|
request.AddParameter("Warranty", model.Warranty);
|
|
request.AddParameter("TollFreeeNoSource", model.TollFreeeNoSource);
|
|
request.AddParameter("VehicleTagging", model.VehicleTagging);
|
|
request.AddParameter("KmCovered", model.KmCovered);
|
|
|
|
request.AddParameter("UtcMinute", _timeOffSetMinutes);
|
|
request.AddParameter("OpportunityLost", model.OpportunityLost);
|
|
request.AddParameter("_24HrsReason", model._24HrsReason);
|
|
request.AddParameter("EstimateDistance", model.EstimateDistance);
|
|
request.AddParameter("OtherRemarks", model.OtherRemarks); //dealer ticket reason
|
|
request.AddParameter("positionDateTime", model.positionDateTime); ///Telematic date Insert
|
|
request.AddParameter("EngineNumber", model.ChassisNo);
|
|
request.AddParameter("IsEPS", model.IsEPS);
|
|
request.AddParameter("EPS_prod_type", model.EPS_prod_type);
|
|
return client.Execute<TicketModel>(request).Data;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("TicketRepository_CreateTicketEPSNonHarvester", ex.Message, path, errorlogtf);
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
public async Task<string> BulkUploadPreclosure(List<PreClosureModel> objPreClosureModel)
|
|
{
|
|
string strSuccess = "";
|
|
try
|
|
{
|
|
HttpClient client = new HttpClient();
|
|
|
|
// Optional: Set base address and headers if needed
|
|
client.BaseAddress = new Uri(_RestClientUrl);
|
|
client.DefaultRequestHeaders.Accept.Clear();
|
|
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
|
client.Timeout = TimeSpan.FromSeconds(40);
|
|
try
|
|
{
|
|
HttpResponseMessage response = await client.PostAsJsonAsync("api/save", objPreClosureModel);
|
|
}
|
|
catch (TaskCanceledException ex)
|
|
{
|
|
objLog.ErrorLogFile("BulkUploadPreclosure_Timeout", ex.Message, path, errorlogtf);
|
|
}
|
|
catch (HttpRequestException ex)
|
|
{
|
|
objLog.ErrorLogFile("BulkUploadPreclosure_HttpRequestError", ex.Message, path, errorlogtf);
|
|
}
|
|
// POST JSON data to API
|
|
//HttpResponseMessage response = await client.PostAsJsonAsync("api/save", objPreClosureModel);
|
|
|
|
// if (response.IsSuccessStatusCode)
|
|
// {
|
|
// string result = await response.Content.ReadAsStringAsync();
|
|
// objLog.ErrorLogFile("BulkUploadPreclosure_Success", result, path, errorlogtf);
|
|
// strSuccess = "Success";
|
|
// }
|
|
// else
|
|
// {
|
|
// string error = await response.Content.ReadAsStringAsync();
|
|
// objLog.ErrorLogFile("BulkUploadPreclosure_Failed", $"StatusCode: {response.StatusCode}, Error: {error}", path, errorlogtf);
|
|
// strSuccess = $"Failed: {response.StatusCode}";
|
|
// }
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
objLog.ErrorLogFile("BulkUploadPreclosure_Exception", ex.Message, path, errorlogtf);
|
|
throw;
|
|
}
|
|
|
|
return strSuccess;
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
} |