-- merge Ventas

This commit is contained in:
2024-11-22 21:06:58 -07:00
14 changed files with 264 additions and 92 deletions

View File

@@ -11124,7 +11124,7 @@ Public Class ClsPaginas
End Function
#End Region
Public Shared Sub EnviaNotificacionSMS(Tipo As Integer, tEmpresa As Empresa, CveOS As Integer, Folio As String, FechaCirugía As DateTime, Hospital As String, Medico As String, Procedimiento As String, Tecnico As String, Vendedor As String, Remision As String, ListaPS As List(Of GenericaCantidadProducto), CorreoDestino As String)
Public Shared Sub EnviaNotificacionSMS(Tipo As Integer, tEmpresa As Empresa, CveOS As Integer, Folio As String, FechaCirugía As DateTime, Hospital As String, TipoVenta As String, Medico As String, Procedimiento As String, Tecnico As String, Vendedor As String, Remision As String, ListaPS As List(Of GenericaCantidadProducto), CorreoDestino As String)
Dim ObjMail As New ClsSisMail()
Dim Asunto As String = ""
Dim OpcionNegritas As String = ""
@@ -11200,6 +11200,7 @@ Public Class ClsPaginas
Contenido.AppendFormat("<span style='{1}'>Fecha y hora de cx: {0}</span><br/>", FechaCirugía.ToString("dd/MM/yyyy HH:mm"), If(OpcionNegritas = "T", "Negritas", ""))
Contenido.AppendFormat("Hospital: {0}<br/>", Hospital)
If TipoVenta <> "" Then Contenido.AppendFormat("Tipo Venta: {0}<br/>", TipoVenta)
If Medico <> "" Then Contenido.AppendFormat("Médico: {0}<br/>", Medico)
If Procedimiento <> "" Then Contenido.AppendFormat("Procedimiento: {0}<br/>", Procedimiento)
If Tecnico <> "" Then Contenido.AppendFormat("Técnico: {0}<br/>", If(OpcionNegritas = "T", $"<b>{Tecnico}</b>", Tecnico))
@@ -11223,11 +11224,10 @@ Public Class ClsPaginas
Contenido.AppendFormat("<br/> {0}<br/>", TextoFinal)
'Contenido.AppendFormat("<br/>CorreoDestino: {0}<br/>", CorreoDestino)
'CorreoDestino = "rene.molina@adssistemas.mx"
Contenido.Append(" </body>")
Contenido.Append("</html>")
'CorreoDestino = "rene.molina@adssistemas.mx"
If ObjMail.SendMail(tEmpresa, CorreoDestino, Asunto, Contenido.ToString) Then
End If

View File

