Ejemplo n.º 1
0
        public void CargarPedido()
        {
            try
            {
                DtoPedido dtoPedido = new DtoPedido()
                {
                    Criterio = Session["idPedidoE"].ToString()
                };
                ClassResultV cr = new CtrPedido().Usp_GetCargarPedido(dtoPedido);
                if (!cr.HuboError)
                {
                    List <DtoPedido> list = cr.List.Cast <DtoPedido>().ToList();

                    tFechaEmision.Text = list[0].fechaEmision.ToString("dd/MM/yyyy");
                    DateTime dtime = Convert.ToDateTime(list[0].fechaEntrega.ToString());
                    tFechaEntrega.Text = String.Format("{0:yyyy-MM-dd}", dtime);
                    ddlMedioPago.Items.FindByText(list[0].metodoPago).Selected  = true;
                    ddlProveedor.Items.FindByText(list[0].razonSocial).Selected = true;

                    gvAgregarPedido.DataSource = Session["DetallePedido2"] = list;
                    gvAgregarPedido.DataBind();

                    decimal montTotal = 0;
                    for (int i = 0; i < list.Count; i++)
                    {
                        montTotal        += list[i].precioTotal;
                        tPrecioTotal.Text = montTotal.ToString();
                    }
                }
            }
            catch (Exception)
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se pudo cargar los pedidos." + "', 'error');", true);
            }
        }
Ejemplo n.º 2
0
        protected void btnIngresar_Click(object sender, EventArgs e)
        {
            try
            {
                if (ddlProducto.SelectedValue == "0")
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Debe seleccionar un producto." + "', 'error');", true);
                    return;
                }

                if (int.Parse(tCantidad.Text) <= 0)
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se puede ingresar un producto de 0 cantidades." + "', 'error');", true);
                    return;
                }

                List <DtoPedido> list = Session["DetallePedido2"] is null ? new List <DtoPedido>() : (List <DtoPedido>)Session["DetallePedido2"];

                int     idProducto     = int.Parse(ddlProducto.SelectedValue);
                string  nomProducto    = ddlProducto.Items[ddlProducto.SelectedIndex].Text;
                int     cantidad       = int.Parse(tCantidad.Text);
                string  formato        = tFormato.Text;
                string  nomLaboratorio = tLaboratorio.Text;
                Decimal precioUnitario = Decimal.Parse(tPrecio.Text);
                Decimal precioTotal    = precioUnitario * cantidad;


                if (list.Exists(x => x.idProducto == idProducto))
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Ya existe el producto indicado." + "', 'error');", true);
                    return;
                }

                DtoPedido dtoPedido = new DtoPedido()
                {
                    nombreProducto    = nomProducto,
                    cantidad          = cantidad,
                    formato           = formato,
                    nombreLaboratorio = nomLaboratorio,
                    precioCompra      = precioUnitario,
                    idProducto        = idProducto,
                    precioTotal       = precioTotal
                };
                list.Add(dtoPedido);
                gvAgregarPedido.DataSource = Session["DetallePedido2"] = list;
                gvAgregarPedido.DataBind();

                decimal montTotal = 0;
                for (int i = 0; i < list.Count; i++)
                {
                    montTotal        += list[i].precioTotal;
                    tPrecioTotal.Text = montTotal.ToString();
                }
            }
            catch (Exception)
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al ingresar el producto" + "', 'error');", true);
            }
        }
