1
00:00:00,150 --> 00:00:05,070
Bien, continuamos con la clase banco que se encarga de realizar la transacción, es decir, de transferir

2
00:00:05,130 --> 00:00:07,920
un dinero de una cuenta a otra y lo vamos a probar.

3
00:00:08,050 --> 00:00:12,300
Y también tiene una relación con las cuentas, una relación que podría ser incluso en ambos sentidos.

4
00:00:12,400 --> 00:00:13,980
Bueno, vamos a ver a uno.

5
00:00:14,100 --> 00:00:20,460
Nos vamos entonces a nuestro package principal en models alt inser lleba class banco.

6
00:00:22,360 --> 00:00:25,140
Bien, lo primero, el atributo banco tiene un nombre.

7
00:00:25,380 --> 00:00:26,220
Entonces private.

8
00:00:31,030 --> 00:00:33,190
Los métodos que transmiten por acá.

9
00:00:33,970 --> 00:00:39,130
Ok, bien, lo siguiente es el método transferir public void

10
00:00:43,330 --> 00:00:47,620
de la cuenta Orijen hacia la cuenta destino donde se cuenta

11
00:00:52,120 --> 00:00:57,100
y un monto que el tipo bit decimal maik decimal monto.

12
00:00:58,000 --> 00:01:03,730
La implementación es super siempre pero pero primero vamos a realizar la prueba el test unitario y luego

13
00:01:03,730 --> 00:01:05,680
implementamos este método control TAF.

14
00:01:05,800 --> 00:01:07,720
Nos vamos a ir a cuenta texto.

15
00:01:08,840 --> 00:01:14,060
Bajamos, ocultamos la pestaña Proyecto y comenzamos al inserto.

16
00:01:14,300 --> 00:01:18,890
Un método texto, pudiesse, sé, test, transferir dinero, cuentas,

17
00:01:23,210 --> 00:01:27,640
bajamos y comenzamos primero uno son 2 cuenta que vamos a utilizar la cuenta.

18
00:01:27,740 --> 00:01:28,700
Origen y destino.

19
00:01:28,850 --> 00:01:30,740
Así que vamos a crear dos instancias.

20
00:01:31,310 --> 00:01:32,270
Ni cuenta.

21
00:01:34,820 --> 00:01:36,500
Por ejemplo, yo Endou.

22
00:01:39,470 --> 00:01:41,510
Con su saldo BIC décima.

23
00:01:41,870 --> 00:01:42,530
Por ejemplo.

24
00:01:42,560 --> 00:01:46,420
Dos mil quinientos al control B.

25
00:01:46,550 --> 00:01:49,850
Creamos el objeto no se cuenta uno puede ser.

26
00:01:50,180 --> 00:01:54,020
Cuenta uno listo y vamos a replicar con controlde.

27
00:01:54,380 --> 00:01:54,820
Se acuerdan?

28
00:01:54,830 --> 00:02:00,290
Control de replicamos cuenta dos en vez de Yondu.

29
00:02:00,950 --> 00:02:09,110
No se podría hacer a Andrés con un monto de mil quinientos.

30
00:02:10,370 --> 00:02:13,850
Punto 89 89.

31
00:02:14,420 --> 00:02:14,860
Listo.

32
00:02:15,410 --> 00:02:18,980
Bajamos y realizamos la prueba app y faltaría el banco.

33
00:02:19,040 --> 00:02:20,180
Acepto importante.

34
00:02:20,330 --> 00:02:23,030
Entonces banco, banco.

35
00:02:29,210 --> 00:02:43,790
Banco Punto Set Nombre Banco del Estado Bajamos Banco punto transferir de la cuenta a origen a una cuenta

36
00:02:43,800 --> 00:02:49,940
estilo, por ejemplo la cuenta origen base, la cuenta 2 de Andrés, es decir, Andrés va a transferir

37
00:02:50,060 --> 00:02:52,910
a la cuenta de John, entonces cuenta dos.

38
00:02:53,990 --> 00:02:56,450
La cuenta destinos sería la cuenta 1 y el monto.

39
00:02:57,350 --> 00:02:59,020
Recuerden que es un bit decimal.