@@ -62,6 +62,7 @@ Public Class ClsSisUsuarios
Public Property AsignarAutomaticamenteSubProyecto As Boolean
Public Property AsignarAutomaticamenteOC As Boolean
Public Property DescuentoAutorizado As Double
Public Property AplicaRestriccionAcceso As Boolean
#End Region
Sub New(Optional TransaccionCompartida As SqlTransaction = Nothing, Optional UsuarioActual As Usuario = Nothing)
@@ -507,6 +508,7 @@ Public Class ClsSisUsuarios
Me.AsignarAutomaticamenteSubProyecto = If(Data.Rows(0)("AsignarAutomaticamenteSubProyecto").ToString = "Si", True, False)
Me.AsignarAutomaticamenteOC = If(Data.Rows(0)("AsignarAutomaticamenteOC").ToString = "Si", True, False)
Me.DescuentoAutorizado = Data.Rows(0)("DescuentoAutorizado").ToString.ToDouble
AplicaRestriccionAcceso = If(Data.Rows(0)("AplicaRestriccionAcceso").ToString = "SI", True, False)
'Me.TipoControl = Data.Rows(0)("TipoControl").ToString.ToEntero
'Me.EsLogIn = Data.Rows(0)("EsLogIn").ToString.ToEntero
End If
@@ -551,7 +553,8 @@ Public Class ClsSisUsuarios
CvePersonal As Integer, CveVendedor As Integer, CambiarContraseña As Boolean,
CveUsuarioIng As Integer, CveEmpresa As Integer, CveSubProyecto As Integer, Optional Rol As String = "-1", Optional CveAlmacenAsignado As Integer = -1, Optional AsignarSubProyecto As Boolean = False, Optional AsignarOC As Boolean = False,
Optional CvePlataforma As Integer = -1, Optional CveClientePlataforma As Integer = -1, Optional CveProveedorPlataforma As Integer = -1, Optional DescuentoAutorizado As Double = 0, Optional CodigoAcceso As String = "-1",
Optional LimiteCreditoAutorizado As Decimal = 0, Optional PorcentajeMaximoAutorizacion As Decimal = 0, Optional DiasMaximoAutorizacion As Integer = 0, Optional Celular As String = "") As Integer
Optional LimiteCreditoAutorizado As Decimal = 0, Optional PorcentajeMaximoAutorizacion As Decimal = 0,
Optional DiasMaximoAutorizacion As Integer = 0, Optional Celular As String = "", Optional AplicaRestriccionAcceso As Boolean = False) As Integer
Dim Retorno As Integer = -1
DataAdapter("PA_Sis_UsuarioAdd")
With SqlAdapter.SelectCommand.Parameters
@@ -576,6 +579,7 @@ Public Class ClsSisUsuarios
.Add("@PorcentajeMaximoAutorizacion", SqlDbType.Money).Value = PorcentajeMaximoAutorizacion
.Add("@DiasMaximoAutorizacion", SqlDbType.Int).Value = DiasMaximoAutorizacion
.Add("@Celular", SqlDbType.VarChar).Value = Celular
.Add("@AplicaRestriccionAcceso", SqlDbType.Bit).Value = If(AplicaRestriccionAcceso, 1, 0)
.Add("@CveUsuario", SqlDbType.Int).Direction = ParameterDirection.Output
End With
@@ -703,7 +707,9 @@ Public Class ClsSisUsuarios
End Function
Public Function UpdateUsuario(Usuario As String, Nombre As String, CveRol As Integer, Correo As String, CvePersonal As Integer,
CveVendedor As Integer, CambiarContraseña As Boolean, Activo As Boolean, CveEmpresa As Integer, CveUsuario As Integer, CveAlmacenAsignado As Integer, CveSubProyecto As Integer, Optional CveUsuarioModifico As Integer = -1, Optional AsignarSubProyecto As Boolean = False, Optional AsignarOC As Boolean = False,
Optional DescuentoAutorizado As Double = 0, Optional CodigoAcceso As String = "-1", Optional LimiteCreditoAutorizado As Decimal = 0, Optional PorcentajeMaximoAutorizacion As Decimal = 0, Optional DiasMaximoAutorizacion As Integer = 0, Optional Celular As String = "") As Boolean
Optional DescuentoAutorizado As Double = 0, Optional CodigoAcceso As String = "-1",
Optional LimiteCreditoAutorizado As Decimal = 0, Optional PorcentajeMaximoAutorizacion As Decimal = 0,
Optional DiasMaximoAutorizacion As Integer = 0, Optional Celular As String = "", Optional AplicaRestriccionAcceso As Boolean = False) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Sis_UsuarioUpdate")
@@ -729,6 +735,7 @@ Public Class ClsSisUsuarios
.Add("@PorcentajeMaximoAutorizacion", SqlDbType.Money).Value = PorcentajeMaximoAutorizacion
.Add("@DiasMaximoAutorizacion", SqlDbType.Int).Value = DiasMaximoAutorizacion
.Add("@Celular", SqlDbType.VarChar).Value = Celular
.Add("@AplicaRestriccionAcceso", SqlDbType.Bit).Value = If(AplicaRestriccionAcceso, 1, 0)
End With
Try

View File

