Project

General

Profile

Feature #296 » 4-CsControllerFile.cs

Junaid M, 03/19/2024 12:28 PM

 
???File Path
==========
***...\Controllers\CorporateController.cs




???Check the points
==================
1) Set Error code no -> corporate_CONTROLLER.CS#???



// ??? Add the items top - Duplcation Avoid
using System;
using System.Data;
using Newtonsoft.Json;
using System.Linq;
using Npgsql;
using NpgsqlTypes;

using TAAS.Helpers;
using TAAS.Db;
using TAAS.Models;
using TAAS.Models.Corporate;
using TAAS.Src.Corporate;


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


[HttpGet("GetCorporateCustomSelectDataInitializeData")]
public IActionResult GetCorporateCustomSelectDataInitializeData()
{
try
{
// &&& Get Data from Header
long linLoginUserId = Convert.ToInt64(Request.Headers["linLoginUserId"]);
//string strLoginUserName = Request.Headers["strLoginUserName"];
string strSysModuleName = Request.Headers["strSysModuleName"];
//var dtmCurrentDateTime = DateTime.Now;

// *** Authentication Checking
if (linLoginUserId == 0) {
throw (new TaasAuthenticationException(this.insGlobalFunctions.FnGetExceptionResponseString("Login User Authentication Failed.", "CORPORATE_CONTROLLER.CS#001")));
}

// *** VIEW - User Permission Checking
string strAction = "VIEW";
NpgsqlParameter[] lstSqlParameter = {
new NpgsqlParameter("linLoginUserId", NpgsqlDbType.Bigint) { Value = linLoginUserId, DataTypeName = "linLoginUserId"},
new NpgsqlParameter("vhrSysModuleName", NpgsqlDbType.Varchar, 250) { Value = strSysModuleName, DataTypeName = "vhrSysModuleName"},
new NpgsqlParameter("vhrAction", NpgsqlDbType.Varchar, 50) { Value = strAction, DataTypeName = "vhrAction"},
};
DataSet objDataSet = this.insDbService.FnExcecuteSqlCommand("SELECT * FROM fn_check_user_permission(:linLoginUserId, :vhrSysModuleName, :vhrAction)", lstSqlParameter);
if (objDataSet != null && Convert.ToInt16(objDataSet.Tables[0].Rows[0]["sin_sql_check_status"]) == -1)
{
throw (new TaasUserPermissionException(this.insGlobalFunctions.FnGetExceptionResponseString("You have no Permission to CorporateCustomSelectData VIEW.", "CORPORATE_CONTROLLER.CS#002")));
}

MdlResCorporateCustomSelectDataInit mdlResCorporateCustomSelectDataInit = new MdlResCorporateCustomSelectDataInit();

// ??? Check and Rename or Remove If unwanted codes
CorporateCustomData insCorporateCustomData = new CorporateCustomData();
mdlResCorporateCustomSelectDataInit.lstMdlCorporateCustomDataBaseIntId = insCorporateCustomData.FnGetAllCorporateCustomDataKeyIntValue();
Customer insCustomer = new Customer();
mdlResCorporateCustomSelectDataInit.lstMdlCustomerBaseIntId = insCustomer.FnGetAllCustomerKeyIntValue();

// CorporateCustomSelectData List
mdlResCorporateCustomSelectDataInit.lstMdlCorporateCustomSelectData = this.insCorporateCustomSelectData.FnGetAllCorporateCustomSelectDataWithActionUser();

return Ok(mdlResCorporateCustomSelectDataInit);
}
catch (TaasAuthenticationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "AUTHENTICATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "Authentication Error.";

return Ok(mdlResponse);
}
catch (TaasUserPermissionException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "USER_PERMISSION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData User Permission Error.";

return Ok(mdlResponse);
}
catch (TaasModelValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "MODEL_VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Model Validation Error.";

return Ok(mdlResponse);
}
catch (TaasValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Validation Error.";

return Ok(mdlResponse);
}
catch (TaasLogicalException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "LOGICAL_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Logical Error.";

return Ok(mdlResponse);
}
catch (TaasSystemException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "SYSTEM_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData System Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Validation Error.";

return Ok(mdlResponse);
}
catch (TaasNoDataException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "NO_DATA_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData No Data Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseSystemException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_SYSTEM_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database System Error.";

return Ok(mdlResponse);
}
catch (TaasException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Taas Error.";

return Ok(mdlResponse);
}
catch (Exception ex)
{
MdlResponse mdlResponse = new MdlResponse();

mdlResponse.sinStatus = -1;
mdlResponse.strStatusCode = "ERROR";
mdlResponse.strErrorType = "SYSTEM_ERROR";
mdlResponse.strErrorCode = "CORPORATE_CONTROLLER.CS#001";
mdlResponse.strMessage = "CorporateCustomSelectData Error.";
mdlResponse.strSysError = ex.Message;

return Ok(mdlResponse);
}

}