40
00:02:59,180 --> 00:03:06,910
Vamos a transferir 500 y probamos con hacer equals hacer iguales.

41
00:03:07,670 --> 00:03:10,600
Un valor esperado de lo mismo puede ser entero String.

42
00:03:10,850 --> 00:03:12,450
Lo dejamos como trincan.

43
00:03:13,070 --> 00:03:19,640
Primero vamos a probar la cuenta Orijen que la dos Andrés tiene mil 500 puntos 88 89.

44
00:03:19,820 --> 00:03:21,290
Si le restamos 500 quedan 1000.

45
00:03:22,020 --> 00:03:22,880
12000.

46
00:03:22,970 --> 00:03:26,090
Punto 89 ochenta y nueve coma.

47
00:03:26,300 --> 00:03:26,990
Cuenta dos.

48
00:03:28,820 --> 00:03:30,170
Punto 7.

49
00:03:30,170 --> 00:03:31,310
Salto punto.

50
00:03:31,400 --> 00:03:33,580
Porque recuerden que tengo que devolver un string.

51
00:03:33,740 --> 00:03:37,580
Esto bien y replicamos con controlde porque el final es muy parecido.

52
00:03:37,580 --> 00:03:39,830
Solamente tengo que cambiar alguna cosa, cuenta.

53
00:03:39,830 --> 00:03:42,440
1 En vez de contador y cuánto quería?

54
00:03:42,440 --> 00:03:47,660
Cuenta uno, cuenta uno sería mil quinientos y supuestamente le estamos transfiriendo 500.

55
00:03:47,750 --> 00:03:50,270
Le estamos sumando, debía quedar entre 1000.

56
00:03:50,690 --> 00:03:51,770
Entonces le quitamos.

57
00:03:53,750 --> 00:03:57,200
Treme Si todo esto se cumple, se afirma es verdad.

58
00:03:57,350 --> 00:03:58,610
Entonces la prueba es correcta.

59
00:03:58,880 --> 00:04:00,740
De lo contrario, bueno, falla.

60
00:04:00,920 --> 00:04:01,640
Vamos a probar.

61
00:04:01,820 --> 00:04:05,180
Recuerden que no tenemos implementado el método TRASFERIR.

62
00:04:05,360 --> 00:04:05,900
Se fijan?

63
00:04:05,990 --> 00:04:07,240
Lo tenemos sin implementar.

64
00:04:07,250 --> 00:04:08,790
Por lo tanto va a fallar.

65
00:04:08,990 --> 00:04:11,300
Después lo tengo que implementar y volver a probar.

66
00:04:12,680 --> 00:04:14,330
Control Cheff F10.

67
00:04:17,170 --> 00:04:23,730
Se fijan, espera mil, no acierto a que le reste 500, pero la actual en mil quinientos en la cuenta

68
00:04:23,740 --> 00:04:29,450
1 respecto al equals 2 el hacer y el 2 no se muestra porque ella falló primero.

69
00:04:29,470 --> 00:04:32,170
Por lo tanto, si falla el primero, falló todo el método.

70
00:04:32,590 --> 00:04:33,430
Bien, cerramos.

71
00:04:33,550 --> 00:04:34,480
Vamos a implementar.

72
00:04:34,570 --> 00:04:35,680
No vamos a ir al banco.

73
00:04:36,610 --> 00:04:44,260
Y super simple sería origen punto débito porque estamos transfiriendo.

74
00:04:44,350 --> 00:04:55,120
Entonces no tienen que descontar monto destino, punto crédito porque estamos transfiriendo monto.

75
00:04:56,500 --> 00:05:03,220
Entonces el primero retira, resta la cantidad a ser transferida de la cuenta Orijen, mientras que

76
00:05:03,310 --> 00:05:07,450
crédito este de acá deposita la cantidad a la cuenta de Tino.

77
00:05:08,110 --> 00:05:08,770
Está molesto.

78
00:05:09,250 --> 00:05:09,850
Volvemos.

79
00:05:10,300 --> 00:05:13,330
Control Tab cuenta texto y volvemos a levantar.

80
00:05:14,610 --> 00:05:18,270
El método transferir dinero y lo pasa si fijan, está correcto.

