예제 #1
0
        public void QuitarLinea(int p_Pedido_OID, System.Collections.Generic.IList <int> p_lineaPedido_OIDs)
        {
            try
            {
                SessionInitializeTransaction();
                AppEstadioGenNHibernate.EN.AppEstadio.PedidoEN pedidoEN = null;
                pedidoEN = (PedidoEN)session.Load(typeof(PedidoEN), p_Pedido_OID);

                AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN lineaPedidoENAux = null;
                if (pedidoEN.LineaPedido != null)
                {
                    foreach (int item in p_lineaPedido_OIDs)
                    {
                        lineaPedidoENAux = (AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN)session.Load(typeof(AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN), item);
                        if (pedidoEN.LineaPedido.Contains(lineaPedidoENAux) == true)
                        {
                            pedidoEN.LineaPedido.Remove(lineaPedidoENAux);
                            lineaPedidoENAux.Pedido = null;
                        }
                        else
                        {
                            throw new ModelException("The identifier " + item + " in p_lineaPedido_OIDs you are trying to unrelationer, doesn't exist in PedidoEN");
                        }
                    }
                }

                session.Update(pedidoEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is AppEstadioGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new AppEstadioGenNHibernate.Exceptions.DataLayerException("Error in PedidoCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }
예제 #2
0
        public void AnyadirLinea(int p_Pedido_OID, System.Collections.Generic.IList <int> p_lineaPedido_OIDs)
        {
            AppEstadioGenNHibernate.EN.AppEstadio.PedidoEN pedidoEN = null;
            try
            {
                SessionInitializeTransaction();
                pedidoEN = (PedidoEN)session.Load(typeof(PedidoEN), p_Pedido_OID);
                AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN lineaPedidoENAux = null;
                if (pedidoEN.LineaPedido == null)
                {
                    pedidoEN.LineaPedido = new System.Collections.Generic.List <AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN>();
                }

                foreach (int item in p_lineaPedido_OIDs)
                {
                    lineaPedidoENAux        = new AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN();
                    lineaPedidoENAux        = (AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN)session.Load(typeof(AppEstadioGenNHibernate.EN.AppEstadio.LineaPedidoEN), item);
                    lineaPedidoENAux.Pedido = pedidoEN;

                    pedidoEN.LineaPedido.Add(lineaPedidoENAux);
                }


                session.Update(pedidoEN);
                SessionCommit();
            }

            catch (Exception ex) {
                SessionRollBack();
                if (ex is AppEstadioGenNHibernate.Exceptions.ModelException)
                {
                    throw ex;
                }
                throw new AppEstadioGenNHibernate.Exceptions.DataLayerException("Error in PedidoCAD.", ex);
            }


            finally
            {
                SessionClose();
            }
        }
예제 #3
0
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }
            PedidoEN t = obj as PedidoEN;

            if (t == null)
            {
                return(false);
            }
            if (Id.Equals(t.Id))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #4
0
 public PedidoEN(PedidoEN pedido)
 {
     this.init(pedido.Id, pedido.Fecha, pedido.Estado, pedido.LineaPedido, pedido.Cliente, pedido.Factura, pedido.Precio);
 }