Project

General

Profile

Feature #275 » 3-CsFile.cs

Junaid M, 02/19/2024 05:47 PM

 
???File Path
==========
***...\Src\Travel\AirFareType.cs




???Check the points
==================



// ??? IMPORT:- Add the items top - Duplcation Avoid
using System;
using System.Data;
using System.Collections.Generic;
using Npgsql;
using NpgsqlTypes;

using TAAS.Db;
using TAAS.Models;
using TAAS.Models.Travel;
using TAAS.Helpers;


// ??? CLASS ATTRIBUTES:- The code past top of the class(Attributes) - Duplcation Avoid
public GlobalFunctions insGlobalFunctions = new GlobalFunctions();
DbService insDbService = new();


public List<MdlBaseIntId> FnGetAllAirFareTypeBaseData()
{
List<MdlBaseIntId> lstMdlAirFareTypeBaseIntId = new List<MdlBaseIntId>();

// Get Data from DB
DataSet objDataSet = this.insDbService.FnExcecuteSqlCommand("SELECT * FROM fn_get_all_air_fare_type()");
if (objDataSet != null)
{
foreach (DataRow objRecord in objDataSet.Tables[0].Rows)
{
MdlBaseIntId mdlBaseIntId = new MdlBaseIntId();

mdlBaseIntId.binPkId = (DBNull.Value != objRecord["pk_air_fare_type_id"]) ? (long)Convert.ToUInt64(objRecord["pk_air_fare_type_id"]) : mdlBaseIntId.binPkId;
mdlBaseIntId.strCode = (DBNull.Value != objRecord["vhr_air_fare_type_code"]) ? Convert.ToString(objRecord["vhr_air_fare_type_code"]) : mdlBaseIntId.strCode;
mdlBaseIntId.strName = (DBNull.Value != objRecord[""]) ? Convert.ToString(objRecord[""]) : mdlBaseIntId.strName;
lstMdlAirFareTypeBaseIntId.Add(mdlBaseIntId);
}
}

return lstMdlAirFareTypeBaseIntId;
}


public List<MdlAirFareType> FnGetAllAirFareTypeWithActionUser()
{
List<MdlAirFareType> lstMdlAirFareType = new List<MdlAirFareType>();
// Get Data from DB
DataSet objDataSet = this.insDbService.FnExcecuteSqlCommand("SELECT * FROM fn_get_all_air_fare_type_with_action_user()");
if (objDataSet != null)
{
foreach (DataRow objRecord in objDataSet.Tables[0].Rows)
{
MdlAirFareType mdlAirFareType = new MdlAirFareType();

mdlAirFareType.binAirFareTypeId = (DBNull.Value != objRecord["pk_air_fare_type_id"]) ? (long)Convert.ToInt64(objRecord["pk_air_fare_type_id"]) : mdlAirFareType.binAirFareTypeId;
mdlAirFareType.strAirFareTypeCode = (DBNull.Value != objRecord["vhr_air_fare_type_code"]) ? Convert.ToString(objRecord["vhr_air_fare_type_code"]) : mdlAirFareType.strAirFareTypeCode;
mdlAirFareType.strAirFareType = (DBNull.Value != objRecord["vhr_air_fare_type"]) ? Convert.ToString(objRecord["vhr_air_fare_type"]) : mdlAirFareType.strAirFareType;
mdlAirFareType.strRemarks = (DBNull.Value != objRecord["txt_remarks"]) ? Convert.ToString(objRecord["txt_remarks"]) : mdlAirFareType.strRemarks;
mdlAirFareType.GdsFareCode = objRecord["arj_gds_fare_code"];


mdlAirFareType.intSysActionId = (DBNull.Value != objRecord["int_sys_action_id"]) ? (int)Convert.ToInt32(objRecord["int_sys_action_id"]) : mdlAirFareType.intSysActionId;
mdlAirFareType.binCreatedUserId = (DBNull.Value != objRecord["fk_created_user_id"]) ? (long)Convert.ToInt64(objRecord["fk_created_user_id"]) : mdlAirFareType.binCreatedUserId;
mdlAirFareType.strCreatedUser = this.insDbService.FnGetValue(objRecord["vhr_created_user"], mdlAirFareType.strCreatedUser);
mdlAirFareType.dtmCreated = (DBNull.Value != objRecord["dtm_created"]) ? (DateTime)Convert.ToDateTime(objRecord["dtm_created"]) : mdlAirFareType.dtmCreated;
mdlAirFareType.binLastModifiedUserId = (DBNull.Value != objRecord["fk_last_modified_user_id"]) ? (long)Convert.ToInt64(objRecord["fk_last_modified_user_id"]) : mdlAirFareType.binLastModifiedUserId;
mdlAirFareType.strLastModifiedUser = this.insDbService.FnGetValue(objRecord["vhr_last_modified_user"], mdlAirFareType.strLastModifiedUser);
mdlAirFareType.dtmLastModified = (DBNull.Value != objRecord["dtm_last_modified"]) ? (DateTime)Convert.ToDateTime(objRecord["dtm_last_modified"]) : mdlAirFareType.dtmLastModified;
mdlAirFareType.binDeletedUserId = (DBNull.Value != objRecord["fk_deleted_user_id"]) ? (long)Convert.ToInt64(objRecord["fk_deleted_user_id"]) : mdlAirFareType.binDeletedUserId;
mdlAirFareType.strDeletedUser = this.insDbService.FnGetValue(objRecord["vhr_deleted_user"], mdlAirFareType.strDeletedUser);
mdlAirFareType.dtmDeleted = (DBNull.Value != objRecord["dtm_deleted"]) ? (DateTime)Convert.ToDateTime(objRecord["dtm_deleted"]) : mdlAirFareType.dtmDeleted;

lstMdlAirFareType.Add(mdlAirFareType);
}
}

return lstMdlAirFareType;
}


