public LoanFacilityDTO getLoanFacilityDetails(string ConnectionString, Int64 SavingAccountId) { LoanFacilityDTO objLoanFacility = new LoanFacilityDTO(); try { using (NpgsqlDataReader dr = NPGSqlHelper.ExecuteReader(ConnectionString, CommandType.Text, "select tl.savingconfigid,isloanfacilityapplicable,eligiblepercentage,ageperiod,ageperiodtype from tblmstSavingAccountLoansConfig tl join tblmstSavingAccountConfig tt on tl.Savingconfigid=tt.Savingconfigid where tl.savingconfigid=" + SavingAccountId + " and tl.statusid=1")) { if (dr.Read()) { objLoanFacility = new LoanFacilityDTO() { pSavingConfigid = Convert.ToInt64(dr["Savingconfigid"]), pIsloanfacilityapplicable = Convert.ToBoolean(dr["isloanfacilityapplicable"]), pEligiblepercentage = Convert.ToDecimal(dr["eligiblepercentage"]), pAgeperiod = Convert.ToDecimal(dr["ageperiod"]), pAgeperiodtype = Convert.ToString(dr["ageperiodtype"]), }; } } } catch (Exception ex) { throw ex; } return(objLoanFacility); }
public bool SaveLoanFacility(LoanFacilityDTO objLoanFacility, string connectionstring) { bool isSaved = false; StringBuilder sbinsert = new StringBuilder(); try { con = new NpgsqlConnection(connectionstring); if (con.State != ConnectionState.Open) { con.Open(); } trans = con.BeginTransaction(); if (string.IsNullOrEmpty(objLoanFacility.pEligiblepercentage.ToString())) { objLoanFacility.pEligiblepercentage = 0; } if (string.IsNullOrEmpty(objLoanFacility.pAgeperiod.ToString())) { objLoanFacility.pAgeperiod = 0; } int count = Convert.ToInt32(NPGSqlHelper.ExecuteScalar(trans, CommandType.Text, "select count(*) from tblmstSavingAccountLoansConfig where savingconfigid=" + objLoanFacility.pSavingConfigid + " and statusid=" + Convert.ToInt32(Status.Active) + "")); if (count == 0) { sbinsert.Append("insert into tblmstSavingAccountLoansConfig(savingconfigid, savingaccname, isloanfacilityapplicable, eligiblepercentage, ageperiod, ageperiodtype, statusid, createdby, createddate)values(" + objLoanFacility.pSavingConfigid + ",'" + objLoanFacility.pSavingAccname + "'," + objLoanFacility.pIsloanfacilityapplicable + "," + objLoanFacility.pEligiblepercentage + "," + objLoanFacility.pAgeperiod + ",'" + objLoanFacility.pAgeperiodtype + "'," + Convert.ToInt32(Status.Active) + "," + objLoanFacility.pCreatedby + ",current_timestamp);"); } if (count != 0) { sbinsert.Append("update tblmstSavingAccountLoansConfig set isloanfacilityapplicable=" + objLoanFacility.pIsloanfacilityapplicable + ", eligiblepercentage=" + objLoanFacility.pEligiblepercentage + ", ageperiod=" + objLoanFacility.pAgeperiod + ", ageperiodtype='" + objLoanFacility.pAgeperiodtype + "',modifiedby =" + objLoanFacility.pCreatedby + ",modifieddate=current_timestamp where savingconfigid =" + objLoanFacility.pSavingConfigid + ";"); } if (!string.IsNullOrEmpty(sbinsert.ToString())) { NPGSqlHelper.ExecuteNonQuery(trans, CommandType.Text, sbinsert.ToString()); } trans.Commit(); isSaved = true; } catch (Exception ex) { trans.Rollback(); throw ex; } finally { if (con.State == ConnectionState.Open) { con.Dispose(); con.Close(); con.ClearPool(); trans.Dispose(); } } return(isSaved); }
public IActionResult SaveLoanFacility(LoanFacilityDTO LoanFacilitylist) { bool isSaved = false; try { isSaved = objSavingAccountConfig.SaveLoanFacility(LoanFacilitylist, Con); } catch (Exception ex) { throw new FinstaAppException(ex.ToString()); } return(Ok(isSaved)); }