Promociones

This commit is contained in:
rakcsle
2024-09-17 09:20:34 -07:00
parent cea1fb44ac
commit d2207475af
3 changed files with 96 additions and 23 deletions

View File

@@ -350,19 +350,36 @@ Partial Class RepContratoDetalle
New ReportParameter("Servicio", TxtDescripcion.Text), New ReportParameter("Servicio", TxtDescripcion.Text),
New ReportParameter("Observaciones", TxtObservaciones.Text), New ReportParameter("Observaciones", TxtObservaciones.Text),
New ReportParameter("Ubicacion", TxtUbicacion.Text), New ReportParameter("Ubicacion", TxtUbicacion.Text),
New ReportParameter("FechaSalida", TxtFechaSalida.Text.ToDate.ToString("dd/MM/yyyy")), New ReportParameter("FechaSalida", TxtFechaSalida.Text.ToDate.ToString("dd/MM/yyyy HH:mm tt")),
New ReportParameter("FechaRegreso", TxtFechaRegreso.Text.ToDate.ToString("dd/MM/yyyy")), New ReportParameter("FechaRegreso", TxtFechaRegreso.Text.ToDate.ToString("dd/MM/yyyy HH:mm tt")),
New ReportParameter("CantidadPasajeros", TxtCantidadPasajeros.Text), New ReportParameter("CantidadPasajeros", TxtCantidadPasajeros.Text),
New ReportParameter("TipoAF", DdlTipoAF.SelectedItem.ToString()), New ReportParameter("TipoAF", DdlTipoAF.SelectedItem.ToString()),
New ReportParameter("Pesos", Math.Round(TxtImporte.Text.ToDecimal, 2).ToString), New ReportParameter("Pesos", TxtImporte.Text.ToDecimal.ToString("###,###,###.00")),
New ReportParameter("Moneda", DdlMoneda.SelectedItem.ToString), New ReportParameter("Moneda", DdlMoneda.SelectedItem.ToString),
New ReportParameter("Anticipo", Math.Round((TxtAnticipo.Text.ToDecimal * TxtImporte.Text.ToDecimal), 2).ToString), New ReportParameter("Anticipo", TxtAnticipo.Text.ToDecimal.ToString("###,###,###.00")),
New ReportParameter("Total", Math.Round((TxtImporte.Text.ToDecimal - (TxtAnticipo.Text.ToDecimal * TxtImporte.Text.ToDecimal)), 2).ToString), New ReportParameter("Total", (TxtImporte.Text.ToDecimal - (TxtAnticipo.Text.ToDecimal)).ToString("###,###,###.00")),
New ReportParameter("DiaSalida", $"{TxtFechaSalida.Text.ToDate.Hour}:{TxtFechaSalida.Text.ToDate.Minute} "), New ReportParameter("DiaSalida", TxtFechaSalida.Text.ToDate.ToString("HH:mm tt")),
New ReportParameter("TelefonoEmpresa", TelefonoEmpresa), New ReportParameter("TelefonoEmpresa", TelefonoEmpresa),
New ReportParameter("FechaImpresion", Date.Now.ToString("dd/MM/yyyy HH:mm:ss")), New ReportParameter("FechaImpresion", Date.Now.ToString("dd/MM/yyyy HH:mm:ss")),
New ReportParameter("Usuario", UsuarioActual.Nombre) New ReportParameter("Usuario", UsuarioActual.Nombre)
} }
'New ReportParameter("Folio", TxtFolio.Text),
' New ReportParameter("Cliente", DdlClientes.SelectedText),
' New ReportParameter("Servicio", TxtDescripcion.Text),
' New ReportParameter("Observaciones", TxtObservaciones.Text),
' New ReportParameter("Ubicacion", TxtUbicacion.Text),
' New ReportParameter("FechaSalida", TxtFechaSalida.Text.ToDate.ToString("dd/MM/yyyy")),
' New ReportParameter("FechaRegreso", TxtFechaRegreso.Text.ToDate.ToString("dd/MM/yyyy")),
' New ReportParameter("CantidadPasajeros", TxtCantidadPasajeros.Text),
' New ReportParameter("TipoAF", DdlTipoAF.SelectedItem.ToString()),
' New ReportParameter("Pesos", Math.Round(TxtImporte.Text.ToDecimal, 2).ToString),
' New ReportParameter("Moneda", DdlMoneda.SelectedItem.ToString),
' New ReportParameter("Anticipo", Math.Round((TxtAnticipo.Text.ToDecimal * TxtImporte.Text.ToDecimal), 2).ToString),
' New ReportParameter("Total", Math.Round((TxtImporte.Text.ToDecimal - (TxtAnticipo.Text.ToDecimal * TxtImporte.Text.ToDecimal)), 2).ToString),
' New ReportParameter("DiaSalida", $"{TxtFechaSalida.Text.ToDate.Hour}:{TxtFechaSalida.Text.ToDate.Minute} "),
' New ReportParameter("TelefonoEmpresa", TelefonoEmpresa),
' New ReportParameter("FechaImpresion", Date.Now.ToString("dd/MM/yyyy HH:mm:ss")),
' New ReportParameter("Usuario", UsuarioActual.Nombre)
ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos\Contrato.mrt", dtResult, params, NombreArchivo:=TxtFolio.Text) ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos\Contrato.mrt", dtResult, params, NombreArchivo:=TxtFolio.Text)
End Sub End Sub