public MdlResAirFareType FnInsertOrUpdateAirFareType(MdlReqAirFareType mdlReqAirFareType)
{
// *** Input Validation INSERT and UPDATE Case[not duplicate model validation]
// ??? Duplication Checking in DB FUCTION(Insert and Update) - CODE, NAME [, other unique fields] Already exists
// ??? Count Exced or other checking License related in DB FUCTION(Insert)
// ??? UPDATE Check already update another users in DB FUCTION(Update and Delete)

// Set Create or modified User in DB FUCTION(Insert, Update and Delete)
if (mdlReqAirFareType.mdlAirFareType.binAirFareTypeId == 0)
{
mdlReqAirFareType.mdlAirFareType.intSysActionId = 0;
mdlReqAirFareType.mdlAirFareType.binCreatedUserId = mdlReqAirFareType.linLoginUserId;
mdlReqAirFareType.mdlAirFareType.strCreatedUser = mdlReqAirFareType.strLoginUserName;
mdlReqAirFareType.mdlAirFareType.dtmCreated = mdlReqAirFareType.dtmCurrentDateTime;
}
else {
mdlReqAirFareType.mdlAirFareType.binLastModifiedUserId = mdlReqAirFareType.linLoginUserId;
mdlReqAirFareType.mdlAirFareType.strLastModifiedUser = mdlReqAirFareType.strLoginUserName;
mdlReqAirFareType.mdlAirFareType.dtmLastModified = mdlReqAirFareType.dtmCurrentDateTime;
}

// DB Actions
NpgsqlParameter[] lstSqlParameter = {
new NpgsqlParameter("mdlAirFareType", NpgsqlDbType.Jsonb) { Value = mdlReqAirFareType.mdlAirFareType, DataTypeName = "jsnAirFareType"},
new NpgsqlParameter("jsnSqlRes", NpgsqlDbType.Json) { DataTypeName = "jsnSqlRes", Direction = ParameterDirection.Output }
};
MdlDbResponse mdlDbResponse = this.insDbService.FnExcecuteOutSqlCommand("CALL sp_insert_or_update_airFareType(:mdlAirFareType, NULL)", lstSqlParameter);
// DB Error
if (mdlDbResponse.sinSqlCustomStatus != 1)
{
if (mdlDbResponse.strSqlCustomErrorType == "DATABASE_ERROR")
{
throw (new TaasDatabaseException(this.insGlobalFunctions.FnGetExceptionResponseString(mdlDbResponse.strSqlCustomMessage, "AIRFARETYPE.CS#004", mdlDbResponse.strSqlSysMessage)));
}
else if (mdlDbResponse.strSqlCustomErrorType == "DATABASE_VALIDATION_ERROR")
{
throw (new TaasDatabaseValidationException(this.insGlobalFunctions.FnGetExceptionResponseString(mdlDbResponse.strSqlCustomMessage, "AIRFARETYPE.CS#002", mdlDbResponse.strSqlSysMessage)));
}
else if (mdlDbResponse.strSqlCustomErrorType == "DATABASE_SYSTEM_ERROR")
{
throw (new TaasDatabaseException(this.insGlobalFunctions.FnGetExceptionResponseString(mdlDbResponse.strSqlCustomMessage, "AIRFARETYPE.CS#003", mdlDbResponse.strSqlSysMessage)));
}
}

// Saved
MdlResAirFareType mdlResAirFareType = new MdlResAirFareType();
mdlResAirFareType.mdlAirFareType = mdlAirFareTypeReq.mdlAirFareType;
if (mdlReqAirFareType.mdlAirFareType.binAirFareTypeId == 0)
{
mdlResAirFareType.mdlAirFareType.binAirFareTypeId = mdlDbResponse.binSqlPk ?? 0;
mdlResAirFareType.mdlAirFareType.dtmCreated = mdlDbResponse.dtmCurrent;
}
else
{
mdlResAirFareType.mdlAirFareType.intSysActionId += 1;
mdlResAirFareType.mdlAirFareType.dtmLastModified = mdlDbResponse.dtmCurrent;
}
mdlResAirFareType.sinStatus = 1;
mdlResAirFareType.strStatusCode = "SUCCESS";
mdlResAirFareType.strMessage = "AIRFARETYPE has been Saved.";
return mdlResAirFareType;
}