81
00:05:18,840 --> 00:05:22,170
Hoy pasó la prueba bien próxima, podríamos ser entre cuenta y banco.

82
00:05:22,290 --> 00:05:23,820
Cómo se podrían también relacionar?

83
00:05:24,000 --> 00:05:29,250
Cuenta podría tener o podría tras sociedad un banco mediante un atributo y un banco de tener muchas

84
00:05:29,250 --> 00:05:30,090
cuentas corrientes.

85
00:05:30,360 --> 00:05:35,100
Y eso se podría establecer como un atributo del tipo colección, del tipo listo.

86
00:05:35,370 --> 00:05:38,140
Y también podríamos probar esas relaciones en ambos sentidos.

87
00:05:38,370 --> 00:05:44,550
Por ejemplo, a ver, vamos a partir primero en banco por acá y vamos a tener otro atributo del tipo

88
00:05:44,550 --> 00:05:44,910
listo.

89
00:05:48,870 --> 00:05:55,460
Se fija, fijan una lista de cuenta y íbamos a importar con alt enter, lista de yeva útil, importante

90
00:05:55,460 --> 00:05:57,710
que siempre sea de ya útil cuentas.

91
00:05:59,890 --> 00:06:00,090
Bien.

92
00:06:00,180 --> 00:06:01,290
Y los métodos transex?

93
00:06:01,590 --> 00:06:07,740
Entonces bajamos por acá al insert yet eran Cetes de cuenta.

94
00:06:07,820 --> 00:06:09,390
Entonces, qué cuentas?

95
00:06:09,390 --> 00:06:10,410
Set cuentas?

96
00:06:10,830 --> 00:06:11,360
Perfecto.

97
00:06:11,520 --> 00:06:18,040
Pero podríamos agregar las cuentas con un método a uno, agregar cuenta uno, después agregar cuenta

98
00:06:18,060 --> 00:06:18,810
dos y así.

99
00:06:19,020 --> 00:06:20,670
Qué sería de la siguiente forma?

100
00:06:21,000 --> 00:06:28,770
Debajo de set cuentas por acá el método add public void no devolver nada.

101
00:06:28,770 --> 00:06:30,410
Solamente agrega una cuenta.

102
00:06:30,420 --> 00:06:36,750
La lista a cuenta del tipo cuenta, cuenta.

103
00:06:37,440 --> 00:06:38,160
Bajamos.

104
00:06:38,280 --> 00:06:39,210
Se dio la lista.

105
00:06:40,110 --> 00:06:43,980
Cuentas punto ab cuenta le pasamos la cuenta.

106
00:06:44,490 --> 00:06:46,020
El número sube Stemple.

107
00:06:46,140 --> 00:06:51,750
Agregamos la cuenta, pero acá solamente establecemos la relación entre banco y la cuenta.

108
00:06:51,810 --> 00:06:54,030
Nada más vamos agregando cuenta uno a uno.

109
00:06:54,270 --> 00:07:00,070
Otra forma es pasar la lista completa, el list o el array list directamente en cuentas.

110
00:07:00,210 --> 00:07:01,500
Bien, ahí está mucho más completo.

111
00:07:01,590 --> 00:07:03,300
Ahora nos vamos a ir a cuenta.

112
00:07:03,390 --> 00:07:06,950
Control TAF por acá y al revés, cuenta.

113
00:07:06,960 --> 00:07:09,450
Va a tener el atributo con el banco.

114
00:07:09,630 --> 00:07:12,480
Pero cada cuenta corriente tiene asociado un solo banco.

115
00:07:12,600 --> 00:07:13,350
No es una lista.

116
00:07:13,350 --> 00:07:17,660
Se fijan una cuenta, un banco, un banco, muchas cuenta.

117
00:07:17,820 --> 00:07:25,740
Esa sería la relación private banco banco y los métodos que transmiten.

118
00:07:26,010 --> 00:07:29,280
Vamos a bajar por acá después de Salto.

119
00:07:29,490 --> 00:07:30,720
Entonces acá tenemos saldo.

120
00:07:31,290 --> 00:07:38,760
Bajamos al insert trans banco y tenemos la relación que bidireccional.

121
00:07:38,880 --> 00:07:41,460
Pero en realidad todavía no está todo bien.