View File

@@ -205,21 +205,35 @@
OnRowDataBound="GvDatos_RowDataBound" OnRowDataBound="GvDatos_RowDataBound"
> >
<Columns> <Columns>
<%--0--%>
<asp:BoundField HeaderText="Producto / Servicio" DataField="CodigoPS" ItemStyle-Width="30%" /> <asp:BoundField HeaderText="Producto / Servicio" DataField="CodigoPS" ItemStyle-Width="30%" />
<%--<asp:BoundField HeaderText="Producto / Servicio" DataField="PS" ItemStyle-Width="30%" />--%> <%--1--%>
<asp:BoundField HeaderText="P.U. Actual" DataField="PUAnterior" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" /> <asp:BoundField HeaderText="P.U. Actual" DataField="PUAnterior" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" />
<%--2--%>
<asp:BoundField HeaderText="Tipo Promoción" DataField="TipoPromocion" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%" /> <asp:BoundField HeaderText="Tipo Promoción" DataField="TipoPromocion" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="15%" />
<%--3--%>
<asp:BoundField HeaderText="Cant. Mínima" DataField="CantidadMinima" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%" /> <asp:BoundField HeaderText="Cant. Mínima" DataField="CantidadMinima" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%" />
<%--4--%>
<asp:BoundField HeaderText="Promoción" DataField="Promocion" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" /> <asp:BoundField HeaderText="Promoción" DataField="Promocion" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" />
<%--5--%>
<asp:BoundField HeaderText="P.U. Promoción" DataField="PUPromocion" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" /> <asp:BoundField HeaderText="P.U. Promoción" DataField="PUPromocion" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" />
<asp:BoundField HeaderText="Ultimo Costo" DataField="UltimoCosto" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00##}" ItemStyle-Width="10%" Visible="false" />
<asp:BoundField HeaderText="% Utilidad" DataField="UtilidadPorcentaje" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:#,###.00}" ItemStyle-Width="10%" Visible="false" />
<%--6--%>
<asp:BoundField HeaderText="Condiciones" ItemStyle-HorizontalAlign="Center" DataField="AplicaRestriccionTexto" ItemStyle-Width="15%" /> <asp:BoundField HeaderText="Condiciones" ItemStyle-HorizontalAlign="Center" DataField="AplicaRestriccionTexto" ItemStyle-Width="15%" />
<%--7--%>
<asp:BoundField HeaderText="Clasificacion" ItemStyle-HorizontalAlign="Left" DataField="Clasificacion"/> <asp:BoundField HeaderText="Clasificacion" ItemStyle-HorizontalAlign="Left" DataField="Clasificacion"/>
<%--8--%>
<asp:BoundField HeaderText="Rin" ItemStyle-HorizontalAlign="Left" DataField="RinTamaño" Visible="false"/> <asp:BoundField HeaderText="Rin" ItemStyle-HorizontalAlign="Left" DataField="RinTamaño" Visible="false"/>
<%--9--%>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%"> <asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton ID="LnkGvDetalleEditar" runat="server" AlternateText="Editar" CausesValidation="False" CommandArgument='<%# Container.DataItemIndex%>' CommandName="Editar" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" /> <asp:LinkButton ID="LnkGvDetalleEditar" runat="server" AlternateText="Editar" CausesValidation="False" CommandArgument='<%# Container.DataItemIndex%>' CommandName="Editar" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<%--10--%>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%"> <asp:TemplateField ItemStyle-HorizontalAlign="Center" ItemStyle-Width="5%">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton ID="LnkGvDetalleEliminar" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" /> <asp:LinkButton ID="LnkGvDetalleEliminar" runat="server" AlternateText="Eliminar" CausesValidation="False" CommandName="Delete" CssClass="btn btn-circle btn-sm red" Text="<i class='icon-trash'></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
@@ -301,7 +315,7 @@
<h4 class="modal-title" style="color: #FFF; text-align: center;">Agregar Producto/Servicio</h4> <h4 class="modal-title" style="color: #FFF; text-align: center;">Agregar Producto/Servicio</h4>
</div> </div>
<div class="modal-body rowpadding"> <div class="modal-body rowpadding">
<div class="row"> <div class="row" runat="server" id="DVModalClasificacion" visible="true">
<label class="col-md-3 truncate">Clasificación:</label> <label class="col-md-3 truncate">Clasificación:</label>
<div class="col-md-9"> <div class="col-md-9">
<asp:DropDownList ID="DdlClasificacion" DataTextField="Clasificacion" DataValueField="CveClasificacion" AutoPostBack="true" OnSelectedIndexChanged="DdlClasificacion_SelectedIndexChanged" CssClass="select2me" Width="100%" runat="server"></asp:DropDownList> <asp:DropDownList ID="DdlClasificacion" DataTextField="Clasificacion" DataValueField="CveClasificacion" AutoPostBack="true" OnSelectedIndexChanged="DdlClasificacion_SelectedIndexChanged" CssClass="select2me" Width="100%" runat="server"></asp:DropDownList>