public MdlResBaseIntId FnDeleteAirFareType(MdlReqBaseIntId mdlReqAirFareTypeBaseIntId)
{
// *** Input Validation DELETE Case[not duplicate model validation]
// ??? FOREIGN KEY REFERENCES Ching in DB FUCTION(Delete)
// ??? UPDATE Check already update another users in DB FUCTION(Update and Delete)
// ??? Set Create or modified User in DB FUCTION(Insert, Update and Delete)

// DB Actions
NpgsqlParameter[] lstSqlParameter = {
new NpgsqlParameter("binAirFareTypeId", NpgsqlDbType.Bigint) { Value = mdlReqAirFareTypeBaseIntId.mdlBaseIntId.binPkId, DataTypeName = "binAirFareTypeId"},
new NpgsqlParameter("intSysActionId", NpgsqlDbType.Integer) { Value = mdlReqAirFareTypeBaseIntId.mdlBaseIntId.binCustomValue, DataTypeName = "intSysActionId"},
new NpgsqlParameter("binDeletedUserId", NpgsqlDbType.Bigint) { Value = mdlReqAirFareTypeBaseIntId.linLoginUserId, DataTypeName = "binDeletedUserId"},
new NpgsqlParameter("jsnSqlRes", NpgsqlDbType.Json) { DataTypeName = "jsnSqlRes", Direction = ParameterDirection.Output }
};
MdlDbResponse mdlDbResponse = this.insDbService.FnExcecuteOutSqlCommand("CALL sp_delete_airFareType(:binAirFareTypeId, :intSysActionId, :binDeletedUserId, NULL)", lstSqlParameter);
// DB Error
if (mdlDbResponse.sinSqlCustomStatus != 1)
{
if (mdlDbResponse.strSqlCustomErrorType == "DATABASE_ERROR")
{
throw (new TaasDatabaseException(this.insGlobalFunctions.FnGetExceptionResponseString(mdlDbResponse.strSqlCustomMessage, "AIRFARETYPE.CS#004", mdlDbResponse.strSqlSysMessage)));
}
else if (mdlDbResponse.strSqlCustomErrorType == "DATABASE_VALIDATION_ERROR")
{
throw (new TaasDatabaseValidationException(this.insGlobalFunctions.FnGetExceptionResponseString(mdlDbResponse.strSqlCustomMessage, "AIRFARETYPE.CS#005", mdlDbResponse.strSqlSysMessage)));
}
else if (mdlDbResponse.strSqlCustomErrorType == "DATABASE_SYSTEM_ERROR")
{
throw (new TaasDatabaseException(this.insGlobalFunctions.FnGetExceptionResponseString(mdlDbResponse.strSqlCustomMessage, "AIRFARETYPE.CS#006", mdlDbResponse.strSqlSysMessage)));
}
}

// Deleted
MdlResBaseIntId mdlResAirFareTypeIntId = new MdlResBaseIntId();

mdlResAirFareTypeIntId.mdlBaseIntId = mdlReqAirFareTypeBaseIntId.mdlBaseIntId;
mdlResAirFareTypeIntId.sinStatus = 1;
mdlResAirFareTypeIntId.strStatusCode = "SUCCESS";
mdlResAirFareTypeIntId.strMessage = "AIRFARETYPE has been deleted.";

return mdlResAirFareTypeIntId;
}

(3-3/9)