@@ -1704,15 +1704,12 @@ Partial Class Compras_eFacturas
Hilo.Start()
Else
Dim PDfDestino As String = $"{UsuarioActual.Empresa.Ruta}\Compras\{FF.EmisorRFC}\{FF.CveFactura}.PDF"
If File.Exists(PDfDestino) Then
File.Delete(PDfDestino)
End If
Try
If File.Exists(RutaPDF) Then
If File.Exists(PDfDestino) Then
File.Delete(PDfDestino)
End If
File.Move(RutaPDF, PDfDestino)
Catch ex As Exception
End Try
End If
End If
End If

View File

@@ -286,7 +286,7 @@ Partial Class AC_RepAnexoCatalogo
e.Row.FCHyperLink("HLSaldoActual").ForeColor = Drawing.Color.Red
End If
e.Row.FCHyperLink("HLSaldoActual").NavigateUrl = String.Format("/Contabilidad/RepMovimientosAuxiliaresCatalogo.aspx?ID={0}&FI={1}&FF={2}&IdSegNeg={3}", e.Row.DBCampo("ID"), FechaInicio.ToShortDateString, FechaFin.ToShortDateString, DdlSegmentoNegocio.SelectedValue.ToEntero)
e.Row.FCHyperLink("HLSaldoActual").NavigateUrl = String.Format("/Contabilidad/RepMovimientosAuxiliaresCatalogoCI.aspx?ID={0}&FI={1}&FF={2}&IdSegNeg={3}", e.Row.DBCampo("ID"), FechaInicio.ToShortDateString, FechaFin.ToShortDateString, DdlSegmentoNegocio.SelectedValue.ToEntero)
End If
End Sub
#End Region

View File

@@ -11,7 +11,15 @@
<i class="fa fa-file-excel-o"></i> Exportar por <asp:Label runat="server" ID="LblAccionesSubProyecto" ></asp:Label>
</a>
<div style="display:none">
<asp:Button runat="server" ID="BtnImprimirPorsubProyecto" OnClick="BtnImprimirPorsubProyecto_Click" ClientIDMode="Static" />
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button runat="server" ID="BtnImprimirPorsubProyecto" OnClick="BtnImprimirPorsubProyecto_Click" ClientIDMode="Static" />
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="BtnImprimirPorsubProyecto" />
</Triggers>
</asp:UpdatePanel>
</div>
</li>
<li>
@@ -231,7 +239,7 @@
function BtnImprimirPoSubProyecto_Click() {
setTimeout(checkFileStatus, 5000);
//setTimeout(checkFileStatus, 5000);
$('#BtnImprimirPorsubProyecto').click();
//checkFileStatus();
@@ -239,46 +247,46 @@
}
function callMyStaticFunction() {
$.ajax({
type: "POST",
url: "MyPage.aspx/MyStaticFunction",
data: JSON.stringify({ parameter: "TuParametro" }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
alert("Resultado: " + response.d);
},
error: function (xhr, status, error) {
console.error("Error: " + error);
}
});
}
//function callMyStaticFunction() {
// $.ajax({
// type: "POST",
// url: "MyPage.aspx/MyStaticFunction",
// data: JSON.stringify({ parameter: "TuParametro" }),
// contentType: "application/json; charset=utf-8",
// dataType: "json",
// success: function (response) {
// alert("Resultado: " + response.d);
// },
// error: function (xhr, status, error) {
// console.error("Error: " + error);
// }
// });
//}
function checkFileStatus() {
//$.ajax({
// url: 'RepBalanzaComprobacion.aspx',
// success: function (response) {
// setTimeout(checkFileStatus, 20000);
// }
//});
//function checkFileStatus() {
// //$.ajax({
// // url: 'RepBalanzaComprobacion.aspx',
// // success: function (response) {
// // setTimeout(checkFileStatus, 20000);
// // }
// //});
$.ajax({
type: "POST",
url: 'RepBalanzaComprobacion.aspx',
data: JSON.stringify({ parameter: "TuParametro" }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
//alert("Resultado: " + response.d);
setTimeout(checkFileStatus, 20000);
},
error: function (xhr, status, error) {
console.error("Error: " + error);
}
});
}
// $.ajax({
// type: "POST",
// url: 'RepBalanzaComprobacion.aspx',
// data: JSON.stringify({ parameter: "TuParametro" }),
// contentType: "application/json; charset=utf-8",
// dataType: "json",
// success: function (response) {
// //alert("Resultado: " + response.d);
// setTimeout(checkFileStatus, 20000);
// },
// error: function (xhr, status, error) {
// console.error("Error: " + error);
// }
// });
//}
</script>

