/// <summary> /// Metoda de clasa ce permite adaugarea unui obiect de tip DClientiPlati /// </summary> /// <param name="pIdClient"></param> /// <param name="pDataPlata"></param> /// <param name="pSumaPlatita"></param> /// <param name="pModalitatePlata"></param> /// <param name="pCursBNR"></param> /// <returns></returns> /// <remarks></remarks> public static int Add(int pIdClient, DateTime pDataPlata, double pSumaPlatita, BDefinitiiGenerale.EnumModalitatePlata pModalitatePlata, double pCursBNR, string pObservatii, BColectieClientiComenzi lComenzi, IDbTransaction pTranzactie) { int id = DClientiPlati.Add(BUtilizator.GetIdUtilizatorConectat(pTranzactie), pIdClient, pDataPlata, pSumaPlatita, Convert.ToInt32(pModalitatePlata), pCursBNR, pObservatii, pTranzactie); if (id > 0) { double valoarePlatita = pSumaPlatita; foreach (var item in lComenzi) { if (valoarePlatita > 0) { if (valoarePlatita >= item.ValoareFinala) { BClientiPlatiComenzi.Add(item.Id, id, item.ValoareFinala, null); valoarePlatita -= item.ValoareFinala; } else { BClientiPlatiComenzi.Add(item.Id, id, valoarePlatita, null); valoarePlatita = 0; } } } } return(id); }
public static double GetTotalIncasari(int pIdClient, IDbTransaction pTranzactie) { double nTotalPlati = 0; using (DataSet ds = DClientiPlati.GetTotalIncasari(pIdClient, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { nTotalPlati = CUtil.GetAsDouble(dr["nTotal"]); } } return(nTotalPlati); }
public static BColectieClientiPlati GetListaIncasari(int pIdClient, DateTime pDataInceput, DateTime pDataSfarsit, IDbTransaction pTranzactie) { BColectieClientiPlati lstDClientiPlati = new BColectieClientiPlati(); using (DataSet ds = DClientiPlati.GetListByParamSiPerioada(pIdClient, pDataInceput, pDataSfarsit, CDefinitiiComune.EnumStare.Activa, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { lstDClientiPlati.Add(new BClientiPlati(dr)); } } return(lstDClientiPlati); }
public static BColectieClientiPlati GetListByParamIdClient(int pIdClient, CDefinitiiComune.EnumStare pStare, IDbTransaction pTranzactie) { BColectieClientiPlati lstDClientiPlati = new BColectieClientiPlati(); using (DataSet ds = DClientiPlati.GetListByParamIdClient(pIdClient, pStare, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { lstDClientiPlati.Add(new BClientiPlati(dr)); } } return(lstDClientiPlati); }
public static BColectieClientiPlati getById(int pId, IDbTransaction pTranzactie) { BColectieClientiPlati listaRetur = new BColectieClientiPlati(); if (pId > 0) { using (DataSet ds = DClientiPlati.GetById(pId, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new BClientiPlati(dr)); } } } return(listaRetur); }
public static BColectieClientiPlati getByListaId(List <int> pListaId, IDbTransaction pTranzactie) { BColectieClientiPlati listaRetur = new BColectieClientiPlati(); if (!CUtil.EsteListaIntVida(pListaId)) { using (DataSet ds = DClientiPlati.GetByListId(pListaId, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new BClientiPlati(dr)); } } } return(listaRetur); }
/// <summary> /// Metoda de clasa pentru obtinerea DataRow-ului corespunzator obiectului in baza de date /// </summary> /// <param name="pId"></param> /// <returns>Un DataRow ce contine informatiile corespunzatoare obiectului</returns> /// <remarks></remarks> private static DataRow GetDataRowForObjet(int pId, IDbTransaction pTranzactie) { if (pId <= 0) { throw new IdentificareBazaImposibilaException("BClientiPlati"); } using (DataSet ds = DClientiPlati.GetById(pId, pTranzactie)) { if (ds.Tables[0].Rows.Count > 0) { return(ds.Tables[0].Rows[0]); } else { throw new IdentificareBazaImposibilaException("BClientiPlati"); } } }
/// <summary> /// Metoda de instanta ce permite inchiderea(dezactivarea) obiectului /// </summary> /// <param name="pInchidere">inchidem sau activam?</param> /// <param name="pMotivInchidere">Motivul inchiderii</param> /// <param name="pTranzactie">Tranzactia</param> /// <remarks>Exceptie daca nu se poate identifica obiectul</remarks> public void Close(bool pInchidere, string pMotivInchidere, IDbTransaction pTranzactie) { if (this.Id <= 0) { throw new IdentificareBazaImposibilaException("BClientiPlati"); } IDbTransaction Tranzactie = null; try { if (pTranzactie == null) { Tranzactie = CCerereSQL.GetTransactionOnConnection(); } else { Tranzactie = pTranzactie; } //Inchidem obiectul in baza de date DClientiPlati.CloseById(BUtilizator.GetIdUtilizatorConectat(Tranzactie), this.Id, pInchidere, pMotivInchidere, Tranzactie); BClientiPlatiComenzi.DeleteByIdPlata(this.Id, Tranzactie); if (pTranzactie == null) { //Facem Comit tranzactiei doar daca aceasta nu a fost transmisa in parametru. Altfel comitul va fi gestionat de functia apelanta CCerereSQL.CloseTransactionOnConnection(Tranzactie, true); } } catch (Exception) { if ((pTranzactie == null) && (Tranzactie != null)) { CCerereSQL.CloseTransactionOnConnection(Tranzactie, false); } throw; } finally { //Reinitializam obiectul pentru a recupera, printre altele, data de inchidere generata de baza de date this.Refresh(pTranzactie); } }
/// <summary> /// Metoda de instanta ce permite actualizarea informatiilor din baza de date pentru a fi conforme cu informatiile actuale ale obiectului /// </summary> /// <param name="pTranzactie">Tranzactia</param> /// <returns>True daca inregistrarea a fost modificata; False in caz contrar</returns> /// <remarks>Exceptie daca nu avem initializate proprietatile ce permit identificarea obiectului in baza</remarks> public override bool UpdateAll(IDbTransaction pTranzactie) { if (!this.ExistaProprietatiModificate()) { return(true); } IDbTransaction Tranzactie = null; try { if (pTranzactie == null) { Tranzactie = CCerereSQL.GetTransactionOnConnection(); } else { Tranzactie = pTranzactie; } //Facem actualizarea in baza bool succesModificare = DClientiPlati.UpdateById(getDictProprietatiModificate(), this.Id, Tranzactie); if (pTranzactie == null) { //Facem Comit tranzactiei doar daca aceasta nu a fost transmisa in parametru. Altfel comitul va fi gestionat de functia apelanta CCerereSQL.CloseTransactionOnConnection(Tranzactie, true); } return(succesModificare); } catch (Exception) { if ((pTranzactie == null) && (Tranzactie != null)) { CCerereSQL.CloseTransactionOnConnection(Tranzactie, false); } throw; } finally { //Reinitializam obiectul pentru a recupera, printre altele, data de actualizare generata de baza de date //this.Refresh(pTranzactie); } }
public static Dictionary <int, double> GetDictIdClinicaTotalIncasari(List <int> pListaIdClinici, IDbTransaction pTranzactie) { Dictionary <int, double> dictRetur = new Dictionary <int, double>(); if (!CUtil.EsteListaIntVida(pListaIdClinici)) { using (DataSet ds = DClientiPlati.GetDictIdClinicaTotalIncasari(pListaIdClinici, pTranzactie)) { int idClinica = 0; double totalInc = 0; foreach (DataRow dr in ds.Tables[0].Rows) { idClinica = CUtil.GetAsInt32(dr[DClientiPlati.EnumCampuriTabela.xnIdClient.ToString()]); totalInc = CUtil.GetAsDouble(dr["nTotal"]); dictRetur.Add(idClinica, totalInc); } } } return(dictRetur); }