[HttpPost("SaveCorporateCustomSelectData")]
public IActionResult SaveCorporateCustomSelectData([FromBody] MdlReqCorporateCustomSelectData mdlReqCorporateCustomSelectData)
{
try
{
// &&& Get Data from Header
mdlReqCorporateCustomSelectData.linLoginUserId = Convert.ToInt64(Request.Headers["linLoginUserId"]);
mdlReqCorporateCustomSelectData.strLoginUserName = Request.Headers["strLoginUserName"];
mdlReqCorporateCustomSelectData.strSysModuleName = Request.Headers["strSysModuleName"];
mdlReqCorporateCustomSelectData.dtmCurrentDateTime = DateTime.Now;

// *** Authentication
if (mdlReqCorporateCustomSelectData.linLoginUserId == 0) {
throw (new TaasAuthenticationException(this.insGlobalFunctions.FnGetExceptionResponseString("Login User Authentication Failed.", "CORPORATE_CONTROLLER.CS#003")));
}

// *** ADD/UPDATE - User Permission Checking
string strAction = "ADD";
if (mdlReqCorporateCustomSelectData.mdlCorporateCustomSelectData.binCorporateCustomSelectDataId > 0)
{
strAction = "EDIT";
}
NpgsqlParameter[] lstSqlParameter = {
new NpgsqlParameter("linLoginUserId", NpgsqlDbType.Bigint) { Value = mdlReqCorporateCustomSelectData.linLoginUserId, DataTypeName = "linLoginUserId"},
new NpgsqlParameter("vhrSysModuleName", NpgsqlDbType.Varchar, 250) { Value = mdlReqCorporateCustomSelectData.strSysModuleName, DataTypeName = "vhrSysModuleName"},
new NpgsqlParameter("vhrAction", NpgsqlDbType.Varchar, 50) { Value = strAction, DataTypeName = "vhrAction"},
};
DataSet objDataSet = this.insDbService.FnExcecuteSqlCommand("SELECT * FROM fn_check_user_permission(:linLoginUserId, :vhrSysModuleName, :vhrAction)", lstSqlParameter);
if (objDataSet != null && Convert.ToInt16(objDataSet.Tables[0].Rows[0]["sin_sql_check_status"]) == -1)
{
throw (new TaasUserPermissionException(this.insGlobalFunctions.FnGetExceptionResponseString("You have no Permission to CorporateCustomSelectData ADD/UPDATE.", "CORPORATE_CONTROLLER.CS#004")));
}

// !!! Model Validation
if (!ModelState.IsValid)
{
string strMdlValidationErrors = String.Join("; ", ModelState.Values.SelectMany(objStateValue => objStateValue.Errors)
.Select(objStateError => objStateError.ErrorMessage)
.ToList());
throw (new TaasModelValidationException(this.insGlobalFunctions.FnGetExceptionResponseString(strMdlValidationErrors, "CORPORATE_CONTROLLER.CS#005")));
}

// @@@ Decrypt
// ### Save
MdlResCorporateCustomSelectData mdlResCorporateCustomSelectData = this.insCorporateCustomSelectData.FnInsertOrUpdateCorporateCustomSelectData(mdlReqCorporateCustomSelectData);

return Ok(mdlResCorporateCustomSelectData);
}
catch (TaasAuthenticationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "AUTHENTICATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "Authentication Error.";

return Ok(mdlResponse);
}
catch (TaasUserPermissionException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "USER_PERMISSION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData User Permission Error.";

return Ok(mdlResponse);
}
catch (TaasModelValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "MODEL_VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Model Validation Error.";

return Ok(mdlResponse);
}
catch (TaasValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Validation Error.";

return Ok(mdlResponse);
}
catch (TaasLogicalException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "LOGICAL_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Logical Error.";

return Ok(mdlResponse);
}
catch (TaasSystemException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "SYSTEM_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData System Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Validation Error.";

return Ok(mdlResponse);
}
catch (TaasNoDataException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "NO_DATA_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData No Data Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseSystemException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_SYSTEM_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database System Error.";

return Ok(mdlResponse);
}
catch (TaasException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Taas Error.";

return Ok(mdlResponse);
}
catch (Exception ex)
{
MdlResponse mdlResponse = new MdlResponse();

mdlResponse.sinStatus = -1;
mdlResponse.strStatusCode = "ERROR";
mdlResponse.strErrorType = "SYSTEM_ERROR";
mdlResponse.strErrorCode = "CORPORATE_CONTROLLER.CS#001";
mdlResponse.strMessage = "CorporateCustomSelectData Error.";
mdlResponse.strSysError = ex.Message;

return Ok(mdlResponse);
}

}


