???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(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 ?? "CorporateCustomSelectData User Permission Error."; return Ok(mdlResponse); } catch (TaasModelValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(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(ex.Message); mdlResponse.strErrorType = "VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Validation Error."; return Ok(mdlResponse); } catch (TaasLogicalException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "LOGICAL_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Logical Error."; return Ok(mdlResponse); } catch (TaasSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData System Error."; return Ok(mdlResponse); } catch (TaasDatabaseException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Error."; return Ok(mdlResponse); } catch (TaasDatabaseValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(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(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(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(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(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 ?? "CorporateCustomSelectData User Permission Error."; return Ok(mdlResponse); } catch (TaasModelValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(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(ex.Message); mdlResponse.strErrorType = "VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Validation Error."; return Ok(mdlResponse); } catch (TaasLogicalException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "LOGICAL_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Logical Error."; return Ok(mdlResponse); } catch (TaasSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData System Error."; return Ok(mdlResponse); } catch (TaasDatabaseException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Error."; return Ok(mdlResponse); } catch (TaasDatabaseValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(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(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(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(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(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 ?? "CorporateCustomSelectData User Permission Error."; return Ok(mdlResponse); } catch (TaasModelValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(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(ex.Message); mdlResponse.strErrorType = "VALIDATION_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Validation Error."; return Ok(mdlResponse); } catch (TaasLogicalException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "LOGICAL_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Logical Error."; return Ok(mdlResponse); } catch (TaasSystemException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "SYSTEM_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData System Error."; return Ok(mdlResponse); } catch (TaasDatabaseException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(ex.Message); mdlResponse.strErrorType = "DATABASE_ERROR"; mdlResponse.strMessage = mdlResponse.strMessage ?? "CorporateCustomSelectData Database Error."; return Ok(mdlResponse); } catch (TaasDatabaseValidationException ex) { MdlResponse mdlResponse = JsonConvert.DeserializeObject(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(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(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(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); } }