示例#1
0
 public bool Actualizar(OrdenTrabajo orden)
 {
     try
     {
         daOrdenTrabajo = new daOrdenTrabajo();
         daOrdenTrabajo.IniciarTransaccion();
         OrdenTrabajo orden_ = daOrdenTrabajo.ObtenerPorId(orden.idOrdenTrabajo);
         orden_.descripcion = orden.descripcion;
         orden_.cliente = orden.cliente;
         orden_.cotizador = orden.cotizador;
         orden_.linea = orden.linea;
         orden_.lpMaterial = orden.lpMaterial;
         orden_.lpServicio = orden.lpServicio;
         orden_.lpMaquina = orden.lpMaquina;
         orden_.moneda = orden.moneda;
         orden_.vendedor = orden.vendedor;
         orden_.contacto = orden.contacto;
         orden_.observacion = orden.observacion;
         daOrdenTrabajoGrupo = new daOrdenTrabajoGrupo();
         daOrdenTrabajoGrupo.AsignarSesion(daOrdenTrabajo);
         daOrdenTrabajoItem = new daOrdenTrabajoItem();
         daOrdenTrabajoItem.AsignarSesion(daOrdenTrabajo);
         daOrdenTrabajoServicio = new daOrdenTrabajoServicio();
         daOrdenTrabajoServicio.AsignarSesion(daOrdenTrabajo);
         foreach (OrdenTrabajoGrupo grupo in orden.grupos)
         {
             if (grupo.idOrdenTrabajoGrupo == 0)
             {
                 grupo.idOrdenTrabajo = orden.idOrdenTrabajo;
                 daOrdenTrabajoGrupo.Agregar(grupo);
                 foreach (OrdenTrabajoItem item in grupo.items)
                 {
                     item.idOrdenTrabajoGrupo = grupo.idOrdenTrabajoGrupo;
                     daOrdenTrabajoItem.Agregar(item);
                     foreach (OrdenTrabajoServicio servicio in item.servicios)
                     {
                         servicio.idOrdenTrabajoItem = item.idOrdenTrabajoItem;
                         daOrdenTrabajoServicio.Agregar(servicio);
                     }
                 }
             }
             else {
                 OrdenTrabajoGrupo grupo_ = daOrdenTrabajoGrupo.ObtenerPorId(grupo.idOrdenTrabajoGrupo);
                 grupo_.titulo = grupo.titulo;
                 grupo_.cantidad = grupo.cantidad;
                 foreach (OrdenTrabajoItem item in grupo.items)
                 {
                     if (item.idOrdenTrabajoItem == 0)
                     {
                         item.idOrdenTrabajoGrupo = grupo.idOrdenTrabajoGrupo;
                         daOrdenTrabajoItem.Agregar(item);
                         foreach (OrdenTrabajoServicio servicio in item.servicios)
                         {
                             servicio.idOrdenTrabajoItem = item.idOrdenTrabajoItem;
                             daOrdenTrabajoServicio.Agregar(servicio);
                         }
                     }
                     else {
                         OrdenTrabajoItem item_ = daOrdenTrabajoItem.ObtenerPorId(item.idOrdenTrabajoItem);
                         item_.titulo = item.titulo;
                         item_.servicio = item.servicio;
                         item_.maquina = item.maquina;
                         item_.material = item.material;
                         item_.conMdA = item.conMdA;
                         item_.conMdC = item.conMdC;
                         item_.conTyr = item.conTyr;
                         item_.conGrf = item.conGrf;
                         item_.conMat = item.conMat;
                         item_.conSrv = item.conSrv;
                         item_.conFnd = item.conFnd;
                         item_.xMa = item.xMa;
                         item_.yMa = item.yMa;
                         item_.xMc = item.xMc;
                         item_.yMc = item.yMc;
                         item_.tC = item.tC;
                         item_.rC = item.rC;
                         item_.fnd = item.fnd;
                         item_.xFI = item.xFI;
                         item_.yFI = item.yFI;
                         item_.sX = item.sX;
                         item_.sY = item.sY;
                         item_.pliegos = item.pliegos;
                         item_.gp180 = item.gp180;
                         item_.gi180 = item.gi180;
                         item_.metodoImpresion = item.metodoImpresion;
                         item_.scntMat = item.scntMat;
                         item_.cntDem = item.cntDem;
                         item_.cntMat = item.cntMat;
                         item_.cntPrd = item.cntPrd;
                         item_.cantidad = item.cantidad;
                         item_.cntPs = item.cntPs;
                         item_.observacion = item.observacion;
                         foreach (OrdenTrabajoServicio servicio in item.servicios)
                         {
                             if (servicio.idOrdenTrabajoServicio == 0)
                             {
                                 servicio.idOrdenTrabajoItem = item.idOrdenTrabajoItem;
                                 daOrdenTrabajoServicio.Agregar(servicio);
                             }
                             else {
                                 OrdenTrabajoServicio servicio_ = daOrdenTrabajoServicio.ObtenerPorId(servicio.idOrdenTrabajoServicio);
                                 servicio_.cantidad = servicio.cantidad;
                                 servicio_.unidad = servicio.unidad;
                             }
                         }
                         foreach (int idServicio in item.idsServicios)
                         {
                             daOrdenTrabajoServicio.EliminarPorId(idServicio, constantes.esquemas.Ventas);
                         }
                     }
                 }
                 foreach (int idItem in grupo.idsItems)
                 {
                     daOrdenTrabajoItem.EliminarPorId(idItem, constantes.esquemas.Ventas);
                 }
             }
         }
         foreach (int idGrupo in orden.idsGrupos)
         {
             daOrdenTrabajoGrupo.EliminarPorId(idGrupo, constantes.esquemas.Ventas);
             daOrdenTrabajoItem.EliminarPorIdOrdenTrabajoGrupo(idGrupo);
         }
         daOrdenTrabajo.ConfirmarTransaccion();
     }
     catch (Exception)
     {
         daOrdenTrabajo.AbortarTransaccion();
         throw;
     }
     finally
     {
         daOrdenTrabajo.CerrarSesion();
     }
     return true;
 }
