private void GuardarRecepcioNalmacen(object sender, RoutedEventArgs e)
 {
     RequisicionDAO reuisicionDAO = new RequisicionDAO();
     Requisicion idRequisicion = reuisicionDAO.FindById(Int32.Parse(IdRequicicion.Text));
     RemitenteDAO proveedorDAO = new RemitenteDAO();
     Remitente idProveedor = proveedorDAO.FindById(Int32.Parse(IdProveedor.Text));
     int idRecepcionAlmacen = Int32.Parse(IdRecepcionAlmacen.Text);
     int claveRecepcion= Int32.Parse(ClaveRecepcionAlmacen.Text);
     DateTime fecharecepcion = DateTime.Parse(FechaRecepcion.Text);
     decimal monto = decimal.Parse(Monto.Text);
     DateTime fechaEntrega = DateTime.Parse(FechaEntrega.Text);
     string numeroResguardo = NumeroDeResguardo.Text;
     
     RecepcionAlmacen recepcionAlmacen = new RecepcionAlmacen(idRecepcionAlmacen,idRequisicion,idProveedor,claveRecepcion,fechaEntrega,fecharecepcion,monto,numeroResguardo);
     RecepcionAlmacenDAO recepcionAlmacenDAO = new RecepcionAlmacenDAO();
     int f = recepcionAlmacenDAO.Insert(recepcionAlmacen);
     if (f == 0)
     {
         MessageBox.Show("Se agrego correctamente el proveedor");
         IdProveedor.Text = "";
         IdRequicicion.Text = "";
         IdRecepcionAlmacen.Text = "IdProveedor";
         ClaveRecepcionAlmacen.Text = "";
         FechaRecepcion.Text = "";
         FechaEntrega.Text = "";
         Monto.Text = "";
         NumeroDeResguardo.Text = "";
     }
 }
        public void DeleteRecepcionAlmacen()
        {
            RecepcionAlmacen recepcionAlmacen = new RecepcionAlmacen();
            Requisicion requisicion = new Requisicion();
            Remitente remitente = new Remitente();

            recepcionAlmacen.SetRemitente(remitente);
            recepcionAlmacen.SetRequisicion(requisicion);
            recepcionAlmacen.SetClave(3);
            recepcionAlmacen.SetFechaRecepcion(DateTime.Now);
            recepcionAlmacen.SetMonto(190);
            recepcionAlmacen.SetFechaEntregaDeAlmacen(DateTime.Now);
            recepcionAlmacen.SetNumeroResguardo("12");

            RecepcionAlmacenDAO recepcionAlmacenDAO = new RecepcionAlmacenDAO();

            recepcionAlmacenDAO.Delete(recepcionAlmacen);
        }
        public void InsertRecepcionAlmacen()
        {
            RecepcionAlmacen recepcionAlmacen = new RecepcionAlmacen();
            RemitenteDAO remitenteDAO = new RemitenteDAO();
            RequisicionDAO requisicionDAO = new RequisicionDAO();
            CentroGastoDAO centroGastoDAO = new CentroGastoDAO();
            ProveedorDAO proveedorDAO = new ProveedorDAO();
            CompradorDAO compradorDAO = new CompradorDAO();

            remitenteDAO.Insert("Elias","Rosales","Martinez");
            Remitente remitente = remitenteDAO.FindByNombre("Elias");

            centroGastoDAO.Insert("Facultad de Bellas Artes");
            CentroGasto centroGasto = centroGastoDAO.FindByNombre("Facultad de Bellas Artes");

            proveedorDAO.Insert("HP", true);
            Proveedor proveedor = proveedorDAO.FindByNombre("HP");

            compradorDAO.Insert("Alejandro", "Martínez", "Pérez");
            Comprador comprador = compradorDAO.FindByNombre("Alejandro");

            requisicionDAO.Insert(centroGasto.GetId(),comprador.GetId(),proveedor.GetId(),"hola",DateTime.Now,DateTime.Now.AddMonths(3),
                'e',"hola",DateTime.Now.AddMonths(5),"ninguna");
            Requisicion requisicion = requisicionDAO.FindById(4);

            recepcionAlmacen.SetRemitente(remitente);
            recepcionAlmacen.SetRequisicion(requisicion);
            recepcionAlmacen.SetClave(1);
            recepcionAlmacen.SetFechaRecepcion(DateTime.Now);
            recepcionAlmacen.SetMonto(190);
            recepcionAlmacen.SetFechaEntregaDeAlmacen(DateTime.Now);
            recepcionAlmacen.SetNumeroResguardo("12");

            RecepcionAlmacenDAO recepcionAlmacenDAO = new RecepcionAlmacenDAO();

            recepcionAlmacenDAO.Insert(recepcionAlmacen);
        }
        /// <summary>
        /// Inserccion del objeto Recepcion
        /// </summary>
        /// <param name="recepcionAlmacen"></param>
        /// <returns>El código de error, 0 si el resultado es exitoso</returns>
        public int Insert(RecepcionAlmacen recepcionAlmacen)
        {
            recepciones_almacen recepcionAlmacenTable = new recepciones_almacen
            {
               id_requisicion = recepcionAlmacen.GetRequisicion().GetId(),
               id_remitente = recepcionAlmacen.GetRemitente().GetId(),
               clave_recepcion_almacen = recepcionAlmacen.GetClave(),
               fecha_recepcion_almacen = recepcionAlmacen.GetFechaRecepcion(),
               monto_recepcion_almacen = recepcionAlmacen.GetMonto(),
               fecha_entrega_de_almacen = recepcionAlmacen.GetFechaEntregaDeAlmacen(),
               num_resguardo_almacen = recepcionAlmacen.GetNumeroResguardo(),
            };

            DAODataContext contexto = new DAODataContext();
            contexto.recepciones_almacens.InsertOnSubmit(recepcionAlmacenTable);
            contexto.SubmitChanges();

            return 0;
        }
        /// <summary>
        /// Actualizacion del objeeto Recepcion
        /// </summary>
        /// <param name="recepcionAlmacen"></param>
        /// <returns>El código de error, 0 si el resultado es exitoso</returns>
        public int Update(RecepcionAlmacen recepcionAlmacen)
        {
            DAODataContext contexto = new DAODataContext();

            recepciones_almacen recepcionAlmacenTable = contexto.recepciones_almacens.Single(recepcionAlmacenRow => recepcionAlmacenRow.id_recepcion_almacen == recepcionAlmacen.GetId());

            recepcionAlmacenTable.id_recepcion_almacen = recepcionAlmacen.GetId();
            recepcionAlmacenTable.clave_recepcion_almacen = recepcionAlmacen.GetClave();
            recepcionAlmacenTable.fecha_recepcion_almacen = recepcionAlmacen.GetFechaRecepcion();
            recepcionAlmacenTable.monto_recepcion_almacen = recepcionAlmacen.GetMonto();
            recepcionAlmacenTable.fecha_entrega_de_almacen = recepcionAlmacen.GetFechaEntregaDeAlmacen();
            recepcionAlmacenTable.num_resguardo_almacen = recepcionAlmacen.GetNumeroResguardo();

            contexto.SubmitChanges();

            return 0;
        }
        /// <summary>
        /// Eliminacion del objeto Recepcion
        /// </summary>
        /// <param name="id"></param>
        /// <param name="clave"></param>
        /// <param name="fecha"></param>
        /// <param name="monto"></param>
        /// <param name="fechaEntrega"></param>
        /// <param name="numResguardo"></param>
        /// <returns>El código de error, 0 si el resultado es exitoso</returns>
        public int Delete(int id, int clave, DateTime fecha, decimal monto, DateTime fechaEntrega, string numResguardo)
        {
            RecepcionAlmacen recepcionAlmacen = new RecepcionAlmacen();

            recepcionAlmacen = FindById(id);

            recepciones_almacen recepcionAlmacenTable = new recepciones_almacen
            {
                id_recepcion_almacen = recepcionAlmacen.GetId(),
                clave_recepcion_almacen=recepcionAlmacen.GetClave(),
                fecha_recepcion_almacen=recepcionAlmacen.GetFechaRecepcion(),
                monto_recepcion_almacen = recepcionAlmacen.GetMonto(),
                fecha_entrega_de_almacen = recepcionAlmacen.GetFechaEntregaDeAlmacen(),
                num_resguardo_almacen = recepcionAlmacen.GetNumeroResguardo()
            };

            DAODataContext contexto = new DAODataContext();
            contexto.recepciones_almacens.Attach(recepcionAlmacenTable);
            contexto.recepciones_almacens.DeleteOnSubmit(recepcionAlmacenTable);
            contexto.SubmitChanges();
            return 0;
        }
        /// <summary>
        /// Eliminacion del objeto Rececpcion
        /// </summary>
        /// <param name="recepcionAlmacen"></param>
        /// <returns>El código de error, 0 si el resultado es exitoso</returns>
        public int Delete(RecepcionAlmacen recepcionAlmacen)
        {
            recepciones_almacen recepcionAlmacenTable = new recepciones_almacen
            {
                id_recepcion_almacen = recepcionAlmacen.GetId(),
                clave_recepcion_almacen=recepcionAlmacen.GetClave(),
                fecha_recepcion_almacen =recepcionAlmacen.GetFechaRecepcion(),
                monto_recepcion_almacen = recepcionAlmacen.GetMonto(),
                fecha_entrega_de_almacen = recepcionAlmacen.GetFechaEntregaDeAlmacen(),
                num_resguardo_almacen = recepcionAlmacen.GetNumeroResguardo()
            };

            DAODataContext contexto = new DAODataContext();
            contexto.recepciones_almacens.Attach(recepcionAlmacenTable);
            contexto.recepciones_almacens.DeleteOnSubmit(recepcionAlmacenTable);
            contexto.SubmitChanges();
            return 0;
        }