Files
SanchoToro/GestionGrupoSanchoToro/ucUsuario.xaml.vb
2026-01-23 12:45:41 +01:00

130 lines
4.5 KiB
VB.net

Imports DevExpress.Xpf.Editors
Imports DevExpress.Xpf.LayoutControl
Imports tsWPFCore
Imports System.ComponentModel
Imports System.Data
Imports DevExpress.Xpf.Editors.Validation
Imports DevExpress.Xpf.Editors.Helpers
Imports DevExpress.Xpf.Core
Imports tsWPFCore.modExtensiones
Imports System.Data.Common
Imports System.Data.Entity
Imports bdGrupoSanchoToro.db
Imports tsUtilidades.Datos
Imports DevExpress.Xpf.Bars
Imports DevExpress.Xpf.Grid
Imports System.Collections
Imports tsEFCore8.Extensiones
Imports bdGrupoSanchoToro.db.Utilidades
Imports bdGrupoSanchoToro.db.tscGrupoSanchoToro
Imports System.Data.Objects.DataClasses
Imports tsUtilidades
Public Class ucUsuario
''Faltan funciones por el error base
Private bd As tscGrupoSanchoToro
Private _idUsuario As Integer?
Public Sub New(Optional idUsuario As Integer? = Nothing)
' Esta llamada es exigida por el diseñador.
_idUsuario = idUsuario
InitializeComponent()
' Agregue cualquier inicialización después de la llamada a InitializeComponent().
End Sub
Public Overrides ReadOnly Property idRegistroAplicacionActual As String
Get
If Estado = tsUtilidades.EstadosAplicacion.Nuevo Then
Return "Usuario.Nuevo"
Else
Return "Usuario." & DirectCast(Me.DataContext, usuarios).idUsuario.ToString
End If
End Get
End Property
Public Overrides ReadOnly Property DescripcionRegistro As String
Get
Return "Usuario"
End Get
End Property
Public Overrides ReadOnly Property NombreTablaBase As String
Get
Return "usuarios"
End Get
End Property
Public Overrides Sub EstableceDataContextSecundarios(Optional Background As Boolean = False)
Dim gr = (From g In bd.gruposusuarios Select g).ToList
leGrupo.ItemsSource = gr
Me.cbTema.ItemsSource = (From en In bd.enumeraciones Where en.idGrupoEnumeracionNavigation.Grupo = "TEMAS").ToList
End Sub
Public Overrides Sub EstableceTitulo()
Me.docpanel.Caption = "Usuario"
End Sub
Public Overrides Sub Cargado()
Me.Tipo_ucControlBusqueda = GetType(ucUsuarios)
End Sub
Private Sub ucUsuario_AntesGuardar(sender As Object, e As ItemClickEventArgs, ByRef Cancelar As Boolean, ByRef MensajesError As Hashtable, EliminacionManual As Integer) Handles Me.AntesGuardar
Dim usu As usuarios = Me.DataContext
Dim sContraseña As String = TryCast(Me.pbeContraseña.EditValue, String)
Dim hte As New Hashtable
If Me.Estado = EstadosAplicacion.Nuevo Then
If sContraseña = "" Then
hte.Add("ALMACENAR-CONTRASEÑA_OBLIGATORIA", "La contraseña es obligatoria")
End If
End If
Dim sRepeticion As String = TryCast(Me.pbeRepeticion.EditValue, String)
If sContraseña <> "" OrElse sRepeticion <> "" Then
If sContraseña <> sRepeticion Then
hte.Add("ALMACENAR-CONTRASEÑA_OBLIGATORIA", "La contraseña no coincide con la repetición")
End If
If hte.Count > 0 Then
MensajesError = hte
Cancelar = True
Else
Dim sSHA1passwd As String = tsUtilidades.crypt.SHA1("M3Soft." & sContraseña)
usu.SHA1Passwd = sSHA1passwd
End If
End If
End Sub
Private Sub ucUsuario_DespuesGuardar(sender As Object, e As ItemClickEventArgs, OpcionGuardado As Integer) Handles Me.DespuesGuardar
Dim usu As usuarios = Me.DataContext
_idUsuario = usu.idUsuario
End Sub
Public Overrides Function EstableceDCPrincipal(Optional Background As Boolean = False, Optional FuerzaNuevo As Boolean = False, Optional Refrescar As Boolean = False) As tsUtilidades.EstadosAplicacion
Dim usu As usuarios
Dim EstadoNuevo = tsUtilidades.EstadosAplicacion.Nuevo
If FuerzaNuevo OrElse _idUsuario Is Nothing Then
usu = New usuarios
Else
usu = (From p In bd.usuarios Select p Where p.idUsuario = _idUsuario.Value).First
EstadoNuevo = tsUtilidades.EstadosAplicacion.ModificandoRegistro
End If
Me.DataContext = usu
Return EstadoNuevo
End Function
Public Overrides Function ObtieneBD() As tsUtilidades.ItsContexto
bd = tscGrupoSanchoToro.NuevoContexto
Return bd
End Function
Public Overrides Function ObtienePermisos() As tsUtilidades.Permisos
Return Comun.ObtienePermisos(Me.bd, "AP.USUARIOS", idUsuario)
End Function
End Class