Ejemplo n.º 3
0
        public DtoPedido Usp_InsertPedido(DtoB dtoBase)
        {
            DtoPedido dto = (DtoPedido)dtoBase;

            SqlParameter[] pr = new SqlParameter[7];
            try
            {
                pr[0] = new SqlParameter("@idMetodoPago", SqlDbType.Int)
                {
                    Value = dto.idMetodoPago
                };
                pr[1] = new SqlParameter("@fechaEntrega", SqlDbType.DateTime)
                {
                    Value = dto.fechaEntrega
                };

                pr[2] = new SqlParameter("@idProveedor", SqlDbType.Int)
                {
                    Value = dto.idProveedor
                };
                pr[3] = new SqlParameter("@idListaCompra", SqlDbType.Int)
                {
                    Value = dto.idListaCompra
                };
                pr[4] = new SqlParameter("@idUsuario", SqlDbType.Int)
                {
                    Value = dto.idUsuario
                };
                pr[5] = new SqlParameter("@precioTotal", SqlDbType.Decimal)
                {
                    Value = dto.precioTotal
                };
                pr[6] = new SqlParameter("@idPedido", SqlDbType.Int)
                {
                    Direction = ParameterDirection.Output
                };

                _ = SqlHelper.ExecuteNonQuery(objCn, CommandType.StoredProcedure, "SP_Insert_Pedido", pr);
                if (!string.IsNullOrEmpty(pr[6].Value.ToString()))
                {
                    dto.idPedido = int.Parse(pr[6].Value.ToString());
                }
            }
            catch (Exception ex)
            {
                dto.LugarError = ex.StackTrace;
                dto.ErrorEx    = ex.Message;
                dto.ErrorMsj   = "Error al registrar el Pedido";
            }
            objCn.Close();
            return(dto);
        }
Ejemplo n.º 4
0
        public static DtoPedido MapToDto(Pedido entity)
        {
            DtoPedido dto = new DtoPedido();

            dto.Numero       = entity.Numero;
            dto.Usuario      = entity.Usuario;
            dto.PrecioTotal  = entity.PrecioTotal;
            dto.FechaIngreso = entity.FechaIngreso;
            dto.Estado       = entity.Estado;
            dto.Direccion    = entity.Direccion;
            dto.Urgente      = entity.Urgente;

            return(dto);
        }
Ejemplo n.º 5
0
        public static Pedido MapToEntity(DtoPedido dto)
        {
            Pedido entity = new Pedido();

            entity.Usuario      = dto.Usuario;
            entity.Numero       = dto.Numero;
            entity.PrecioTotal  = dto.PrecioTotal;
            entity.FechaIngreso = dto.FechaIngreso;
            entity.Estado       = dto.Estado;
            entity.Direccion    = dto.Direccion;
            entity.Urgente      = dto.Urgente;

            return(entity);
        }
Ejemplo n.º 6
0
        public List <DtoPedido> getPedidosEnDespacho(int id)
        {
            List <DtoPedido> colDtoP = new List <DtoPedido>();

            using (AliyavaEntities context = new AliyavaEntities())
            {
                List <Pedido> colPedDB = context.Pedido.Where(w => w.Estado == "En despacho").ToList();

                foreach (Pedido item in colPedDB)
                {
                    DtoPedido dto = MPedido.MapToDto(item);
                    colDtoP.Add(dto);
                }
            }

            return(colDtoP);
        }
