예제 #1
0
        public void GuardarOrdenCompra(OrdenProducto producto)
        {
            int cantidad = 0;
            for (int i = 0; i < producto.listaProducto.Count; i++)
            {
                if (producto.listaProducto[i].estadoguardar) cantidad++;
            }
            try
            {
                if (cantidad > 0)
                {
                    int m = Utils.cantidad("Ordencompra") + 1;
                    string ID = "ORDE00";//8caracteres-4letras-4#
                    if (m < 10) producto.idOrdencompra = ID + "0" + Convert.ToString(m);
                    else producto.idOrdencompra = ID + Convert.ToString(m);
                    string estado = "Tramite";

                    decimal total = 0; // decimal

                    for (int i = 0; i < producto.listaProducto.Count; i++)
                    {
                        if (producto.listaProducto[i].estadoguardar)
                        {
                            int valor = producto.listaProducto.ElementAt(i).cantidad;
                            decimal precio = producto.listaProducto.ElementAt(i).precio; // decimal
                            total += (valor * precio);
                        }
                    }
                    SqlConnection objDB = null;
                    objDB = new SqlConnection(cadenaDB);
                    objDB.Open();
                    String strQuery = "INSERT INTO Ordencompra (fechaemitida, estado, idOrdencompra, preciototal, idProveedor, idSucursal) Values (GETDATE(),@estado,@id,@total, @idprov,@idcafe)";
                    SqlCommand objQuery = new SqlCommand(strQuery, objDB);
                    BaseDatos.agregarParametro(objQuery, "@estado", estado);
                    BaseDatos.agregarParametro(objQuery, "@id", producto.idOrdencompra);
                    BaseDatos.agregarParametro(objQuery, "@total", total);
                    BaseDatos.agregarParametro(objQuery, "@idprov", producto.idproveedor);
                    BaseDatos.agregarParametro(objQuery, "@idcafe", producto.idcafeteria);
                    objQuery.ExecuteNonQuery();

                    this.guardardetalleordencompra(producto);
                }

            }
            catch (Exception ex)
            {
                log.Error("GuardarOrdenCompra(EXCEPTION): ", ex);
                throw ex;
            }
        }
예제 #2
0
        public void guardardetalleordencompra(OrdenProducto producto)
        {
            SqlConnection objDB = null;
            try
            {
                objDB = new SqlConnection(cadenaDB);
                objDB.Open();
                for (int i = 0; i < producto.listaProducto.Count; i++)
                {
                    if (producto.listaProducto[i].estadoguardar)
                    {
                        decimal precio = 0; // decimal
                        Producto prod = producto.listaProducto.ElementAt(i);
                        precio = (prod.precio * prod.cantidad);

                        String strQuery = "Insert Into  OrdenCompraDetalle (idIngrediente,idOrdencompra,cantidad,precio) values(@ID, @idorden, @cant,@precio)";
                        SqlCommand objQuery = new SqlCommand(strQuery, objDB);
                        BaseDatos.agregarParametro(objQuery, "@ID", prod.idproducto);
                        BaseDatos.agregarParametro(objQuery, "@idorden", producto.idOrdencompra);
                        BaseDatos.agregarParametro(objQuery, "@cant", prod.cantidad);
                        BaseDatos.agregarParametro(objQuery, "@precio", precio);
                        objQuery.ExecuteNonQuery();
                    }
                }

            }
            catch (Exception e)
            {
                log.Error("getalmacen(EXCEPTION):  ", e);
                throw (e);
            }
            finally
            {
                if (objDB != null)
                {
                    objDB.Close();
                }
            }
        }
예제 #3
0
        //registrar orden compra.......idproveedor y id sucursal
        public ViewResult Registrar2(string idproveedor, string idsucursal)
        {
            OrdenProducto prod = new OrdenProducto();
            ProveedorBean prov = comprfacade.BuscarProveedor(idproveedor);

            int cantidad = 0;
            ProveedorxIngredienteBean productosprov = comprfacade.obtenerlistadeingredientes(idproveedor); // de la tabla productoxpreoveedor
            string idalmacen = comprfacade.obteneralmacen(idsucursal);
            IngredienteXalmacenBean ingredientAlmace = almafacade.obtenerlistadAlmacen(idalmacen); // de la tabla productoxalmacen

            List<Producto> produ = new List<Producto>();

            for (int i = 0; i < ingredientAlmace.listProdAlmacen.Count; i++)
            {
                for (int j = 0; j < productosprov.listadeIngredientesProveedor.Count; j++)
                {
                    if (ingredientAlmace.listProdAlmacen[i].id == productosprov.listadeIngredientesProveedor[j].id)
                    {
                        Producto produc = new Producto();
                        produc.idproducto = ingredientAlmace.listProdAlmacen[i].id;
                        produc.Nombre = almafacade.getnombreingrediente(ingredientAlmace.listProdAlmacen[i].id);
                        produc.precio = productosprov.listadeIngredientesProveedor[j].precio;
                        produc.stockActual = ingredientAlmace.listProdAlmacen[i].stockactual;
                        produc.stockMinimo = ingredientAlmace.listProdAlmacen[i].stockminimo;
                        produc.stockMaximo = ingredientAlmace.listProdAlmacen[i].stockmaximo;
                        if (produc.stockActual <= produc.stockMinimo) { produc.estado = true; cantidad++; }
                        else { produc.estado = false; }
                        produ.Add(produc);
                    }

                }
            }

            prod.listaProducto = produ;
            prod.proveedor = prov.razonSocial;
            prod.idproveedor = idproveedor;//idproveedor
            prod.idcafeteria = idsucursal;
            SucursalBean suc = admin.buscarSucursal(idsucursal);//.getHotel(idhotel);
            prod.nombrecafeteria = suc.nombre;

            //Boolean est = prod.listaProducto[0].estado;
            if (cantidad > 0) prod.estado2 = true; else prod.estado2 = false;
            return View(prod);
        }
예제 #4
0
        public ActionResult Registrar2(OrdenProducto producto)
        {
            for (int i = 0; i < producto.listaProducto.Count; i++)
            {
                if (producto.listaProducto[i].cantidad > 0)
                {
                    producto.listaProducto[i].estadoguardar = true;
                    producto.listaProducto[i].precio= comprfacade.obtenerPrecio(producto.listaProducto[i].idproducto, producto.idproveedor);

                }
                else
                {
                    producto.listaProducto[i].estadoguardar = false;
                    producto.listaProducto[i].precio = comprfacade.obtenerPrecio(producto.listaProducto[i].idproducto, producto.idproveedor);
                }
            }

            comprfacade.GuardarOrdenCompra(producto);
            return RedirectToAction("Index","Home");
        }
예제 #5
0
 public void GuardarOrdenCompra(OrdenProducto ord)
 {
     ordenservice.GuardarOrdenCompra(ord);
 }