256 lines
11 KiB
C#
256 lines
11 KiB
C#
namespace VECV_WebApi.Models.Activity
|
|
{
|
|
#region Namespaces
|
|
|
|
using DBHelper;
|
|
using LoggingHelper;
|
|
using Npgsql;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Configuration;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using VECV_WebApi.Models.Authorization;
|
|
using VECV_WebApi.Models.Ticket;
|
|
|
|
#endregion
|
|
|
|
#region Repository Class
|
|
|
|
/// <summary>
|
|
/// This class contain method releted to open and close ticket activity
|
|
/// </summary>
|
|
public class ActivityRepository
|
|
{
|
|
#region Global Variables
|
|
|
|
/// <summary>
|
|
/// making object of LoggingUtility class available to this class
|
|
/// </summary>
|
|
LoggingUtility objLog = new LoggingUtility();
|
|
|
|
/// <summary>
|
|
/// making the data-log file path available to this class
|
|
/// </summary>
|
|
string path = HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["PathLog"]);
|
|
|
|
/// <summary>
|
|
/// making error log file path available to this class
|
|
/// </summary>
|
|
string errorlogtf = (ConfigurationManager.AppSettings["ErrorLog"]);
|
|
|
|
/// <summary>
|
|
/// making the Database connection string available to this class
|
|
/// </summary>
|
|
private string _connStr;
|
|
|
|
|
|
/// <summary>
|
|
/// making Customer Repository object available to this class
|
|
/// </summary>
|
|
AuthenticationRepository objAuthorization;
|
|
|
|
#endregion
|
|
|
|
#region Contructors
|
|
|
|
/// <summary>
|
|
/// Default constructor intialize connection string of vecv_godata database
|
|
/// </summary>
|
|
public ActivityRepository(string connString)
|
|
{
|
|
this._connStr = connString;
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region API Methods
|
|
|
|
/// <summary>
|
|
/// To get open ticket activity ticket wise
|
|
/// </summary>
|
|
/// <param name="model">ticket info</param>
|
|
/// <returns>status and open ticket activity ticket wise</returns>
|
|
public List<OpenTicketActivityTicketWiseModel> GetOpenTicketActivityTicketWise(OpenTicketActivityTicketWiseModel model)
|
|
{
|
|
List<OpenTicketActivityTicketWiseModel> objListModel = new List<OpenTicketActivityTicketWiseModel>();
|
|
OpenTicketActivityTicketWiseModel objModel = new OpenTicketActivityTicketWiseModel();
|
|
try
|
|
{
|
|
objModel.Status = "1";
|
|
objAuthorization = new AuthenticationRepository();
|
|
if (objAuthorization.AuthenticateDevice(model.Token))
|
|
{
|
|
string tStatue = "";
|
|
NpgsqlParameter[] nSqlParamstatus = new NpgsqlParameter[1];
|
|
nSqlParamstatus[0] = new NpgsqlParameter("inticket_id", model.TicketId);
|
|
DataSet dsstatus = new DataSet();
|
|
|
|
dsstatus = NpgSqlHelper.ExecuteDataset(_connStr, CommandType.StoredProcedure, ConfigurationManager.AppSettings["usp_get_TicketStatus_By_TicketId"], nSqlParamstatus);
|
|
|
|
if (dsstatus.Tables[0].Rows[0]["ticket_status_alias"].ToString().Trim() != null && dsstatus.Tables[0].Rows[0]["ticket_status_alias"].ToString().Trim() != "")
|
|
{
|
|
tStatue = dsstatus.Tables[0].Rows[0]["ticket_status_alias"].ToString();
|
|
}
|
|
|
|
if (tStatue == "open")
|
|
{
|
|
|
|
DataSet ds = new DataSet();
|
|
NpgsqlParameter[] nSqlParam = new NpgsqlParameter[1];
|
|
nSqlParam[0] = new NpgsqlParameter("inticket_id ", model.TicketId);
|
|
ds = NpgSqlHelper.ExecuteDataset(_connStr, CommandType.StoredProcedure, ConfigurationManager.AppSettings["usp_get_open_ticket_activity_ticket_wise"], nSqlParam);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
objListModel = ds.Tables[0].AsEnumerable().Select(s => new OpenTicketActivityTicketWiseModel
|
|
{
|
|
|
|
Id = s.Field<string>("id"),
|
|
ActivityTicketsOpenCreatedBy = s.Field<string>("activity_tickets_open_created_by"),
|
|
ActivityTicketsOpenCreationTime = s.Field<DateTime?>("activity_tickets_open_creation_time") != null ? Convert.ToDateTime(s.Field<DateTime?>("activity_tickets_open_creation_time")).AddMinutes(model.UtcMinute).ToString(ConfigurationManager.AppSettings["DateTimeFormat"]) : Convert.ToDateTime(s.Field<DateTime?>("activity_tickets_open_creation_time")).ToString(ConfigurationManager.AppSettings["DateTimeFormat"]),
|
|
Remarks = s.Field<string>("remarks"),
|
|
TicketStatusAlias = s.Field<string>("ticket_status_alias"),
|
|
Status = "1"
|
|
}).ToList();
|
|
|
|
}
|
|
|
|
else
|
|
{
|
|
//objListModel.Add(new OpenTicketActivityTicketWiseModel
|
|
//{
|
|
// Status = "1",
|
|
// Message = ConfigurationManager.AppSettings["DataSetEmpty"].ToString()
|
|
//});
|
|
|
|
}
|
|
}
|
|
else
|
|
{
|
|
DataSet ds = new DataSet();
|
|
NpgsqlParameter[] nSqlParam = new NpgsqlParameter[1];
|
|
nSqlParam[0] = new NpgsqlParameter("inticket_id ", model.TicketId);
|
|
ds = NpgSqlHelper.ExecuteDataset(_connStr, CommandType.StoredProcedure, ConfigurationManager.AppSettings["usp_get_close_ticket_activity_ticket_wise"], nSqlParam);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
objListModel = ds.Tables[0].AsEnumerable().Select(s => new OpenTicketActivityTicketWiseModel
|
|
{
|
|
|
|
Id = s.Field<string>("id"),
|
|
ActivityTicketsOpenCreatedBy = s.Field<string>("activity_tickets_open_created_by"),
|
|
ActivityTicketsOpenCreationTime = s.Field<DateTime?>("activity_tickets_open_creation_time") != null ? Convert.ToDateTime(s.Field<DateTime?>("activity_tickets_open_creation_time")).AddMinutes(model.UtcMinute).ToString(ConfigurationManager.AppSettings["DateTimeFormat"]) : Convert.ToDateTime(s.Field<DateTime?>("activity_tickets_open_creation_time")).ToString(ConfigurationManager.AppSettings["DateTimeFormat"]),
|
|
Remarks = s.Field<string>("remarks"),
|
|
TicketStatusAlias = s.Field<string>("ticket_status_alias"),
|
|
Status = "1"
|
|
}).ToList();
|
|
}
|
|
}
|
|
return objListModel;
|
|
}
|
|
else
|
|
{
|
|
objListModel.Add(new OpenTicketActivityTicketWiseModel
|
|
{
|
|
Status = "0",
|
|
Message = ConfigurationManager.AppSettings["DeviceConfigurationTokenMessage"].ToString()
|
|
});
|
|
return objListModel;
|
|
}
|
|
|
|
}
|
|
|
|
catch (Exception Ex)
|
|
{
|
|
objListModel.Add(new OpenTicketActivityTicketWiseModel
|
|
{
|
|
Status = "0",
|
|
Message = Ex.Message
|
|
});
|
|
objLog.ErrorLogFile("GetOpenTicketActivityTicketWise", Ex.Message, path, errorlogtf);
|
|
return objListModel;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// To get close ticket activity ticket wise
|
|
/// </summary>
|
|
/// <param name="model">ticket info</param>
|
|
/// <returns>status and close tiket activity records</returns>
|
|
public List<CloseTicketActivityTicketWiseModel> GetCloseTicketActivityTicketWise(CloseTicketActivityTicketWiseModel model)
|
|
{
|
|
List<CloseTicketActivityTicketWiseModel> objListModel = new List<CloseTicketActivityTicketWiseModel>();
|
|
CloseTicketActivityTicketWiseModel objModel = new CloseTicketActivityTicketWiseModel();
|
|
try
|
|
{
|
|
objModel.Status = "1";
|
|
objAuthorization = new AuthenticationRepository();
|
|
if (objAuthorization.AuthenticateDevice(model.Token))
|
|
{
|
|
DataSet ds = new DataSet();
|
|
NpgsqlParameter[] nSqlParam = new NpgsqlParameter[1];
|
|
nSqlParam[0] = new NpgsqlParameter("inticket_id ", model.TicketId);
|
|
ds = NpgSqlHelper.ExecuteDataset(_connStr, CommandType.StoredProcedure, ConfigurationManager.AppSettings["usp_get_close_ticket_activity_ticket_wise"], nSqlParam);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
objListModel = ds.Tables[0].AsEnumerable().Select(s => new CloseTicketActivityTicketWiseModel
|
|
{
|
|
|
|
TicketsClosedId = s.Field<string>("id"),
|
|
ActivityTicketsCloseCreatedBy = s.Field<string>("activity_tickets_open_created_by"),
|
|
ActivityTicketsCloseCreationTime = s.Field<DateTime?>("activity_tickets_open_creation_time") != null ? Convert.ToDateTime(s.Field<DateTime?>("activity_tickets_open_creation_time")).AddMinutes(model.UtcMinute).ToString(ConfigurationManager.AppSettings["DateTimeFormat"]) : Convert.ToDateTime(s.Field<DateTime?>("activity_tickets_open_creation_time")).ToString(ConfigurationManager.AppSettings["DateTimeFormat"]),
|
|
Remarks = s.Field<string>("remarks"),
|
|
TicketStatusAlias = s.Field<string>("ticket_status_alias")
|
|
}).ToList();
|
|
}
|
|
|
|
return objListModel;
|
|
|
|
}
|
|
else
|
|
{
|
|
objListModel.Add(new CloseTicketActivityTicketWiseModel
|
|
{
|
|
Status = "0",
|
|
Message = ConfigurationManager.AppSettings["DeviceConfigurationTokenMessage"].ToString()
|
|
});
|
|
|
|
return objListModel;
|
|
}
|
|
|
|
}
|
|
|
|
catch (Exception Ex)
|
|
{
|
|
objListModel.Add(new CloseTicketActivityTicketWiseModel
|
|
{
|
|
Status = "0",
|
|
Message = Ex.Message
|
|
});
|
|
objLog.ErrorLogFile("GetCloseTicketActivityTicketWise", Ex.Message, path, errorlogtf);
|
|
return objListModel;
|
|
}
|
|
}
|
|
|
|
public string getPreclosureReason(string ticketid)
|
|
{
|
|
string strmessage = "";
|
|
NpgsqlParameter[] nSqlParam = new NpgsqlParameter[1];
|
|
nSqlParam[0] = new NpgsqlParameter("in_eos_ticket", ticketid);
|
|
|
|
DataSet ds = NpgSqlHelper.ExecuteDataset(_connStr, CommandType.StoredProcedure, ConfigurationManager.AppSettings["usp_get_preclosure_reason_by_ticketId"], nSqlParam);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
strmessage = Convert.ToString(ds.Tables[0].Rows[0]["sp_get_preclosure_reason_by_ticketId"]);
|
|
// strmessage = "success";//ds.Tables[0].Rows[0]["_ticket_id"].ToString(); // getting ticket id alias
|
|
// errorlogtf = (ConfigurationManager.AppSettings["ErrorLog"]) + ticketIdAlias;
|
|
}
|
|
|
|
return strmessage;
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
|
|
#endregion
|
|
} |