Ejemplo n.º 7
0
        public ClassResultV Usp_GetCargarPedido(DtoB dtoBase)
        {
            ClassResultV        cr  = new ClassResultV();
            DtoPedido           dto = (DtoPedido)dtoBase;
            List <SqlParameter> pr  = new List <SqlParameter>
            {
                new SqlParameter("@idPedido", dto.Criterio),
            };

            try
            {
                SqlDataReader reader = SqlHelper.ExecuteReader(objCn, CommandType.StoredProcedure, "SP_Get_Cargar_Pedido", pr.ToArray());
                cr.List = new List <DtoB>();
                while (reader.Read())
                {
                    DtoPedido dtop = new DtoPedido
                    {
                        idPedido          = getValue("idPedido", reader).Value_Int32,
                        fechaEmision      = getValue("fechaEmision", reader).Value_DateTime,
                        fechaEntrega      = getValue("fechaEntrega", reader).Value_DateTime,
                        idMetodoPago      = getValue("idMetodoPago", reader).Value_Int32,
                        idProveedor       = getValue("idProveedor", reader).Value_Int32,
                        idProducto        = getValue("idProducto", reader).Value_Int32,
                        nombreProducto    = getValue("nombreProducto", reader).Value_String,
                        cantidad          = getValue("cantidad", reader).Value_Int32,
                        formato           = getValue("formato", reader).Value_String,
                        idLaboratorio     = getValue("idLaboratorio", reader).Value_Int32,
                        nombreLaboratorio = getValue("nombreLaboratorio", reader).Value_String,
                        precioCompra      = getValue("precioCompra", reader).Value_Decimal,
                        precioTotal       = getValue("precioTotal", reader).Value_Decimal,
                        razonSocial       = getValue("razonSocial", reader).Value_String,
                        metodoPago        = getValue("metodoPago", reader).Value_String
                    };
                    cr.List.Add(dtop);
                }
            }
            catch (Exception ex)
            {
                cr.LugarError = ex.StackTrace;
                cr.ErrorEx    = ex.Message;
                cr.ErrorMsj   = ex.Message;
            }
            objCn.Close();
            return(cr);
        }
Ejemplo n.º 8
0
        public List <DtoPedido> getAllPedidos()
        {
            List <Pedido>    colPedidosDB = new List <Pedido>();
            List <DtoPedido> colPedidos   = new List <DtoPedido>();

            using (AliyavaEntities context = new AliyavaEntities())
            {
                colPedidosDB = context.Pedido.Select(s => s).ToList();

                foreach (Pedido item in colPedidosDB)
                {
                    DtoPedido pedido = MPedido.MapToDto(item);
                    colPedidos.Add(pedido);
                }
            }

            return(colPedidos);
        }
Ejemplo n.º 9
0
        public List <DtoPedido> GetPedidos()
        {
            List <Pedido>    colPedidosDB = new List <Pedido>();
            List <DtoPedido> colPedidos   = new List <DtoPedido>();

            using (AliyavaEntities context = new AliyavaEntities())
            {
                colPedidosDB = context.Pedido.Where(w => w.Urgente == "No" && w.Estado == "Pendiente").ToList();

                foreach (Pedido item in colPedidosDB)
                {
                    DtoPedido pedido = MPedido.MapToDto(item);
                    colPedidos.Add(pedido);
                }
            }

            return(colPedidos);
        }
Ejemplo n.º 10
0
        public List <DtoPedido> getPedidoCli(string NombreUsu)
        {
            List <Pedido>    colPedidosDB = new List <Pedido>();
            List <DtoPedido> colPedidos   = new List <DtoPedido>();

            using (AliyavaEntities context = new AliyavaEntities())
            {
                colPedidosDB = context.Pedido.Where(w => w.Usuario == NombreUsu).ToList();

                foreach (Pedido item in colPedidosDB)
                {
                    DtoPedido pedido = MPedido.MapToDto(item);
                    colPedidos.Add(pedido);
                }
            }

            return(colPedidos);
        }
Ejemplo n.º 11
0
        public DtoPedido Usp_UpdatePedido(DtoB dtoBase)
        {
            DtoPedido dto = (DtoPedido)dtoBase;

            SqlParameter[] pr = new SqlParameter[6];
            try
            {
                pr[0] = new SqlParameter("@idMetodoPago", SqlDbType.Int)
                {
                    Value = dto.idMetodoPago
                };
                pr[1] = new SqlParameter("@fechaEntrega", SqlDbType.DateTime)
                {
                    Value = dto.fechaEntrega
                };

                pr[2] = new SqlParameter("@idProveedor", SqlDbType.Int)
                {
                    Value = dto.idProveedor
                };
                pr[3] = new SqlParameter("@idPedido", SqlDbType.Int)
                {
                    Value = dto.idPedido
                };
                pr[4] = new SqlParameter("@idUsuario", SqlDbType.Int)
                {
                    Value = dto.idUsuario
                };
                pr[5] = new SqlParameter("@precioTotal", SqlDbType.Decimal)
                {
                    Value = dto.precioTotal
                };

                _ = SqlHelper.ExecuteNonQuery(objCn, CommandType.StoredProcedure, "SP_Update_Pedido", pr);
            }
            catch (Exception ex)
            {
                dto.LugarError = ex.StackTrace;
                dto.ErrorEx    = ex.Message;
                dto.ErrorMsj   = "Error al actualizar el Pedido";
            }
            objCn.Close();
            return(dto);
        }
