- mejoras en visualización del modal de OS, medico/proc, tipo venta, técnico, lista material
This commit is contained in:
@@ -443,17 +443,13 @@
|
||||
<div class="col-md-6">
|
||||
|
||||
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="width: 150px">
|
||||
<asp:TextBox ID="TxtFechaOS" CssClass="form-control" runat="server" Width="150px"></asp:TextBox>
|
||||
<span class="input-group-btn " style="position: absolute; right: 41px; top: 9px;">
|
||||
<asp:TextBox ID="TxtFechaOS" CssClass="form-control" runat="server" Width="190px"></asp:TextBox>
|
||||
<span class="input-group-btn " style="position: absolute; right: 11px; top: 9px;">
|
||||
<asp:LinkButton ID="LnkTxtFechaOS" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFechaOS" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
</span>
|
||||
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtFechaOS" PopupButtonID="LnkTxtFechaOS" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
|
||||
<asp:RequiredFieldValidator ID="RfvTxtFechaOS" runat="server" ControlToValidate="TxtFechaOS" Display="None"
|
||||
ErrorMessage="El campo <b>''Fecha''</b> es requerido por la aplicación" ValidationGroup="GrpAsignar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="vceTxtFechaOS" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtFechaOS" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
|
||||
|
||||
<label for="<%= TxtFechaOS.ClientID.ToString()%>">Fecha: </label>
|
||||
</div>
|
||||
|
||||
@@ -464,24 +460,16 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="form-group col-md-6 form-md-line-input input-iconright selectmodal">
|
||||
<asp:Label runat="server" Style="width: 90%; color: #888888;" AssociatedControlID="DdlClientesWS">Cliente:</asp:Label>
|
||||
<ADS:Dropdownlost CssClassDdl="select2me" ID="DdlClientesWS" Width="100%" data-metodo="getcliente" runat="server" DataTextField="NombreComercial" DataValueField="CveCliente" CssStyle="width: 267px;"></ADS:Dropdownlost>
|
||||
|
||||
<div class="col-md-12">
|
||||
<%--DESCRIPCION--%>
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:TextBox ID="TxtCliente" runat="server" MaxLength="500" CssClass="form-control" />
|
||||
<label for="<%= TxtCliente.ClientID.ToString()%>">Hospital: </label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="form-group col-md-6 form-md-line-input input-iconright selectmodal" style="margin-top:15px;">
|
||||
<asp:TextBox ID="TxtSolicito" runat="server" CssClass="form-control" Width="100%" MaxLength="50" />
|
||||
<label for="<%= TxtSolicito.ClientID.ToString()%>" style="width:269px">Solicitó: </label>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
@@ -492,84 +480,70 @@
|
||||
<label for="<%= TxtDescripcion.ClientID.ToString()%>">Descripción: </label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<%--MEDICO--%>
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:TextBox ID="TxtMedico" runat="server" MaxLength="100" CssClass="form-control" />
|
||||
<label for="<%= TxtMedico.ClientID.ToString()%>">Médico: </label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<%--PROCEDIMIENTO--%>
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:TextBox ID="TxtProcedimiento" runat="server" MaxLength="100" CssClass="form-control" />
|
||||
<label for="<%= TxtProcedimiento.ClientID.ToString()%>">Procedimiento: </label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<%--TIPO VENTA--%>
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:TextBox ID="TxtTipoVenta" runat="server" MaxLength="100" CssClass="form-control" />
|
||||
<label for="<%= TxtTipoVenta.ClientID.ToString()%>">Tipo Venta: </label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<%--TÉCNICO--%>
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:TextBox ID="TxtTecnico" runat="server" MaxLength="100" CssClass="form-control" />
|
||||
<label for="<%= TxtTecnico.ClientID.ToString()%>">Técnico: </label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr style="border: 0; height: 1px; background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));" />
|
||||
|
||||
<div class="row" runat="server" id="DVModalAsignacion" visible ="false">
|
||||
<div class="row" >
|
||||
|
||||
<div class="col-md-6">
|
||||
<div class="form-group form-md-line-input">
|
||||
<asp:DropDownList ID="DdlTecnicoAsignar" Width="100%" runat="server" CssClass="form-control select2me" DataTextField="Nombre" Visible="true" DataValueField="CveUsuario" AutoPostBack="true" OnSelectedIndexChanged="DdlTecnicoAsignar_SelectedIndexChanged1">
|
||||
</asp:DropDownList>
|
||||
|
||||
<%--<asp:RequiredFieldValidator ID="RfvDdlTecnicoAsignar" InitialValue="-1" runat="server" ControlToValidate="DdlTecnicoAsignar" Display="None"
|
||||
ErrorMessage="El campo <b>''Técnico''</b> es requerido por la aplicación" ValidationGroup="GrpAsignar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCERfvDdlTecnicoAsignar" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlTecnicoAsignar" Width="350px"></ajax:ValidatorCalloutExtender>--%>
|
||||
|
||||
<label for="<%= DdlTecnicoAsignar.ClientID.ToString()%>">Técnico: </label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
|
||||
<div class="col-md-12">
|
||||
<asp:GridView ID="GvPS" CssClass="table table-striped table-hover Widthall mysmallbtn" GridLines="None" runat="server" AutoGenerateColumns="False" DataKeyNames="CvePS" >
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Cantidad" DataField="Cantidad" ItemStyle-Width="60px" DataFormatString="{0:#,###.##}" />
|
||||
<asp:BoundField HeaderText="Producto" DataField="PS" />
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<asp:LinkButton runat="server" ID="LnkModalAsignar" Visible="false" CssClass="btn btn-success" Text="Guardar" ValidationGroup="GrpAsignar"></asp:LinkButton>
|
||||
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||
<asp:LinkButton runat="server" ID="LnkCancelarOrden" CssClass="btn btn-danger" Text="Cancelar Orden" OnClick="LnkCancelarOrden_Click" Visible="false" >
|
||||
</asp:LinkButton>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="DVModalCancelacionOrden" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel class="modal-dialog" runat="server" ID="UpmodalCacelaOrden" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div class="modal-content">
|
||||
<div class="modal-header ">
|
||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||
<h4 class="modal-title">
|
||||
<asp:Label runat="server" ID="LblModalCancelarTitulo">Cancelar Orden de Servicio</asp:Label></h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<asp:TextBox ID="TxtModalCancelarOrdenMotivo" CssClass="form-control" runat="server" MaxLength="100" CausesValidation="true"></asp:TextBox>
|
||||
<asp:Label AssociatedControlID="TxtModalCancelarOrdenMotivo" runat="server" Text="Motivo:"></asp:Label>
|
||||
<asp:RequiredFieldValidator ID="RfvTxtModalCancelarOrdenMotivo" runat="server" ControlToValidate="TxtModalCancelarOrdenMotivo" CssClass="help-block errorimput"
|
||||
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Motivo''</b> es necesario, por favor ingréselo."
|
||||
ValidationGroup="GrpCancelaOrden"></asp:RequiredFieldValidator>
|
||||
<i></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<asp:LinkButton runat="server" ID="LnkmodalCancelarORdenServicio" CssClass="btn btn-danger" Text="Cancelar Orden" OnClick="LnkmodalCancelarORdenServicio_Click" ValidationGroup="GrpCancelaOrden" CausesValidation="true"
|
||||
data-toggle="confirmation" data-popout="true" data-original-title="confirmar" data-btn-ok-label="si"></asp:LinkButton>
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
<div style="display:none">
|
||||
<div style="display:none">
|
||||
|
||||
<asp:UpdatePanel ID="UpCommando" runat="server">
|
||||
<ContentTemplate>
|
||||
<asp:Button runat="server" ID="LnkCommando" OnClick="LnkCommando_Click"></asp:Button>
|
||||
<asp:Button runat="server" ID="LnkValidaHorarioNoOperativo" OnClick="LnkValidaHorarioNoOperativo_Click"></asp:Button>
|
||||
<asp:Button runat="server" ID="LnkCommando" OnClick="LnkCommando_Click"></asp:Button>
|
||||
<asp:HiddenField runat="server" ID="HFCveOS" Value="-1" ClientIDMode="Static" />
|
||||
<asp:HiddenField runat="server" ID="HFCveOsDetalle" Value="-1" ClientIDMode="Static" />
|
||||
<asp:HiddenField runat="server" ID="HFOCveOIEvento" Value="-1" ClientIDMode="Static" />
|
||||
@@ -925,10 +899,10 @@
|
||||
if (validando == 1) {
|
||||
var timestamp = Date.parse(Text);
|
||||
|
||||
if (isNaN(timestamp) == false) {
|
||||
<%--if (isNaN(timestamp) == false) {
|
||||
$('#<%=LnkValidaHorarioNoOperativo.ClientID%>').click();
|
||||
|
||||
}
|
||||
}--%>
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -251,8 +251,6 @@ Partial Class OS_RepServiciosMedicos
|
||||
Asignacion
|
||||
End Enum
|
||||
|
||||
|
||||
|
||||
#End Region
|
||||
|
||||
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
||||
@@ -268,15 +266,7 @@ Partial Class OS_RepServiciosMedicos
|
||||
InicializaCalendar()
|
||||
GetCargaTiposOrden()
|
||||
cargaDropsModal()
|
||||
CargaClientePublicoGeneral()
|
||||
|
||||
If UsuarioActual.TienePermisoProceso(348) Then
|
||||
DVModalAsignacion.Visible = True
|
||||
End If
|
||||
|
||||
If UsuarioActual.TienePermisoProceso(352) Then
|
||||
LnkCancelarOrden.Visible = True
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
@@ -374,10 +364,6 @@ Partial Class OS_RepServiciosMedicos
|
||||
|
||||
'ObjOS.Dispose()
|
||||
|
||||
DdlTecnicoAsignar.DataSource = DTTecnicos 'GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("Estatus = 'True'")
|
||||
DdlTecnicoAsignar.DataBind()
|
||||
DdlTecnicoAsignar.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
|
||||
|
||||
UpModalOS.Update()
|
||||
|
||||
End Sub
|
||||
@@ -592,38 +578,28 @@ Partial Class OS_RepServiciosMedicos
|
||||
'DdlClientesWS.txtText.Value = ""
|
||||
'DdlClientesWS.txtValue.Value = ""
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
||||
DdlClientesWS.setEsWebService(True)
|
||||
Else
|
||||
DdlClientesWS.setEsWebService(False)
|
||||
CargaClientes()
|
||||
End If
|
||||
'If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
||||
' DdlClientesWS.setEsWebService(True)
|
||||
'Else
|
||||
' DdlClientesWS.setEsWebService(False)
|
||||
' CargaClientes()
|
||||
'End If
|
||||
|
||||
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
|
||||
'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()
|
||||
|
||||
TxtSolicito.Text = ""
|
||||
TxtDescripcion.Text = ""
|
||||
TxtFechaOS.Text = ""
|
||||
|
||||
DdlClientesWS.txtText.Value = ""
|
||||
DdlClientesWS.txtValue.Value = ""
|
||||
DdlClientesWS.ddl.SelectedValueExist("-1")
|
||||
DdlTecnicoAsignar.SelectedValueExist("-1")
|
||||
|
||||
'TSTimeSelector.Hour = NowADS().Hour
|
||||
'TSTimeSelector.Minute = NowADS().Minute
|
||||
|
||||
CveTecnicoAsignarOrioginal = -1
|
||||
FechaInicioOriginal = NowADS()
|
||||
|
||||
@@ -642,12 +618,6 @@ Partial Class OS_RepServiciosMedicos
|
||||
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 = NowADS().ToString("dd/MM/yyyy")
|
||||
RegistraScript("$('#DVModalOS').modal('show');")
|
||||
@@ -656,60 +626,51 @@ Partial Class OS_RepServiciosMedicos
|
||||
ElseIf TipoAccion = OSModalTipoAccion.Actualizacion Or TipoAccion = OSModalTipoAccion.Asignacion Then
|
||||
|
||||
'cargaDropsModal()
|
||||
LblModalOStitulo.Text = "Actualizar Orden de Servicio"
|
||||
|
||||
|
||||
LblModalOStitulo.Text = "Orden de Servicio"
|
||||
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
|
||||
Dim ObjOS As New ClsOS()
|
||||
If ObjOS.GetOrdenesServicios(CveOsConsultar, -1, -1, -1, -1, UsuarioActual.CveEmpresa, CveOSDetalle:=DdlOrdenesSinAsignar.SelectedValue.ToEntero) Then
|
||||
Dim thospital As String = ObjOS.Cliente
|
||||
If ObjOS.CveClienteSucursal > 0 Then
|
||||
thospital = GlobalDTClientesSucursales(ObjOS.CveEmpresa, ObjOS.CveCliente).FiltroPrimeroValor("SucursalCliente", $"CveClienteSucursal = {ObjOS.CveClienteSucursal}")
|
||||
End If
|
||||
|
||||
DVFolio.Visible = True
|
||||
HLkFolio.Text = ObjOS.Folio.ToString
|
||||
HLkFolio.NavigateUrl = $"/OS/OrdenesServicios.aspx?CveOS={ObjOS.CveOS}"
|
||||
|
||||
HLKPDF.NavigateUrl = $"/Compras/PopUpVerFactura.aspx?P={Encripta(String.Format("OP=OS&CVEOS={0}", ObjOS.CveOS))}"
|
||||
|
||||
|
||||
HFCveOS.Value = ObjOS.CveOS.ToString
|
||||
HFCveOsDetalle.Value = ObjOS.CveOSDetalle.ToString
|
||||
TxtDescripcion.Text = ObjOS.Descripcion
|
||||
TxtSolicito.Text = ObjOS.PersonaSolicito
|
||||
TxtFechaOS.Text = ObjOS.FechaRecepcion.ToString("dd/MM/yyyy")
|
||||
'DdlSubProyectoOS.SelectedValueExist(ObjOS.CveSubProyecto)
|
||||
DdlClientesWS.txtText.Value = ObjOS.Cliente
|
||||
DdlClientesWS.txtValue.Value = ObjOS.CveCliente.ToString
|
||||
DdlClientesWS.ddl.SelectedValueExist(ObjOS.CveCliente.ToString)
|
||||
TxtFechaOS.Text = ObjOS.FechaCita.ToString("dd/MM/yyyy HH:mm")
|
||||
TxtProcedimiento.Text = GlobalDTProcedimientos(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Procedimiento", "CveProcedimiento =" & ObjOS.CveProcedimiento)
|
||||
TxtMedico.Text = GlobalDTMedicos(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Medico", "CveMedico =" & ObjOS.CveMedico)
|
||||
TxtCliente.Text = thospital
|
||||
TxtTipoVenta.Text = GlobalDTTipoVenta(UsuarioActual.CveEmpresa).FiltroPrimeroValor("TipoVenta", $"CveTipoVenta ={ObjOS.CveTipoVenta}")
|
||||
TxtTecnico.Text = ObjOS.UsuarioAtendio
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Actualizacion Then
|
||||
DdlTecnicoAsignar.SelectedValueExist(ObjOS.CveUsuarioAtendio)
|
||||
CveTecnicoAsignarOrioginal = ObjOS.CveUsuarioAtendio
|
||||
FechaInicioOriginal = ObjOS.FechaInicio
|
||||
|
||||
DvModalSubProyecto.Visible = True
|
||||
LblModalOStitulo.Text = "Actualizar Orden de Servicio"
|
||||
'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)
|
||||
Dim tCve As Integer = ObjOS.CveVenta 'busca la remisión
|
||||
If tCve <= 0 Then tCve = ObjOS.CveCotizacion 'sino hay remisión toma el pedido
|
||||
If tCve > 0 Then
|
||||
Dim objv As New ClsVentas
|
||||
Dim dttps As New DataTable
|
||||
If objv.GetVentaDetalle(tCve) Then
|
||||
dttps = objv.DtResultados
|
||||
End If
|
||||
objv.Dispose()
|
||||
GvPS.DataSource = dttps
|
||||
GvPS.DataBind()
|
||||
End If
|
||||
|
||||
|
||||
Dim TipoEstatus As Integer = 0
|
||||
TipoEstatus = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("TipoEstatus", String.Format("CveEstatusOrdenServicio = {0}", ObjOS.CveEstatusOrdenServicio), "CveEstatusOrdenServicio ASC").ToEntero
|
||||
|
||||
'LnkModalAsignar.Visible = If(TipoEstatus.Contiene(4, 5), False, True)
|
||||
LnkCancelarOrden.Visible = If(TipoEstatus.Contiene(4, 5), False, True)
|
||||
|
||||
If (TipoEstatus = 5) Then
|
||||
LblModalOStitulo.Text = "Orden Cancelada"
|
||||
End If
|
||||
@@ -752,345 +713,6 @@ Partial Class OS_RepServiciosMedicos
|
||||
End Sub
|
||||
|
||||
|
||||
Protected Sub LnkModalAsignar_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim TieneError As Boolean = False
|
||||
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 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
|
||||
|
||||
|
||||
Dim CveSubProyectoTecnico As Integer = If(DdlTecnicoAsignar.SelectedValue.ToEntero > 0, GlobalDTUsuarios(DdlTecnicoAsignar.SelectedValue.ToEntero, UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0 ").ToEntero, -1)
|
||||
|
||||
If CveSubProyectoTecnico = 0 And DdlTecnicoAsignar.SelectedValue.ToEntero = 100 Then
|
||||
CveSubProyectoTecnico = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1).FiltroPrimeroValor("CveSubProyecto").ToEntero
|
||||
End If
|
||||
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Asignacion AndAlso Not CveSubProyectoTecnico > 0 Then
|
||||
Alert("No se encontro el subproyecto o centro de costo del tecnico seleccionado.")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
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
|
||||
|
||||
|
||||
|
||||
End If
|
||||
|
||||
Dim ObjOS As New ClsOS
|
||||
ObjOS.IniciaTransacSQL()
|
||||
|
||||
If CveOS > 0 Then
|
||||
|
||||
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(TxtSolicito.Text, TxtFechaOS.Text, TxtDescripcion.Text, UsuarioActual.CveUsuario, CveEstatusOrden, CveOS, UsuarioActual.CveUsuario,
|
||||
-1, CveClienteSucursal:=-1, Direccion:="", Telefono:="",
|
||||
CveSubProyecto:=CveSubProyectoTecnico, Correo:="") 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) Then
|
||||
|
||||
|
||||
'If Not ObjOS.UpdateOrdenesServiciosAsignadas(CveOsDetalle, DdlTecnicoAsignar.SelectedValue.ToEntero, TxtModalFechaOS.Text.ToDate, TxtModalFechaOS.Text.ToDateTime(), UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then
|
||||
' TieneError = True
|
||||
'End If
|
||||
|
||||
|
||||
'If ObjOS.GetSubProyectosEstatusInicial(DdlTecnicoAsignar.SelectedValue.ToEntero, 3, UsuarioActual.CveEmpresa) Then
|
||||
' Dim subProyectoDelTecnico As DataTable
|
||||
' subProyectoDelTecnico = ObjOS.DtResultados.FiltraParametros($"CveSubProyecto = {CveSubProyectoTecnico}")
|
||||
|
||||
' If subProyectoDelTecnico.Rows.Count > 0 Then
|
||||
' If Not ObjOS.UpdateOrdenesServiciosAsignadas(CveOsDetalle, DdlTecnicoAsignar.SelectedValue.ToEntero, TxtModalFechaOS.Text.ToDate, TxtModalFechaOS.Text.ToDateTime(), 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
|
||||
'End If
|
||||
|
||||
|
||||
|
||||
If Not TieneError 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, TxtFechaOS.Text.ToDateTime(), TxtFechaOS.Text.ToDateTime().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:=CveSubProyectoTecnico, CveUsuarioPara:=DdlTecnicoAsignar.SelectedValue.ToEntero) Then
|
||||
TieneError = True
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
ObjOS.Commit()
|
||||
Else
|
||||
ObjOS.RollBack()
|
||||
End If
|
||||
ObjOS.Dispose()
|
||||
|
||||
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(CveOS, CorreoAsignado)
|
||||
End If
|
||||
|
||||
'If Not TieneError And TxtEmail.Text.Trim.Length > 0 AndAlso DdlTecnicoAsignar.SelectedValue.ToEntero > 0 Then
|
||||
' MandaCorreOS(CveOS, TxtEmail.Text, True)
|
||||
'End If
|
||||
|
||||
If Not TieneError Then
|
||||
|
||||
ConsultaOrdenesServiciosNoAsignadas()
|
||||
CargaOrdenesServiciosNoAsignadas()
|
||||
|
||||
If TipoAccion = OSModalTipoAccion.Asignacion Then
|
||||
Alert("Orden asignada correctamente.")
|
||||
ElseIf TipoAccion = OSModalTipoAccion.Agregar Then
|
||||
Alert("Orden Guardada correctamente.")
|
||||
ElseIf TipoAccion = OSModalTipoAccion.Actualizacion Then
|
||||
Alert("Orden actualizada correctamente.")
|
||||
End If
|
||||
|
||||
RegistraScript("$('#DVModalOS').modal('hide');Calendario();")
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub MandaCorreOS(CveOS As Integer, CorreoUsuarioAsignado As String, Optional EsCliente As Boolean = False)
|
||||
|
||||
Dim ObjOS As New ClsOS()
|
||||
Dim params As New List(Of ReportParameter)
|
||||
Dim CveFolio = ""
|
||||
|
||||
Dim TmpDTOS = New DataTable
|
||||
TmpDTOS.Columns.Add("CveOSDetalle", GetType(Integer))
|
||||
|
||||
TmpDTOS.Columns.Add("CveClasificacion", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("Clasificacion", GetType(String))
|
||||
TmpDTOS.Columns.Add("CvePS", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("CveUM", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("UM", GetType(String))
|
||||
TmpDTOS.Columns.Add("Cantidad", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("PS", GetType(String))
|
||||
TmpDTOS.Columns.Add("Especificaciones", GetType(String))
|
||||
TmpDTOS.Columns.Add("Materiales", GetType(String))
|
||||
TmpDTOS.Columns.Add("CveCuentaEquipo", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("Observaciones", GetType(String))
|
||||
TmpDTOS.Columns.Add("FechaAtencion", GetType(String))
|
||||
TmpDTOS.Columns.Add("CveUsuarioAtendio", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("UsuarioAtendio", GetType(String))
|
||||
TmpDTOS.Columns.Add("FechaTermino", GetType(String))
|
||||
TmpDTOS.Columns.Add("FechaEntrega", GetType(String))
|
||||
TmpDTOS.Columns.Add("CveUsuarioEntrego", GetType(Integer))
|
||||
TmpDTOS.Columns.Add("UsuarioEntrego", GetType(String))
|
||||
TmpDTOS.Columns.Add("SeFacturara", GetType(String))
|
||||
TmpDTOS.Columns.Add("SeSuperviso", GetType(String))
|
||||
TmpDTOS.Columns.Add("Estatus", GetType(String))
|
||||
TmpDTOS.Columns.Add("Archivo", GetType(String))
|
||||
TmpDTOS.Columns.Add("ComentarioTecnico", GetType(String))
|
||||
|
||||
|
||||
Dim TmpDTMaterialesOS = New DataTable
|
||||
TmpDTMaterialesOS.Columns.Add("CveOSDetalle", GetType(Integer))
|
||||
TmpDTMaterialesOS.Columns.Add("CveConsecutivo", GetType(Integer))
|
||||
TmpDTMaterialesOS.Columns.Add("CveConsecutivoDetalle", GetType(Integer))
|
||||
TmpDTMaterialesOS.Columns.Add("CveMaterial", GetType(Integer))
|
||||
TmpDTMaterialesOS.Columns.Add("Cantidad", GetType(Integer))
|
||||
TmpDTMaterialesOS.Columns.Add("CveClasificacion", GetType(Integer))
|
||||
TmpDTMaterialesOS.Columns.Add("CvePS", GetType(String))
|
||||
TmpDTMaterialesOS.Columns.Add("CveUM", GetType(String))
|
||||
TmpDTMaterialesOS.Columns.Add("Clasificacion", GetType(String))
|
||||
TmpDTMaterialesOS.Columns.Add("PS", GetType(String))
|
||||
TmpDTMaterialesOS.Columns.Add("UM", GetType(String))
|
||||
|
||||
Dim FolioOS As String = ""
|
||||
|
||||
Dim RutaReporte As New System.IO.FileInfo(String.Format("{0}Formatos/OrdenServicio.rdlc", UsuarioActual.Empresa.Ruta))
|
||||
|
||||
If ObjOS.GetOrdenesServicios(CveOS, -1, -1, -1, -1, UsuarioActual.CveEmpresa) Then
|
||||
If ObjOS.DtResultados.Rows.Count > 0 Then
|
||||
|
||||
Dim dtOS As DataTable = ObjOS.DtResultados
|
||||
Dim dr As DataRow = dtOS.Rows(0)
|
||||
params.Add(New ReportParameter("Cliente", dr("Cliente").ToString))
|
||||
params.Add(New ReportParameter("Solicito", dr("PersonaSolicito").ToString))
|
||||
params.Add(New ReportParameter("Descripcion", dr("Descripcion").ToString))
|
||||
params.Add(New ReportParameter("Recibio", UsuarioActual.Nombre))
|
||||
params.Add(New ReportParameter("FechaRecibido", dr("FechaRecepcion").ToString.ToDate.ToString("dd/MM/yyyy")))
|
||||
params.Add(New ReportParameter("FolioOS", dr("Folio").ToString))
|
||||
params.Add(New ReportParameter("ClienteTelefono", dr("Telefono").ToString))
|
||||
params.Add(New ReportParameter("ClienteCalle", dr("Direccion").ToString))
|
||||
params.Add(New ReportParameter("ClienteColonia", dr("Colonia").ToString))
|
||||
params.Add(New ReportParameter("ClienteCiudad", dr("Ciudad").ToString))
|
||||
params.Add(New ReportParameter("ClienteEstado", dr("Estado").ToString))
|
||||
CveFolio = dr("Folio").ToString
|
||||
|
||||
'If RutaReporte.Exists Then
|
||||
params.Add(New ReportParameter("NoDeCliente", dr("CveCliente").ToString))
|
||||
params.Add(New ReportParameter("RFC", dr("RFC").ToString))
|
||||
params.Add(New ReportParameter("Vendedor", " "))
|
||||
params.Add(New ReportParameter("Correo", dr("Correo").ToString))
|
||||
params.Add(New ReportParameter("CodigoDeServicio", dr("CveOS").ToString))
|
||||
params.Add(New ReportParameter("Sucursal", dr("SubProyecto").ToString))
|
||||
params.Add(New ReportParameter("TipoServicio", dr("TipoServicio").ToString))
|
||||
params.Add(New ReportParameter("TipoEquipo", dr("TipoEquipo").ToString))
|
||||
'params.Add(New ReportParameter("Descripcion", dr("Descripcion").ToString))
|
||||
params.Add(New ReportParameter("Copia", "Copia: Original"))
|
||||
params.Add(New ReportParameter("Equipo", dr("Equipo").ToString))
|
||||
|
||||
params.Add(New ReportParameter("DireccionOS", dr("DireccionOS").ToString))
|
||||
params.Add(New ReportParameter("Telefono", dr("Telefono").ToString))
|
||||
params.Add(New ReportParameter("CorreoOS", dr("CorreoOS").ToString))
|
||||
|
||||
params.Add(New ReportParameter("ModeloMarca", dr("ModeloMarca").ToString))
|
||||
params.Add(New ReportParameter("Año", dr("Año").ToString))
|
||||
params.Add(New ReportParameter("TelefonoContacto", dr("TelefonoContacto").ToString))
|
||||
|
||||
params.Add(New ReportParameter("FechaImpresion", NowADS().ToString("dd/MM/yyyy")))
|
||||
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario))
|
||||
params.Add(New ReportParameter("Condiciones", dr("Condiciones").ToString))
|
||||
params.Add(New ReportParameter("FechaAtencion", If(dr("FechaInicio").ToString.Length > 0, dr("FechaInicio").ToString.ToDate.ToString("dd/MM/yyyy hh:mm tt"), "")))
|
||||
params.Add(New ReportParameter("TecnicoAsignado", dr("UsuarioAtendio").ToString))
|
||||
|
||||
'End If
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
|
||||
|
||||
If Not RutaReporte.Exists Then
|
||||
|
||||
RutaReporte = New System.IO.FileInfo(String.Format("{0}Empresas\Grales\Formatos\OrdenServicio.rdlc", ModExtensiones.DirectorioBaseEmpresas))
|
||||
|
||||
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
||||
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
params.Add(New ReportParameter("FechaImpresion", NowADS().ToDateTime.ToShortDateString))
|
||||
params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If ObjOS.GetOrdenesServiciosDetalle(CveOS) Then
|
||||
TmpDTMaterialesOS = ObjOS.DtResultados
|
||||
End If
|
||||
|
||||
Dim lrds As New List(Of ReportDataSource)
|
||||
Dim rds As New ReportDataSource With {.Name = "DataSet2", .Value = TmpDTMaterialesOS}
|
||||
Dim rds2 As New ReportDataSource With {.Name = "DataSet1", .Value = TmpDTMaterialesOS}
|
||||
|
||||
lrds.Add(rds)
|
||||
lrds.Add(rds2)
|
||||
ObjOS.Dispose()
|
||||
|
||||
Dim ReporteByte As Byte() = StreamPDF(RutaReporte.FullName, lrds, params, NombreArchivo:=String.Format("OrdenServicio-{0}", CveFolio))
|
||||
|
||||
If ReporteByte IsNot Nothing Then
|
||||
Try
|
||||
ViewState("Para") = CorreoUsuarioAsignado
|
||||
ViewState("ArrayCC") = ""
|
||||
ViewState("Asunto") = "Asinación Orden de Servicio"
|
||||
ViewState("FolioOSMail") = FolioOS
|
||||
ViewState("Body") = "Asinación Orden de Servicio"
|
||||
|
||||
|
||||
ViewState("bytesOS") = ReporteByte
|
||||
Dim Hilo As New Threading.Thread(AddressOf SendmailOS)
|
||||
Hilo.Start()
|
||||
Catch ex As Exception
|
||||
GuardaLogAD($"Error al enviar correo de OS {ex.StackTrace}")
|
||||
End Try
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub SendmailOS()
|
||||
|
||||
Dim Asunto, Para, ArrayCC, Body As String
|
||||
Asunto = If(IsNothing(ViewState("Asunto")), "", ViewState("Asunto").ToString)
|
||||
Para = If(IsNothing(ViewState("Para")), "", ViewState("Para").ToString)
|
||||
ArrayCC = If(IsNothing(ViewState("ArrayCC")), "", ViewState("ArrayCC").ToString)
|
||||
|
||||
Body = If(IsNothing(ViewState("Body")), "", ViewState("Body").ToString)
|
||||
|
||||
|
||||
Dim Mail As New ClsSisMail()
|
||||
Dim LSRutasMail As New List(Of ClsSisMail.ArchivoMail)
|
||||
LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.NombreArchivo = $"OS_{ViewState("FolioOSMail") }.pdf", .ArchivoBinario = DirectCast(ViewState("bytesOS"), Byte())})
|
||||
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body, ArrayCC, LSRutasMail)
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub GetCargaTiposOrden()
|
||||
Dim ObjOS As New ClsOS
|
||||
|
||||
@@ -1113,120 +735,5 @@ Partial Class OS_RepServiciosMedicos
|
||||
|
||||
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
|
||||
|
||||
|
||||
Protected Sub DdlTecnicoAsignar_SelectedIndexChanged1(sender As Object, e As EventArgs)
|
||||
ValidaHorarioNoOperativo()
|
||||
End Sub
|
||||
|
||||
Protected Sub LnkValidaHorarioNoOperativo_Click(sender As Object, e As EventArgs)
|
||||
ValidaHorarioNoOperativo()
|
||||
End Sub
|
||||
|
||||
Private Sub ValidaHorarioNoOperativo()
|
||||
If DdlTecnicoAsignar.SelectedValue.ToEntero > 0 Then
|
||||
|
||||
Dim objOS As New ClsOS
|
||||
Dim DTHorarios As New DataTable
|
||||
|
||||
If objOS.GetOrdenesServiciosTecnicoHorarioNoOperativo(DdlTecnicoAsignar.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then
|
||||
DTHorarios = objOS.DtResultados
|
||||
End If
|
||||
objOS.Dispose()
|
||||
|
||||
If DTHorarios IsNot Nothing AndAlso DTHorarios.Rows.Count > 0 Then
|
||||
|
||||
Dim HoraInicio As TimeSpan = DTHorarios.Rows(0)("HoraInicio").ToString.ToDate.TimeOfDay
|
||||
Dim HoraFin As TimeSpan = DTHorarios.Rows(0)("HoraFin").ToString.ToDate.TimeOfDay
|
||||
Dim HoraAsignacion As TimeSpan = TxtFechaOS.Text.ToDate.TimeOfDay
|
||||
|
||||
If HoraAsignacion >= HoraInicio And HoraAsignacion <= HoraFin Then
|
||||
Alert($"La hora especificada esta dentro del horario no operativo del Técnico {HoraInicio.ToString()} a {HoraFin.ToString()} .", TipoMensaje.MsgAdvertencia)
|
||||
End If
|
||||
End If
|
||||
'ViewState("Validando") = Nothing
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Sub LnkCancelarOrden_Click(sender As Object, e As EventArgs)
|
||||
|
||||
RegistraScript($"$('#{TxtModalCancelarOrdenMotivo.ClientID}').focus();;$('#DVModalCancelacionOrden').modal('show');")
|
||||
|
||||
TxtModalCancelarOrdenMotivo.Focus()
|
||||
TxtModalCancelarOrdenMotivo.Text = ""
|
||||
UpmodalCacelaOrden.Update()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Protected Sub LnkmodalCancelarORdenServicio_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim TieneError As Boolean = True
|
||||
Dim CveOS As Integer = HFCveOS.Value.ToEntero
|
||||
Dim objOS As New ClsOS
|
||||
Dim ObjEventoBitacora As New ClsOIEventos(objOS.IniciaTransacSQL)
|
||||
If objOS.UpdateOrdenesServiciosFinaliza(CveOS, -1, -1, UsuarioActual.CveEmpresa, Opcion:=2) Then 'Opcion:=2 Es para cancelar
|
||||
If ObjEventoBitacora.AddEventoBitacora($"Motivo Cancelación: {TxtModalCancelarOrdenMotivo.Text.Trim}", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, CveOS, -1, -1, -1, -1) Then
|
||||
TieneError = False
|
||||
End If
|
||||
End If
|
||||
|
||||
If TieneError Then
|
||||
objOS.RollBack()
|
||||
Else
|
||||
objOS.Commit()
|
||||
End If
|
||||
|
||||
objOS.Dispose()
|
||||
|
||||
|
||||
If Not TieneError Then
|
||||
Alert("Orden Cancelada Correctamente", TipoMensaje.MsgInformacion, "location.reload(true);")
|
||||
RegistraScript("$('#DVModalCancelacionOrden').modal('hide');")
|
||||
RegistraScript("$('#DVModalFinalizarOrden').modal('hide');")
|
||||
End If
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user