public async Task <ShareConfigDetails> GetShareConfigDetails(string ShareName, string ShareCode, string ConnectionString) { ShareConfigDetails ShareConfigDetails = new ShareConfigDetails(); ShareConfigDetails.lstShareconfigDetailsDTO = new List <ShareconfigDetailsDTO>(); await Task.Run(() => { try { using (NpgsqlDataReader dr = NPGSqlHelper.ExecuteReader(ConnectionString, CommandType.Text, "select shareconfigid,sharename,sharecode,statusid from tblmstshareconfig where upper(sharecode)='" + ManageQuote(ShareCode.ToUpper()) + "' and upper(sharename)='" + ManageQuote(ShareName.ToUpper()) + "' and statusid = " + Convert.ToInt32(Status.Active) + ";")) { while (dr.Read()) { ShareConfigDetails.pshareconfigid = Convert.ToInt64(dr["shareconfigid"]); ShareConfigDetails.psharename = Convert.ToString(dr["sharename"]); ShareConfigDetails.psharecode = Convert.ToString(dr["sharecode"]); } } using (NpgsqlDataReader dr = NPGSqlHelper.ExecuteReader(ConnectionString, CommandType.Text, "SELECT recordid, shareconfigid, sharename, membertypeid, membertype,applicanttype, facevalue, minshares, maxshares, ismultipleshares,multipleshares, isdivedend, divedendpayout, sharetransfer FROM tblmstshareconfigdetails where shareconfigid=" + ShareConfigDetails.pshareconfigid + " and upper(sharename)='" + ManageQuote(ShareConfigDetails.psharename.ToUpper()) + "' and statusid = " + Convert.ToInt32(Status.Active) + ";")) { while (dr.Read()) { ShareConfigDetails.lstShareconfigDetailsDTO.Add(new ShareconfigDetailsDTO { precordid = Convert.ToInt64(dr["recordid"]), pshareconfigid = Convert.ToInt64(dr["shareconfigid"]), psharename = Convert.ToString(dr["sharename"]), pmembertypeid = Convert.ToInt64(dr["membertypeid"]), pmembertype = Convert.ToString(dr["membertype"]), papplicanttype = Convert.ToString(dr["applicanttype"]), pfacevalue = Convert.ToDecimal(dr["facevalue"]), pminshares = Convert.ToInt64(dr["minshares"]), pmaxshares = Convert.ToInt64(dr["maxshares"]), pismultipleshares = Convert.ToBoolean(dr["ismultipleshares"]), pmultipleshares = Convert.ToInt64(dr["multipleshares"]), pisdivedend = Convert.ToBoolean(dr["isdivedend"]), pdivedendpayout = Convert.ToString(dr["divedendpayout"]), psharetransfer = Convert.ToBoolean(dr["sharetransfer"]), pTypeofOperation = "OLD" }); } } } catch (Exception) { throw; } }); return(ShareConfigDetails); }
public async Task <IActionResult> GetShareConfigurationDetails(string ShareName, string ShareCode) { ShareConfigDetails ShareConfigDetails = new ShareConfigDetails(); try { ShareConfigDetails = await ObjShareConfig.GetShareConfigDetails(ShareName, ShareCode, Con); return(ShareConfigDetails != null?Ok(ShareConfigDetails) : (IActionResult)StatusCode(StatusCodes.Status204NoContent)); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError)); throw; } }
public IActionResult SaveShareConfigurationDeatils([FromBody] ShareConfigDetails ShareConfigDetails) { try { if (ObjShareConfig.SaveShareConfigDetails(ShareConfigDetails, Con)) { return(Ok(true)); } else { return(StatusCode(StatusCodes.Status304NotModified)); } } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError)); throw; } }
public bool SaveShareConfigDetails(ShareConfigDetails ShareConfigDetails, string ConnectionString) { bool Issaved = false; string Recordid = string.Empty; string query = ""; StringBuilder SbInsert = new StringBuilder(); try { con = new NpgsqlConnection(ConnectionString); if (con.State != ConnectionState.Open) { con.Open(); } trans = con.BeginTransaction(); if (ShareConfigDetails.lstShareconfigDetailsDTO.Count > 0) { for (int i = 0; i < ShareConfigDetails.lstShareconfigDetailsDTO.Count; i++) { if (ShareConfigDetails.lstShareconfigDetailsDTO[i].pTypeofOperation.Trim().ToUpper() != "CREATE") { if (string.IsNullOrEmpty(Recordid)) { Recordid = ShareConfigDetails.lstShareconfigDetailsDTO[i].precordid.ToString(); } else { Recordid = Recordid + "," + ShareConfigDetails.lstShareconfigDetailsDTO[i].precordid.ToString(); } } if (string.IsNullOrEmpty(ShareConfigDetails.lstShareconfigDetailsDTO[i].pmembertype)) { ShareConfigDetails.lstShareconfigDetailsDTO[i].pmembertype = ""; } if (string.IsNullOrEmpty(ShareConfigDetails.lstShareconfigDetailsDTO[i].papplicanttype)) { ShareConfigDetails.lstShareconfigDetailsDTO[i].papplicanttype = ""; } if (string.IsNullOrEmpty(ShareConfigDetails.lstShareconfigDetailsDTO[i].pdivedendpayout)) { ShareConfigDetails.lstShareconfigDetailsDTO[i].pdivedendpayout = ""; } if (ShareConfigDetails.lstShareconfigDetailsDTO[i].pTypeofOperation.Trim().ToUpper() == "CREATE") { SbInsert.Append("INSERT INTO tblmstshareconfigdetails(shareconfigid, sharename, membertypeid, membertype,applicanttype, facevalue, minshares, maxshares, ismultipleshares,multipleshares, isdivedend, divedendpayout, sharetransfer,statusid,createdby, createddate) VALUES (" + ShareConfigDetails.pshareconfigid + ",'" + ManageQuote(ShareConfigDetails.psharename) + "'," + ShareConfigDetails.lstShareconfigDetailsDTO[i].pmembertypeid + ",'" + ManageQuote(ShareConfigDetails.lstShareconfigDetailsDTO[i].pmembertype) + "','" + ManageQuote(ShareConfigDetails.lstShareconfigDetailsDTO[i].papplicanttype) + "'," + Convert.ToDecimal(ShareConfigDetails.lstShareconfigDetailsDTO[i].pfacevalue) + "," + ShareConfigDetails.lstShareconfigDetailsDTO[i].pminshares + "," + ShareConfigDetails.lstShareconfigDetailsDTO[i].pmaxshares + "," + ShareConfigDetails.lstShareconfigDetailsDTO[i].pismultipleshares + "," + ShareConfigDetails.lstShareconfigDetailsDTO[i].pmultipleshares + "," + ShareConfigDetails.lstShareconfigDetailsDTO[i].pisdivedend + ",'" + ManageQuote(ShareConfigDetails.lstShareconfigDetailsDTO[i].pdivedendpayout) + "'," + ShareConfigDetails.lstShareconfigDetailsDTO[i].psharetransfer + "," + Convert.ToInt32(Status.Active) + "," + ShareConfigDetails.pCreatedby + ",current_timestamp);"); } if (ShareConfigDetails.lstShareconfigDetailsDTO[i].pTypeofOperation.Trim().ToUpper() == "UPDATE") { SbInsert.Append("UPDATE tblmstshareconfigdetails SET shareconfigid=" + ShareConfigDetails.pshareconfigid + ", sharename='" + ManageQuote(ShareConfigDetails.psharename) + "', membertypeid=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].pmembertypeid + ", membertype='" + ManageQuote(ShareConfigDetails.lstShareconfigDetailsDTO[i].pmembertype) + "',applicanttype='" + ManageQuote(ShareConfigDetails.lstShareconfigDetailsDTO[i].papplicanttype) + "', facevalue=" + Convert.ToDecimal(ShareConfigDetails.lstShareconfigDetailsDTO[i].pfacevalue) + ", minshares=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].pminshares + ", maxshares=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].pmaxshares + ", ismultipleshares=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].pismultipleshares + ",multipleshares=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].pmultipleshares + ", isdivedend=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].pisdivedend + ", divedendpayout='" + ManageQuote(ShareConfigDetails.lstShareconfigDetailsDTO[i].pdivedendpayout) + "', sharetransfer=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].psharetransfer + " WHERE RECORDID=" + ShareConfigDetails.lstShareconfigDetailsDTO[i].precordid + ";"); } } } if (!string.IsNullOrEmpty(Recordid)) { query = "update tblmstshareconfigdetails set statusid=" + Convert.ToInt32(Status.Inactive) + ",modifiedby=" + ShareConfigDetails.pCreatedby + ",modifieddate=current_timestamp where shareconfigid=" + ShareConfigDetails.pshareconfigid + " and recordid not in(" + Recordid + ");"; } else { //if (ShareConfigDetails.lstShareconfigDetailsDTO.Count == 0) //{ query = "update tblmstshareconfigdetails set statusid=" + Convert.ToInt32(Status.Inactive) + ",modifiedby=" + ShareConfigDetails.pCreatedby + ",modifieddate=current_timestamp where shareconfigid=" + ShareConfigDetails.pshareconfigid + ";"; //} } if (!string.IsNullOrEmpty(SbInsert.ToString()) || !string.IsNullOrEmpty(query)) { NPGSqlHelper.ExecuteNonQuery(trans, CommandType.Text, query + "" + SbInsert.ToString()); } trans.Commit(); Issaved = true; } catch (Exception) { trans.Rollback(); throw; } finally { if (con.State == ConnectionState.Open) { con.Dispose(); con.Close(); con.ClearPool(); trans.Dispose(); } } return(Issaved); }