public static BColectieClientiCabinete GetListByIdClient(int pIdClient, CDefinitiiComune.EnumStare pStare, IDbTransaction pTranzactie) { BColectieClientiCabinete lstDClientiCabinete = new BColectieClientiCabinete(); using (DataSet ds = DClientiCabinete.GetListByParamIdClient(pIdClient, pStare, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { lstDClientiCabinete.Add(new BClientiCabinete(dr)); } } return(lstDClientiCabinete); }
/// <summary> /// Metoda de clasa ce permite adaugarea unui obiect de tip DClientiCabinete /// </summary> /// <param name="pIdClient"></param> /// <param name="pDenumire"></param> /// <param name="pIdAdresa"></param> /// <returns></returns> /// <remarks></remarks> public static BClientiCabinete Add(int pIdClient, string pDenumire, IDbTransaction pTranzactie) { int id = DClientiCabinete.Add(BUtilizator.GetIdUtilizatorConectat(pTranzactie), pIdClient, pDenumire, pTranzactie); Comune.BAdrese adresa = Comune.BAdrese.AddEmpty(TipObiectClasa, id, Comune.BAdrese.EnumTipAdresa.Principala, pTranzactie); BClientiCabinete cabinet = new Clienti.BClientiCabinete(id, pTranzactie); cabinet.IdAdresa = adresa.Id; cabinet.UpdateAll(pTranzactie); return(cabinet); }
public static BColectieClientiCabinete getByListaId(List <int> pListaId, IDbTransaction pTranzactie) { BColectieClientiCabinete listaRetur = new BColectieClientiCabinete(); if (!CUtil.EsteListaIntVida(pListaId)) { using (DataSet ds = DClientiCabinete.GetByListId(pListaId, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new BClientiCabinete(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("BClientiCabinete"); } using (DataSet ds = DClientiCabinete.GetById(pId, pTranzactie)) { if (ds.Tables[0].Rows.Count > 0) { return(ds.Tables[0].Rows[0]); } else { throw new IdentificareBazaImposibilaException("BClientiCabinete"); } } }
/// <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 = DClientiCabinete.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 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("BClientiCabinete"); } IDbTransaction Tranzactie = null; try { if (pTranzactie == null) { Tranzactie = CCerereSQL.GetTransactionOnConnection(); } else { Tranzactie = pTranzactie; } //Inchidem obiectul in baza de date DClientiCabinete.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); } }