View File

@@ -1,13 +1,11 @@
Option Explicit On Option Explicit On
Option Strict On Option Strict On
Imports System.Activities.Expressions
Imports System.Data Imports System.Data
Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports Extensiones Imports Extensiones
Imports iText.StyledXmlParser.Css.Resolve.Shorthand.Impl Imports Stimulsoft.Report
Imports Microsoft.Owin.Security.Provider
Imports Telerik.Web.UI
Partial Class Ventas_Promociones Partial Class Ventas_Promociones
Inherits ClsPaginas Inherits ClsPaginas
@@ -160,7 +158,13 @@ Partial Class Ventas_Promociones
PermisoAutorizPromocionPorcentaje = UsuarioActual.TienePermisoProceso(386) PermisoAutorizPromocionPorcentaje = UsuarioActual.TienePermisoProceso(386)
EmpresaFnc382 = If(UsuarioActual.Empresa.Funcionalidad(382) = "1", True, False) 'Grupo díaz EmpresaFnc382 = If(UsuarioActual.Empresa.Funcionalidad(382) = "1", True, False) 'Grupo díaz
'EmpresaFnc382 = True ''Para pruebas EmpresaFnc382 = True ''Para pruebas
If EmpresaFnc382 Then
DVModalClasificacion.Visible = False
GvDatos.Columns(6).Visible = True
GvDatos.Columns(7).Visible = True
End If
CvePromocion = -1 CvePromocion = -1
CargaValoresIniciales() CargaValoresIniciales()
@@ -187,10 +191,16 @@ Partial Class Ventas_Promociones
CargaGvBitacora() CargaGvBitacora()
End If End If
End Sub End Sub
Private Sub RemoverClasificacion()
End Sub
#Region "BITACORA" #Region "BITACORA"
@@ -260,7 +270,7 @@ Partial Class Ventas_Promociones
DdlMarca.Items.Insert(0, New ListItem("Todos", "-1")) DdlMarca.Items.Insert(0, New ListItem("Todos", "-1"))
If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then
GvDatos.Columns(8).Visible = True GvDatos.Columns(10).Visible = True
DivRin.Visible = True DivRin.Visible = True
'Dim ObjGral As New ClsGenerales 'Dim ObjGral As New ClsGenerales
'If ObjGral.GetRinTamanios(UsuarioActual.CveEmpresa) Then 'If ObjGral.GetRinTamanios(UsuarioActual.CveEmpresa) Then
@@ -315,6 +325,7 @@ Partial Class Ventas_Promociones
TempDT.Columns.Add("UltimoCosto", GetType(Decimal)) TempDT.Columns.Add("UltimoCosto", GetType(Decimal))
TempDT.Columns.Add("CostoPromedio", GetType(Decimal)) TempDT.Columns.Add("CostoPromedio", GetType(Decimal))
TempDT.Columns.Add("UtilidadPorcentaje", GetType(Decimal))
TempDTOrigial = TempDT.Copy TempDTOrigial = TempDT.Copy
@@ -499,6 +510,8 @@ Partial Class Ventas_Promociones
Protected Sub BtnAgregar_Click(sender As Object, e As EventArgs) Protected Sub BtnAgregar_Click(sender As Object, e As EventArgs)
Dim CveTipoPromocion As Integer = DdlTipoPromocion.SelectedValue.ToEntero
If DdlClasificacion.SelectedValue.ToEntero <= 0 Then If DdlClasificacion.SelectedValue.ToEntero <= 0 Then
If DdlPS.SelectedValue.ToEntero <= 0 Then If DdlPS.SelectedValue.ToEntero <= 0 Then
Alert("Debe seleccionar una clasificacion o un producto y/o servicio", TipoMensaje.MsgAdvertencia) Alert("Debe seleccionar una clasificacion o un producto y/o servicio", TipoMensaje.MsgAdvertencia)
@@ -545,15 +558,11 @@ Partial Class Ventas_Promociones
Dr("CodigoPS") = If(String.IsNullOrEmpty(DdlPS.SelectedText), "Todos", DdlPS.SelectedText) Dr("CodigoPS") = If(String.IsNullOrEmpty(DdlPS.SelectedText), "Todos", DdlPS.SelectedText)
Dr("PUAnterior") = LbPUActual.Text.ToDecimal Dr("PUAnterior") = LbPUActual.Text.ToDecimal
Dr("UltimoCosto") = LblUltimoCosto.Text.ToDecimal Dr("CveTipoPromocion") = CveTipoPromocion
Dr("CostoPromedio") = LblCostoPromedio.Text.ToDecimal Dr("TipoPromocion") = CveTipoPromocion
Dr("CveTipoPromocion") = DdlTipoPromocion.SelectedValue.ToEntero
Dr("TipoPromocion") = DdlTipoPromocion.SelectedItem.Text
Dr("Promocion") = TxtPromocionConcepto.Text Dr("Promocion") = TxtPromocionConcepto.Text
If DdlTipoPromocion.SelectedValue.ToEntero.Contiene(1, 3) Then If CveTipoPromocion.Contiene(1, 3) Then
Dr("PUPromocion") = TxtPromocionConcepto.Text.ToDecimal Dr("PUPromocion") = TxtPromocionConcepto.Text.ToDecimal
Else Else
Dr("PUPromocion") = LbPUActual.Text.ToDecimal - (LbPUActual.Text.ToDecimal * TxtPromocionConcepto.Text.ToDecimal / 100) Dr("PUPromocion") = LbPUActual.Text.ToDecimal - (LbPUActual.Text.ToDecimal * TxtPromocionConcepto.Text.ToDecimal / 100)
@@ -596,6 +605,39 @@ Partial Class Ventas_Promociones
Dr("CveRinTamaño") = -1 Dr("CveRinTamaño") = -1
End If End If
Dim UltimoCosto As Decimal = LblUltimoCosto.Text.ToDecimal
Dim CostoPromedio As Decimal = LblCostoPromedio.Text.ToDecimal
Dr("UltimoCosto") = UltimoCosto
Dr("CostoPromedio") = CostoPromedio
If UltimoCosto > 0 Then
Dim Promocion As Decimal = TxtPromocionConcepto.Text.ToDecimal
If CveTipoPromocion = 1 Then 'importe
Dim porciento As Decimal = (Promocion * 100 / UltimoCosto) - 100
Dr("UtilidadPorcentaje") = porciento
ElseIf CveTipoPromocion = 2 Then '% descuento
Dim calculo As Decimal = (UltimoCosto) - (UltimoCosto * (Promocion / 100))
Dim porciento As Decimal = (calculo * 100 / UltimoCosto) - 100
Dr("UtilidadPorcentaje") = porciento
End If
Else
Dr("UtilidadPorcentaje") = 0.0D
End If
If CveConsecutivo >= 0 Then If CveConsecutivo >= 0 Then
Dr.AcceptChanges() Dr.AcceptChanges()
Else Else