1 00:00:00,050 --> 00:00:01,030 ¿Dónde está la jala? 2 00:00:02,370 --> 00:00:03,770 Panel de insertar. 3 00:00:04,009 --> 00:00:05,490 Ahora ya silencio, ¿vale? 4 00:00:05,490 --> 00:00:07,809 El que no, que haga su ejercicio, tranquilito. 5 00:00:08,490 --> 00:00:09,369 Panel de insertar. 6 00:00:09,890 --> 00:00:14,109 La funcionalidad de añadir pedido, esta ya la hicimos. 7 00:00:15,730 --> 00:00:20,609 La hicimos aquí y dijimos, ¿qué tenemos que hacer cuando 8 00:00:20,609 --> 00:00:22,449 demos al botón añadir pedido? 9 00:00:23,149 --> 00:00:26,309 Creamos un pedido nuevo con la descripción, ¿vale? 10 00:00:27,089 --> 00:00:29,910 Lo metemos en nuestro map de pedidos. 11 00:00:30,050 --> 00:00:37,310 Porque este map nuestro es este de aquí, donde van los pedidos. 12 00:00:38,950 --> 00:00:42,710 Pues lo metemos en nuestro map a través de la función insertar 13 00:00:42,710 --> 00:00:43,049 pedido. 14 00:00:43,509 --> 00:00:46,070 Y ahora ya lo añadimos a la JList. 15 00:00:46,450 --> 00:00:47,590 Lo añadimos a la JList. 16 00:00:48,170 --> 00:00:52,310 Y habilitamos el resto de componentes para insertar 17 00:00:52,310 --> 00:00:52,750 productos. 18 00:00:53,549 --> 00:00:56,049 Por eso, cuando ejecutábamos esta aplicación, 19 00:00:56,049 --> 00:00:59,390 vamos a hacer el pedido del lunes. 20 00:01:00,049 --> 00:01:10,829 Añadir pedido. El pedido se quedaba añadido, se mostraba en la JList y ya se nos habilitaba esto para añadir algún producto. Esa funcionalidad ya la dejamos hecha el otro día. 21 00:01:11,989 --> 00:01:20,430 Más funcionalidades que nos faltan por hacer. Añadir producto, ¿verdad? Añadir producto, ah, bueno, añadir producto estaba hecha también. 22 00:01:20,430 --> 00:01:22,670 Añadir producto 23 00:01:22,670 --> 00:01:24,650 Era añadir el producto 24 00:01:24,650 --> 00:01:26,390 Cuyos datos se habían puesto aquí 25 00:01:26,390 --> 00:01:28,489 Al pedido que habíamos seleccionado 26 00:01:28,489 --> 00:01:29,269 En el JList 27 00:01:29,269 --> 00:01:32,870 Esa era añadir producto 28 00:01:32,870 --> 00:01:34,109 Ah bueno, estaba a medias 29 00:01:34,109 --> 00:01:34,849 Estaba sin hacer 30 00:01:34,849 --> 00:01:35,530 Vale 31 00:01:35,530 --> 00:01:40,689 Pues primero, creábamos el producto 32 00:01:40,689 --> 00:01:42,790 Con los datos que estaban en los 33 00:01:42,790 --> 00:01:45,329 En los áreas de texto 34 00:01:45,329 --> 00:01:48,489 Vamos a ir a esas áreas de texto 35 00:01:48,489 --> 00:01:50,510 que nombre tienen 36 00:01:50,510 --> 00:01:52,650 pues esta era 37 00:01:52,650 --> 00:01:54,890 text nombre, text unidades 38 00:01:54,890 --> 00:01:56,849 y text precio, vale, gracias a que 39 00:01:56,849 --> 00:01:58,409 está bien elegido, pues nos 40 00:01:58,409 --> 00:02:00,829 va a hacer falta, nos va a ser útil 41 00:02:00,829 --> 00:02:02,709 para ahora añadirlo 42 00:02:02,709 --> 00:02:04,849 vale, si hago algo mal, me lo decís 43 00:02:04,849 --> 00:02:06,890 venga, pues 44 00:02:06,890 --> 00:02:08,669 nuestro producto va a tener 45 00:02:08,669 --> 00:02:10,990 como 46 00:02:10,990 --> 00:02:11,810 nombre 47 00:02:11,810 --> 00:02:14,909 el nombre que está en el área 48 00:02:14,909 --> 00:02:16,610 de texto, text nombre 49 00:02:16,610 --> 00:02:21,110 .gectest 50 00:02:21,110 --> 00:02:27,219 Sí, hoy berridos 51 00:02:27,219 --> 00:02:28,699 Unidades 52 00:02:28,699 --> 00:02:31,280 Las unidades que están 53 00:02:31,280 --> 00:02:32,520 En el área de texto 54 00:02:32,520 --> 00:02:35,960 Textunidades.gectest 55 00:02:35,960 --> 00:02:38,199 Pero las unidades 56 00:02:38,199 --> 00:02:40,939 Cristian 57 00:02:40,939 --> 00:02:43,080 Son un entero 58 00:02:43,080 --> 00:02:44,719 Todo lo tengo 59 00:02:44,719 --> 00:02:46,219 Las unidades son un entero 60 00:02:46,219 --> 00:02:47,900 Esto es un string 61 00:02:47,900 --> 00:02:50,879 Entonces tenemos que convertirlo a entero, lógicamente 62 00:02:50,879 --> 00:02:52,979 y rápidamente nos acordamos 63 00:02:52,979 --> 00:02:54,860 porque de todo nos tenemos que acordar 64 00:02:54,860 --> 00:02:57,259 porque si no luego decís en el examen 65 00:02:57,259 --> 00:02:58,860 ay, si hubiera tenido 66 00:02:58,860 --> 00:03:01,039 tres horas y media más, lo habría hecho bien 67 00:03:01,039 --> 00:03:01,740 ¿Y realmente yo? 68 00:03:02,039 --> 00:03:03,639 ¿Si hubiera tenido siete horas? 69 00:03:03,719 --> 00:03:05,340 Claro, pero no, ¿por qué? 70 00:03:05,460 --> 00:03:08,099 Porque te ha hecho falta media hora para acordarte 71 00:03:08,099 --> 00:03:09,960 de que aquí hay que poner un integer para seguir 72 00:03:09,960 --> 00:03:11,840 Pues si te ha hecho falta acordarte 73 00:03:11,840 --> 00:03:13,900 si te ha hecho falta media hora para acordarte 74 00:03:13,900 --> 00:03:15,560 entonces te mereces el suspenso 75 00:03:15,560 --> 00:03:20,759 ¿Vale? 76 00:03:21,500 --> 00:03:21,900 Entonces 77 00:03:21,900 --> 00:03:26,259 pero como no te vas a acordar 78 00:03:26,259 --> 00:03:27,319 del integer parsing 79 00:03:27,319 --> 00:03:32,719 vale 80 00:03:32,719 --> 00:03:36,259 ip.set 81 00:03:36,259 --> 00:03:37,259 precio 82 00:03:37,259 --> 00:03:42,120 esto el precio era double 83 00:03:42,120 --> 00:03:44,419 con lo cual ya podemos adelantarnos 84 00:03:44,419 --> 00:03:46,259 a que vamos a necesitar hacer la conversión 85 00:03:47,000 --> 00:03:48,560 de double parse double 86 00:03:48,560 --> 00:03:50,000 de lo que esté 87 00:03:50,000 --> 00:03:51,840 en text precio 88 00:03:51,840 --> 00:03:53,939 punto get 89 00:03:53,939 --> 00:03:54,759 text 90 00:03:54,759 --> 00:03:57,259 ala, el producto ya está 91 00:03:57,259 --> 00:04:00,280 el producto toca añadírselo, ¿a quién toca añadírselo? 92 00:04:00,580 --> 00:04:01,740 al pedido 93 00:04:01,740 --> 00:04:04,000 cuyo id está seleccionado 94 00:04:04,000 --> 00:04:04,819 en el JList 95 00:04:04,819 --> 00:04:07,800 bueno, el JList tenía un modelo 96 00:04:07,800 --> 00:04:09,419 que era este 97 00:04:09,419 --> 00:04:11,419 ¿verdad? 98 00:04:12,020 --> 00:04:14,039 y del modelo lista pedidos 99 00:04:14,039 --> 00:04:16,000 podremos sacar 100 00:04:16,000 --> 00:04:18,220 lo que está seleccionado 101 00:04:18,220 --> 00:04:22,259 A ver, ¿dónde está el evento que ya lo he perdido? 102 00:04:22,339 --> 00:04:23,540 Aquí, vale 103 00:04:23,540 --> 00:04:26,279 Modelo, lista 104 00:04:26,279 --> 00:04:28,180 Pedidos 105 00:04:28,180 --> 00:04:29,379 Vale 106 00:04:29,379 --> 00:04:31,379 Get 107 00:04:31,379 --> 00:04:36,019 O de la lista 108 00:04:36,019 --> 00:04:36,819 ¿No? 109 00:04:37,519 --> 00:04:39,139 Get element at 110 00:04:39,139 --> 00:04:40,300 Ah, está aquí 111 00:04:40,300 --> 00:04:41,819 No, no, no, get element at 112 00:04:41,819 --> 00:04:43,180 No, no, no, esto 113 00:04:43,180 --> 00:04:45,980 Queremos el seleccionado 114 00:04:45,980 --> 00:05:15,959 No está, creo que no está en el modelo. 115 00:05:15,959 --> 00:05:17,779 Este nos da el objeto pedido 116 00:05:17,779 --> 00:05:19,680 enterito. ¡Qué bien! 117 00:05:20,199 --> 00:05:21,740 ¡Qué bien! Y aquí es cuando nos 118 00:05:21,740 --> 00:05:22,800 alegramos un montón. 119 00:05:29,720 --> 00:05:30,160 Vale. 120 00:05:30,379 --> 00:05:32,300 ¿Por qué me dice? Porque falta el punto y coma. 121 00:05:35,300 --> 00:05:36,579 ¡Qué bien y qué suerte 122 00:05:36,579 --> 00:05:38,459 ahora es cómodo 123 00:05:38,459 --> 00:05:40,459 haber parametrizado 124 00:05:41,060 --> 00:05:42,540 nuestra lista pedidos 125 00:05:42,540 --> 00:05:43,959 a pedido. 126 00:05:44,639 --> 00:05:46,860 Porque al haberla parametrizado a pedido 127 00:05:46,860 --> 00:05:48,420 y al haber puesto entonces 128 00:05:48,420 --> 00:05:49,660 luego el modelo como pedido, 129 00:05:49,660 --> 00:05:52,620 Se comporta como una colección 130 00:05:52,620 --> 00:05:53,459 De objetos pedidos 131 00:05:53,459 --> 00:06:03,800 Bueno, es que yo creo que no puedes hacer 132 00:06:03,800 --> 00:06:05,720 Todas las funcionalidades desde el JList 133 00:06:05,720 --> 00:06:07,920 Habría que verlo 134 00:06:07,920 --> 00:06:09,980 Entonces hay funcionalidades 135 00:06:09,980 --> 00:06:11,800 Que tienes que hacer obligatoriamente a través del modelo 136 00:06:11,800 --> 00:06:13,579 Algunas muy básicas no 137 00:06:13,579 --> 00:06:14,459 Pero algunas, dime 138 00:06:14,459 --> 00:06:18,079 Si funciona igual que con el JavaFX 139 00:06:18,079 --> 00:06:20,740 con el Java 140 00:06:20,740 --> 00:06:22,639 el JList no le puedes añadir 141 00:06:22,639 --> 00:06:24,220 directamente el pedido 142 00:06:24,220 --> 00:06:25,920 tienes que usar el modelo 143 00:06:25,920 --> 00:06:28,540 claro, si hay funcionalidades que yo creo que son añadir 144 00:06:28,540 --> 00:06:30,500 que son que no te funcionan 145 00:06:30,500 --> 00:06:32,420 directamente con la lista, tienes que 146 00:06:32,420 --> 00:06:33,800 usar el modelo intermedio 147 00:06:33,800 --> 00:06:37,300 claro 148 00:06:37,300 --> 00:06:40,560 la estructura es como un intermediario 149 00:06:40,560 --> 00:06:42,339 para operativo, el que le da 150 00:06:42,339 --> 00:06:42,939 la operativa 151 00:06:42,939 --> 00:06:46,160 entonces, gracias a que lo hemos 152 00:06:46,160 --> 00:06:48,180 parametrizado, ahora todos los get 153 00:06:48,180 --> 00:06:50,160 o add o todo, van a trabajar 154 00:06:50,160 --> 00:06:52,379 directamente con el objeto, como si fuera una colección 155 00:06:52,379 --> 00:06:54,300 eso a veces lo hace muy pesado 156 00:06:54,300 --> 00:06:55,060 en realidad 157 00:06:55,060 --> 00:06:57,980 incluso sería más rápido si lo hubiéramos 158 00:06:57,980 --> 00:06:59,860 parametrizado como string y le hubiéramos dado 159 00:06:59,860 --> 00:07:02,240 directamente el código o lo que fuera 160 00:07:02,240 --> 00:07:03,959 y luego al hacerle el get ya teníamos 161 00:07:03,959 --> 00:07:05,899 el código directamente, pero aquí estamos sacando 162 00:07:05,899 --> 00:07:07,220 el objeto pedido entero 163 00:07:07,220 --> 00:07:08,980 para sacar de él el código 164 00:07:08,980 --> 00:07:11,019 entonces bueno, hay que 165 00:07:11,019 --> 00:07:14,139 en un momento dado, pues uno calibra, ve en función de su aplicación 166 00:07:14,139 --> 00:07:15,500 pues si le es útil, si no le es útil 167 00:07:15,500 --> 00:07:17,980 nosotros como lo hemos parametrizado a pedido 168 00:07:17,980 --> 00:07:20,040 el get que hagamos 169 00:07:20,040 --> 00:07:21,939 del que esté seleccionado 170 00:07:21,939 --> 00:07:24,420 nos sirve para mucho más 171 00:07:24,420 --> 00:07:26,540 claro, es útil porque nos da el objeto 172 00:07:26,540 --> 00:07:28,920 enterito, y ahora ya nosotros 173 00:07:28,920 --> 00:07:30,500 de este objeto enterito 174 00:07:30,500 --> 00:07:31,899 pues lo que queremos es 175 00:07:31,899 --> 00:07:33,600 acceder 176 00:07:33,600 --> 00:07:36,720 a sus productos 177 00:07:36,720 --> 00:07:39,040 y añadirle 178 00:07:39,040 --> 00:07:40,920 el producto que acabamos 179 00:07:40,920 --> 00:07:41,459 de crear 180 00:07:41,459 --> 00:07:42,819 vale 181 00:07:42,819 --> 00:07:46,459 entonces, ya este botón 182 00:07:46,459 --> 00:07:48,240 no hay nada que hacer, no 183 00:07:48,240 --> 00:07:51,079 no hay nada más que hacer, ha creado el producto 184 00:07:51,079 --> 00:07:52,920 y lo ha añadido a la lista de productos 185 00:07:52,920 --> 00:07:53,540 del pedido 186 00:07:53,540 --> 00:07:56,639 y no hay nada que hacer 187 00:07:56,639 --> 00:07:58,579 luego cuando tengamos hecho consultar 188 00:07:58,579 --> 00:08:00,939 pues podemos comprobar si verdaderamente lo ha añadido 189 00:08:00,939 --> 00:08:03,060 o no, o hemos hecho algo mal 190 00:08:03,060 --> 00:08:05,199 o no, bueno, esto ya estaría 191 00:08:05,199 --> 00:08:09,199 vale, del panel de insertar 192 00:08:09,199 --> 00:08:11,060 no hay más funcionalidades que hacer 193 00:08:11,060 --> 00:08:12,879 tenemos dos botoncitos y ya está 194 00:08:12,879 --> 00:08:14,779 del panel 195 00:08:14,779 --> 00:08:16,100 consultar 196 00:08:16,100 --> 00:08:20,990 que es este 197 00:08:20,990 --> 00:08:29,069 del palen consultar que es este 198 00:08:29,069 --> 00:08:31,009 pues solo un botoncito, un evento 199 00:08:31,009 --> 00:08:33,429 vamos a ponérselo 200 00:08:33,429 --> 00:08:36,889 primero vamos a entender que queremos hacer aquí 201 00:08:36,889 --> 00:08:40,389 que es coger el pedido que está aquí seleccionado 202 00:08:40,389 --> 00:08:43,509 y transformar su información en un texto 203 00:08:43,509 --> 00:08:45,429 que yo pueda poner en el textarea simplemente 204 00:08:45,429 --> 00:08:49,110 pues ya está 205 00:08:49,110 --> 00:08:50,450 esto 206 00:08:50,450 --> 00:08:52,610 de ahí 207 00:08:52,610 --> 00:08:54,929 ala 208 00:08:54,929 --> 00:08:58,049 vale, pues gracias a que está parametrizado 209 00:08:58,049 --> 00:08:59,210 queda muy cómodo 210 00:08:59,210 --> 00:09:01,590 porque nuestro pedido 211 00:09:01,590 --> 00:09:03,950 este de aquí seleccionado 212 00:09:03,950 --> 00:09:04,690 va a ser el 213 00:09:04,690 --> 00:09:07,309 lista pedidos 214 00:09:07,309 --> 00:09:09,990 punto get selected 215 00:09:09,990 --> 00:09:10,690 value 216 00:09:10,690 --> 00:09:13,669 y ahora ya vamos a concatenar 217 00:09:13,669 --> 00:09:15,230 toda su información en un string 218 00:09:15,230 --> 00:09:17,750 para ponerlo en el test área. 219 00:09:19,610 --> 00:09:20,049 Resultado. 220 00:09:21,009 --> 00:09:22,870 Ah, la vamos a hacer una concatenación. 221 00:09:24,330 --> 00:09:26,450 Primero, le vamos a poner a resultado 222 00:09:26,450 --> 00:09:28,190 la descripción del pedido. 223 00:09:35,190 --> 00:09:35,629 Descripción. 224 00:09:36,629 --> 00:09:38,009 El código va, pasamos. 225 00:09:39,129 --> 00:09:40,710 Porque ya lo estamos viendo a la derecha, de hecho. 226 00:09:40,769 --> 00:09:42,250 Le ponemos la descripción del pedido. 227 00:09:42,889 --> 00:09:43,809 ¿Qué más le vamos a poner? 228 00:09:43,970 --> 00:09:47,409 Todos los productos, nombre y lo que cuesta. 229 00:09:47,750 --> 00:09:49,789 Así hacemos alguna operación matemática y eso. 230 00:09:50,190 --> 00:10:18,350 Vale, pues vamos a ir producto por producto. Para cada producto en pet.get productos, primero vamos a poner lo que se ha gastado. Entonces, esto será, bueno, si no tenemos ya las unidades y el precio, pues ya le podemos concatenar resultado más igual el nombre del producto. 231 00:10:20,190 --> 00:10:27,129 el nombre del producto, vamos a ponerle aquí después de la descripción un salto de línea 232 00:10:27,129 --> 00:10:34,769 para que no nos quede tan feo, un salto de línea, el nombre del producto le ponemos 233 00:10:34,769 --> 00:10:42,929 un, bueno voy a poner el precio después, un guioncito con lo que ha costado, que lo 234 00:10:42,929 --> 00:10:44,250 que ha costado es 235 00:10:44,250 --> 00:10:46,269 el precio 236 00:10:46,269 --> 00:10:48,909 por las unidades. 237 00:10:55,879 --> 00:10:57,179 El precio por las 238 00:10:57,179 --> 00:10:58,639 unidades. Vale. 239 00:11:01,100 --> 00:11:03,159 Y un salto de línea. Vamos a poner un salto 240 00:11:03,159 --> 00:11:05,159 de línea también. Vamos a 241 00:11:05,159 --> 00:11:06,639 ponerle un salto de línea 242 00:11:06,639 --> 00:11:09,159 para que nos vaya mostrando los productos 243 00:11:09,159 --> 00:11:09,899 uno tras otro. 244 00:11:11,259 --> 00:11:13,039 En líneas separadas. Cuando el 245 00:11:13,039 --> 00:11:15,000 for ha terminado, ahora en el textarea 246 00:11:15,000 --> 00:11:17,279 Que tu textarea se llama 247 00:11:17,279 --> 00:11:20,399 Tu textarea se llama 248 00:11:20,399 --> 00:11:21,559 Contenido pedido 249 00:11:21,559 --> 00:11:24,019 Pues en 250 00:11:24,019 --> 00:11:25,980 Contenido pedido 251 00:11:25,980 --> 00:11:32,870 Punto set 252 00:11:32,870 --> 00:11:35,570 Contenido pedido 253 00:11:35,570 --> 00:11:36,450 Punto set 254 00:11:36,450 --> 00:11:39,190 Lo he debido poner mal porque no me 255 00:11:39,190 --> 00:11:41,789 O es que está declarada más abajo 256 00:11:41,789 --> 00:11:42,409 Puede ser 257 00:11:42,409 --> 00:11:48,029 Contenido pedido 258 00:11:48,029 --> 00:11:48,389 No 259 00:11:48,389 --> 00:11:51,940 A ver 260 00:11:51,940 --> 00:11:56,090 contenido pedido 261 00:11:56,090 --> 00:11:57,730 se llama 262 00:11:57,730 --> 00:12:00,470 bueno voy a 263 00:12:00,470 --> 00:12:03,789 contenido pedido 264 00:12:03,789 --> 00:12:05,629 punto set test 265 00:12:05,629 --> 00:12:07,350 resultado 266 00:12:07,350 --> 00:12:10,129 y ahora vamos a ver que pasa con contenido pedido 267 00:12:10,129 --> 00:12:12,110 donde está para que no me la encuentre 268 00:12:12,110 --> 00:12:16,450 haz control F 269 00:12:16,450 --> 00:12:20,690 si bueno ya que me he puesto a navegar por aquí 270 00:12:20,690 --> 00:12:25,659 a ver vamos a hacer una cosa 271 00:12:25,659 --> 00:12:27,759 la voy a sacar fuera y eso va a ser más rápido 272 00:12:27,759 --> 00:12:29,659 estamos en consultar 273 00:12:29,659 --> 00:12:33,860 Contenido pedido. 274 00:12:33,980 --> 00:12:36,659 La voy a sacar a campo de la clase. 275 00:12:39,179 --> 00:12:40,960 Y me ahorro los problemas. 276 00:12:45,139 --> 00:12:46,860 Debía estar más abajo declarada. 277 00:12:47,139 --> 00:12:51,679 Entonces, al sacarla a variable de clase, ya no hay problema. 278 00:12:52,320 --> 00:12:54,259 Bueno, pues vamos a ver si hasta ahí funciona. 279 00:12:54,379 --> 00:12:55,820 Porque ahora ya sí que puedes hacer comprobaciones. 280 00:12:55,820 --> 00:12:59,639 Venga, vamos a añadir 281 00:12:59,639 --> 00:13:01,679 El pedido de bolis famoso 282 00:13:01,679 --> 00:13:06,220 Y le vamos a poner un producto 283 00:13:06,220 --> 00:13:08,220 Un producto 284 00:13:08,220 --> 00:13:08,840 Boli azul 285 00:13:08,840 --> 00:13:16,370 Tres y tres 286 00:13:16,370 --> 00:13:21,980 Tres euros 287 00:13:21,980 --> 00:13:23,580 Empezamos bien 288 00:13:23,580 --> 00:13:25,340 Tres euros un boli 289 00:13:25,340 --> 00:13:31,820 Vale 290 00:13:31,820 --> 00:13:33,820 Vale 291 00:13:33,820 --> 00:13:36,679 null pointer exception 292 00:13:36,679 --> 00:13:38,799 no podemos 293 00:13:38,799 --> 00:13:41,100 encontrar porque pedido 294 00:13:41,100 --> 00:13:42,840 es null, vale 295 00:13:42,840 --> 00:13:44,620 vamos a arreglarlo 296 00:13:44,620 --> 00:13:46,620 esto es lo más maravilloso 297 00:13:46,620 --> 00:13:48,559 cuando salen estas letras rojas os tiene que dar 298 00:13:48,559 --> 00:13:50,259 un subidón de placer que te cagas 299 00:13:50,259 --> 00:13:52,259 porque no hay cosa más bonita en programación 300 00:13:52,259 --> 00:13:55,019 que encontrar un error, es mucho mejor que programar 301 00:13:55,019 --> 00:14:00,759 vale, si, si estás en un examen 302 00:14:00,759 --> 00:14:02,740 no, pero en el resto de situaciones de la vida es lo mejor 303 00:14:02,740 --> 00:14:04,259 del mundo. 304 00:14:06,379 --> 00:14:06,820 Vale. 305 00:14:07,059 --> 00:14:08,179 Entonces, el error, 306 00:14:09,019 --> 00:14:10,480 vosotros rápidamente lo que 307 00:14:10,480 --> 00:14:12,460 hacéis es, bajáis en toda la traza 308 00:14:12,460 --> 00:14:14,580 hasta llegar a la primera 309 00:14:14,580 --> 00:14:16,539 línea, que en este caso es la primera, pero podría estar 310 00:14:16,539 --> 00:14:18,500 más abajo, la primera que ya es propia de vuestro 311 00:14:18,500 --> 00:14:20,019 código, que no son clases internas. 312 00:14:20,500 --> 00:14:22,240 Ya hemos llegado. Vale. 313 00:14:22,419 --> 00:14:24,019 P es nul. 314 00:14:26,120 --> 00:14:26,600 Eh... 315 00:14:26,600 --> 00:14:27,740 Ah, porque no tienes ningún pedido de selección. 316 00:14:27,879 --> 00:14:28,919 Exacto, no tienes ningún pedido de selección. 317 00:14:30,460 --> 00:14:30,740 Ah. 318 00:14:30,740 --> 00:14:33,940 claro, claro, claro 319 00:14:33,940 --> 00:14:36,240 muy bien, muy bien, muy listos 320 00:14:36,240 --> 00:14:38,000 y muy rápidos sois, vale 321 00:14:38,000 --> 00:14:41,220 venga, pues ya está 322 00:14:41,220 --> 00:14:44,019 con esta otra base de datos hay que meterlo todo el rato 323 00:14:44,019 --> 00:14:45,919 venga, un pedido de bolis 324 00:14:45,919 --> 00:14:47,740 y ahora vamos a añadir producto 325 00:14:47,740 --> 00:14:50,039 que si, antes de darle al botoncito 326 00:14:50,039 --> 00:14:52,059 tranquila, puedo esperar 327 00:14:52,059 --> 00:14:53,179 y escribir primero, ¿no? 328 00:14:54,940 --> 00:14:56,259 ahora, ahora 329 00:14:56,259 --> 00:14:56,840 sí 330 00:15:00,740 --> 00:15:08,899 Añadir pedido, claro, debería efectivamente poner esto deshabilitado mientras no hayamos seleccionado un este de aquí. 331 00:15:11,419 --> 00:15:16,919 Bueno, eso ya lo hacéis vosotros. 332 00:15:18,799 --> 00:15:27,899 Consultar, vamos a ver si realmente, aquí está, bolis, boli azul, vale, pues aquí está. 333 00:15:27,899 --> 00:15:30,100 Vamos a ver si hubiera otro. 334 00:15:34,320 --> 00:15:34,919 Aquí. 335 00:15:37,559 --> 00:15:38,500 Ya está. 336 00:15:42,179 --> 00:15:44,340 Sí, tres al pedido de gomas. 337 00:15:44,720 --> 00:15:44,980 Vale. 338 00:15:45,080 --> 00:15:47,340 Y voy a añadirle también la goma al pedido de bolis. 339 00:15:48,299 --> 00:15:50,039 Venga, vamos a consultar. 340 00:15:50,259 --> 00:15:51,940 El de bolis tiene este. 341 00:15:52,899 --> 00:15:55,039 Y el de gomas tiene esto. 342 00:15:55,259 --> 00:15:56,200 Vale, todo muy bien. 343 00:15:56,200 --> 00:15:59,440 salvo porque es verdad que si arreglamos la confusión 344 00:15:59,440 --> 00:16:00,740 de que no haya nada seleccionado 345 00:16:00,740 --> 00:16:02,039 deshabilitándolo 346 00:16:02,039 --> 00:16:05,139 bueno, pues actualizar, un botoncito falta 347 00:16:05,139 --> 00:16:10,659 actualizar 348 00:16:10,659 --> 00:16:13,340 para cambiar la descripción 349 00:16:13,340 --> 00:16:13,899 ya está 350 00:16:13,899 --> 00:16:15,120 pues nada 351 00:16:15,120 --> 00:16:18,980 actualizamos 352 00:16:18,980 --> 00:16:21,559 cogemos el pedido 353 00:16:21,559 --> 00:16:23,340 o sea, podemos copiar y pegar del otro 354 00:16:23,340 --> 00:16:24,620 pero bueno, vale, para no 355 00:16:24,620 --> 00:16:28,500 cogemos pedido 356 00:16:28,500 --> 00:16:30,860 p igual a 357 00:16:30,860 --> 00:16:32,580 lista 358 00:16:32,580 --> 00:16:34,639 pedidos.get 359 00:16:34,639 --> 00:16:37,820 selected valid 360 00:16:37,820 --> 00:16:40,559 y ahora 361 00:16:40,559 --> 00:16:44,519 voy a evitarme 362 00:16:44,519 --> 00:16:45,860 los null pointer exception 363 00:16:49,860 --> 00:16:51,740 si p es diferente 364 00:16:51,740 --> 00:16:52,419 de null 365 00:16:52,419 --> 00:16:56,059 p.setDescripción 366 00:16:56,059 --> 00:16:59,179 y ahora el texto de descripción se llama 367 00:16:59,179 --> 00:17:05,980 textDescripciónAct 368 00:17:05,980 --> 00:17:07,700 solo Act, no hay 369 00:17:07,700 --> 00:17:10,279 Act, vale 370 00:17:10,279 --> 00:17:14,539 pues este se llama entonces 371 00:17:14,539 --> 00:17:20,000 ponemos la nueva descripción como 372 00:17:20,000 --> 00:17:25,180 textDescripción 373 00:17:25,180 --> 00:17:29,539 act.gettext 374 00:17:29,539 --> 00:17:33,220 vale, si es nul, si es diferente de nul 375 00:17:33,220 --> 00:17:37,660 y si es nul, el se le vamos a decir 376 00:17:37,660 --> 00:17:41,059 seleccione un producto y así mirad que bonito 377 00:17:41,059 --> 00:17:52,829 showMessageDialog 378 00:17:52,829 --> 00:17:59,230 seleccione 379 00:17:59,230 --> 00:18:01,950 producto de la lista 380 00:18:01,950 --> 00:18:11,759 vale, pues venga 381 00:18:11,759 --> 00:18:14,299 vamos a hacer un pedido 382 00:18:14,299 --> 00:18:16,460 añadimos pedido 383 00:18:16,460 --> 00:18:19,880 y vamos a actualizarle 384 00:18:19,880 --> 00:18:22,220 la descripción 385 00:18:22,220 --> 00:18:24,200 en vez de bolis lo voy a cambiar a gomas 386 00:18:24,200 --> 00:18:25,960 entonces efectivamente si yo le hago así 387 00:18:25,960 --> 00:18:28,079 me dice, eh no, ya no me sale 388 00:18:28,079 --> 00:18:30,140 No, no, no 389 00:18:30,140 --> 00:18:31,480 Selecciona producto de la lista 390 00:18:31,480 --> 00:18:32,880 Vale, selecciono 391 00:18:32,880 --> 00:18:36,059 Ahora ya sí, me debería seguir un producto actualizado 392 00:18:36,059 --> 00:18:38,160 Porque si no, vamos a consultarlo 393 00:18:38,160 --> 00:18:39,579 A ver si 394 00:18:39,579 --> 00:18:42,740 ¿Veis? En cuanto he seleccionado 395 00:18:42,740 --> 00:18:43,940 Ya me ha cambiado 396 00:18:43,940 --> 00:18:45,880 Aquí está, vale 397 00:18:52,220 --> 00:18:52,660 Fijaos 398 00:18:52,660 --> 00:18:54,400 ¿Os habéis dado cuenta de cómo ha funcionado? 399 00:18:55,339 --> 00:18:56,539 Gracias a que está el modelo 400 00:18:56,539 --> 00:18:57,859 Ha refrescado automáticamente 401 00:18:57,859 --> 00:19:00,059 Voy a volver a actualizarlo 402 00:19:00,059 --> 00:19:03,000 este pedido de gomas le cambio la descripción 403 00:19:03,000 --> 00:19:03,779 a rotus 404 00:19:03,779 --> 00:19:07,039 cambiar, ha cambiado pero aquí no ha cambiado 405 00:19:07,039 --> 00:19:09,099 todavía, hasta que no pinche yo aquí 406 00:19:09,099 --> 00:19:10,319 no ha cambiado 407 00:19:10,319 --> 00:19:14,519 vale, y ahora ya solo nos 408 00:19:14,519 --> 00:19:15,500 falta eliminar 409 00:19:15,500 --> 00:19:20,940 eliminar 410 00:19:20,940 --> 00:19:26,269 que está aquí 411 00:19:26,269 --> 00:19:32,410 y eliminar ya pide 412 00:19:32,410 --> 00:19:33,670 que eliminemos de la colección 413 00:19:33,670 --> 00:19:34,950 y del modelo 414 00:19:34,950 --> 00:19:38,930 vale, pues cogemos el pedido 415 00:19:38,930 --> 00:19:42,089 de nuevo 416 00:19:42,089 --> 00:19:44,509 de lista pedidos 417 00:19:44,509 --> 00:19:50,619 vale 418 00:19:50,619 --> 00:19:51,380 ahora 419 00:19:51,380 --> 00:19:55,200 vamos a quitarlo 420 00:19:55,200 --> 00:19:56,859 del map 421 00:19:56,859 --> 00:20:01,210 datos.delete 422 00:20:01,210 --> 00:20:01,789 pedido 423 00:20:01,789 --> 00:20:04,769 y le vamos a decir 424 00:20:04,769 --> 00:20:06,750 que borre el pedido con ese código 425 00:20:06,750 --> 00:20:08,789 ya está 426 00:20:08,789 --> 00:20:09,950 en la colección borrado 427 00:20:09,950 --> 00:20:12,549 bueno 428 00:20:12,549 --> 00:20:14,109 vamos a decirle lo mismo 429 00:20:14,109 --> 00:20:15,509 si pedido es diferente de null 430 00:20:15,509 --> 00:20:17,029 si no seleccione pedido 431 00:20:17,029 --> 00:20:28,579 Si es diferente de null 432 00:20:28,579 --> 00:20:30,619 Hacemos ya todo eso 433 00:20:30,619 --> 00:20:31,900 Borramos 434 00:20:31,900 --> 00:20:34,240 Y vamos a quitarlo del modelo también 435 00:20:34,240 --> 00:20:36,420 Entonces modelo 436 00:20:36,420 --> 00:20:37,720 Lista 437 00:20:37,720 --> 00:20:40,140 Pedidos 438 00:20:40,140 --> 00:20:42,200 Tendrá un, si no tiene este el remove 439 00:20:42,200 --> 00:20:43,900 Pues tendrá, lo tendrá el otro 440 00:20:43,900 --> 00:20:51,369 Remove 441 00:20:51,369 --> 00:20:57,450 Remove element 442 00:20:57,450 --> 00:20:59,849 y le decimos que borre pedido. 443 00:21:02,369 --> 00:21:04,150 Vale, borre este pedido. 444 00:21:07,789 --> 00:21:12,839 Y si no, pues lo mismo. 445 00:21:13,140 --> 00:21:14,359 Por favor, selecciona. 446 00:21:26,759 --> 00:21:27,880 Selecciona pedido. 447 00:21:30,680 --> 00:21:33,279 Pues borrar ya estaría 448 00:21:33,279 --> 00:21:35,079 Borrado de la colección 449 00:21:35,079 --> 00:21:36,880 Y borrado del modelo de 450 00:21:36,880 --> 00:21:37,539 ListView 451 00:21:37,539 --> 00:21:40,319 Y vamos a ver si realmente no funciona 452 00:21:40,319 --> 00:21:44,799 Añadimos este pedido 453 00:21:44,799 --> 00:21:45,319 Vale 454 00:21:45,319 --> 00:21:48,960 Vamos a eliminar este pedido 455 00:21:48,960 --> 00:21:50,119 Eliminado 456 00:21:50,119 --> 00:21:52,700 Ya está, lo he eliminado de aquí 457 00:21:52,700 --> 00:21:54,319 Y 458 00:21:54,319 --> 00:21:55,619 Y si 459 00:21:55,619 --> 00:21:57,819 Yo no tengo ninguno, pues me dice 460 00:21:57,819 --> 00:21:59,039 Hombre, selecciona uno, claro 461 00:21:59,039 --> 00:22:01,079 hala, pues ya está 462 00:22:01,079 --> 00:22:02,480 completa 463 00:22:02,480 --> 00:22:03,980 vale