1
00:00:00,450 --> 00:00:06,630
Veamos otro ejemplo enviando la lista de roles completo, no solamente el nombre, sino también el Heidy

2
00:00:06,720 --> 00:00:13,200
bueno, el rol o el código del rol con guión bajo el nombre y también el nombre visible, que sería

3
00:00:13,200 --> 00:00:16,500
el nombre que estamos mostrando en el tetos en el formulario.

4
00:00:16,650 --> 00:00:17,850
Bueno, cómo lo podemos implementar?

5
00:00:18,010 --> 00:00:20,910
Primero tenemos que crear una clase rol.

6
00:00:21,420 --> 00:00:27,320
Nos vamos entonces el proyecto nos vamos al Package Models Domaine y creamos una clase.

7
00:00:27,960 --> 00:00:28,320
Rol.

8
00:00:30,320 --> 00:00:31,160
Con atributo

9
00:00:33,980 --> 00:00:38,450
Intercom, siempre con el Heidy, pero también vamos a tener el nombre.

10
00:00:42,140 --> 00:00:48,260
Éste sería el nombre visible y el código que le vamos a llamar rol.

11
00:00:49,610 --> 00:00:53,720
Bueno, el rol sería rol, guión bajo el nombre y todo mayúscula.

12
00:00:58,210 --> 00:01:00,210
Guiteras, setter marcamos todos.

13
00:01:01,970 --> 00:01:03,490
También un constructor.

14
00:01:05,460 --> 00:01:08,900
Por ejemplo, usando campos, usando Fields.

15
00:01:10,170 --> 00:01:12,440
Con los argumentos y di nombre y rol.

16
00:01:13,470 --> 00:01:14,490
Quitamos el súper.

17
00:01:16,280 --> 00:01:17,570
Y un constructor vacío.

18
00:01:23,590 --> 00:01:24,520
Sin parámetros.

19
00:01:28,490 --> 00:01:30,430
Y formateados perfecto.

20
00:01:30,570 --> 00:01:31,370
Hoy tenemos la clase.

21
00:01:31,610 --> 00:01:32,390
El siguiente paso.

22
00:01:32,500 --> 00:01:38,060
Bueno, usuario tiene una relación con una lista de roles, pero del tipo string.

23
00:01:38,570 --> 00:01:39,860
Ahora es del tipo rol.

24
00:01:40,940 --> 00:01:46,970
Entonces la idea es no solamente enviar el string con el nombre o el código del rol, sino enviar el

25
00:01:46,970 --> 00:01:49,170
objeto completo, el rol completo con el Heidy.

26
00:01:49,190 --> 00:01:50,650
Con todo guardamos.

27
00:01:51,260 --> 00:01:54,770
Bueno, y como cambiamos acá también tenemos que cambiar lo que transceptor.

28
00:01:54,860 --> 00:02:00,230
Nos vamos al error, cambiamos acá a rol y acá también guardamos.

29
00:02:00,350 --> 00:02:01,400
Volvemos arriba.

30
00:02:02,060 --> 00:02:02,540
Qué más?

31
00:02:02,570 --> 00:02:03,290
Qué faltaría?

32
00:02:03,380 --> 00:02:07,190
Bueno, una clase servis hizo interfaz para rol.

33
00:02:08,460 --> 00:02:09,720
12 Primero, la interfaz.

34
00:02:13,470 --> 00:02:14,250
Finalizar.

35
00:02:15,740 --> 00:02:18,230
Con un par de métodos o contrato.

36
00:02:24,780 --> 00:02:25,800
El metodo Alister

37
00:02:28,440 --> 00:02:33,000
y tambien buscar por ahi obtener predi o buscar por ahi como queramos

38
00:02:37,260 --> 00:02:38,220
integer Heidy.

39
00:02:39,860 --> 00:02:41,190
Le importamos, listo.

40
00:02:43,990 --> 00:02:51,280
Rol importante, qué rol lo importen de nuestro bagaje, de nuestro propio pacato rol?