122
00:07:41,940 --> 00:07:48,870
No está todo completo, porque faltaría, por ejemplo, en Zeth cuentas o en cuenta.

123
00:07:48,930 --> 00:07:52,620
Perdón acá establecer la relación inversa, pero después vamos a ver.

124
00:07:53,130 --> 00:07:55,230
Por ahora lo dejamos así y vamos a ir a probar.

125
00:07:55,350 --> 00:07:57,660
No vamos a ir a cuenta texto por acá.

126
00:07:57,930 --> 00:08:03,150
De hecho, vamos a tomar este mismo ejemplo de transferir dinero, cuentas para probar la relación.

127
00:08:03,360 --> 00:08:05,790
Vamos a copiar este método completo.

128
00:08:06,270 --> 00:08:07,200
Los seleccionamos.

129
00:08:07,710 --> 00:08:10,060
Control CD y lo pegamos para acá.

130
00:08:10,590 --> 00:08:11,490
Lo vamos a renombrar.

131
00:08:11,700 --> 00:08:12,010
No sé.

132
00:08:12,030 --> 00:08:16,220
Podría ser texto, relación, banco, cuentas.

133
00:08:16,620 --> 00:08:18,150
Entonces vamos a quitar esto.

134
00:08:20,250 --> 00:08:21,960
Relaciones o relación

135
00:08:24,780 --> 00:08:25,890
Banco Cuentas.

136
00:08:26,130 --> 00:08:27,600
Vamos dato do cuentas.

137
00:08:27,690 --> 00:08:28,710
Acá tenemos el banco.

138
00:08:28,770 --> 00:08:29,730
Te fijás entonces?

139
00:08:30,000 --> 00:08:34,560
Bueno, lo primero banco punto a cuenta.

140
00:08:34,830 --> 00:08:38,340
Cuenta 1 Control de cuenta 2.

141
00:08:39,330 --> 00:08:42,240
Ahí establecemos una relación, pero solamente banco con cuenta.

142
00:08:42,590 --> 00:08:45,300
Estamos agregando al banco 2 cuenta.

143
00:08:45,510 --> 00:08:46,620
Acá tenemos el nombre.

144
00:08:46,750 --> 00:08:49,770
Estamos probando esto que estaría bien y faltaría probar.

145
00:08:49,830 --> 00:08:51,580
Vamos a probar la relación en ambos sentidos.

146
00:08:51,750 --> 00:08:58,440
Primero un hacer y cual es que el banco tiene dos elementos, es decir, dos cuentas.

147
00:08:58,800 --> 00:09:08,880
Dos nuestro valor esperado banco punto de cuentas punto seis porque tenemos el método 6.

148
00:09:09,450 --> 00:09:10,980
Se fijan sería cumplir.

149
00:09:11,400 --> 00:09:11,590
Dir.

150
00:09:11,610 --> 00:09:12,270
Está correcto.

151
00:09:12,450 --> 00:09:13,380
Entonces lo vamos a probar.

152
00:09:13,530 --> 00:09:14,250
Levantamos.

153
00:09:18,030 --> 00:09:18,750
Y vamos a ver.

154
00:09:18,980 --> 00:09:20,550
Bueno, falló, por qué falló?

155
00:09:20,850 --> 00:09:26,310
Porque a propósito, nos faltó implementar un tema importante si nos vamos a banco.

156
00:09:27,450 --> 00:09:34,110
Acá no cuenta que listo, nunca se creó la instancia, se fijan el ArrayList, por lo tanto cuentas

157
00:09:34,200 --> 00:09:38,260
en Nul y al ser nul va a lanzar un pulpo intercepto.

158
00:09:38,400 --> 00:09:43,410
Entonces, para solucionar este problema tenemos que crear la instancia en el constructor de banco de

159
00:09:43,410 --> 00:09:49,830
un ArrayList para que el atributo cuentas tenga una referencia y no Lancet de null pointer excepto por

160
00:09:49,830 --> 00:09:50,340
ahora.

161
00:09:50,430 --> 00:09:54,270
Lo dejamos así y continuamos la siguiente clase para que no sea tan extenso.

162
00:09:54,390 --> 00:09:55,110
Nos vemos.
