Actualizacion sobre la asignacion y permisos en las ordenes de servicio mayormente todo enfocado a la lógica de subProyecto

This commit is contained in:
Antonio Gonzalez
2019-10-05 17:03:03 -05:00
parent a97d4cc137
commit 0ad131aa45
5 changed files with 181 additions and 71 deletions

View File

@@ -64,13 +64,23 @@ Partial Class OS_CatEstatusOrdenServicio
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
'DTUsuarios = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
CargaDatos()
AsociarEstatusUsuarios()
CargarUsuarioConEstatus()
'CargaDatos()
'AsociarEstatusUsuarios()
'CargarUsuarioConEstatus()
'CargarSubProyectos()
CargarProyectos()
CargarTodosLosDatos()
CveEstatuOS = -1
End If
End Sub
Private Sub CargarTodosLosDatos()
'CargarSubProyectos()
CargaDatos()
AsociarEstatusUsuarios()
CargarUsuarioConEstatus()
End Sub
Public Sub CargaDatos()
DTUsuarios = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
Using ObjEstatusOrdenServicios As New ClsOS
@@ -83,7 +93,7 @@ Partial Class OS_CatEstatusOrdenServicio
End If
If ObjEstatusOrdenServicios.GetEstatusUsuarios(-1, -1) Then
If ObjEstatusOrdenServicios.GetEstatusUsuarios(-1, -1, CveSubProyecto:=CboSubProyecto.SelectedValue.ToEntero) Then
DTEstatusUsuarios = ObjEstatusOrdenServicios.DtResultados
End If
@@ -131,7 +141,7 @@ Partial Class OS_CatEstatusOrdenServicio
AsociarEstatusUsuarios()
CargarUsuarioConEstatus()
UpDatos.Update()
UpPrueba.Update()
UpGvUsuariosEstatus.Update()
'Response.Redirect(HttpContext.Current.Request.Url.ToString(), True)
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
@@ -175,7 +185,7 @@ Partial Class OS_CatEstatusOrdenServicio
EstatusUsuariosGridActualizar()
AsociarEstatusUsuarios()
CargarUsuarioConEstatus()
UpPrueba.Update()
UpGvUsuariosEstatus.Update()
'Response.Redirect(HttpContext.Current.Request.Url.ToString(), True)
End Sub
Protected Sub GvDatos_RowUpdating(sender As Object, e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GvDatos.RowUpdating
@@ -218,18 +228,18 @@ Partial Class OS_CatEstatusOrdenServicio
nombresUsuarios.DataField = "Nombre"
nombresUsuarios.HeaderText = "Usuario"
nombresUsuarios.ItemStyle.CssClass = "columnaUsuarios"
Prueba.Columns.Add(nombresUsuarios)
GvUsuariosEstatus.Columns.Add(nombresUsuarios)
For Each Estatus As DataRow In DtEstatusOS.Rows
Dim test As New CheckBoxField
test.HeaderText = Estatus.Item("EstatusOrdenServicio").ToString
test.DataField = Estatus.Item("CveEstatusOrdenServicio").ToString
Prueba.Columns.Add(test)
GvUsuariosEstatus.Columns.Add(test)
Next
Prueba.DataSource = DtEstatusUsuariosAsociados
Prueba.DataBind()
GvUsuariosEstatus.DataSource = DtEstatusUsuariosAsociados
GvUsuariosEstatus.DataBind()
End Sub
Private Sub Prueba_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles Prueba.RowDataBound
Private Sub GvUsuariosEstatus_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvUsuariosEstatus.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim PermisosDeUsuario As DataTable = DTEstatusUsuarios.FiltraParametros(String.Format("CveUsuario = {0}", e.Row.DBCampo("CveUsuario").ToString))
For i As Integer = 1 To e.Row.Cells.Count - 1
@@ -241,48 +251,78 @@ Partial Class OS_CatEstatusOrdenServicio
End If
End Sub
Private Sub GuardarDatosPrueba(sender As Object, e As EventArgs) Handles BtnGuardarPruebas.Click
Dim objEstatusOC As New ClsOS
objEstatusOC.IniciaTransacSQL()
Dim HuboErrores As Boolean = False
Dim CveSubProyecto = 59
Private Sub GuardarDatosGvUsuariosEstatus(sender As Object, e As EventArgs) Handles BtnGuardarUsuariosEstatus.Click
If CboSubProyecto.SelectedValue.ToEntero > 0 Then
Dim objEstatusOC As New ClsOS
objEstatusOC.IniciaTransacSQL()
Dim HuboErrores As Boolean = False
Dim CveSubProyecto As Integer = CboSubProyecto.SelectedValue.ToEntero
For Each Row As GridViewRow In Prueba.Rows
Dim controles As Integer = Row.Controls.Count
For i = 1 To Row.Cells.Count - 1
Dim chk As CheckBox = CType(Row.Cells(i).Controls(0), CheckBox)
Dim CveEstatus As Integer = DtEstatusOS.FiltroPrimeroValor("CveEstatusOrdenServicio", String.Format("EstatusOrdenServicio = '{0}'", Prueba.Columns(i).HeaderText)).ToEntero
If Not chk.Checked Then
If Not objEstatusOC.RemoveEstatusUsuarios(CveEstatus, Row.DataKey("CveUsuario").ToString.ToEntero) Then
HuboErrores = True
Exit For
For Each Row As GridViewRow In GvUsuariosEstatus.Rows
Dim controles As Integer = Row.Controls.Count
For i = 1 To Row.Cells.Count - 1
Dim chk As CheckBox = CType(Row.Cells(i).Controls(0), CheckBox)
Dim CveEstatus As Integer = DtEstatusOS.FiltroPrimeroValor("CveEstatusOrdenServicio", String.Format("EstatusOrdenServicio = '{0}'", GvUsuariosEstatus.Columns(i).HeaderText)).ToEntero
If Not chk.Checked Then
If Not objEstatusOC.RemoveEstatusUsuarios(CveEstatus, Row.DataKey("CveUsuario").ToString.ToEntero, CveSubProyecto) Then
HuboErrores = True
Exit For
End If
ElseIf chk.Checked Then
'Guardado masivo cuando sea SubProyecto "Todos"
If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, Row.DataKey("CveUsuario").ToString.ToEntero, CveSubProyecto, UsuarioActual.CveUsuario) Then
HuboErrores = True
Exit For
End If
End If
ElseIf chk.Checked Then
'Guardado masivo cuando sea SubProyecto "Todos"
If Not objEstatusOC.AddEstatusUsuarios(CveEstatus, Row.DataKey("CveUsuario").ToString.ToEntero, CveSubProyecto) Then
HuboErrores = True
Exit For
End If
End If
Next
Next
Next
If Not HuboErrores Then
objEstatusOC.Commit()
Alert("Se guardaron los Cambios exitosamente", TipoMensaje.MsgInformacion)
If Not HuboErrores Then
objEstatusOC.Commit()
Alert("Se guardaron los Cambios exitosamente", TipoMensaje.MsgInformacion)
Else
objEstatusOC.RollBack()
Alert("Ocurrió un error al guardar los cambios. Por favor vuelva a intentar", TipoMensaje.MsgError)
End If
objEstatusOC.Dispose()
Else
objEstatusOC.RollBack()
Alert("Ocurrió un error al guardar los cambios. Por favor vuelva a intentar", TipoMensaje.MsgError)
Alert("Se debe seleccionar un SubProyecto valido", TipoMensaje.MsgAdvertencia)
EstatusUsuariosGridActualizar()
CargarTodosLosDatos()
End If
objEstatusOC.Dispose()
End Sub
Private Sub EstatusUsuariosGridActualizar()
DtEstatusUsuariosAsociados = Nothing
Prueba.DataBind()
For Contador As Integer = (Prueba.Columns.Count - 1) To 0 Step -1
Prueba.Columns.RemoveAt(Contador)
GvUsuariosEstatus.DataBind()
For Contador As Integer = (GvUsuariosEstatus.Columns.Count - 1) To 0 Step -1
GvUsuariosEstatus.Columns.RemoveAt(Contador)
Next
End Sub
Private Sub CargarProyectos()
CboProyecto.DataSource = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa, 1).FiltraParametros("", "", {"CveProyecto", "Proyecto"})
CboProyecto.DataBind()
CboProyecto.Items.Insert(0, New ListItem("Seleccione el Proyecto", "-1"))
End Sub
Private Sub CargaSubProyectos()
CboSubProyecto.DataSource = GlobalDTSubProyectos(CboProyecto.SelectedValue.ToEntero)
CboSubProyecto.DataBind()
CboSubProyecto.Items.Insert(0, New ListItem("Seleccione el SubProyecto", "-2"))
End Sub
Private Sub Proyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboProyecto.SelectedIndexChanged
CargaSubProyectos()
'CargaDatos()
EstatusUsuariosGridActualizar()
CargarTodosLosDatos()
UpGvUsuariosEstatus.Update()
End Sub
Private Sub SubProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboSubProyecto.SelectedIndexChanged
EstatusUsuariosGridActualizar()
CargarTodosLosDatos()
End Sub
#End Region
End Class