Ejemplo n.º 12
0
        public void CargarGrilla()
        {
            try
            {
                DtoPedido dtoPedido = new DtoPedido()
                {
                    Criterio = Session["idPedido"].ToString()
                };
                ClassResultV cr = new CtrPedido().Usp_GetPedidoLista(dtoPedido);
                if (!cr.HuboError)
                {
                    DtoPedido        val  = new DtoPedido();
                    List <DtoPedido> list = cr.List.Cast <DtoPedido>().ToList();
                    tCodigoPedido.Text = list[0].correlativo.ToString();
                    tEstado.Text       = list[0].NombreEstado.ToString();
                    tFechaEmision.Text = list[0].fechaEmision.ToString("dd/MM/yyyy");
                    tFechaEntrega.Text = list[0].fechaEntrega.ToString("dd/MM/yyyy");
                    tMedioPago.Text    = list[0].metodoPago.ToString();
                    tProveedor.Text    = list[0].razonSocial.ToString();

                    gvCPedido.DataSource = list;
                    gvCPedido.DataBind();

                    decimal montTotal = 0;
                    if (list.Count > 0)
                    {
                        for (int i = 0; i < list.Count; i++)
                        {
                            montTotal        += list[i].precioTotal;
                            tPrecioTotal.Text = montTotal.ToString();
                        }
                    }
                    else
                    {
                        tPrecioTotal.Text = "0";
                    }
                }
            }
            catch (Exception)
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se pudo cargar los productos de la lista." + "', 'error');", true);
            }
        }
Ejemplo n.º 13
0
        public ClassResultV Usp_GetAllPedido(DtoB dtoBase)
        {
            ClassResultV        cr  = new ClassResultV();
            DtoPedido           dto = (DtoPedido)dtoBase;
            List <SqlParameter> pr  = new List <SqlParameter>
            {
                new SqlParameter("@idPedido", dto.Criterio),
                new SqlParameter("@NomUsuario", dto.NomUsuario)
                //new SqlParameter("@tienda", dto.Tienda),
                //new SqlParameter("@tipo", dto.TipoMovimiento),
                //new SqlParameter("@estado", dto.IB_Estado)
            };

            try
            {
                SqlDataReader reader = SqlHelper.ExecuteReader(objCn, CommandType.StoredProcedure, "SP_Get_Pedidos", pr.ToArray());
                cr.List = new List <DtoB>();
                while (reader.Read())
                {
                    dto = new DtoPedido
                    {
                        idPedido       = getValue("idPedido", reader).Value_Int32,
                        correlativo    = getValue("correlativo", reader).Value_String,
                        NomUsuario     = getValue("NomUsuario", reader).Value_String,
                        razonSocial    = getValue("razonSocial", reader).Value_String,
                        fechaEmision   = getValue("fechaEmision", reader).Value_DateTime,
                        fechaEntrega   = getValue("fechaEntrega", reader).Value_DateTime,
                        NombreEstado   = getValue("NombreEstado", reader).Value_String,
                        idEstadoPedido = getValue("idEstadoPedido", reader).Value_Int32,
                        idListaCompra  = getValue("idListaCompra", reader).Value_Int32
                    };
                    cr.List.Add(dto);
                }
            }
            catch (Exception ex)
            {
                cr.LugarError = ex.StackTrace;
                cr.ErrorEx    = ex.Message;
                cr.ErrorMsj   = "Error al consultar SP_Get_ListaCompras";
            }
            objCn.Close();
            return(cr);
        }
