//private void CargarData() //{ // txtTotalDeudaVen.Text = totalDeudaVencida.ToString("#,##0.00"); // txtTotalLetras.Text = totalletras.ToString("#,##0.00"); //} private void Registrar_Aprobacion()//string idAgenda, int IdPedido, int Op, string idSectorista, string comentario, decimal ValorVenta, int id_moneda, string Aprobacion, int Guia) { PedidoWCFClient objPedidoWCF = new PedidoWCFClient(); gsAgendaCliente_BuscarLimiteCreditoResult objLimite = new gsAgendaCliente_BuscarLimiteCreditoResult(); decimal porcentaje = 0; decimal ValorPedido = 0; decimal LineaMaximo = 0; decimal LineaCredito = 0; decimal Deuda = 0; decimal DeudaIncluida = 0; decimal TC = 0; var idEmpresa = ((Usuario_LoginResult)Session["Usuario"]).idEmpresa; var idUsuario = ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario; IdAgenda = ((Request.QueryString["Id_Cliente"])); idSectorista = ((Request.QueryString["idSectorista"])); comentario = ((Request.QueryString["comentario"])); Aprobacion = ((Request.QueryString["Aprobacion"])); IdPedido = Int32.Parse((Request.QueryString["IdPedido"])); Op = Int32.Parse((Request.QueryString["Op"])); ValorVenta = decimal.Parse((Request.QueryString["ValorVenta"])); Id_moneda = Int32.Parse((Request.QueryString["Id_moneda"])); Guia = Int32.Parse((Request.QueryString["Guia"])); totalDeudaVencida = decimal.Parse((Request.QueryString["totalDeudaVencida"])); totalletras = decimal.Parse((Request.QueryString["totalletras"])); try { if (((Usuario_LoginResult)Session["Usuario"]).aprobarPedido == true) { ValorPedido = ValorVenta; porcentaje = (decimal.Parse(((Usuario_LoginResult)Session["Usuario"]).aprobarPorcentaje.ToString()) / 100); objLimite = ListarClientesResumen(IdAgenda); if (!string.IsNullOrEmpty(objLimite.ID_Agenda)) { TC = (decimal)objLimite.TC; LineaCredito = decimal.Parse(objLimite.LineaCredito.ToString()); if (Id_moneda == 1) { LineaCredito = LineaCredito * TC; } LineaMaximo = LineaCredito + (LineaCredito * porcentaje); Deuda = decimal.Parse(objLimite.TotalRiesgo.ToString()); if (Id_moneda == 1) { Deuda = Deuda * TC; } if (Guia == 1 || Guia == 2) { DeudaIncluida = Deuda; } else { if (Aprobacion == "True") { DeudaIncluida = Deuda; } else { DeudaIncluida = Deuda + ValorPedido; } } if (DeudaIncluida <= LineaMaximo) { objPedidoWCF.Pedido_Aprobar(idEmpresa, idUsuario, IdPedido, Op, idSectorista, true, comentario); objPedidoWCF.gsDocVentaAprobacion_Registrar(idEmpresa, IdPedido, Op, IdAgenda, idUsuario); rwmOrdenVenta.RadAlert("Se aprobó el pedido correctamente. ", 200, 150, "Aprobación de Pedidos", null); objCreditoWCF = new CreditoWCFClient(); objCreditoWCF.Enviar_Notificacion_Aprobacion2(idEmpresa, idUsuario, IdAgenda, txtCliente.Text, Op.ToString(), Convert.ToDecimal(txtTotalLetrasS.Text.Trim() == string.Empty ? "0" : txtTotalLetrasS.Text.Trim()), Convert.ToDecimal(txtTotalDeudaVenS.Text.Trim() == string.Empty ? "0" : txtTotalDeudaVenS.Text.Trim()), Convert.ToDecimal(txtTotalLetrasN.Text.Trim() == string.Empty ? "0" : txtTotalLetrasN.Text.Trim()), Convert.ToDecimal(txtTotalDeudaVenN.Text.Trim() == string.Empty ? "0" : txtTotalDeudaVenN.Text.Trim()), Convert.ToDecimal(txtTotalLetrasI.Text.Trim() == string.Empty ? "0" : txtTotalLetrasI.Text.Trim()), Convert.ToDecimal(txtTotalDeudaVenI.Text.Trim() == string.Empty ? "0" : txtTotalDeudaVenI.Text.Trim()), ((Usuario_LoginResult)Session["Usuario"]).nombres, txtcomentarios.Text); objCreditoWCF.RegistrarLog_AprobacionDeudaVencida(idEmpresa, idUsuario, IdAgenda, txtCliente.Text, Op.ToString(), Convert.ToDecimal(txtTotalLetrasS.Text == string.Empty ? "0" : txtTotalLetrasS.Text), Convert.ToDecimal(txtTotalDeudaVenS.Text == string.Empty ? "0" : txtTotalDeudaVenS.Text), Convert.ToDecimal(txtTotalLetrasN.Text == string.Empty ? "0" : txtTotalLetrasN.Text), Convert.ToDecimal(txtTotalDeudaVenN.Text == string.Empty ? "0" : txtTotalDeudaVenN.Text), Convert.ToDecimal(txtTotalLetrasI.Text == string.Empty ? "0" : txtTotalLetrasI.Text), Convert.ToDecimal(txtTotalDeudaVenI.Text == string.Empty ? "0" : txtTotalDeudaVenI.Text), txtcomentarios.Text); ScriptManager.RegisterStartupScript(Page, this.GetType(), "mykey", "CloseAndRebind(" + Op.ToString() + ");", true); } else { rwmOrdenVenta.RadAlert("El porcentaje de sobregiro asignado no es suficiente. Solicitar la aprobación de su Superior. ", 400, null, "Mensaje de error", null); } } else { rwmOrdenVenta.RadAlert("El cliente no tiene linea de crédito, solicitar a C&C. ", 400, null, "Mensaje de error", null); } } else { rwmOrdenVenta.RadAlert("No tiene autorización para aprobar pedidos. ", 400, null, "Mensaje de error", null); } } catch (Exception ex) { lblMensaje.Text = ex.Message; lblMensaje.CssClass = "mensajeError"; } }
protected void btnAprobar_Click(object sender, EventArgs e) { lblMensaje.Text = ""; if (Session["Usuario"] == null) { Response.Redirect("~/Security/frmCerrar.aspx"); } PedidoWCFClient objPedidoWCF = new PedidoWCFClient(); CreditoWCFClient objCreditoWCF = new CreditoWCFClient(); try { foreach (GridItem rowitem in grdOrdenVenta.MasterTableView.Items) { GridDataItem dataitem = (GridDataItem)rowitem; TableCell cell = dataitem["CheckColumn"]; CheckBox checkBox = (CheckBox)cell.Controls[0].FindControl("Check"); if (checkBox.Checked == true && checkBox.Enabled == true) { int Op = Convert.ToInt32(dataitem.GetDataKeyValue("Op").ToString()); string IdAgenda = dataitem["ID_Agenda"].Text; int IdPedido = int.Parse(dataitem["ID"].Text); int Id_moneda = int.Parse(dataitem["Id_moneda"].Text); //-------------------------------------- string Aprobacion = dataitem["Aprobacion"].Text; int Guia = int.Parse(dataitem["Guia"].Text); //-------------------------------------- decimal ValorVenta = decimal.Parse(dataitem["Total"].Text); string Perfil = ((Usuario_LoginResult)Session["Usuario"]).nombrePerfil; string usuario = ((Usuario_LoginResult)Session["Usuario"]).nombres; //string idSectorista = cbSectorista.SelectedValue; string comentario = "Aprobado por " + Perfil + " (" + usuario + ")."; string idSectorista = cbSectorista.SelectedValue; var idEmpresa = ((Usuario_LoginResult)Session["Usuario"]).idEmpresa; var idUsuario = ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario; var opDocVenta = objPedidoWCF.VerificarExisteDocVenta(idEmpresa, idUsuario, IdAgenda).OpDocVenta; //rwmOrdenVenta.RadConfirm("¿Esta seguro que desea Aprobar el pedido " + Op + "?", null, 400, 200,null, "Aprobar Pedido"); if (opDocVenta != 0) { USP_SEL_Verificacion_DeudaVencidaResult[] lstDv = null; USP_SEL_Verificacion_LetrasxAceptarResult[] lstlet = null; objCreditoWCF.ObtenerVerificacionAprobacion2(idEmpresa, idUsuario, IdAgenda, ref lstDv, ref lstlet); if (lstDv.Any() || lstlet.Any()) { double totalDeudaVencida = Convert.ToDouble(lstDv.Sum(x => x.DeudaVencida)); double totalletras = Convert.ToDouble(lstlet.Sum(x => x.Deuda_mayor30Dias)); //string NombreCliente = dataitem["Agenda"].Text; Session["NombreClienteAprobacion"] = dataitem["Agenda"].Text; ScriptManager.RegisterStartupScript(Page, this.GetType(), "mykey", "ShowInsertForm('" + IdAgenda + "'," + IdPedido.ToString() + "," + Op.ToString() + ",'" + idSectorista + "','" + comentario + "'," + ValorVenta.ToString() + "," + Id_moneda.ToString() + ",'" + Aprobacion + "'," + Guia + "," + totalDeudaVencida + "," + totalletras + ");", true); //rwmOrdenVenta.RadAlert("El cliente tiene deuda vencida con mas de 10 días", 450, 150, "Mantenimiento de Productos", null, "../../Images/Icons/sign-error-32.png"); break; } else { Registrar_Aprobacion(IdAgenda, IdPedido, Op, idSectorista, comentario, ValorVenta, Id_moneda, Aprobacion, Guia); } } else { rwmOrdenVenta.RadAlert("Existe otro pedido que ha sido aprobado y aun no se ha generado su documento de venta.", 400, 200, "Alerta Verificar Pedido", ""); } } } OrdenVenta_Listar(null, dpFechaInicio.SelectedDate.Value, dpFechaFinal.SelectedDate.Value, null, cbSectorista.SelectedValue, int.Parse(cboEstado.SelectedValue), int.Parse(cboTipoPago.SelectedValue)); } catch (Exception ex) { lblMensaje.Text = ex.Message; lblMensaje.CssClass = "mensajeError"; } }
private void CargarData() { List <USP_SEL_LetrasSinCanjeV2Result> lstletras = new List <USP_SEL_LetrasSinCanjeV2Result>(); DateTime?dtInicio = Convert.ToDateTime("01/01/2000"); //dtpfechainicial.SelectedDate; DateTime?dtFinal = dtpfechafinal.SelectedDate; int dias = txtCantidadDias.Text.Trim() == string.Empty ? 0 : Convert.ToInt32(txtCantidadDias.Text.Trim()); string strzonas = string.Empty; var collection = cbzona.CheckedItems; foreach (var x in collection) { strzonas = strzonas + x.Value.ToString() + ","; } strzonas = strzonas.Trim() == string.Empty ? string.Empty : strzonas.Substring(0, strzonas.Length - 1); objCredito = new CreditoWCFClient(); lstletras = objCredito.ObtenerLetrasSinCanje( ((Usuario_LoginResult)Session["Usuario"]).idEmpresa, ((Usuario_LoginResult)Session["Usuario"]).codigoUsuario, 376, Convert.ToDateTime(dtInicio), Convert.ToDateTime(dtFinal), dias, strzonas).ToList(); if (lstletras.Any()) { Session["lstletras"] = JsonHelper.JsonSerializer(lstletras); //rchardTorta.PlotArea.Series[0].Items.Clear(); decimal Total = (decimal)lstletras.Sum(x => x.Saldo); lblTitulotarta.Text = "Saldos por Categoria : Monto Total En Dolares $" + Total.ToString("#,##.00"); var lstplazos = from p in lstletras group p by new { p.TipoPlazo } into g select new { TipoPlazo = g.Key.TipoPlazo, Cantidad = g.Sum(x => x.Saldo) }; SeriesItem item = new SeriesItem(); CrearPie(lstletras); //rchardTorta.DataSource = lstplazos; //rchardTorta.DataBind(); ////fin ------------------// //rchardTorta.PlotArea.Series[0].Items.Clear(); //foreach (var Eplazo in lstplazos) //{ // item = new SeriesItem(); // item.YValue = Math.Round(((((decimal)Eplazo.Cantidad) / Total) * 100), 2); //((int)((cliente.ValorVenta / sum) * 100)); // item.Name = string.Format("{0}<br/> Saldo Total: ${1}<br/> Cantidad Letras: " + lstletras.Where(x => x.TipoPlazo == Eplazo.TipoPlazo).Count(), // Eplazo.TipoPlazo, Math.Round(((decimal)Eplazo.Cantidad), 2).ToString("#,##0.00")); // if (Eplazo.TipoPlazo == "1 a " + txtCantidadDias.Text.Trim() + " Días") // { // item.BackgroundColor = System.Drawing.Color.DarkOrange; // } // else if (Eplazo.TipoPlazo == "Mayor a " + txtCantidadDias.Text.Trim() + " Días") // { // item.BackgroundColor = System.Drawing.Color.Red; // } // rchardTorta.PlotArea.Series[0].Items.Add(item); //} //int plazos = lstplazos.Select(x => x.TipoPlazo).Count(); //foreach (var Eplazo in lstplazos) //{ // item = new SeriesItem(); // rchardTorta.PlotArea.Series[0].Items[0].Name = string.Format("{0}<br/> Saldo Total: ${1}<br/> Cantidad Letras: " + lstletras.Where(x => x.TipoPlazo == Eplazo.TipoPlazo).Count(), // Eplazo.TipoPlazo, Math.Round(((decimal)Eplazo.Cantidad), 2).ToString("#,##0.00")); // plazos = plazos + 1; //} rchardLineas.PlotArea.Series[0].Items.Clear(); var lstzonas = from p in lstletras group p by new { p.NombreZona } into g select new { NombreZona = g.Key.NombreZona, Cantidad = g.Sum(x => x.Saldo) }; rchardLineas.PlotArea.XAxis.TitleAppearance.Text = "Zonas"; rchardLineas.PlotArea.YAxis.TitleAppearance.Text = "Saldo $"; rchardLineas.PlotArea.XAxis.LabelsAppearance.TextStyle.FontSize = 8; rchardLineas.PlotArea.YAxis.MinValue = 0; rchardLineas.PlotArea.XAxis.Items.Clear(); LineSeries lserie = new LineSeries(); foreach (var vendedor in lstzonas) { rchardLineas.PlotArea.XAxis.Items.Add(vendedor.NombreZona); item = new SeriesItem(); item.Name = string.Format("{0}<br/>Saldo Total:$ {1}<br/>", vendedor.NombreZona, Math.Round(((decimal)vendedor.Cantidad), 2).ToString("#,##0.00")); item.YValue = Math.Round((decimal)vendedor.Cantidad, 2); this.rchardLineas.PlotArea.Series[0].Items.Add(item); } rpgDetalle.DataSource = lstletras; rpgDetalle.DataBind(); rpgResumenZona.DataSource = lstletras; rpgResumenZona.DataBind(); Session["lstletrasresumen"] = JsonHelper.JsonSerializer(lstletras); } }