41
00:02:51,310 --> 00:02:52,030
Nuestra clase.

42
00:02:53,350 --> 00:02:55,960
Bien, ahora la clase implementa.

43
00:02:56,560 --> 00:02:58,120
Vamos a crear una clase.

44
00:03:02,000 --> 00:03:10,610
Agregamos interfaz, buscamos por acá rol, la seleccionamos rol, servis, ok, ok.

45
00:03:11,660 --> 00:03:24,380
Antes que nada anotamos con servis, importamos bien, un constructor por acá XOR constructor vacío.

46
00:03:25,890 --> 00:03:26,330
Ok.

47
00:03:26,940 --> 00:03:28,650
Y acá inicializamos los datos.

48
00:03:29,280 --> 00:03:30,990
Bueno, primero un atributo

49
00:03:35,550 --> 00:03:37,650
roles holista como queramos.

50
00:03:38,730 --> 00:03:40,020
Y acá inicializamos.

51
00:03:47,390 --> 00:03:48,230
Un ArrayList.

52
00:03:53,600 --> 00:03:59,780
Agregamos un rol new rol con el Heidy nombre y el rol.

53
00:04:00,350 --> 00:04:06,050
Bueno, por ejemplo uno que Heidy el nombre, por ejemplo administrador.

54
00:04:11,740 --> 00:04:12,070
Rol.

55
00:04:12,130 --> 00:04:12,550
Admin.

56
00:04:15,010 --> 00:04:15,880
Voy a copiar.

57
00:04:18,140 --> 00:04:20,780
Dos más, aunque podríamos tener lo que queramos.

58
00:04:22,810 --> 00:04:23,500
2 3.

59
00:04:25,150 --> 00:04:25,760
Usuario.

60
00:04:25,840 --> 00:04:26,380
Rol.

61
00:04:26,710 --> 00:04:28,690
User en mayúscula.

62
00:04:33,440 --> 00:04:34,130
Moderador.

63
00:04:34,190 --> 00:04:37,400
Rol moderador.

64
00:04:37,790 --> 00:04:38,570
Ahí tenemos los datos.

65
00:04:38,810 --> 00:04:39,740
Bueno, bien, simple.

66
00:04:39,800 --> 00:04:42,110
El Distar retornÃ roles.

67
00:04:42,170 --> 00:04:42,980
La lista completa.

68
00:04:45,500 --> 00:04:46,470
Y buscar?

69
00:04:47,510 --> 00:04:52,970
Bueno, como siempre, tal como lo implementamos la vez pasada con países con un Ford acá buca en la

70
00:04:52,970 --> 00:04:56,420
lista y retorna un solo objeto, un solo rol por el Heidy.

71
00:05:00,740 --> 00:05:04,110
Ya rol resultado igual nul y tiramos acá

72
00:05:09,330 --> 00:05:17,310
y acá preguntan con un if, por ejemplo, si Leydi es igual a rol, punto.

73
00:05:17,390 --> 00:05:20,120
Qué Heidy entonces si son iguales, perfecto

74
00:05:24,330 --> 00:05:25,400
resultado, igual error.

75
00:05:26,010 --> 00:05:31,860
Es decir, asignamos acá resultado el valor del rol que corresponde a Leidy lo encontró.

76
00:05:31,920 --> 00:05:37,880
Por lo tanto hacemos un break para salir del foro y retornamos.

77
00:05:38,080 --> 00:05:40,240
Resultado ya.

78
00:05:40,350 --> 00:05:42,870
Acá tenemos el servis, los métodos.

79
00:05:42,980 --> 00:05:45,150
Entonces ahora tenemos que modificar el controlador.

80
00:05:45,210 --> 00:05:49,900
Primero inyectar el servis este componente acá en el controlador.

81
00:05:50,220 --> 00:05:52,380
Entonces es muy parecido también a País Service.

82
00:06:00,680 --> 00:06:03,110
Rol servis importamos.

83
00:06:04,910 --> 00:06:07,340
Ven y vamos a tener un método acá.