Ejemplo n.º 14
0
        public ClassResultV Usp_UpdateProcesar(DtoB dtoBase)
        {
            ClassResultV cr  = new ClassResultV();
            DtoPedido    dto = (DtoPedido)dtoBase;

            SqlParameter[] pr = new SqlParameter[2];
            try
            {
                pr[0] = new SqlParameter("@idPedido", SqlDbType.Int)
                {
                    Value = dto.@idPedido
                };
                pr[1] = new SqlParameter("@idTipo", SqlDbType.Int)
                {
                    Value = dto.idTipo
                };


                SqlDataReader reader = SqlHelper.ExecuteReader(objCn, CommandType.StoredProcedure, "SP_Update_EstadoPedido", pr);
                cr.List = new List <DtoB>();
                while (reader.Read())
                {
                    dto = new DtoPedido
                    {
                        httpPedido = reader.GetValue(reader.GetOrdinal("correo")) == DBNull.Value ? string.Empty : Convert.ToString(reader.GetValue(reader.GetOrdinal("correo")))
                    };
                    cr.List.Add(dto);
                }
            }

            catch (Exception ex)
            {
                cr.LugarError = ex.StackTrace;
                cr.ErrorEx    = ex.Message;
                cr.ErrorMsj   = "Error al procesar el Pedido.";
            }
            objCn.Close();
            return(cr);
        }
Ejemplo n.º 15
0
        public void CargarGrilla()
        {
            try
            {
                DtoPedido dtoPedido = new DtoPedido()
                {
                    Criterio   = tCodigo.Text,
                    NomUsuario = tNombre.Text
                };
                ClassResultV cr = new CtrPedido().Usp_GetAllPedido(dtoPedido);
                if (!cr.HuboError)
                {
                    List <DtoPedido> list = cr.List.Cast <DtoPedido>().ToList();

                    gvPedidos.DataSource = list;
                    gvPedidos.DataBind();
                }
            }
            catch (Exception)
            {
                ScriptManager.RegisterStartupScript(UpdatePanelUsuario, UpdatePanelUsuario.GetType(), "script", "verAlerta('No se pudo cargar las ordenes de compra.');", true);
            }
        }
Ejemplo n.º 16
0
        public ClassResultV Usp_InsertDetallePedido(DtoB dtoBase)
        {
            DtoPedido    dto = (DtoPedido)dtoBase;
            ClassResultV cr  = new ClassResultV();

            SqlParameter[] pr = new SqlParameter[4];
            try
            {
                pr[0] = new SqlParameter("@idPedido", SqlDbType.Int)
                {
                    Value = dto.@idPedido
                };
                pr[1] = new SqlParameter("@idProducto", SqlDbType.Int)
                {
                    Value = dto.idProducto
                };
                pr[2] = new SqlParameter("@cantidad", SqlDbType.Int)
                {
                    Value = dto.cantidad
                };
                pr[3] = new SqlParameter("@precioCompra", SqlDbType.Int)
                {
                    Value = dto.precioCompra
                };

                _ = SqlHelper.ExecuteNonQuery(objCn, CommandType.StoredProcedure, "SP_Insert_DetallePedido", pr);
            }
            catch (Exception ex)
            {
                cr.LugarError = ex.StackTrace;
                cr.ErrorEx    = ex.Message;
                cr.ErrorMsj   = "Error al registrar el detalle del Pedido.";
            }
            objCn.Close();
            return(cr);
        }
