/// <summary> /// Metoda pentru inserarea relatiei Dosar-stadiu curenta /// </summary> /// <returns>SOCISA.response = new object(bool = status, string = error message, int = id-ul cheie returnat)</returns> public response Insert() { response toReturn = Validare(); if (!toReturn.Status) { return(toReturn); } /* * if (this.Stadiu != null) * { * response toReturnS = this.Stadiu.Insert(); * if (toReturnS.Status && toReturnS.InsertedId != null) * this.ID_STADIU = Convert.ToInt32(toReturnS.InsertedId); * } */ PropertyInfo[] props = this.GetType().GetProperties(); ArrayList _parameters = new ArrayList(); var col = CommonFunctions.table_columns(authenticatedUserId, connectionString, "procese_stadii"); foreach (PropertyInfo prop in props) { if (col != null && col.ToUpper().IndexOf(prop.Name.ToUpper()) > -1) // ca sa includem in Array-ul de parametri doar coloanele tabelei, nu si campurile externe si/sau alte proprietati { string propName = prop.Name; string propType = prop.PropertyType.ToString(); object propValue = prop.GetValue(this, null); propValue = propValue == null ? DBNull.Value : propValue; if (propType != null) { if (propName.ToUpper() != "ID") // il vom folosi doar la Edit! { _parameters.Add(new MySqlParameter(String.Format("_{0}", propName.ToUpper()), propValue)); } } } } DataAccess da = new DataAccess(authenticatedUserId, connectionString, CommandType.StoredProcedure, "PROCESE_STADIIsp_insert", _parameters.ToArray()); toReturn = da.ExecuteInsertQuery(); if (toReturn.Status) { this.ID = toReturn.InsertedId; try { if (toReturn.Status) { Proces p = new Proces(authenticatedUserId, connectionString, Convert.ToInt32(this.ID_PROCES)); p.ChangeStadiuCurent(Convert.ToInt32(((ProcesStadiu)p.GetStadiuCurent().Result).ID)); Dosar d = new Dosar(authenticatedUserId, connectionString, Convert.ToInt32(p.ID_DOSAR)); d.SetDataUltimeiModificari(DateTime.Now); } } catch { } } return(toReturn); }
/// <summary> /// Metoda pentru modificarea relatiei Dosar-stadiu curenta /// </summary> /// <returns>SOCISA.response = new object(bool = status, string = error message, int = id-ul cheie returnat)</returns> public response Update() { response toReturn = Validare(); if (!toReturn.Status) { return(toReturn); } PropertyInfo[] props = this.GetType().GetProperties(); ArrayList _parameters = new ArrayList(); var col = CommonFunctions.table_columns(authenticatedUserId, connectionString, "dosare_stadii"); foreach (PropertyInfo prop in props) { if (col != null && col.ToUpper().IndexOf(prop.Name.ToUpper()) > -1) // ca sa includem in Array-ul de parametri doar coloanele tabelei, nu si campurile externe si/sau alte proprietati { string propName = prop.Name; string propType = prop.PropertyType.ToString(); object propValue = prop.GetValue(this, null); propValue = propValue == null ? DBNull.Value : propValue; if (propType != null) { _parameters.Add(new MySqlParameter(String.Format("_{0}", propName.ToUpper()), propValue)); } } } DataAccess da = new DataAccess(authenticatedUserId, connectionString, CommandType.StoredProcedure, "DOSARE_STADIIsp_update", _parameters.ToArray()); toReturn = da.ExecuteUpdateQuery(); try { Dosar d = new Dosar(authenticatedUserId, connectionString, this.ID_DOSAR); d.SetDataUltimeiModificari(DateTime.Now); } catch { } return(toReturn); }