View File

@@ -4003,7 +4003,7 @@ Partial Class Inventarios_EntregaAlmacen
objOS.Dispose()
' TxtObservaciones.Text = $"Dr. {drE("Medico").ToString}{vbCrLf}Cx. {drE("Procedimiento").ToString}{vbCrLf}F. Cirugía {drE("FechaParaSurtir").ToString.ToDateTime.ToString("dd/MM/yyyy HH:mm")}{vbCrLf}H. {drE("Sucursal").ToString}{vbCrLf}"
EnviaNotificacionSMS(6, UsuarioActual.Empresa, tCveOS, FolioOS, dr("FechaParaSurtir").ToString.ToDateTime, dr("ClienteNombre").ToString, dr("Medico").ToString, dr("Procedimiento").ToString, "", dr("VendedorNombre").ToString, FolioRemision.ToString, ListMateriales, CorreoVendedor)
EnviaNotificacionSMS(6, UsuarioActual.Empresa, tCveOS, FolioOS, dr("FechaParaSurtir").ToString.ToDateTime, dr("ClienteNombre").ToString, dr("TipoVenta").ToString, dr("Medico").ToString, dr("Procedimiento").ToString, "", dr("VendedorNombre").ToString, FolioRemision.ToString, ListMateriales, CorreoVendedor)
End If
ObjVentas.Dispose()

View File

@@ -105,6 +105,7 @@
<%--<asp:TemplateField ItemStyle-HorizontalAlign="center" HeaderText="Opciones" ItemStyle-Width="100px">
<ItemTemplate>
<div class="row">
<div class="col-lg-12">
<div class="col-lg-12">
<asp:LinkButton ID="LnkMostrarTraspaso" runat="server" AlternateText="Editar" OnClick="LnkMostrarTraspaso_Click" CausesValidation="False" CssClass="btn btn-circle btn-sm blue" Text="<i class='fa fa-pencil'></i>" />
</div>

View File

@@ -353,7 +353,7 @@ Partial Class Inventarios_TrasladoSolicitud
If TieneError = False Then
ObjInventarios.Commit()
Alert($"La Solicitud de Traspaso se guardó correctamente en el folio #: <b>{Folio}</b>.", TipoMensaje.MsgInformacion)
Alert($"La Solicitud de Traspaso se guardó correctamente con folio #: <b>{Folio}</b>.", TipoMensaje.MsgInformacion)
RegistraScript(String.Format("$('#{0}').modal('hide');", "DVModalSolicitudAdd"))
CargaDatos()
Else

View File

@@ -521,13 +521,13 @@ Partial Class OS_Asignaciones
End If
Dim CorreoDestino As String = CorreoUsuarioAsignado
Dim Vendedor As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Vendedor", $"CveVendedor ={dr("CveVendedor")}")
Dim TipoVenta As String = ""
'técnico
CorreoDestino = CorreoUsuarioAsignado
EnviaNotificacionSMS(7, UsuarioActual.Empresa, CveOS, Folio, FechaCirugia, NombreCliente, Medico, Procedimiento, Tecnico, Vendedor, "", ListMateriales, CorreoDestino)
EnviaNotificacionSMS(7, UsuarioActual.Empresa, CveOS, Folio, FechaCirugia, NombreCliente, TipoVenta, Medico, Procedimiento, Tecnico, Vendedor, "", ListMateriales, CorreoDestino)
'vendedor
CorreoDestino = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Correo", $"CveVendedor ={dr("CveVendedor")}")
EnviaNotificacionSMS(8, UsuarioActual.Empresa, CveOS, Folio, FechaCirugia, NombreCliente, Medico, Procedimiento, Tecnico, Vendedor, "", ListMateriales, CorreoDestino)
EnviaNotificacionSMS(8, UsuarioActual.Empresa, CveOS, Folio, FechaCirugia, NombreCliente, TipoVenta, Medico, Procedimiento, Tecnico, Vendedor, "", ListMateriales, CorreoDestino)
End If
End If