Ejemplo n.º 17
0
        protected void gvPedidos_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DtoPedido dto = (DtoPedido)e.Row.DataItem;

                if (dto.idEstadoPedido == 1)
                {
                    ((LinkButton)e.Row.FindControl("btnProcesar")).Visible  = true;
                    ((LinkButton)e.Row.FindControl("btnAceptar")).Visible   = false;
                    ((LinkButton)e.Row.FindControl("btnRechazar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnEntregado")).Visible = false;
                    ((LinkButton)e.Row.FindControl("btnAnulado")).Visible   = false;
                }
                if (dto.idEstadoPedido == 2)
                {
                    ((LinkButton)e.Row.FindControl("btnProcesar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnAceptar")).Visible   = true;
                    ((LinkButton)e.Row.FindControl("btnRechazar")).Visible  = true;
                    ((LinkButton)e.Row.FindControl("btnEntregado")).Visible = false;
                    ((LinkButton)e.Row.FindControl("btnAnulado")).Visible   = false;
                }
                if (dto.idEstadoPedido == 3)
                {
                    ((LinkButton)e.Row.FindControl("btnProcesar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnAceptar")).Visible   = false;
                    ((LinkButton)e.Row.FindControl("btnRechazar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnEntregado")).Visible = true;
                    ((LinkButton)e.Row.FindControl("btnAnulado")).Visible   = true;
                }
                if (dto.idEstadoPedido == 4)
                {
                    ((LinkButton)e.Row.FindControl("btnProcesar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnAceptar")).Visible   = false;
                    ((LinkButton)e.Row.FindControl("btnRechazar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnEntregado")).Visible = false;
                    ((LinkButton)e.Row.FindControl("btnAnulado")).Visible   = false;
                }
                if (dto.idEstadoPedido == 5)
                {
                    ((LinkButton)e.Row.FindControl("btnProcesar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnEntregado")).Visible = false;
                    ((LinkButton)e.Row.FindControl("btnAceptar")).Visible   = false;
                    ((LinkButton)e.Row.FindControl("btnRechazar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnAnulado")).Visible   = false;
                }

                if (dto.idEstadoPedido == 6)
                {
                    ((LinkButton)e.Row.FindControl("btnProcesar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnEntregado")).Visible = false;
                    ((LinkButton)e.Row.FindControl("btnAceptar")).Visible   = false;
                    ((LinkButton)e.Row.FindControl("btnRechazar")).Visible  = false;
                    ((LinkButton)e.Row.FindControl("btnAnulado")).Visible   = false;
                }



                //((LinkButton)e.Row.FindControl("btnEC")).Visible = dto.idEstadoPedido == 1 || dto.idEstadoPedido == 2;
            }
        }
