Пример #1
0
        public RequestResult InsertAnnualSubsidyCommittees(
            CommitteeRequestInfo CommitteeRequestInfo,
            List <Files> Files
            )
        {
            try
            {
                /// Data Validations
                DataValidation.IsEmptyOrDefault2(CommitteeRequestInfo);
                DataValidation.IsEmptyOrDefault2(CommitteeRequestInfo.CheckedData);
                DataValidation.IsEmptyOrDefaultList2(CommitteeRequestInfo.Projects);
                DataValidation.IsEmptyOrDefaultList2(Files);

                //if (DataValidation.IsEmptyOrDefault(CommitteeRequestInfo) ||
                //    DataValidation.IsEmptyOrDefault(CommitteeRequestInfo.CheckedData) ||
                //    DataValidation.IsEmptyOrDefaultList(CommitteeRequestInfo.Projects) ||
                //    DataValidation.IsEmptyOrDefaultList(Files))
                //    throw new FaultException<ValidationFault>(new ValidationFault());


                /// Call Database
                using (CommitteesDAL dal = new CommitteesDAL(new ADO(true)))
                {
                    return(dal.InsertAnnualSubsidyCommitteesDAL(
                               CommitteeRequestInfo,
                               Files
                               ));
                }
            }
            catch (FaultException <ValidationFault> flex)
            {
                //ValidationFault fault = new ValidationFault
                //{
                //    Result = true,
                //    Message = "Parameter not correct",
                //    Description = "Invalid Parameters is Required but have null or empty or 0 value"
                //};

                //var flex = new FaultException<ValidationFault>(fault, new FaultReason("Invalid Parameters is Required but have null or empty or 0 value"));

                _log.Error(flex);

                throw flex;
            }
            catch (Exception ex)
            {
                ValidationFault fault = new ValidationFault
                {
                    Result      = false,
                    Message     = ex.Message,
                    Description = "Service have an internal error please contact service administartor [email protected]"
                };

                _log.Error(ex);

                throw new FaultException <ValidationFault>(fault);
            }
        }
Пример #2
0
        public RequestResult InsertFoundationAdditionalSubsidyCommitteesDAL(
            CommitteeRequestInfo obj
            )
        {
            List <SpInPuts> inputs = new List <SpInPuts>
            {
                new SpInPuts()
                {
                    KEY = "P_REG_TYPE_CODE", VALUE = obj.CheckedData.AgencyType
                },
                new SpInPuts()
                {
                    KEY = "P_SOC_REG_NO", VALUE = obj.CheckedData.AgencyLicenseNumber
                },

                new SpInPuts()
                {
                    KEY = "P_SUBSIDY_CODE", VALUE = obj.SubsidyType
                },
                new SpInPuts()
                {
                    KEY = "P_FIN_YEAR", VALUE = obj.FinancialYear
                },

                new SpInPuts()
                {
                    KEY = "P_LOGIN_ID", VALUE = obj.CheckedData.CommissionerNumber
                }
            };

            List <SpOutPuts> Outouts = new List <SpOutPuts>()
            {
                new SpOutPuts()
                {
                    ParameterName = "P_RESULT_CODE", OracleDbType = OracleDbType.Varchar2, Size = 300
                },
                new SpOutPuts()
                {
                    ParameterName = "P_RESULT_TEXT", OracleDbType = OracleDbType.Varchar2, Size = 2000
                },
                new SpOutPuts()
                {
                    ParameterName = "P_REQUEST_ID", OracleDbType = OracleDbType.Varchar2, Size = 300
                }
            };

            //Populate Parameters
            List <OracleParameter> OpParms = ado.PopulateSpInPuts(
                in inputs
                );

            ado.PopulateSpOutPuts(
                ref OpParms,
                in Outouts
                );

            try
            {
                ado.ExecuteStoredProcedure(
                    "SD_P_SUBSIDY_REQUEST",
                    OpParms,
                    out OracleParameterCollection OPCs
                    );

                RequestResult RequestResult = new RequestResult
                {
                    RequestId = OPCs[":P_REQUEST_ID"].Value != null?Convert.ToInt64(OPCs[":P_REQUEST_ID"].Value.ToString()) : 0,
                                    RequestCode = OPCs[":P_RESULT_CODE"].Value.ToString(),
                                    RequestName = OPCs[":P_RESULT_TEXT"].Value.ToString(),
                };

                for (int i = 0; i < obj.Projects.Count(); i++)
                {
                    RequestResult rr = InsertProjectDAL(
                        RequestResult.RequestId,
                        obj.CheckedData.CommissionerNumber,
                        obj.Projects[i]
                        );

                    if (rr.RequestCode != "1")
                    {
                        RequestResult.RequestId   = -1;
                        RequestResult.RequestCode = rr.RequestCode;
                        RequestResult.RequestName = rr.RequestName;

                        ado.SqlCommiteT(false);
                        return(RequestResult);
                    }

                    RequestResult.RequestCode = rr.RequestCode;
                    RequestResult.RequestName = rr.RequestName;
                }

                ado.SqlCommiteT(true);

                return(RequestResult);
            }
            catch (Exception ex)
            {
                ado.SqlCommiteT(false);
                throw ex;
            }
        }