public BindingList <Profesional> GetAll() { if (SessionData.Contains("Profesionales")) { return(SessionData.Get <BindingList <Profesional> >("Profesionales")); } var result = SqlDataAccess.ExecuteDataTableQuery(ConfigurationManager.ConnectionStrings["StringConexion"].ToString(), "[SHARPS].GetProfesionales"); //Todos los profesionales activos var profesionales = new BindingList <Profesional>(); EspecialidadesManager espMan = new EspecialidadesManager(); if (result != null && result.Rows != null) { foreach (DataRow row in result.Rows) { Profesional profesional = new Profesional(); profesional.UserID = int.Parse(row["ID"].ToString()); profesional.UserName = row["UserName"].ToString(); profesional.FaltanDatos = bool.Parse(row["FaltanDatos"].ToString()); if (!DBNull.Value.Equals(row["Matricula"])) { profesional.Matricula = row["Matricula"].ToString(); } profesional.DetallesPersona = new DetallesPersona(); profesional.DetallesPersona.Apellido = row["Apellido"].ToString(); profesional.DetallesPersona.Nombre = row["Nombre"].ToString(); profesional.DetallesPersona.FechaNacimiento = Convert.ToDateTime(row["FechaNacimiento"]); profesional.DetallesPersona.DNI = long.Parse(row["DNI"].ToString()); profesional.DetallesPersona.Email = row["Email"].ToString(); profesional.DetallesPersona.Direccion = row["Direccion"].ToString(); profesional.DetallesPersona.Telefono = long.Parse(row["Telefono"].ToString()); if (!DBNull.Value.Equals(row["Sexo"])) { profesional.DetallesPersona.Sexo = (TipoSexo)Enum.Parse(typeof(TipoSexo), row["Sexo"].ToString()); } if (!DBNull.Value.Equals(row["TipoDoc"])) { profesional.DetallesPersona.TipoDNI = (TipoDoc)Enum.Parse(typeof(TipoDoc), row["TipoDoc"].ToString()); } profesional.Especialidades = espMan.GetAllForUser(profesional.UserID); profesionales.Add(profesional); } } SessionData.Set("Profesionales", profesionales); return(profesionales); }
public void GuardarProfesional(Profesional profesional) { var usersManager = new UsersManager(); var entityDetailManager = new DetallePersonaManager(); if (profesional.UserID == 0)//Profesional nuevo { var transaction = SqlDataAccess.OpenTransaction(ConfigurationManager.ConnectionStrings["StringConexion"].ToString()); try { SessionData.Set("Transaction", transaction); profesional.UserID = usersManager.insertarUsuario(profesional as User); var detalleID = entityDetailManager.AddDetallePersona(profesional as User); SqlDataAccess.ExecuteNonQuery( "[SHARPS].InsertProfesional", SqlDataAccessArgs .CreateWith("@Matricula", profesional.Matricula) .And("@ID", profesional.UserID) .And("@Rol", profesional.RoleID) .Arguments, transaction); SessionData.Remove("Transaction"); SqlDataAccess.Commit(transaction); } catch { SqlDataAccess.Rollback(transaction); profesional.UserID = 0; throw; } } else //Editando un profesional { entityDetailManager.UpdateDetallePersona(profesional.DetallesPersona, profesional.UserID); SqlDataAccess.ExecuteNonQuery(ConfigurationManager.ConnectionStrings["StringConexion"].ToString(), "[SHARPS].UpdateProfesional", SqlDataAccessArgs .CreateWith("@Matricula", profesional.Matricula) .And("@ID", profesional.UserID) .Arguments); } InsertarEspecialidades(profesional); }
public List <Especialidad> GetAll() { if (SessionData.Contains("Especialidades")) { return(SessionData.Get <List <Especialidad> >("Especialidades")); } var ret = new List <Especialidad>(); var result = SqlDataAccess.ExecuteDataTableQuery(ConfigurationManager.ConnectionStrings["StringConexion"].ToString(), "[SHARPS].GetAllEspecialidades"); if (result != null) { foreach (DataRow row in result.Rows) { ret.Add(new Especialidad() { ID = int.Parse(row["ID"].ToString()), Nombre = row["Descripcion"].ToString() }); } } SessionData.Set("Especialidades", ret); return(ret); }