Imports System.Data Imports System.Linq Imports Extensiones Partial Class OI_CircularDetalle Inherits ClsPaginas Private Property DtUsuarios As DataTable Get Return If(IsNothing(ViewState("DtUsuarios")), Nothing, CType(ViewState("DtUsuarios"), DataTable)) End Get Set(value As DataTable) ViewState("DtUsuarios") = value End Set End Property Private Property CveCircular As Integer Get Return ViewState("CveCircular").ToString.ToEntero End Get Set(value As Integer) ViewState("CveCircular") = value End Set End Property Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then CargarCve() ConfigurarBotones() CargaDatos() End If End Sub Private Sub CargarCve() Dim PreCveCircular As String = Request.Params("CveCircular").ToString If IsNumeric(PreCveCircular) Then CveCircular = PreCveCircular.ToEntero End If End Sub Private Sub ConfigurarBotones() If CveCircular > 0 Then BtnGuardar.Text = "Actualizar" BtnEliminar.Visible = True Else BtnGuardar.Text = "Guardar" End If End Sub Private Sub CargaDatos() If CveCircular > 0 Then Dim ObjOI As New ClsOIEventos If ObjOI.GetCircular(UsuarioActual.CveEmpresa, CveCircular) Then Dim Circular As DataRow = ObjOI.DtResultados(0) TxtAsunto.Text = Circular.Item("Asunto") TxtCorreo.Value = Circular.Item("CorreosInternos") TxtCorreoAdicional.Value = Circular.Item("CorreosExternos") TxtCircular.Value = Circular.Item("Circular") UpCliente.Update() End If ObjOI.Dispose() End If DdlRolesFiltro.DataSource = GlobalDTRoles(UsuarioActual.CveEmpresa) DdlRolesFiltro.DataBind() DdlRolesFiltro.Items.Insert(0, New ListItem("Todos", "-1")) DdlSucursales.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa) DdlSucursales.DataBind() DdlSucursales.Items.Insert(0, New ListItem("Todos", "-1")) End Sub Private Sub BtnGuardar_Click() Handles BtnGuardar.Click Dim ObjOI As New ClsOIEventos If CveCircular > 0 Then If ObjOI.UpdateCircular(CveCircular, TxtAsunto.Text, TxtCircular.Value, TxtCorreo.Value, TxtCorreoAdicional.Value, UsuarioActual.CveUsuario) Then Alert("Actualizado correctamente") End If Else Dim CorreoExtra As String = If(TxtCorreoAdicional.Value = "", "-1", TxtCorreoAdicional.Value) If ObjOI.AddCircular(TxtAsunto.Text, TxtCircular.Value, TxtCorreo.Value, Today.ToString, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CorreoExtra) Then Alert("Ingresado correctamente") End If End If End Sub Private Sub BtnEliminar_Click() Handles BtnEliminar.Click Dim ObjOI As New ClsOIEventos If ObjOI.DeleteCircular(CveCircular) Then Response.Redirect("~/OI/CircularDetalle.aspx?CveCircular=-1") End If ObjOI.Dispose() End Sub Protected Sub LbBuscar_Click(sender As Object, e As EventArgs) Handles LbBuscar.Click LimpiarModal() RegistraScript("$('#ModalDescuento').modal()") End Sub Private Sub LimpiarModal() DdlRolesFiltro.SelectedValue = -1 DdlSucursales.SelectedValue = -1 GvUsuarios.DataSource = Nothing GvUsuarios.DataBind() UpUsuarios.Update() End Sub Protected Sub BtnBuscar_Click() Handles BtnBuscar.Click Dim buscadorQuery As New StringBuilder buscadorQuery.Append(If(DdlRolesFiltro.SelectedValue.ToEntero > 0, String.Format("CveRol = {0}", DdlRolesFiltro.SelectedValue), "")) buscadorQuery.Append(If(DdlSucursales.SelectedValue.ToEntero > 0, String.Format("{0} CveSubProyecto = {1}", If(buscadorQuery.Length > 0, "AND", ""), DdlSucursales.SelectedValue), "")) GvUsuarios.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa).FiltraParametros(buscadorQuery.ToString) DtUsuarios = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa).FiltraParametros(buscadorQuery.ToString) GvUsuarios.DataBind() UpUsuarios.Update() RegistraScript("$('#ModalDescuento').modal()") End Sub Private Sub BtnAplicarDescG_Click() Handles BtnAplicarDescG.Click Dim UsuariosCorreos As String = "" For Each usuario As DataRow In DtUsuarios.Rows If usuario.Item("Correo").ToString.Length > 0 Then UsuariosCorreos = String.Format("{0}{1}" & Environment.NewLine, UsuariosCorreos, usuario.Item("Correo").ToString) End If Next TxtCorreo.Value = UsuariosCorreos RegistraScript("$('#ModalDescuento').modal('hide')") UpCliente.Update() End Sub End Class