[HttpPost("DeleteCorporateCustomSelectData")]
public IActionResult DeleteCorporateCustomSelectData([FromBody] MdlReqBaseIntId mdlReqCorporateCustomSelectDataBaseIntId)
{
try
{
// &&& Get Data from Header
mdlReqCorporateCustomSelectDataBaseIntId.linLoginUserId = Convert.ToInt64(Request.Headers["linLoginUserId"]);
mdlReqCorporateCustomSelectDataBaseIntId.strLoginUserName = Request.Headers["strLoginUserName"];
mdlReqCorporateCustomSelectDataBaseIntId.strSysModuleName = Request.Headers["strSysModuleName"];
mdlReqCorporateCustomSelectDataBaseIntId.dtmCurrentDateTime = DateTime.Now;

// *** Authentication
if (mdlReqCorporateCustomSelectDataBaseIntId.linLoginUserId == 0) {
throw (new TaasAuthenticationException(this.insGlobalFunctions.FnGetExceptionResponseString("Login User Authentication Failed.", "CORPORATE_CONTROLLER.CS#006")));
}

// *** DELETE - User Permission Checking
string strAction = "DELETE";
NpgsqlParameter[] lstSqlParameter = {
new NpgsqlParameter("linLoginUserId", NpgsqlDbType.Bigint) { Value = mdlReqCorporateCustomSelectDataBaseIntId.linLoginUserId, DataTypeName = "linLoginUserId"},
new NpgsqlParameter("vhrSysModuleName", NpgsqlDbType.Varchar, 250) { Value = mdlReqCorporateCustomSelectDataBaseIntId.strSysModuleName, DataTypeName = "vhrSysModuleName"},
new NpgsqlParameter("vhrAction", NpgsqlDbType.Varchar, 50) { Value = strAction, DataTypeName = "vhrAction"},
};
DataSet objDataSet = this.insDbService.FnExcecuteSqlCommand("SELECT * FROM fn_check_user_permission(:linLoginUserId, :vhrSysModuleName, :vhrAction)", lstSqlParameter);
if (objDataSet != null && Convert.ToInt16(objDataSet.Tables[0].Rows[0]["sin_sql_check_status"]) == -1)
{
throw (new TaasUserPermissionException(this.insGlobalFunctions.FnGetExceptionResponseString("You have no Permission to CorporateCustomSelectData DELETE.", "CORPORATE_CONTROLLER.CS#007")));
}

// @@@ Decrypt
// ### Delete
MdlResponse mdlResponse = this.insCorporateCustomSelectData.FnDeleteCorporateCustomSelectData(mdlReqCorporateCustomSelectDataBaseIntId);

return Ok(mdlResponse);
}
catch (TaasAuthenticationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "AUTHENTICATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "Authentication Error.";

return Ok(mdlResponse);
}
catch (TaasUserPermissionException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "USER_PERMISSION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData User Permission Error.";

return Ok(mdlResponse);
}
catch (TaasModelValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "MODEL_VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Model Validation Error.";

return Ok(mdlResponse);
}
catch (TaasValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Validation Error.";

return Ok(mdlResponse);
}
catch (TaasLogicalException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "LOGICAL_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Logical Error.";

return Ok(mdlResponse);
}
catch (TaasSystemException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "SYSTEM_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData System Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseValidationException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_VALIDATION_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Validation Error.";

return Ok(mdlResponse);
}
catch (TaasNoDataException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "NO_DATA_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData No Data Error.";

return Ok(mdlResponse);
}
catch (TaasDatabaseSystemException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "DATABASE_SYSTEM_ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database System Error.";

return Ok(mdlResponse);
}
catch (TaasException ex)
{
MdlResponse mdlResponse = JsonConvert.DeserializeObject<MdlResponse>(ex.Message);
mdlResponse.strErrorType = "ERROR";
mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Taas Error.";

return Ok(mdlResponse);
}
catch (Exception ex)
{
MdlResponse mdlResponse = new MdlResponse();

mdlResponse.sinStatus = -1;
mdlResponse.strStatusCode = "ERROR";
mdlResponse.strErrorType = "SYSTEM_ERROR";
mdlResponse.strErrorCode = "CORPORATE_CONTROLLER.CS#001";
mdlResponse.strMessage = "CorporateCustomSelectData Error.";
mdlResponse.strSysError = ex.Message;

return Ok(mdlResponse);
}

}

(5-5/9)