Ejemplo n.º 18
0
        protected void gvPedidos_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int    idEstadoPedido = 0;
            string idPedid;

            switch (e.CommandName)
            {
            case "Consultar":

                int index    = int.Parse(e.CommandArgument.ToString());
                int idPedido = int.Parse(((Label)gvPedidos.Rows[index].FindControl("idPedido")).Text);
                Session["idPedido"] = idPedido;
                Response.Redirect("ConsultarPedido.aspx");
                break;

            case "Editar":

                int indexE        = int.Parse(e.CommandArgument.ToString());
                int idPedidoE     = int.Parse(((Label)gvPedidos.Rows[indexE].FindControl("idPedido")).Text);
                int idListaCompra = int.Parse(((Label)gvPedidos.Rows[indexE].FindControl("idListaCompra")).Text);


                switch (((Label)gvPedidos.Rows[indexE].FindControl("NombreEstado")).Text)
                {
                case "En Espera":
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se puede editar un Pedido en espera." + "', 'error');", true);
                    return;

                case "Aceptado":
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se puede editar un Pedido aceptado." + "', 'error');", true);
                    return;

                case "Rechazado":
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se puede editar un Pedido rechazado." + "', 'error');", true);
                    return;

                case "Entregado":
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al Procesar el pedido." + "', 'error');", true);
                    return;

                case "Anulado":
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No se puede editar un Pedido anulado." + "', 'error');", true);
                    return;

                default:
                    break;
                }


                Session["idPedidoE"]     = idPedidoE;
                Session["idListaCompra"] = idListaCompra;
                Response.Redirect("ActualizarPedido.aspx");
                break;

            case "Procesar":
                int index1 = int.Parse(e.CommandArgument.ToString());
                idPedid = ((Label)gvPedidos.Rows[index1].FindControl("idPedido")).Text;
                DtoPedido dto = new DtoPedido()
                {
                    idPedido = int.Parse(idPedid),
                    idTipo   = 2
                };

                ClassResultV cr = new CtrPedido().Usp_UpdateProcesar(dto);
                if (!cr.HuboError)
                {
                    List <DtoPedido> list     = cr.List.Cast <DtoPedido>().ToList();
                    string           subject  = "Envio de Pedido Numero - " + idPedid;
                    var          DocumentHtml = list[0].httpPedido;
                    var          fromAddress  = "*****@*****.**";
                    var          toAddress    = "*****@*****.**";
                    const string fromPassword = "******";
                    var          smtp         = new SmtpClient
                    {
                        Host                  = "smtp.gmail.com",
                        Port                  = 587,
                        EnableSsl             = true,
                        DeliveryMethod        = SmtpDeliveryMethod.Network,
                        UseDefaultCredentials = false,
                        Credentials           = new NetworkCredential(fromAddress, fromPassword)
                    };
                    MailMessage message = new MailMessage(fromAddress, toAddress);
                    message.Subject    = subject;
                    message.Body       = DocumentHtml;
                    message.IsBodyHtml = true;
                    smtp.Send(message);

                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", mensajeConfirmacion("Exito", "Se Proceso correctamente.", "success"), true);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al Procesar el pedido." + "', 'error');", true);
                }
                break;


            case "Page":
                return;

            case "Aceptar":
                int index2 = int.Parse(e.CommandArgument.ToString());
                idEstadoPedido = int.Parse(((HiddenField)gvPedidos.Rows[index2].FindControl("hdnidEstadoPedido")).Value);
                idPedid        = ((Label)gvPedidos.Rows[index2].FindControl("idPedido")).Text;
                DtoPedido dto2 = new DtoPedido()
                {
                    idPedido = int.Parse(idPedid),
                    idTipo   = 3
                };

                ClassResultV cr2 = new CtrPedido().Usp_UpdateProcesar(dto2);
                if (!cr2.HuboError)
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", mensajeConfirmacion("Exito", "Se Acepto correctamente.", "success"), true);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al Acepto el pedido." + "', 'error');", true);
                }
                break;


            case "Rechazar":
                int index3 = int.Parse(e.CommandArgument.ToString());
                idEstadoPedido = int.Parse(((HiddenField)gvPedidos.Rows[index3].FindControl("hdnidEstadoPedido")).Value);
                idPedid        = ((Label)gvPedidos.Rows[index3].FindControl("idPedido")).Text;
                DtoPedido dto3 = new DtoPedido()
                {
                    idPedido = int.Parse(idPedid),
                    idTipo   = 4
                };

                ClassResultV cr3 = new CtrPedido().Usp_UpdateProcesar(dto3);
                if (!cr3.HuboError)
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", mensajeConfirmacion("Exito", "Se Rechazo correctamente.", "success"), true);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al Rechazar el pedido." + "', 'error');", true);
                }
                break;

            case "Entregado":
                int index5 = int.Parse(e.CommandArgument.ToString());
                idEstadoPedido = int.Parse(((HiddenField)gvPedidos.Rows[index5].FindControl("hdnidEstadoPedido")).Value);
                idPedid        = ((Label)gvPedidos.Rows[index5].FindControl("idPedido")).Text;
                DtoPedido dto5 = new DtoPedido()
                {
                    idPedido = int.Parse(idPedid),
                    idTipo   = 5
                };

                ClassResultV cr5 = new CtrPedido().Usp_UpdateProcesar(dto5);
                if (!cr5.HuboError)
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", mensajeConfirmacion("Exito", "Se Entrego correctamente.", "success"), true);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al Entregar el pedido." + "', 'error');", true);
                }
                break;

            case "Anulado":
                int index4 = int.Parse(e.CommandArgument.ToString());
                idEstadoPedido = int.Parse(((HiddenField)gvPedidos.Rows[index4].FindControl("hdnidEstadoPedido")).Value);
                idPedid        = ((Label)gvPedidos.Rows[index4].FindControl("idPedido")).Text;
                DtoPedido dto4 = new DtoPedido()
                {
                    idPedido = int.Parse(idPedid),
                    idTipo   = 6
                };

                ClassResultV cr4 = new CtrPedido().Usp_UpdateProcesar(dto4);
                if (!cr4.HuboError)
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", mensajeConfirmacion("Exito", "Se Anulo correctamente.", "success"), true);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al Anular el pedido." + "', 'error');", true);
                }
                break;

            default:
                break;
            }
        }
