Servicio a domicilio, alta y actualizacion en reporte
This commit is contained in:
@@ -7,6 +7,8 @@ Imports Microsoft.Reporting.WebForms
|
||||
Imports System.Web.Services
|
||||
Imports Telerik.Web.UI
|
||||
Imports APP_Code_CSharp
|
||||
Imports AjaxControlToolkit.AsyncFileUpload.Constants
|
||||
Imports System
|
||||
|
||||
Partial Class OS_RepServicioDomicilio
|
||||
Inherits ClsPaginas
|
||||
@@ -115,15 +117,15 @@ Partial Class OS_RepServicioDomicilio
|
||||
|
||||
|
||||
|
||||
Private Property CveOSAsignar As Integer
|
||||
Private Property CveOrdenServicioTipo As Integer
|
||||
Get
|
||||
If ViewState("CveOSAsignar") Is Nothing Then
|
||||
ViewState("CveOSAsignar") = -1
|
||||
If ViewState("CveOrdenServicioTipo") Is Nothing Then
|
||||
ViewState("CveOrdenServicioTipo") = -1
|
||||
End If
|
||||
Return ViewState("CveOSAsignar").ToString.ToEntero
|
||||
Return ViewState("CveOrdenServicioTipo").ToString.ToEntero
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveOSAsignar") = value
|
||||
ViewState("CveOrdenServicioTipo") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -176,9 +178,89 @@ Partial Class OS_RepServicioDomicilio
|
||||
End Property
|
||||
|
||||
|
||||
Private Property CveOSAsignar As Integer
|
||||
Get
|
||||
If ViewState("CveOSAsignar") Is Nothing Then
|
||||
ViewState("CveOSAsignar") = -1
|
||||
End If
|
||||
Return ViewState("CveOSAsignar").ToString.ToEntero
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveOSAsignar") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property TipoAccion As OSModalTipoAccion
|
||||
Get
|
||||
If ViewState("TipoAccion") Is Nothing Then
|
||||
ViewState("TipoAccion") = OSModalTipoAccion.Agregar
|
||||
End If
|
||||
Return DirectCast(ViewState("TipoAccion"), OSModalTipoAccion)
|
||||
End Get
|
||||
Set(value As OSModalTipoAccion)
|
||||
ViewState("TipoAccion") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
Private Property CveTecnicoAsignarOrioginal As Integer
|
||||
Get
|
||||
If ViewState("CveTecnicoAsignarOrioginal") Is Nothing Then
|
||||
ViewState("CveTecnicoAsignarOrioginal") = -1
|
||||
End If
|
||||
Return ViewState("CveTecnicoAsignarOrioginal").ToString.ToEntero
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveTecnicoAsignarOrioginal") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property FechaInicioOriginal As DateTime
|
||||
Get
|
||||
If ViewState("FechaInicioOriginal") Is Nothing Then
|
||||
ViewState("FechaInicioOriginal") = DateTime.Now
|
||||
End If
|
||||
Return ViewState("FechaInicioOriginal").ToString.ToDateTime
|
||||
End Get
|
||||
Set(value As DateTime)
|
||||
ViewState("FechaInicioOriginal") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Private Property CveClientePublicoGeneral As Integer
|
||||
Get
|
||||
If ViewState("CveClientePublicoGeneral") Is Nothing Then
|
||||
ViewState("CveClientePublicoGeneral") = -1
|
||||
End If
|
||||
Return ViewState("CveClientePublicoGeneral").ToString.ToEntero
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("CveClientePublicoGeneral") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property NombreClientePublicoGeneral As String
|
||||
Get
|
||||
If ViewState("NombreClientePublicoGeneral") Is Nothing Then
|
||||
ViewState("NombreClientePublicoGeneral") = ""
|
||||
End If
|
||||
Return ViewState("NombreClientePublicoGeneral").ToString
|
||||
End Get
|
||||
Set(value As String)
|
||||
ViewState("NombreClientePublicoGeneral") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
Enum OSModalTipoAccion
|
||||
Agregar
|
||||
Actualizacion
|
||||
Asignacion
|
||||
End Enum
|
||||
|
||||
|
||||
|
||||
#End Region
|
||||
@@ -188,31 +270,21 @@ Partial Class OS_RepServicioDomicilio
|
||||
|
||||
CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyectoEtiqueta)
|
||||
LblSubProyectoFiltro.Text = LblSubProyectoEtiqueta.Text
|
||||
LblModalSubProyectoLabel.Text = LblSubProyectoEtiqueta.Text
|
||||
' LblModalSubProyectoLabel.Text = LblSubProyectoEtiqueta.Text
|
||||
CargaTecnicos()
|
||||
ConsultaOrdenesServiciosNoAsignadas()
|
||||
CargaOrdenesServiciosNoAsignadas()
|
||||
CargaTecnicosAsignar()
|
||||
|
||||
InicializaCalendar()
|
||||
GetCargaTiposOrden()
|
||||
cargaDropsModal()
|
||||
CargaClientePublicoGeneral()
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#Region "CARGAS"
|
||||
|
||||
Private Sub SetValues()
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub CargaDatos()
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " FULL CALENDAR "
|
||||
@@ -274,7 +346,7 @@ Partial Class OS_RepServicioDomicilio
|
||||
DdlTecnicoAsignar.DataBind()
|
||||
DdlTecnicoAsignar.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
|
||||
|
||||
UpModalOSAsginar.Update()
|
||||
UpModalOS.Update()
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -451,6 +523,8 @@ Partial Class OS_RepServicioDomicilio
|
||||
|
||||
DdlOrdenesSinAsignar.DataSource = DT_OSNoAsignadas
|
||||
DdlOrdenesSinAsignar.DataBind()
|
||||
DdlOrdenesSinAsignar.Items.Insert(0, New ListItem("Seleccione Uno", "-1"))
|
||||
|
||||
UpOrdenesSinAsignar.Update()
|
||||
|
||||
End Sub
|
||||
@@ -493,115 +567,396 @@ Partial Class OS_RepServicioDomicilio
|
||||
|
||||
|
||||
|
||||
Protected Sub LnkOrdenesSinAsignarMostarModal_Click(sender As Object, e As EventArgs)
|
||||
Protected Sub LnlAgregarServicioDomiciolio_Click(sender As Object, e As EventArgs)
|
||||
|
||||
CveOSDetalleAsignar = -1
|
||||
CveOSAsignar = -1
|
||||
CveSubProyectoAsignar = -1
|
||||
Dim DTable As DataTable = DT_OSNoAsignadas.FiltraParametros($"CveOSDetalle={DdlOrdenesSinAsignar.SelectedValue}")
|
||||
HFCveOS.Value = "-1"
|
||||
HFCveOsDetalle.Value = "-1"
|
||||
HFOCveOIEvento.Value = "-1"
|
||||
HFCveUsuarioAtendio.Value = "-1"
|
||||
DdlOrdenesSinAsignar.SelectedValueExist(-1)
|
||||
|
||||
LipiaModalOS()
|
||||
TipoAccion = OSModalTipoAccion.Agregar
|
||||
MostarModal()
|
||||
|
||||
If DTable.Rows.Count = 1 Then
|
||||
End Sub
|
||||
|
||||
CveOSDetalleAsignar = DTable.Rows(0)("CveOSDetalle").ToString.ToEntero
|
||||
CveSubProyectoAsignar = DTable.Rows(0)("CveSubProyecto").ToString.ToEntero
|
||||
CveOSAsignar = DTable.Rows(0)("CveOS").ToString.ToEntero
|
||||
FolioAsignar = DTable.Rows(0)("Folio").ToString
|
||||
Private Sub cargaDropsModal()
|
||||
|
||||
LblModalConcepto.Text = DTable.Rows(0)("Concepto").ToString
|
||||
LblModalCliente.Text = DTable.Rows(0)("Nombre").ToString
|
||||
LblModalSubProyecto.Text = DTable.Rows(0)("SubProyecto").ToString
|
||||
'DdlClientesWS.ddl.Items.Clear()
|
||||
'DdlClientesWS.txtText.Value = ""
|
||||
'DdlClientesWS.txtValue.Value = ""
|
||||
|
||||
|
||||
UpModalOSAsginar.Update()
|
||||
RegistraScript("$('#DVModalOSAsginar').modal('show');")
|
||||
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
||||
DdlClientesWS.setEsWebService(True)
|
||||
Else
|
||||
Alert("Error al cargar datos.")
|
||||
DdlClientesWS.setEsWebService(False)
|
||||
CargaClientes()
|
||||
End If
|
||||
|
||||
'DdlSubProyectoOS.Items.Clear()
|
||||
CargarCentrosDeCosto(Nothing, DdlSubProyectoOS, Nothing, LblSubProyectoOS)
|
||||
|
||||
'DdlModeloAuto.Items.Clear()
|
||||
Dim ObjGral As New ClsGenerales
|
||||
If ObjGral.ModelosAutosGet(1, UsuarioActual.CveEmpresa) Then
|
||||
DdlModeloAuto.DataSource = ObjGral.DtResultados
|
||||
End If
|
||||
ObjGral.Dispose()
|
||||
DdlModeloAuto.DataBind()
|
||||
DdlModeloAuto.Items.Insert(0, New ListItem("Sin Asignar", "-1"))
|
||||
|
||||
|
||||
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
|
||||
|
||||
Private Sub LipiaModalOS()
|
||||
|
||||
TxtDescripcion.Text = ""
|
||||
TxtFechaOS.Text = ""
|
||||
DdlSubProyectoOS.SelectedValueExist("-1")
|
||||
TxtDireccion.Text = ""
|
||||
TxtEmail.Text = ""
|
||||
TxtTelefono.Text = ""
|
||||
|
||||
DdlClientesWS.txtText.Value = ""
|
||||
DdlClientesWS.txtValue.Value = ""
|
||||
DdlClientesWS.ddl.SelectedValueExist("-1")
|
||||
|
||||
DdlTecnicoAsignar.SelectedValueExist("-1")
|
||||
|
||||
DdlModeloAuto.SelectedValueExist("-1")
|
||||
TxtAnio.Text = ""
|
||||
|
||||
TxtModalFechaOS.Text = ""
|
||||
TSTimeSelector.Hour = Now.Hour
|
||||
TSTimeSelector.Minute = Now.Minute
|
||||
|
||||
CveTecnicoAsignarOrioginal = -1
|
||||
FechaInicioOriginal = DateTime.Now
|
||||
|
||||
DVFolio.Visible = False
|
||||
|
||||
End Sub
|
||||
|
||||
Protected Sub LnkOrdenesSinAsignarMostarModal_Click(sender As Object, e As EventArgs)
|
||||
TipoAccion = OSModalTipoAccion.Asignacion
|
||||
HFCveOS.Value = "-1"
|
||||
MostarModal()
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub MostarModal()
|
||||
|
||||
LipiaModalOS()
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Agregar Then
|
||||
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
||||
DdlClientesWS.txtValue.Value = CveClientePublicoGeneral.ToString
|
||||
DdlClientesWS.txtText.Value = NombreClientePublicoGeneral
|
||||
Else
|
||||
DdlClientesWS.ddl.SelectedValueExist(CveClientePublicoGeneral)
|
||||
End If
|
||||
|
||||
TxtFechaOS.Text = Now.ToString("dd/MM/yyyy")
|
||||
RegistraScript("$('#DVModalOS').modal('show');")
|
||||
LblModalOStitulo.Text = "Agregar Orden de Servicio"
|
||||
|
||||
ElseIf TipoAccion = OSModalTipoAccion.Actualizacion Or TipoAccion = OSModalTipoAccion.Asignacion Then
|
||||
|
||||
|
||||
|
||||
'cargaDropsModal()
|
||||
LblModalOStitulo.Text = "Actualizar Orden de Servicio"
|
||||
|
||||
Dim ObjOS As New ClsOS()
|
||||
Dim IDOSDetalle As Integer = 1
|
||||
Dim SeFacturara = ""
|
||||
|
||||
|
||||
Dim CveOsConsultar As Integer = HFCveOS.Value.ToEntero
|
||||
|
||||
If Not CveOsConsultar > 0 AndAlso Not DdlOrdenesSinAsignar.SelectedValue.ToEntero > 0 Then
|
||||
Alert("clave de orden de servicio no encontrada.", TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If CveOsConsultar > 0 Then
|
||||
DdlOrdenesSinAsignar.SelectedValueExist(-1)
|
||||
End If
|
||||
|
||||
If ObjOS.GetOrdenesServicios(CveOsConsultar, -1, -1, -1, -1, UsuarioActual.CveEmpresa, CveOSDetalle:=DdlOrdenesSinAsignar.SelectedValue.ToEntero) Then
|
||||
|
||||
DVFolio.Visible = True
|
||||
HLkFolio.Text = ObjOS.Folio.ToString
|
||||
HLkFolio.NavigateUrl = $"/OS/OrdenesServicios.aspx?CveOS={ObjOS.CveOS}"
|
||||
|
||||
HFCveOS.Value = ObjOS.CveOS.ToString
|
||||
HFCveOsDetalle.Value = ObjOS.CveOSDetalle.ToString
|
||||
TxtDescripcion.Text = ObjOS.Descripcion
|
||||
TxtFechaOS.Text = ObjOS.FechaRecepcion.ToString("dd/MM/yyyy")
|
||||
DdlSubProyectoOS.SelectedValueExist(ObjOS.CveSubProyecto)
|
||||
TxtDireccion.Text = ObjOS.DtResultados.Rows(0)("DireccionOS").ToString
|
||||
TxtEmail.Text = ObjOS.CorreoOS
|
||||
TxtTelefono.Text = ObjOS.Telefono
|
||||
|
||||
DdlClientesWS.txtText.Value = ObjOS.Cliente
|
||||
DdlClientesWS.txtValue.Value = ObjOS.CveCliente.ToString
|
||||
DdlClientesWS.ddl.SelectedValueExist(ObjOS.CveCliente.ToString)
|
||||
|
||||
DdlModeloAuto.SelectedValueExist(ObjOS.CveModeloAuto)
|
||||
TxtAnio.Text = ObjOS.Año
|
||||
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Actualizacion Then
|
||||
DdlTecnicoAsignar.SelectedValueExist(ObjOS.CveUsuarioAtendio)
|
||||
CveTecnicoAsignarOrioginal = ObjOS.CveUsuarioAtendio
|
||||
FechaInicioOriginal = ObjOS.FechaInicio
|
||||
TxtModalFechaOS.Text = ObjOS.FechaInicio.ToString.ToDate.ToString("dd/MM/yyyy")
|
||||
TSTimeSelector.Hour = If(ObjOS.FechaInicio.Hour > 12, ObjOS.FechaInicio.Hour - 12, ObjOS.FechaInicio.Hour)
|
||||
TSTimeSelector.Minute = ObjOS.FechaInicio.Minute
|
||||
TSTimeSelector.AmPm = If(ObjOS.FechaInicio.Hour > 12, MKB.TimePicker.TimeSelector.AmPmSpec.PM, MKB.TimePicker.TimeSelector.AmPmSpec.AM)
|
||||
End If
|
||||
|
||||
RegistraScript("$('#DVModalOS').modal('show');")
|
||||
|
||||
End If
|
||||
|
||||
ObjOS.Dispose()
|
||||
|
||||
LblModalOStitulo.Text = "Actualizar Orden de Servicio"
|
||||
|
||||
ElseIf False Then ' Anterior
|
||||
|
||||
CveOSDetalleAsignar = -1
|
||||
CveOSAsignar = -1
|
||||
CveSubProyectoAsignar = -1
|
||||
Dim DTable As DataTable = DT_OSNoAsignadas.FiltraParametros($"CveOSDetalle={DdlOrdenesSinAsignar.SelectedValue}")
|
||||
|
||||
If DTable.Rows.Count = 1 Then
|
||||
|
||||
CveOSDetalleAsignar = DTable.Rows(0)("CveOSDetalle").ToString.ToEntero
|
||||
CveSubProyectoAsignar = DTable.Rows(0)("CveSubProyecto").ToString.ToEntero
|
||||
CveOSAsignar = DTable.Rows(0)("CveOS").ToString.ToEntero
|
||||
FolioAsignar = DTable.Rows(0)("Folio").ToString
|
||||
|
||||
'LblModalConcepto.Text = DTable.Rows(0)("Concepto").ToString
|
||||
'LblModalCliente.Text = DTable.Rows(0)("Nombre").ToString
|
||||
'LblModalSubProyecto.Text = DTable.Rows(0)("SubProyecto").ToString
|
||||
|
||||
LblModalOStitulo.Text = "Asignar Orden de Servicio"
|
||||
|
||||
RegistraScript("$('#DVModalOS').modal('show');")
|
||||
|
||||
Else
|
||||
Alert("Error al cargar datos.")
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
UpModalOS.Update()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub LnkModalAsignar_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim TieneError As Boolean = False
|
||||
Dim CveEstatusOS = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 2", "CveEstatusOrdenServicio ASC").ToEntero
|
||||
Dim CveEstatusSolicidato = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 1", "CveEstatusOrdenServicio ASC").ToEntero
|
||||
Dim CveEstatusAsiganada = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 2", "CveEstatusOrdenServicio ASC").ToEntero
|
||||
|
||||
Dim CorreoAsignado As String = ""
|
||||
Dim CveCliente As Integer = If(Not DdlClientesWS.SelectedValue.ToEntero > 0, DdlClientesWS.txtValue.Value.ToString.ToEntero, DdlClientesWS.SelectedValue.ToEntero)
|
||||
Dim CvePSDetalle As Integer = UsuarioActual.Empresa.Funcionalidad(708).ToEntero
|
||||
Dim EsNueva As Boolean = False
|
||||
|
||||
|
||||
Dim CveOS As Integer = HFCveOS.Value.ToEntero
|
||||
Dim CveOsDetalle As Integer = HFCveOsDetalle.Value.ToEntero
|
||||
|
||||
If Not CvePSDetalle > 0 Then
|
||||
Alert("No esta asiganado el producto del detalle a la funcionalidad.")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If Not CveCliente > 0 Then
|
||||
Alert("Debe seleccionar una cliente.")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Asignacion Then
|
||||
|
||||
If Not DdlTecnicoAsignar.SelectedValue.ToEntero > 0 Then
|
||||
Alert("El tecnico es requerido", TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
If TxtModalFechaOS.Text.Length = 0 Then
|
||||
Alert("La Fecha de asiganción es requerida", TipoMensaje.MsgAdvertencia)
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Dim ObjOS As New ClsOS
|
||||
ObjOS.IniciaTransacSQL()
|
||||
|
||||
|
||||
|
||||
|
||||
If Not CveOS > 0 Then
|
||||
|
||||
EsNueva = True
|
||||
|
||||
Dim CveEstatosOrdenNueva = CveEstatusSolicidato
|
||||
If DdlTecnicoAsignar.SelectedValue.ToEntero > 0 Then
|
||||
CveEstatosOrdenNueva = CveEstatusAsiganada
|
||||
End If
|
||||
|
||||
If ObjOS.AddOrdenesServicios(CveCliente, DdlSubProyectoOS.SelectedValue.ToEntero, "", TxtFechaOS.Text.ToDateTime, TxtDescripcion.Text, UsuarioActual.CveUsuario, CveEstatosOrdenNueva,
|
||||
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, CveOrdenServicioTipo, CveClienteSucursal:=-1,
|
||||
Direccion:=TxtDireccion.Text, Telefono:=TxtTelefono.Text, CveModeloAuto:=DdlModeloAuto.SelectedValue.ToEntero, Año:=TxtAnio.Text, Correo:=TxtEmail.Text) Then
|
||||
CveOS = ObjOS.CveOS
|
||||
|
||||
|
||||
CveOsDetalle = ObjOS.AddOrdenesServiciosDetalle(CveOS, CvePSDetalle, 1, -1, -1, "", False, True, False, -1, "-1", "-1", "-1", "", UsuarioActual.CveUsuario, "")
|
||||
|
||||
If Not CveOsDetalle > 0 Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
Else
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
Else
|
||||
|
||||
Dim CveEstatusOrden = CveEstatusSolicidato
|
||||
If DdlTecnicoAsignar.SelectedValue.ToEntero > 0 Then
|
||||
CveEstatusOrden = CveEstatusAsiganada
|
||||
End If
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Asignacion Then
|
||||
CveEstatusOrden = CveEstatusAsiganada
|
||||
End If
|
||||
|
||||
|
||||
CveOS = HFCveOS.Value.ToEntero
|
||||
CveOsDetalle = HFCveOsDetalle.Value.ToEntero
|
||||
|
||||
If CveOS > 0 Then
|
||||
|
||||
If Not ObjOS.UpdateOrdenesServicios("", TxtFechaOS.Text, TxtDescripcion.Text, UsuarioActual.CveUsuario, CveEstatusOrden, CveOS, UsuarioActual.CveUsuario,
|
||||
-1, CveClienteSucursal:=-1, Direccion:=TxtDireccion.Text, Telefono:=TxtTelefono.Text,
|
||||
CveModeloAuto:=DdlModeloAuto.SelectedValue.ToEntero, Año:=TxtAnio.Text, CveSubProyecto:=DdlSubProyectoOS.SelectedValue.ToEntero, Correo:=TxtEmail.Text) Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
Else
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Dim picker As MKB.TimePicker.TimeSelector = TSTimeSelector
|
||||
Dim time As DateTime
|
||||
time = DateTime.Parse(String.Format("{0} {1}:{2} {3}", TxtModalFechaOS.Text, picker.Hour, picker.Minute, picker.AmPm))
|
||||
|
||||
If Not TieneError AndAlso CveOS > 0 AndAlso CveOsDetalle > 0 AndAlso DdlTecnicoAsignar.SelectedValue.ToEntero > 0 AndAlso
|
||||
(HFCveUsuarioAtendio.Value.ToEntero <> DdlTecnicoAsignar.SelectedValue.ToEntero Or
|
||||
TxtModalFechaOS.Text.ToDate <> FechaInicioOriginal.ToString.ToDate Or
|
||||
time <> FechaInicioOriginal) Then
|
||||
|
||||
Dim ObjOS As New ClsOS
|
||||
ObjOS.IniciaTransacSQL()
|
||||
|
||||
If ObjOS.GetSubProyectosEstatusInicial(DdlTecnicoAsignar.SelectedValue.ToEntero, 3, UsuarioActual.CveEmpresa) Then
|
||||
Dim subProyectoDelTecnico As DataTable
|
||||
subProyectoDelTecnico = ObjOS.DtResultados.FiltraParametros($"CveSubProyecto = {CveSubProyectoAsignar}")
|
||||
If subProyectoDelTecnico.Rows.Count > 0 Then
|
||||
If Not ObjOS.UpdateOrdenesServiciosAsignadas(CveOSDetalleAsignar, DdlTecnicoAsignar.SelectedValue.ToEntero, TxtModalFechaOS.Text.ToDate, time, UsuarioActual.CveEmpresa) Then
|
||||
|
||||
If ObjOS.GetSubProyectosEstatusInicial(DdlTecnicoAsignar.SelectedValue.ToEntero, 3, UsuarioActual.CveEmpresa) Then
|
||||
Dim subProyectoDelTecnico As DataTable
|
||||
subProyectoDelTecnico = ObjOS.DtResultados.FiltraParametros($"CveSubProyecto = {DdlSubProyectoOS.SelectedValue.ToEntero}")
|
||||
|
||||
If subProyectoDelTecnico.Rows.Count > 0 Then
|
||||
If Not ObjOS.UpdateOrdenesServiciosAsignadas(CveOsDetalle, DdlTecnicoAsignar.SelectedValue.ToEntero, TxtModalFechaOS.Text.ToDate, time, UsuarioActual.CveEmpresa) Then
|
||||
TieneError = True
|
||||
End If
|
||||
Else
|
||||
Alert("El técnico y la Orden de Servicio deben pertenecer al mismo subProyecto", TipoMensaje.MsgAdvertencia)
|
||||
TieneError = True
|
||||
End If
|
||||
Else
|
||||
Alert("El técnico y la Orden de Servicio deben pertenecer al mismo subProyecto", TipoMensaje.MsgAdvertencia)
|
||||
TieneError = True
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
|
||||
If Not ObjOS.UpdateOrdenesServiciosEstatus(CveEstatusOS, UsuarioActual.CveUsuario, CveOSAsignar) Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
|
||||
If Not TieneError Then
|
||||
|
||||
Dim RecurrenciaTipo = 0, Frecuencia = -1, DiasSemana = "-1", Dias = -1, Mes = -1, RecurrenciaFin = "-1"
|
||||
Dim OIDescripcion As String = $"{DdlTecnicoAsignar.SelectedItem.Text} <b><a href='/OS/OrdenesServicios.aspx?CveOS={CveOSAsignar}' target='_blank' class='Texto' >Orden de servicio {FolioAsignar} </a></b>"
|
||||
|
||||
Dim ObjEventos As New ClsOIEventos(ObjOS.IniciaTransacSQL())
|
||||
If Not ObjEventos.AddEventoAgenda(2, DdlTecnicoAsignar.SelectedItem.Text, OIDescripcion, 2, time, time.AddHours(1), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
|
||||
RecurrenciaTipo:=RecurrenciaTipo, Frecuencia:=Frecuencia, DiasSemana:=DiasSemana, Dia:=Dias, Mes:=Mes, RecurrenciaFin:=RecurrenciaFin, CveTipoEvento:=2,
|
||||
Importe:=0, CveOS:=CveOSAsignar, CveSubProyecto:=CveSubProyectoAsignar) Then
|
||||
If Not ObjOS.UpdateOrdenesServiciosEstatus(CveEstatusAsiganada, UsuarioActual.CveUsuario, CveOS) Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
|
||||
|
||||
Dim ObjEventos As New ClsOIEventos(ObjOS.IniciaTransacSQL())
|
||||
|
||||
If HFOCveOIEvento.Value.ToEntero > 0 Then
|
||||
|
||||
If Not ObjEventos.RemoveAgendaBitacora(HFOCveOIEvento.Value.ToEntero, UsuarioActual.CveEmpresa) Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Dim RecurrenciaTipo = 0, Frecuencia = -1, DiasSemana = "-1", Dias = -1, Mes = -1, RecurrenciaFin = "-1"
|
||||
Dim OIDescripcion As String = $"{DdlTecnicoAsignar.SelectedItem.Text} <b><a href='/OS/OrdenesServicios.aspx?CveOS={CveOS}' target='_blank' class='Texto' >Orden de servicio {FolioAsignar} </a></b>"
|
||||
If Not ObjEventos.AddEventoAgenda(2, DdlTecnicoAsignar.SelectedItem.Text, OIDescripcion, 2, time, time.AddHours(1), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
|
||||
RecurrenciaTipo:=RecurrenciaTipo, Frecuencia:=Frecuencia, DiasSemana:=DiasSemana, Dia:=Dias, Mes:=Mes, RecurrenciaFin:=RecurrenciaFin, CveTipoEvento:=2,
|
||||
Importe:=0, CveOS:=CveOS, CveSubProyecto:=DdlSubProyectoOS.SelectedValue.ToEntero) Then
|
||||
TieneError = True
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
CorreoAsignado = GlobalDTUsuarios(DdlTecnicoAsignar.SelectedValue.ToEntero).Rows(0)("Correo").ToString
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
If Not TieneError Then
|
||||
ObjOS.Commit()
|
||||
Else
|
||||
ObjOS.RollBack()
|
||||
End If
|
||||
|
||||
|
||||
|
||||
ObjOS.Dispose()
|
||||
|
||||
If Not TieneError And CorreoAsignado.Trim.Length > 0 Then
|
||||
Dim CorreoAsignado As String = GlobalDTUsuarios(DdlTecnicoAsignar.SelectedValue.ToEntero).Rows(0)("Correo").ToString
|
||||
If Not TieneError And CorreoAsignado.Trim.Length > 0 AndAlso DdlTecnicoAsignar.SelectedValue.ToEntero > 0 Then
|
||||
CorreoAsignado = GlobalDTUsuarios(DdlTecnicoAsignar.SelectedValue.ToEntero).Rows(0)("Correo").ToString
|
||||
MandaCorreOS(CveOSAsignar, CorreoAsignado)
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
|
||||
ConsultaOrdenesServiciosNoAsignadas()
|
||||
CargaOrdenesServiciosNoAsignadas()
|
||||
|
||||
Alert("Orden asignada correctamente.")
|
||||
RegistraScript("$('#DVModalOSAsginar').modal('hide');Calendario();")
|
||||
RegistraScript("$('#DVModalOS').modal('hide');Calendario();")
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub MandaCorreOS(CveOS As Integer, CorreoUsuarioAsignado As String)
|
||||
|
||||
|
||||
@@ -762,4 +1117,76 @@ Partial Class OS_RepServicioDomicilio
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
Private Sub GetCargaTiposOrden()
|
||||
Dim ObjOS As New ClsOS
|
||||
|
||||
If ObjOS.GetTipoOrdenesServicios(UsuarioActual.CveEmpresa) AndAlso ObjOS.DtResultados IsNot Nothing AndAlso ObjOS.DtResultados.Rows.Count > 0 Then
|
||||
CveOrdenServicioTipo = ObjOS.DtResultados.FiltroPrimeroValor("CveOrdenServicioTipo").ToEntero
|
||||
Else
|
||||
CveOrdenServicioTipo = -1
|
||||
End If
|
||||
ObjOS.Dispose()
|
||||
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub LnkCommando_Click(sender As Object, e As EventArgs)
|
||||
|
||||
' Alert($"HFCveOS:{HFCveOS.Value}, HFCveOsDetalle:{HFCveOsDetalle.Value }, HFCveOIEvento:{HFOCveOIEvento.Value}")
|
||||
TipoAccion = OSModalTipoAccion.Actualizacion
|
||||
'RegistraScript("$('#DVModalOS').modal('show');")
|
||||
MostarModal()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub DdlTecnicoAsignar_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Asignacion Then
|
||||
|
||||
|
||||
'DdlTecnicoAsignar.Visible = True
|
||||
'RfvDdlTecnicoAsignar.Visible = True
|
||||
'VCERfvDdlTecnicoAsignar.Visible = True
|
||||
|
||||
'RfvTxtModalFechaOS.Visible = True
|
||||
'VceRfvTxtModalFechaOS.Enabled = True
|
||||
ElseIf TipoAccion = OSModalTipoAccion.Agregar Or TipoAccion = OSModalTipoAccion.Actualizacion Then
|
||||
|
||||
'DdlTecnicoAsignar.Visible = False
|
||||
'RfvDdlTecnicoAsignar.Visible = False
|
||||
' VCERfvDdlTecnicoAsignar.Visible = False
|
||||
|
||||
'RfvTxtModalFechaOS.Visible = False
|
||||
'VceRfvTxtModalFechaOS.Enabled = False
|
||||
|
||||
End If
|
||||
|
||||
UpModalOS.Update()
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub CargaClientePublicoGeneral()
|
||||
|
||||
|
||||
Dim ObjCliente As New ClsClientes()
|
||||
|
||||
If ObjCliente.GetClientes(-1, "PUBLICO EN GENERAL", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa, -1) Then
|
||||
|
||||
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
||||
Me.CveClientePublicoGeneral = ObjCliente.CveCliente
|
||||
Me.NombreClientePublicoGeneral = ObjCliente.Nombre
|
||||
End If
|
||||
End If
|
||||
ObjCliente.Dispose()
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user