public bool Actualizar(Servicio servicio) { try { daServicio = new daServicio(); daServicio.IniciarTransaccion(); Servicio servicio_ = daServicio.ObtenerPorId(servicio.idServicio); servicio_.codigo = servicio.codigo; servicio_.descripcion = servicio.descripcion; servicio_.activo = servicio.activo; daServicioUnidad = new daServicioUnidad(); daServicioUnidad.AsignarSesion(daServicio); foreach (ServicioUnidad unidad in servicio.unidades) { if (unidad.idServicioUnidad == 0) { unidad.idServicio = servicio.idServicio; daServicioUnidad.Agregar(unidad); } else { ServicioUnidad unidad_ = daServicioUnidad.ObtenerPorId(unidad.idServicioUnidad); unidad_.unidad = unidad.unidad; unidad_.factor = unidad.factor; } } foreach (int idUnidad in servicio.idsUnidades) { daServicioUnidad.EliminarPorId(idUnidad, constantes.esquemas.Inventarios); } daServicio.ConfirmarTransaccion(); } catch (Exception) { daServicio.AbortarTransaccion(); throw; } finally { daServicio.CerrarSesion(); } return true; }
public Servicio ObtenerPorId(int idServicio) { Servicio servicio; try { daServicio = new daServicio(); daServicio.AbrirSesion(); servicio = daServicio.ObtenerPorId(idServicio); List<object[]> filtros = new List<object[]>(); filtros.Add(new object[] { "idServicio", idServicio }); daServicioUnidad = new daServicioUnidad(); daServicioUnidad.AsignarSesion(daServicio); servicio.unidades = daServicioUnidad.ObtenerLista(filtros); } catch (Exception) { throw; } finally { daServicio.CerrarSesion(); } return servicio; }