/// <summary> /// Metoda de clasa pentru obtinerea unei liste de obiecte de tipul BUtilizatoriVenituri /// </summary> /// <param name="pId"></param> /// <returns>Lista ce corespunde parametrilor</returns> /// <remarks></remarks> public static BColectieUtilizatoriVenituri GetListByParam(int pIdUtilizator, CDefinitiiComune.EnumStare pStare, IDbTransaction pTranzactie) { BColectieUtilizatoriVenituri lstDUtilizatoriVenituri = new BColectieUtilizatoriVenituri(); using (DataSet ds = DUtilizatoriVenituri.GetListByParam(pIdUtilizator, pStare, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { lstDUtilizatoriVenituri.Add(new BUtilizatoriVenituri(dr)); } } return(lstDUtilizatoriVenituri); }
public static BColectieUtilizatoriVenituri getById(int pId, IDbTransaction pTranzactie) { BColectieUtilizatoriVenituri listaRetur = new BColectieUtilizatoriVenituri(); if (pId > 0) { using (DataSet ds = DUtilizatoriVenituri.GetById(pId, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new BUtilizatoriVenituri(dr)); } } } return(listaRetur); }
public static BColectieUtilizatoriVenituri getByListaId(List <int> pListaId, IDbTransaction pTranzactie) { BColectieUtilizatoriVenituri listaRetur = new BColectieUtilizatoriVenituri(); if (!CUtil.EsteListaIntVida(pListaId)) { using (DataSet ds = DUtilizatoriVenituri.GetByListaId(pListaId, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new BUtilizatoriVenituri(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("BUtilizatoriVenituri"); } using (DataSet ds = DUtilizatoriVenituri.GetById(pId, pTranzactie)) { if (ds.Tables[0].Rows.Count > 0) { return(ds.Tables[0].Rows[0]); } else { throw new IdentificareBazaImposibilaException("BUtilizatoriVenituri"); } } }
/// <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 = DUtilizatoriVenituri.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); } }
/// <summary> /// Metoda de clasa ce permite adaugarea unui obiect de tip DUtilizatoriVenituri /// </summary> /// <param name="pIdUtilizator"></param> /// <param name="pDataInceput"></param> /// <param name="pDataFinal"></param> /// <param name="pObservatii"></param> /// <param name="pTipVenit"></param> /// <param name="pSalariuFix"></param> /// <returns></returns> /// <remarks></remarks> public static int Add(int pIdUtilizator, DateTime pDataInceput, DateTime pDataFinal, string pObservatii, EnumTipVenit pTipVenit, double pSalariuFix, Dictionary <int, double> pDictIdEtapaPret, IDbTransaction pTranzactie) { IDbTransaction Tranzactie = null; int id = 0; try { if (pTranzactie == null) { Tranzactie = CCL.DAL.CCerereSQL.GetTransactionOnConnection(); } else { Tranzactie = pTranzactie; } id = DUtilizatoriVenituri.Add(BUtilizator.GetIdUtilizatorConectat(pTranzactie), pIdUtilizator, pDataInceput, pDataFinal, pObservatii, Convert.ToInt32(pTipVenit), pSalariuFix, Tranzactie); if (pDictIdEtapaPret != null) { foreach (var item in pDictIdEtapaPret) { BUtilizatoriVenituriDetalii.Add(id, item.Key, item.Value, Tranzactie); } } if (pTranzactie == null) { //Facem Comit tranzactiei doar daca aceasta nu a fost transmisa in parametru. Altfel comitul va fi gestionat de functia apelanta CCL.DAL.CCerereSQL.CloseTransactionOnConnection(Tranzactie, true); } } catch (Exception) { if ((pTranzactie == null) && (Tranzactie != null)) { CCL.DAL.CCerereSQL.CloseTransactionOnConnection(Tranzactie, false); } throw; } return(id); }
/// <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("BUtilizatoriVenituri"); } IDbTransaction Tranzactie = null; try { if (pTranzactie == null) { Tranzactie = CCerereSQL.GetTransactionOnConnection(); } else { Tranzactie = pTranzactie; } //Inchidem obiectul in baza de date DUtilizatoriVenituri.CloseById(BUtilizator.GetIdUtilizatorConectat(Tranzactie), this.Id, pInchidere, pMotivInchidere, 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); } }