Agenda CRM, Compras

This commit is contained in:
Oscar Irigoyen
2022-12-14 11:59:46 -07:00
parent 1c3aa45eed
commit fc90c51700
8 changed files with 780 additions and 298 deletions

View File

@@ -4,6 +4,10 @@ Imports Extensiones
Imports System.Web.Services
Imports Newtonsoft.Json
Imports System.Drawing
Imports ADSNetLibrary.SIGAPI.Models.CRM.Request
Imports ADSNetLibrary.SIGAPI.Services.CRM
Imports Telerik.Web.UI.Scheduler.Views
Imports Microsoft.EntityFrameworkCore.Storage.ValueConversion.Internal
'Imports System.Reflection
'Imports Telerik.Web.UI
@@ -177,15 +181,7 @@ Partial Class Inicio
ViewState("FechaSel") = Now.ToShortDateString
'Not UsuarioActual.CveEmpresa.Contiene(66, 74) OrElse
If (UsuarioActual.CveRol = 1062) Or (UsuarioActual.CveUsuario = 100) Then
CargaGraficas()
End If
'CargaTareas()
If UsuarioActual.CveRol = 1 Then
divInd.Visible = True
CargaSubProyectos()
End If
'Ventas no timbradas por centro de costo
If UsuarioActual.TienePermisoProceso(208) Then MuestraNoTimbradasCentroCosto()
@@ -201,11 +197,15 @@ Partial Class Inicio
If UsuarioActual.TienePermisoProceso(344) Then MuestraRSCOProximosAVencer()
'Dim EsDEV = Not UsuarioActual.Empresa.FacturaProduccion
'If Not EsDEV Then
' If UsuarioActual.CveUsuario.Contiene(93, 1425, 2, 1606, 1472, 100, 1918) Then MuestraInconsistencias() '100
If (UsuarioActual.CveRol = 1062) Or (UsuarioActual.CveUsuario = 100) Then
CargaGraficas()
End If
'End If
'CargaTareas()
If UsuarioActual.CveRol = 1 Then
divInd.Visible = True
CargaSubProyectos()
End If
'MUESTRA CALENDARIO SOLO ROL ADMINISTRADOR-AD
@@ -235,9 +235,21 @@ Partial Class Inicio
LnkInconsistencias.Visible = True
End If
IniializaDdlsOpcionesAgenda()
End If
End Sub
Private Sub CargaCalendarioGraficas()
If (UsuarioActual.CveRol = 1062) Or (UsuarioActual.CveUsuario = 100) Then
CargaGraficas()
End If
InicializaCalendar()
End Sub
Private Sub CargaEvaluacionProveedor()
If UsuarioActual.Empresa.Funcionalidad(560) = "1" Then
Dim ObjProveedor As New ClsCompProveedores
@@ -741,7 +753,46 @@ Partial Class Inicio
DirectCast(Master.FindControl("TSM"), ScriptManager).EnablePageMethods = True
CargaTiposAgenda()
CheckRecurrencia.Attributes.Add("onclick", "CheckAdd(this);")
End Sub
Private Sub CargaDdlAcercamientoCRM()
DdlAcercamientoCRM.Items.Clear()
Dim cRMService = New CRMService(System.Configuration.ConfigurationManager.ConnectionStrings("Conexion").ConnectionString)
Dim aceramientoGet = New RequestAcercamiento(UsuarioActual.CveEmpresa, CveEmpresaCRM:=DdlEmpresaCRM.SelectedValue.ToEntero)
Dim objAcercamiento = cRMService.GetAceracamientoCRM(aceramientoGet)
If objAcercamiento.IsSuccess Then
DdlAcercamientoCRM.DataSource = objAcercamiento.Result
DdlAcercamientoCRM.DataBind()
End If
DdlAcercamientoCRM.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
End Sub
Private Sub CargaDdlContactoCRM()
DdlContactoCRM.Items.Clear()
Dim cRMService = New CRMService(System.Configuration.ConfigurationManager.ConnectionStrings("Conexion").ConnectionString)
Dim contactoEmpresaCRM = New RequestContactoEmpresaCRM(DdlEmpresaCRM.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, -1)
Dim objServicio = cRMService.GetContactosEmpresasCRM(contactoEmpresaCRM)
If objServicio.IsSuccess Then
DdlContactoCRM.DataSource = objServicio.Result
DdlContactoCRM.DataBind()
End If
DdlContactoCRM.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
End Sub
Private Sub CargaTiposAgenda()
Dim ObjEventos As New ClsOIEventos
@@ -760,6 +811,7 @@ Partial Class Inicio
Dim FechaInicio = TxtFechaInicioAgenda.Text.ToDateTime()
Dim FechaFin = TxtFechaFinAgenda.Text.ToDateTime()
Dim validacionesAgendaOpcionesOK = True
RegistraScript("GetView();")
@@ -814,18 +866,107 @@ Partial Class Inicio
Alert("Ocurrió un error al actualizar el evento", TipoMensaje.MsgAdvertencia)
End If
Else
If ObjEventos.AddEventoAgenda(DdlAgedaTipo.SelectedValue.ToEntero, TxtAsuntoAgenda.Text, TxtDescripcionAgenda.Text, DdlPrioridad.SelectedValue.ToEntero, FechaInicio, FechaFin, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
RecurrenciaTipo:=RecurrenciaTipo, Frecuencia:=Frecuencia, DiasSemana:=DiasSemana, Dia:=Dias, Mes:=Mes, RecurrenciaFin:=RecurrenciaFin, CveTipoEvento:=CveTipoEvento, Importe:=Importe) Then
Alert("El Evento se guardó correctamente", TipoMensaje.MsgInformacion)
Dim CveCliente As Integer = -1
Dim CveProveedor As Integer = -1
Dim CvePersonal As Integer = -1
Dim CveEmpresaCRM As Integer = -1
Dim CveContactoCRM As Integer = -1
Dim CveAcercamientoCRM As Integer = -1
Dim Asunto As String = ""
Select Case RBLAgendaOpcion.SelectedValue
Case 1
CveCliente = DdlClientesWS.SelectedValue.ToEntero
validacionesAgendaOpcionesOK = If(CveCliente > 0, True, False)
Asunto = $"Cliente: {DdlClientesWS.SelectedText} {TxtAsuntoAgenda.Text}"
Exit Select
Case 2
CveProveedor = DdlProveedor.SelectedValue.ToEntero
validacionesAgendaOpcionesOK = If(CveProveedor > 0, True, False)
Asunto = $"Proveedor: {DdlProveedor.SelectedText} {TxtAsuntoAgenda.Text}"
Exit Select
Case 3
CvePersonal = DdlPersonal.SelectedValue.ToEntero
validacionesAgendaOpcionesOK = If(CvePersonal > 0, True, False)
Asunto = $"Personal: {DdlPersonal.SelectedItem.Text} {TxtAsuntoAgenda.Text}"
Exit Select
Case 4
CveEmpresaCRM = DdlEmpresaCRM.SelectedValue.ToEntero
CveContactoCRM = DdlContactoCRM.SelectedValue.ToEntero
CveAcercamientoCRM = DdlAcercamientoCRM.SelectedValue.ToEntero
validacionesAgendaOpcionesOK = If(CveEmpresaCRM > 0, True, False)
If CveContactoCRM > 0 Then
Asunto = $"Contacto CRM: {DdlContactoCRM.SelectedItem.Text} {TxtAsuntoAgenda.Text}"
End If
If CveAcercamientoCRM > 0 Then
Asunto = $"Acercamiento oportunidad CRM: {DdlAcercamientoCRM.SelectedItem.Text} {TxtAsuntoAgenda.Text}"
End If
If CveEmpresaCRM > 0 And CveAcercamientoCRM = 0 And CveContactoCRM = 0 Then
Asunto = $"Prospecto CRM: {DdlEmpresaCRM.SelectedItem.Text} {TxtAsuntoAgenda.Text}"
End If
Exit Select
Case Else
Asunto = TxtAsuntoAgenda.Text
End Select
If validacionesAgendaOpcionesOK Then
If ObjEventos.AddEventoAgenda(DdlAgedaTipo.SelectedValue.ToEntero, Asunto, TxtDescripcionAgenda.Text, DdlPrioridad.SelectedValue.ToEntero, FechaInicio, FechaFin, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
RecurrenciaTipo:=RecurrenciaTipo, Frecuencia:=Frecuencia, DiasSemana:=DiasSemana, Dia:=Dias, Mes:=Mes, RecurrenciaFin:=RecurrenciaFin, CveTipoEvento:=CveTipoEvento, Importe:=Importe,
CveEmpresaCRM:=CveEmpresaCRM, CveContactoCRM:=CveContactoCRM, CveAcercamientoCRM:=CveAcercamientoCRM, CveCliente:=CveCliente, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal) Then
Alert("El Evento se guardó correctamente", TipoMensaje.MsgInformacion)
Else
Alert("Ocurrió un error al Guardar el evento", TipoMensaje.MsgAdvertencia)
End If
Else
Alert("Ocurrió un error al Guardar el evento", TipoMensaje.MsgAdvertencia)
Dim MensajeAdvertencia As String = ""
Select Case RBLAgendaOpcion.SelectedValue
Case 1
MensajeAdvertencia = "Debe de seleccionar un cliente."
Exit Select
Case 2
MensajeAdvertencia = "Debe de seleccionar un proveedor."
Exit Select
Case 3
MensajeAdvertencia = "Debe de seleccionar un miembro de personal."
Exit Select
Case 4
MensajeAdvertencia = "Debe de seleccionar al menos una de las opciones de CRM."
Exit Select
Case Else
End Select
Alert(MensajeAdvertencia, TipoMensaje.MsgAdvertencia)
RegistraScript("if($get('CheckRecurrencia').checked) {$('#UpRecurrencia').show()} else {$('#UpRecurrencia').hide()};", "100")
End If
End If
ObjEventos.Dispose()
RegistraScript("Calendario();SetView();$('#ModalAgenda').modal('hide');", "1234")
LimpiaModalAgenda()
If validacionesAgendaOpcionesOK Then
RegistraScript("Calendario();SetView();$('#ModalAgenda').modal('hide');", "1234")
LimpiaModalAgenda()
End If
End Sub
Private Sub LimpiaModalAgenda()
@@ -841,6 +982,8 @@ Partial Class Inicio
RBLRecurrencia_SelectedIndexChanged(RBLRecurrencia, EventArgs.Empty)
TxtFrecuencia.Text = "1"
LblEmpresaCRM.Text = ""
UpModalAgenda.Update()
End Sub
Protected Sub BtnEliminar_Click(sender As Object, e As EventArgs)
@@ -1357,4 +1500,130 @@ Partial Class Inicio
End Sub
Private Sub IniializaDdlsOpcionesAgenda()
'CLIENTES
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
DdlClientesWS.setEsWebService(True)
Else
DdlClientesWS.setEsWebService(False)
CargaClientes()
End If
'PROVEEDORES
If (UsuarioActual.Empresa.Funcionalidad(105) = "1") Then
DdlProveedor.setEsWebService(True)
DdlProveedor.Attributes.Add("data-metodo", "getproveedores")
DdlProveedor.SelectedText = "Todos"
DdlProveedor.SelectedValue = "-1"
Else
DdlProveedor.setEsWebService(False)
DdlProveedor.ddl.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa)
DdlProveedor.ddl.DataBind()
DdlProveedor.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
End If
DdlProveedor.ddl.AutoPostBack = False
DdlClientesWS.ddl.AutoPostBack = False
'PERSONAL
DdlPersonal.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("CveEstatusPersonal=1")
DdlPersonal.DataBind()
DdlPersonal.Items.Insert(0, New ListItem("Seleccione Uno", "-1"))
CargaDdlEmpresaCRM()
RBLAgendaOpcion_SelectedIndexChanged(Nothing, Nothing)
End Sub
Private Sub CargaDdlEmpresaCRM()
Dim cRMService = New CRMService(System.Configuration.ConfigurationManager.ConnectionStrings("Conexion").ConnectionString)
Dim parametros = New RequestEmpresasCRM(UsuarioActual.CveEmpresa, -1, CveMedioCaptacion:=-1)
Dim objServicio = cRMService.GetEmpresasCRM(parametros)
If objServicio.IsSuccess Then
DdlEmpresaCRM.DataSource = objServicio.Result
DdlEmpresaCRM.DataBind()
DdlEmpresaCRM.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
If objServicio.Result.Count > 0 Then
DdlEmpresaCRM_SelectedIndexChanged(Nothing, Nothing)
End If
End If
End Sub
Protected Sub DdlEmpresaCRM_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaDdlAcercamientoCRM()
CargaDdlContactoCRM()
UpOpcionesAgenda.Update()
End Sub
Private Sub CargaClientes()
If Not UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
DdlClientesWS.ddl.Items.Clear()
DdlClientesWS.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1)
DdlClientesWS.DataBind()
DdlClientesWS.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
End If
End Sub
Protected Sub RBLAgendaOpcion_SelectedIndexChanged(sender As Object, e As EventArgs)
DdlClientesWS.ddl.SelectedValueExist(-1)
DdlClientesWS.txtText.Value = ""
DdlClientesWS.txtValue.Value = "-1"
DdlProveedor.ddl.SelectedValueExist(-1)
DdlProveedor.txtText.Value = ""
DdlProveedor.txtValue.Value = "-1"
DdlPersonal.SelectedValueExist(-1)
DdlEmpresaCRM.SelectedValueExist(-1)
DdlContactoCRM.SelectedValueExist(-1)
DdlAcercamientoCRM.SelectedValueExist(-1)
DVAgendaCliente.Visible = False
DVAgendaProveedor.Visible = False
DVAgendaPersonal.Visible = False
DVAgendaCRM1.Visible = False
DVAgendaCRM2.Visible = False
Select Case RBLAgendaOpcion.SelectedValue.ToEntero
Case 1
DVAgendaCliente.Visible = True
Exit Select
Case 2
DVAgendaProveedor.Visible = True
Exit Select
Case 3
DVAgendaPersonal.Visible = True
Exit Select
Case 4
DVAgendaCRM1.Visible = True
DVAgendaCRM2.Visible = True
Case Else
'Agenda
End Select
UpOpcionesAgenda.Update()
End Sub
End Class