示例#2
0
 public bool Eliminar(int idOrdenTrabajo)
 {
     try
     {
         daOrdenTrabajo = new daOrdenTrabajo();
         daOrdenTrabajo.IniciarTransaccion();
         daOrdenTrabajo.EliminarPorId(idOrdenTrabajo, constantes.esquemas.Produccion);
         daOrdenTrabajoGrupo = new daOrdenTrabajoGrupo();
         daOrdenTrabajoGrupo.AsignarSesion(daOrdenTrabajo);
         List<object[]> filtros = new List<object[]>();
         filtros.Add(new object[] { "idOrdenTrabajo", idOrdenTrabajo });
         List<OrdenTrabajoGrupo> grupos = daOrdenTrabajoGrupo.ObtenerLista(filtros);
         daOrdenTrabajoGrupo.EliminarPorIdOrdenTrabajo(idOrdenTrabajo);
         daOrdenTrabajoItem = new daOrdenTrabajoItem();
         daOrdenTrabajoItem.AsignarSesion(daOrdenTrabajo);
         foreach (OrdenTrabajoGrupo grupo in grupos)
         {
             filtros = new List<object[]>();
             filtros.Add(new object[] { "idOrdenTrabajoGrupo", grupo.idOrdenTrabajoGrupo });
             List<OrdenTrabajoItem> items = daOrdenTrabajoItem.ObtenerLista(filtros);
             daOrdenTrabajoItem.EliminarPorIdOrdenTrabajoGrupo(grupo.idOrdenTrabajoGrupo);
             foreach (OrdenTrabajoItem item in items)
             {
                 daOrdenTrabajoServicio.EliminarPorIdOrdenTrabajoItem(item.idOrdenTrabajoItem);
             }
         }
         daOrdenTrabajo.ConfirmarTransaccion();
     }
     catch (Exception)
     {
         daOrdenTrabajo.AbortarTransaccion();
         throw;
     }
     finally
     {
         daOrdenTrabajo.CerrarSesion();
     }
     return true;
 }