View File

@@ -3414,19 +3414,20 @@ Partial Class OS_OrdenesServicios
CargaEventoBitacora()
Dim CorreoDestino As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Correo", $"CveVendedor ={ CveVendedor }")
Dim NombreVendedor As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Vendedor", $"CveVendedor ={ CveVendedor }")
Dim TipoVenta As String = ""
If ListMaterialesUtil.Count > 0 Then 'notif a almacen de mat utilizado
EnviaNotificacionSMS(9, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
EnviaNotificacionSMS(9, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
End If
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("Almacén")
'genera notificación almacen
If AplicaDevolucion Then 'notif a almacen de devolución
EnviaNotificacionSMS(10, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
EnviaNotificacionSMS(10, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
Else
EnviaNotificacionSMS(11, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
EnviaNotificacionSMS(11, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
End If
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("Facturación")
If Respuesta IsNot Nothing AndAlso Respuesta.CveVenta > 0 Then 'notif de remisión generada
EnviaNotificacionSMS(12, UsuarioActual.Empresa, Respuesta.CveVenta, Respuesta.SerieFolio, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
EnviaNotificacionSMS(12, UsuarioActual.Empresa, Respuesta.CveVenta, Respuesta.SerieFolio, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
End If
Else
ObjV.RollBack()
@@ -3757,18 +3758,18 @@ Partial Class OS_OrdenesServicios
ObjOS.Dispose()
Dim Vendedor As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Vendedor", $"CveVendedor ={ CveVendedor }")
Dim CorreoVendedor As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Correo", $"CveVendedor ={ CveVendedor }")
Dim TipoVenta As String = ""
'vendedor
EnviaNotificacionSMS(13, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoVendedor)
EnviaNotificacionSMS(13, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoVendedor)
Dim CorreoDestino As String = ""
'almacen
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("Almacén")
EnviaNotificacionSMS(14, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoDestino)
EnviaNotificacionSMS(14, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoDestino)
If DdlTecnico.SelectedValue.ToEntero > 0 Then
'jefe de técnicos
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("JefeTécnicos")
EnviaNotificacionSMS(15, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoDestino)
EnviaNotificacionSMS(15, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), TipoVenta, DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoDestino)
End If
End If
End If

View File

@@ -604,8 +604,8 @@ Partial Class Sistemas_UsuarioDetalle
LtlFechaUltimoCambioContraseña.Text = ObjUsuario.FechaUltimoCambioContraseña.ToString
ChkCambiarContraseña.Checked = ObjUsuario.PolCambiarContraseña
ChkAsignarSubProyecto.Checked = ObjUsuario.AsignarAutomaticamenteSubProyecto
ChkAsignarOC.Checked = ObjUsuario.AsignarAutomaticamenteOC
ChkAsignarOC.Checked = ObjUsuario.AsignarAutomaticamenteOC
ChkAplicaRestriccion.Checked = ObjUsuario.AplicaRestriccionAcceso
CargaBitacora()
LblFechaCaptura.Text = ObjUsuario.Fecha.ToShortDateString
@@ -877,7 +877,7 @@ Partial Class Sistemas_UsuarioDetalle
End If
Next
Else
If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble, CodigoAcceso:=CodigoAcceso, LimiteCreditoAutorizado:=TxtLimiteAutorizado.Text.ToDecimal(), PorcentajeMaximoAutorizacion:=TxtPorcentajeMaximoAutorizacion.Text.ToDecimal(), DiasMaximoAutorizacion:=TxtDiasVencidos.Text.ToEntero(), Celular:=TxtTelefono.Text.Trim()) Then
If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble, CodigoAcceso:=CodigoAcceso, LimiteCreditoAutorizado:=TxtLimiteAutorizado.Text.ToDecimal(), PorcentajeMaximoAutorizacion:=TxtPorcentajeMaximoAutorizacion.Text.ToDecimal(), DiasMaximoAutorizacion:=TxtDiasVencidos.Text.ToEntero(), Celular:=TxtTelefono.Text.Trim(), AplicaRestriccionAcceso:=ChkAplicaRestriccion.Checked) Then
TieneError = True
End If

View File

@@ -134,6 +134,16 @@
<asp:Literal ID="LtlImporte" runat="server" Text='<%# Eval("Importe", "{0:N2}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe Nov" ItemStyle-CssClass="text-right">
<ItemTemplate>
<asp:Literal ID="LtlImporteNov" runat="server" Text='<%# Eval("ImporteNov", "{0:N2}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Importe Dic" ItemStyle-CssClass="text-right">
<ItemTemplate>
<asp:Literal ID="LtlImporteDic" runat="server" Text='<%# Eval("ImporteDic", "{0:N2}")%>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center" HeaderText="Acciones">
<ItemTemplate>

View File

@@ -127,6 +127,47 @@
<!-- END REGIONAL STATS PORTLET-->
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="container">
<asp:GridView ID="GvVentaReal" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontró ningun dato"
CssClass="table table-striped table-advance table-hover Widthall" OnRowDataBound="GvDatos_RowDataBound"
data-sort="true" Width="100%" GridLines="None">
<Columns>
<asp:BoundField DataField="Agrupador" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="PromTotalAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAno3" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAno3Presupuesto" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalEneAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalFebAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalMarAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAbrAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalMayAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalJunAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalJulAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAgoAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalSepAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalOctAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalNovAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalDicAno1" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalEneAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalFebAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalMarAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAbrAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalMayAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalJunAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalJulAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalAgoAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalSepAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalOctAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalNovAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="PromTotalDicAno2" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
</Columns>
</asp:GridView>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<asp:GridView ID="GvVentasClasificacion" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontró ningun dato"

View File

@@ -43,6 +43,15 @@ Partial Class Ventas_DashboardVentas
End Set
End Property
Private Property DtVentasReal As DataTable
Get
Return CType(ViewState("DtVentasReal"), DataTable)
End Get
Set(value As DataTable)
ViewState("DtVentasReal") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CargaCombos()
@@ -69,6 +78,7 @@ Partial Class Ventas_DashboardVentas
DtVentas = DsDatos.Tables(1)
DtVentasClasificacionxMes = DsDatos.Tables(2)
DtVentasGrafica = DsDatos.Tables(3)
DtVentasReal = DsDatos.Tables(4)
DtVentasClasificacion.Columns.Add("PorcentajeVenta", GetType(Decimal))
DtVentasClasificacion.Columns.Add("Ano2xAno1", GetType(Decimal))
@@ -79,6 +89,17 @@ Partial Class Ventas_DashboardVentas
DtVentas.Columns.Add("CumplimientaRealVSPPTO", GetType(Decimal))
DtVentas.Columns.Add("Ano3xPPTO", GetType(Decimal))
DtVentasReal.Columns.Add("Agrupador", GetType(String))
Dim sourceRow = DtVentasReal.Rows(0)
Dim desRow = DtVentasReal.NewRow()
desRow.ItemArray = CType(sourceRow.ItemArray.Clone(), Object())
DtVentasReal.Rows.Add(desRow)
Dim desRow2 = DtVentasReal.NewRow()
desRow2.ItemArray = CType(sourceRow.ItemArray.Clone(), Object())
DtVentasReal.Rows.Add(desRow2)
Dim AcumuladoAno1 As Decimal = 0
Dim AcumuladoAno2 As Decimal = 0
Dim AcumuladoAno3 As Decimal = 0
@@ -105,10 +126,24 @@ Partial Class Ventas_DashboardVentas
Row("PorcentajeVenta") = If(DtVentasClasificacion.SUMD("TotalAno2") = 0, 0, Row("TotalAno2").ToString().ToDecimal() / DtVentasClasificacion.SUMD("TotalAno2"))
Next
Dim index As Integer = 0
For Each Row As DataRow In DtVentasReal.Rows
Select Case index
Case 0
Row("Agrupador") = "Presupuesto 2024"
Case 1
Row("Agrupador") = "Promedio Venta Real"
Case 2
Row("Agrupador") = "Ventas Real"
End Select
index += 1
Next
GvVentasClasificacion.DataSource = DtVentasClasificacion
GvVentas.DataSource = DtVentas
GvVentasClasificacionxMes.DataSource = DtVentasClasificacionxMes
GvVentasAcumulado.DataSource = DtVentas
GvVentaReal.DataSource = DtVentasReal
End If
End If
ObjVentas.Dispose()
@@ -179,38 +214,110 @@ Partial Class Ventas_DashboardVentas
GvVentasAcumulado.Columns(2).HeaderText = $"{Now.Year} VS {Now.Year - 1}"
GvVentasAcumulado.Columns(3).HeaderText = $"{Now.Year} VS PPTO"
GvVentaReal.Columns(1).HeaderText = $"Prom-{Now.Year - 2}"
GvVentaReal.Columns(2).HeaderText = $"Prom-{Now.Year - 1}"
GvVentaReal.Columns(3).HeaderText = $"Prom-{Now.Year}"
GvVentaReal.Columns(4).HeaderText = $"Prom PPTO-{Now.Year}"
GvVentaReal.Columns(5).HeaderText = $"Ene-{Now.Year - 1}"
GvVentaReal.Columns(6).HeaderText = $"Feb"
GvVentaReal.Columns(7).HeaderText = $"Mar"
GvVentaReal.Columns(8).HeaderText = $"Abr"
GvVentaReal.Columns(9).HeaderText = $"May"
GvVentaReal.Columns(10).HeaderText = $"Jun"
GvVentaReal.Columns(11).HeaderText = $"Jul"
GvVentaReal.Columns(12).HeaderText = $"Ago"
GvVentaReal.Columns(13).HeaderText = $"Sep"
GvVentaReal.Columns(14).HeaderText = $"Oct"
GvVentaReal.Columns(15).HeaderText = $"Nov"
GvVentaReal.Columns(16).HeaderText = $"Dic"
GvVentaReal.Columns(17).HeaderText = $"Ene-{Now.Year}"
GvVentaReal.Columns(18).HeaderText = $"Feb"
GvVentaReal.Columns(19).HeaderText = $"Mar"
GvVentaReal.Columns(20).HeaderText = $"Abr"
GvVentaReal.Columns(21).HeaderText = $"May"
GvVentaReal.Columns(22).HeaderText = $"Jun"
GvVentaReal.Columns(23).HeaderText = $"Jul"
GvVentaReal.Columns(24).HeaderText = $"Ago"
GvVentaReal.Columns(25).HeaderText = $"Sep"
GvVentaReal.Columns(26).HeaderText = $"Oct"
GvVentaReal.Columns(27).HeaderText = $"Nov"
GvVentaReal.Columns(28).HeaderText = $"Dic"
GvVentasClasificacion.DataBind()
GvVentas.DataBind()
GvVentasClasificacionxMes.DataBind()
GvVentasAcumulado.DataBind()
GvVentaReal.DataBind()
CargaGraficaNEW(DtVentasGrafica)
'Dim Ano3 = DateTime.Now.Year.ToString()
'Dim Ano2 = (DateTime.Now.Year - 1).ToString()
'Dim Ano1 = (DateTime.Now.Year - 2).ToString()
End Sub
'Dim Dt As New DataTable()
'Dt.Columns.Add("Mes")
'Dt.Columns.Add(DateTime.Now.Year.ToString())
'Dt.Columns.Add((DateTime.Now.Year - 1).ToString())
'Dt.Columns.Add((DateTime.Now.Year - 2).ToString())
'Dt.Columns.Add("Presupuesto")
'For Each Dr As DataRow In DtVentas.Rows
' Dim Row As DataRow = Dt.NewRow()
' Row("Mes") = Dr("Mes").ToString()
' Row(DateTime.Now.Year.ToString()) = Dr("TotalAno3").ToString().FormatoNumero
' Row((DateTime.Now.Year - 1).ToString()) = Dr("TotalAno2").ToString().FormatoNumero
' Row((DateTime.Now.Year - 2).ToString()) = Dr("TotalAno1").ToString().FormatoNumero
' Row("Presupuesto") = Dr("TotalAno3Presupuesto").ToString().FormatoNumero
' Dt.Rows.Add(Row)
'Next
'Dim json As String = Newtonsoft.Json.JsonConvert.SerializeObject(Dt)
'RegistraScript($"CargaGrafica({json});console.log({json})", "22")
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvVentaReal.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.RowIndex = 0 Then
e.Row.Cells(1).Text = ""
e.Row.Cells(2).Text = ""
e.Row.Cells(3).Text = ""
e.Row.Cells(5).Text = ""
e.Row.Cells(6).Text = ""
e.Row.Cells(7).Text = ""
e.Row.Cells(8).Text = ""
e.Row.Cells(9).Text = ""
e.Row.Cells(10).Text = ""
e.Row.Cells(11).Text = ""
e.Row.Cells(12).Text = ""
e.Row.Cells(13).Text = ""
e.Row.Cells(14).Text = ""
e.Row.Cells(15).Text = ""
e.Row.Cells(16).Text = ""
ElseIf e.Row.RowIndex = 1 Then
e.Row.Cells(4).Text = ""
e.Row.Cells(5).Text = ""
e.Row.Cells(6).Text = ""
e.Row.Cells(7).Text = ""
e.Row.Cells(8).Text = ""
e.Row.Cells(9).Text = ""
e.Row.Cells(10).Text = ""
e.Row.Cells(11).Text = ""
e.Row.Cells(12).Text = ""
e.Row.Cells(13).Text = ""
e.Row.Cells(14).Text = ""
e.Row.Cells(15).Text = ""
e.Row.Cells(16).Text = ""
e.Row.Cells(17).Text = ""
e.Row.Cells(18).Text = ""
e.Row.Cells(19).Text = ""
e.Row.Cells(20).Text = ""
e.Row.Cells(21).Text = ""
e.Row.Cells(22).Text = ""
e.Row.Cells(23).Text = ""
e.Row.Cells(24).Text = ""
e.Row.Cells(25).Text = ""
e.Row.Cells(26).Text = ""
e.Row.Cells(27).Text = ""
e.Row.Cells(28).Text = ""
ElseIf e.Row.RowIndex = 2 Then
e.Row.Cells(1).Text = ""
e.Row.Cells(2).Text = ""
e.Row.Cells(3).Text = ""
e.Row.Cells(4).Text = ""
e.Row.Cells(17).Text = ""
e.Row.Cells(18).Text = ""
e.Row.Cells(19).Text = ""
e.Row.Cells(20).Text = ""
e.Row.Cells(21).Text = ""
e.Row.Cells(22).Text = ""
e.Row.Cells(23).Text = ""
e.Row.Cells(24).Text = ""
e.Row.Cells(25).Text = ""
e.Row.Cells(26).Text = ""
e.Row.Cells(27).Text = ""
e.Row.Cells(28).Text = ""
End If
End If
End Sub
Private Sub CargaGraficaNEW(ByVal D_T_Datos As DataTable)