/// <summary> /// Metoda de clasa pentru obtinerea unei liste de obiecte de tipul BLocalitati /// </summary> /// <param name="pId"></param> /// <returns>Lista ce corespunde parametrilor</returns> /// <remarks></remarks> public static BColectieLocalitati GetListByParam(int pIdRegiune, int pIdTara, CDefinitiiComune.EnumStare pStare, IDbTransaction pTranzactie) { BColectieLocalitati lstDLocalitati = new BColectieLocalitati(); using (DataSet ds = DLocalitati.GetListByParam(pIdRegiune, pIdTara, pStare, Convert.ToInt32(BMultiLingv.EnumLimba.Romana), pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { lstDLocalitati.Add(new BLocalitati(dr)); } } return(lstDLocalitati); }
public static BColectieLocalitati getByListaId(List <int> pListaId, IDbTransaction pTranzactie) { BColectieLocalitati listaRetur = new BColectieLocalitati(); if (!CUtil.EsteListaIntVida(pListaId)) { using (DataSet ds = DLocalitati.GetByListId(pListaId, pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new BLocalitati(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("BLocalitati"); } using (DataSet ds = DLocalitati.GetById(pId, pTranzactie)) { if (ds.Tables[0].Rows.Count > 0) { return(ds.Tables[0].Rows[0]); } else { throw new IdentificareBazaImposibilaException("BLocalitati"); } } }
/// <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 = DLocalitati.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 List <StructIdDenumire> GetListaCautare(int pIdRegiune, string pDenumire, IDbTransaction pTranzactie) { List <StructIdDenumire> listaRetur = new List <StructIdDenumire>(); if (pIdRegiune <= 0 || string.IsNullOrEmpty(pDenumire)) { return(listaRetur); } using (DataSet ds = DLocalitati.GetListaCautare(pIdRegiune, pDenumire.Length <= 2 ? string.Concat(CUtil.PregatesteStringCautareBDD(pDenumire), "%") : string.Concat("%", CUtil.PregatesteStringCautareBDD(pDenumire), "%"), pTranzactie)) { foreach (DataRow dr in ds.Tables[0].Rows) { listaRetur.Add(new StructIdDenumire(Convert.ToInt32(dr["nIdLocalitate"]), Convert.ToString(dr["tNume"]))); } } return(listaRetur); }
/// <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("BLocalitati"); } IDbTransaction Tranzactie = null; try { if (pTranzactie == null) { Tranzactie = CCerereSQL.GetTransactionOnConnection(); } else { Tranzactie = pTranzactie; } //Inchidem obiectul in baza de date DLocalitati.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); } }
/// <summary> /// Metoda de clasa ce permite adaugarea unui obiect de tip DLocalitati /// </summary> /// <param name="pIdRegiune"></param> /// <param name="pNume"></param> /// <param name="pTip"></param> /// <param name="pLimbaDenumirii"></param> /// <param name="pPreferinta"></param> /// <returns></returns> /// <remarks></remarks> public static int Add(int pIdRegiune, string pNume, int pTip, int pLimbaDenumirii, int pPreferinta, IDbTransaction pTranzactie) { int id = DLocalitati.Add(BUtilizator.GetIdUtilizatorConectat(pTranzactie), pIdRegiune, pNume, pTip, pLimbaDenumirii, pPreferinta, pTranzactie); return(id); }