84
00:06:07,430 --> 00:06:14,600
Un método modela atributos para llenar esta lista de checkbox que tenemos en el formulario con los objetos

85
00:06:14,600 --> 00:06:20,120
roles con esta lista que tenemos en el servicio servis, entonces por acá.

86
00:06:25,710 --> 00:06:26,510
Lyta Roles.

87
00:06:26,610 --> 00:06:32,220
Recuérdame que anteriormente se llamaba Lyta Rol String, que distinto es una lista de roles, pero

88
00:06:32,220 --> 00:06:32,960
del tipo string.

89
00:06:33,450 --> 00:06:40,050
Y ahora tenemos una lista de roles con un jasmeet con un map de yaba con pares de nombre valor.

90
00:06:40,710 --> 00:06:42,480
Pero acá sería el objeto.

91
00:06:45,000 --> 00:06:49,260
Entonces retorna una lista de error lista roles.

92
00:06:53,830 --> 00:07:00,100
Pero simple, disputo rol servis por acá tenemos punto listar.

93
00:07:02,520 --> 00:07:08,790
Importamos rol de nuestro package perfecto, guardamos.

94
00:07:09,090 --> 00:07:14,930
Ahora voy a copiar este nombre de atributo con el cual se pasa la vista en el model atributo.

95
00:07:15,580 --> 00:07:20,490
Nos vamos a formulario y ahora el ID sería esto.

96
00:07:22,870 --> 00:07:23,950
Nuestra nueva lista.

97
00:07:24,010 --> 00:07:24,490
Lista.

98
00:07:25,090 --> 00:07:27,460
Una lista de objetos del tipo rol.

99
00:07:27,790 --> 00:07:28,600
Todo esto igual.

100
00:07:28,660 --> 00:07:29,950
Esto se mantiene exactamente igual.

101
00:07:30,040 --> 00:07:31,870
Lo que cambia acá es el Valeo.

102
00:07:32,050 --> 00:07:35,860
Ya no estamos usando map de Yaba, sino el objeto Rohr.

103
00:07:35,950 --> 00:07:36,910
Una lista de roles.

104
00:07:37,060 --> 00:07:37,540
12 Rol.

105
00:07:37,570 --> 00:07:38,230
Punto.

106
00:07:38,360 --> 00:07:40,660
Lo que vamos a enviar entonces es el Heidy.

107
00:07:41,190 --> 00:07:42,910
Porque recuerden que estamos buscando Prady.

108
00:07:43,120 --> 00:07:47,440
Después tenemos que tener nuestro property editors para roles.

109
00:07:47,530 --> 00:07:52,510
Vamos a obtener este Heidy que enviamos y vamos a buscar el rol y lo asignamos.

110
00:07:52,720 --> 00:07:55,400
Es decir, asignamos el rol completo.

111
00:07:55,420 --> 00:07:56,320
El objeto completo.

112
00:07:56,440 --> 00:08:04,570
Cambiamos el Heidy por el objeto rol completo y en value el nombre dos Heidy y nombre.

113
00:08:04,750 --> 00:08:12,310
Recuerden que la clase Rol tiene atributos Heidy nuestra llave nombre en nombre visible que se muestra

114
00:08:12,340 --> 00:08:16,150
en el formulario y el rol que sería como el nombre rol.

115
00:08:16,210 --> 00:08:17,840
Pero para Spring Security.

116
00:08:17,950 --> 00:08:18,640
Por ejemplo.

117
00:08:20,600 --> 00:08:22,580
Y todo lo demás es exactamente igual.

118
00:08:22,880 --> 00:08:25,280
Se valía por rol, todo se mantiene igual.

119
00:08:25,370 --> 00:08:26,280
Entonces, qué faltaría?

120
00:08:26,300 --> 00:08:29,330
Faltaría solamente nuestro property editors.

121
00:08:29,510 --> 00:08:35,030
Nada más, pero lo dejamos para la siguiente clase, así que quedamos hasta acá y nos vemos en la próxima

122
00:08:35,030 --> 00:08:35,390
clase.
