???File Path ========== ***...\Controllers\PaidchequeController.cs ???Check the points ================== 1) Set Error code no -> paidcheque_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.Account; using TAAS.Src.Account; // ??? The code past top of the class(Attributes) - Duplcation Avoid public GlobalFunctions insGlobalFunctions = new GlobalFunctions(); DbService insDbService = new DbService(); PaidChequeReturn insPaidChequeReturn = new PaidChequeReturn(); [HttpGet("GetPaidChequeReturnInitializeData")] public IActionResult GetPaidChequeReturnInitializeData() { 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.", "PAIDCHEQUE_CONTROLLER.CS#001"))); } // *** VIEW - User Permission Checking string strAction = "VIEW_MENU"; 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 PaidChequeReturn VIEW.", "PAIDCHEQUE_CONTROLLER.CS#002"))); } MdlResPaidChequeReturnInit mdlResPaidChequeReturnInit = new MdlResPaidChequeReturnInit(); // ??? Check and Rename or Remove If unwanted codes Documents insDocuments = new Documents(); mdlResPaidChequeReturnInit.lstMdlDocumentsBaseIntId = insDocuments.FnGetAllDocumentsKeyIntValue(); PaidCheque insPaidCheque = new PaidCheque(); mdlResPaidChequeReturnInit.lstMdlPaidChequeBaseIntId = insPaidCheque.FnGetAllPaidChequeKeyIntValue(); PaidChequeDetails insPaidChequeDetails = new PaidChequeDetails(); mdlResPaidChequeReturnInit.lstMdlPaidChequeDetailsBaseIntId = insPaidChequeDetails.FnGetAllPaidChequeDetailsKeyIntValue(); BankCharge insBankCharge = new BankCharge(); mdlResPaidChequeReturnInit.lstMdlBankChargeBaseIntId = insBankCharge.FnGetAllBankChargeKeyIntValue(); BankCrCustomer insBankCrCustomer = new BankCrCustomer(); mdlResPaidChequeReturnInit.lstMdlBankCrCustomerBaseIntId = insBankCrCustomer.FnGetAllBankCrCustomerKeyIntValue(); BankExpense insBankExpense = new BankExpense(); mdlResPaidChequeReturnInit.lstMdlBankExpenseBaseIntId = insBankExpense.FnGetAllBankExpenseKeyIntValue(); ServiceTax insServiceTax = new ServiceTax(); mdlResPaidChequeReturnInit.lstMdlServiceTaxBaseIntId = insServiceTax.FnGetAllServiceTaxKeyIntValue(); // PaidChequeReturn List mdlResPaidChequeReturnInit.lstMdlPaidChequeReturn = this.insPaidChequeReturn.FnGetAllPaidChequeReturnWithActionUser(); return Ok(mdlResPaidChequeReturnInit); } catch (TaasAuthenticationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "AUTHENTICATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "Authentication Error."; return Ok(mdlResponse); } catch (TaasUserPermissionException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "USER_PERMISSION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn User Permission Error."; return Ok(mdlResponse); } catch (TaasModelValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "MODEL_VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Model Validation Error."; return Ok(mdlResponse); } catch (TaasValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Validation Error."; return Ok(mdlResponse); } catch (TaasLogicalException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "LOGICAL_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Logical Error."; return Ok(mdlResponse); } catch (TaasSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn System Error."; return Ok(mdlResponse); } catch (TaasDatabaseException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database Error."; return Ok(mdlResponse); } catch (TaasDatabaseValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database Validation Error."; return Ok(mdlResponse); } catch (TaasNoDataException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "NO_DATA_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn No Data Error."; return Ok(mdlResponse); } catch (TaasDatabaseSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database System Error."; return Ok(mdlResponse); } catch (TaasException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Taas Error."; return Ok(mdlResponse); } catch (Exception ex) { MdlResponse mdlResponse = new MdlResponse(); mdlResponse.sinStatus = -1; mdlResponse.strStatusCode = "ERROR"; mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strErrorCode = "PAIDCHEQUE_CONTROLLER.CS#001"; mdlResponse.strMessage = "PaidChequeReturn Error."; mdlResponse.strSysError = ex.Message; return Ok(mdlResponse); } } [HttpPost("SavePaidChequeReturn")] public IActionResult SavePaidChequeReturn([FromBody] MdlReqPaidChequeReturn mdlReqPaidChequeReturn) { try { // &&& Get Data from Header mdlReqPaidChequeReturn.linLoginUserId = Convert.ToInt64(Request.Headers["linLoginUserId"]); mdlReqPaidChequeReturn.strLoginUserName = Request.Headers["strLoginUserName"]; mdlReqPaidChequeReturn.strSysModuleName = Request.Headers["strSysModuleName"]; mdlReqPaidChequeReturn.dtmCurrentDateTime = DateTime.Now; // *** Authentication if (mdlReqPaidChequeReturn.linLoginUserId == 0) { throw (new TaasAuthenticationException(this.insGlobalFunctions.FnGetExceptionResponseString("Login User Authentication Failed.", "PAIDCHEQUE_CONTROLLER.CS#003"))); } // *** ADD/UPDATE - User Permission Checking string strAction = "ADD"; if (mdlReqPaidChequeReturn.mdlPaidChequeReturn.binPaidChequeReturnId > 0) { strAction = "EDIT"; } NpgsqlParameter[] lstSqlParameter = { new NpgsqlParameter("linLoginUserId", NpgsqlDbType.Bigint) { Value = mdlReqPaidChequeReturn.linLoginUserId, DataTypeName = "linLoginUserId"}, new NpgsqlParameter("vhrSysModuleName", NpgsqlDbType.Varchar, 250) { Value = mdlReqPaidChequeReturn.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 PaidChequeReturn ADD/UPDATE.", "PAIDCHEQUE_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, "PAIDCHEQUE_CONTROLLER.CS#005"))); } // @@@ Decrypt // ### Save MdlResPaidChequeReturn mdlResPaidChequeReturn = this.insPaidChequeReturn.FnInsertOrUpdatePaidChequeReturn(mdlReqPaidChequeReturn); return Ok(mdlResPaidChequeReturn); } catch (TaasAuthenticationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "AUTHENTICATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "Authentication Error."; return Ok(mdlResponse); } catch (TaasUserPermissionException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "USER_PERMISSION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn User Permission Error."; return Ok(mdlResponse); } catch (TaasModelValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "MODEL_VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Model Validation Error."; return Ok(mdlResponse); } catch (TaasValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Validation Error."; return Ok(mdlResponse); } catch (TaasLogicalException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "LOGICAL_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Logical Error."; return Ok(mdlResponse); } catch (TaasSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn System Error."; return Ok(mdlResponse); } catch (TaasDatabaseException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database Error."; return Ok(mdlResponse); } catch (TaasDatabaseValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database Validation Error."; return Ok(mdlResponse); } catch (TaasNoDataException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "NO_DATA_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn No Data Error."; return Ok(mdlResponse); } catch (TaasDatabaseSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database System Error."; return Ok(mdlResponse); } catch (TaasException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Taas Error."; return Ok(mdlResponse); } catch (Exception ex) { MdlResponse mdlResponse = new MdlResponse(); mdlResponse.sinStatus = -1; mdlResponse.strStatusCode = "ERROR"; mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strErrorCode = "PAIDCHEQUE_CONTROLLER.CS#001"; mdlResponse.strMessage = "PaidChequeReturn Error."; mdlResponse.strSysError = ex.Message; return Ok(mdlResponse); } } [HttpPost("DeletePaidChequeReturn")] public IActionResult DeletePaidChequeReturn([FromBody] MdlReqBaseIntId mdlReqPaidChequeReturnBaseIntId) { try { // &&& Get Data from Header mdlReqPaidChequeReturnBaseIntId.linLoginUserId = Convert.ToInt64(Request.Headers["linLoginUserId"]); mdlReqPaidChequeReturnBaseIntId.strLoginUserName = Request.Headers["strLoginUserName"]; mdlReqPaidChequeReturnBaseIntId.strSysModuleName = Request.Headers["strSysModuleName"]; mdlReqPaidChequeReturnBaseIntId.dtmCurrentDateTime = DateTime.Now; // *** Authentication if (mdlReqPaidChequeReturnBaseIntId.linLoginUserId == 0) { throw (new TaasAuthenticationException(this.insGlobalFunctions.FnGetExceptionResponseString("Login User Authentication Failed.", "PAIDCHEQUE_CONTROLLER.CS#006"))); } // *** DELETE - User Permission Checking string strAction = "DELETE"; NpgsqlParameter[] lstSqlParameter = { new NpgsqlParameter("linLoginUserId", NpgsqlDbType.Bigint) { Value = mdlReqPaidChequeReturnBaseIntId.linLoginUserId, DataTypeName = "linLoginUserId"}, new NpgsqlParameter("vhrSysModuleName", NpgsqlDbType.Varchar, 250) { Value = mdlReqPaidChequeReturnBaseIntId.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 PaidChequeReturn DELETE.", "PAIDCHEQUE_CONTROLLER.CS#007"))); } // @@@ Decrypt // ### Delete MdlResponse mdlResponse = this.insPaidChequeReturn.FnDeletePaidChequeReturn(mdlReqPaidChequeReturnBaseIntId); return Ok(mdlResponse); } catch (TaasAuthenticationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "AUTHENTICATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "Authentication Error."; return Ok(mdlResponse); } catch (TaasUserPermissionException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "USER_PERMISSION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn User Permission Error."; return Ok(mdlResponse); } catch (TaasModelValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "MODEL_VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Model Validation Error."; return Ok(mdlResponse); } catch (TaasValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Validation Error."; return Ok(mdlResponse); } catch (TaasLogicalException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "LOGICAL_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Logical Error."; return Ok(mdlResponse); } catch (TaasSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn System Error."; return Ok(mdlResponse); } catch (TaasDatabaseException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database Error."; return Ok(mdlResponse); } catch (TaasDatabaseValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database Validation Error."; return Ok(mdlResponse); } catch (TaasNoDataException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "NO_DATA_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn No Data Error."; return Ok(mdlResponse); } catch (TaasDatabaseSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Database System Error."; return Ok(mdlResponse); } catch (TaasException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "PaidChequeReturn Taas Error."; return Ok(mdlResponse); } catch (Exception ex) { MdlResponse mdlResponse = new MdlResponse(); mdlResponse.sinStatus = -1; mdlResponse.strStatusCode = "ERROR"; mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strErrorCode = "PAIDCHEQUE_CONTROLLER.CS#001"; mdlResponse.strMessage = "PaidChequeReturn Error."; mdlResponse.strSysError = ex.Message; return Ok(mdlResponse); } }