Ejemplo n.º 19
0
        protected void btnActualizar_Click(object sender, EventArgs e)
        {
            try
            {
                List <DtoPedido> list = Session["DetallePedido2"] is null ? new List <DtoPedido>() : (List <DtoPedido>)Session["DetallePedido2"];
                if (list.Count == 0)
                {
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "No hay Pedido." + "', 'error');", true);
                    return;
                }
                int      idMetodoPago = int.Parse(ddlMedioPago.SelectedValue);
                int      idProveedor  = int.Parse(ddlProveedor.SelectedValue);
                DateTime FechaEntrega = DateTime.Parse(tFechaEntrega.Text);
                int      idPedido     = int.Parse(Session["idPedidoE"].ToString());
                decimal  precioTotal  = decimal.Parse(tPrecioTotal.Text);

                TransactionOptions transactionOptions = new TransactionOptions
                {
                    IsolationLevel = IsolationLevel.ReadUncommitted
                };
                using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required, transactionOptions))
                {
                    DtoPedido dtp = new DtoPedido()
                    {
                        idMetodoPago = idMetodoPago,
                        fechaEntrega = FechaEntrega,
                        idProveedor  = idProveedor,
                        idPedido     = idPedido,
                        idUsuario    = ((DtoUsuario)Session["Correo"]).idUsuario,
                        precioTotal  = precioTotal
                    };
                    dtp = new CtrPedido().Usp_UpdatePedido(dtp);
                    if (!dtp.HuboError)
                    {
                        IEnumerable <IGrouping <int, DtoPedido> > LCxPedido = list.GroupBy(x => x.idProducto);
                        foreach (IGrouping <int, DtoPedido> item in LCxPedido)
                        {
                            List <DtoPedido> listAux = list.Where(x => x.idProducto == item.Key).ToList();
                            DtoPedido        dto     = new DtoPedido()
                            {
                                idPedido     = dtp.idPedido,
                                idProducto   = listAux.Find(x => x.idProducto == item.Key).idProducto,
                                cantidad     = listAux.Find(x => x.idProducto == item.Key).cantidad,
                                precioCompra = listAux.Find(x => x.idProducto == item.Key).precioCompra,
                            };
                            ClassResultV cr;
                            cr = new CtrPedido().Usp_InsertDetallePedido(dto);
                            if (!cr.HuboError)
                            {
                            }
                            else
                            {
                                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al actualizar el Pedido." + "', 'error');", true);

                                return;
                            }
                        }
                    }
                    else
                    {
                        ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al actualizar el Pedido." + "', 'error');", true);
                        return;
                    }


                    transaction.Complete();
                    ScriptManager.RegisterStartupScript(this, GetType(), "Pop", mensajeConfirmacion("Exito", "Se actualizo el Pedido correctamente.", "success"), true);
                }
            }
            catch (Exception z)
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "Pop", @"swal('Error!', '" + "Hubo un error al registrar el pedido." + "', 'error');", true);
            }
        }