﻿1
00:00:01,180 --> 00:00:03,630
‫-: Creemos ahora, muy rápido, el

2
00:00:03,630 --> 00:00:06,700
‫modelo para nuestras reservas para que luego, en el

3
00:00:06,700 --> 00:00:09,873
‫siguiente video, podamos empezar a crear algunas reservas reales.

4
00:00:11,590 --> 00:00:13,490
‫Entonces, cierre

5
00:00:13,490 --> 00:00:18,073
‫algunos de estos archivos aquí, también estas carpetas.

6
00:00:21,965 --> 00:00:26,070
‫Aquí está la carpeta de modelos y el modelo de reserva. js.

7
00:00:30,170 --> 00:00:32,700
‫Y esto, por supuesto, será muy similar a

8
00:00:32,700 --> 00:00:34,860
‫lo que ya hicimos antes, así que

9
00:00:34,860 --> 00:00:36,510
‫lo haré bastante rápido.

10
00:00:40,290 --> 00:00:43,463
‫Entonces, como siempre, necesitamos mangosta, y creamos nuestro

11
00:00:48,362 --> 00:00:52,043
‫esquema de reserva mangosta. Schema, y ahora,

12
00:00:57,560 --> 00:00:59,890
‫recuerde cómo dijimos antes que íbamos

13
00:00:59,890 --> 00:01:01,850
‫a usar referencias de párrafos

14
00:01:01,850 --> 00:01:05,350
‫aquí en las reservas, básicamente manteniendo una referencia al

15
00:01:05,350 --> 00:01:08,853
‫recorrido y también al usuario que reservó el recorrido.

16
00:01:10,030 --> 00:01:11,743
‫Entonces eso es muy fácil.

17
00:01:15,624 --> 00:01:17,660
‫Hicimos esto muchas veces antes.

18
00:01:17,660 --> 00:01:21,457
‫Tan mangosta. Esquema. ObjectId, ¿verdad?

19
00:01:24,700 --> 00:01:28,310
‫Y luego la referencia, y esta va

20
00:01:28,310 --> 00:01:31,670
‫a apuntar al modelo de gira.

21
00:01:31,670 --> 00:01:34,423
‫Entonces, digamos también que estos

22
00:01:39,200 --> 00:01:43,960
‫son obligatorios, la reserva debe pertenecer a un Tour.

23
00:01:47,278 --> 00:01:49,200
‫Ahora, tomemos esto

24
00:01:53,490 --> 00:01:58,060
‫y creemos lo mismo para un usuario, ¿de acuerdo?

25
00:01:58,060 --> 00:02:00,420
‫Así que eso es lo que acabamos de decir

26
00:02:00,420 --> 00:02:02,360
‫que íbamos a hacer manteniendo una referencia

27
00:02:02,360 --> 00:02:05,853
‫tanto del recorrido que se está comprando como del usuario que realiza la compra.

28
00:02:07,260 --> 00:02:09,470
‫Luego, también queremos saber el precio

29
00:02:09,470 --> 00:02:11,840
‫al que realmente se realizó la compra, y

30
00:02:11,840 --> 00:02:14,200
‫eso se debe a que el precio

31
00:02:14,200 --> 00:02:17,250
‫podría cambiar en el futuro, por lo que ya no

32
00:02:17,250 --> 00:02:19,910
‫sabríamos cuánto pagó un determinado usuario por un recorrido.

33
00:02:19,910 --> 00:02:23,160
‫Por eso, es importante tener esto también aquí

34
00:02:23,160 --> 00:02:26,763
‫en la reserva, por lo que será un número,

35
00:02:28,560 --> 00:02:30,533
‫y también lo requerimos,

36
00:02:35,560 --> 00:02:38,443
‫la reserva debe tener un precio.

37
00:02:45,100 --> 00:02:48,667
‫A continuación, creemos también nuestra marca de tiempo createdAt, que es una

38
00:02:52,340 --> 00:02:53,343
‫fecha, y

39
00:02:54,300 --> 00:02:56,410
‫luego simplemente agreguemos el valor predeterminado para

40
00:02:56,410 --> 00:02:58,323
‫que no tengamos que hacer nada.

41
00:03:01,070 --> 00:03:04,483
‫Finalmente, también quiero crear una propiedad paga, y

42
00:03:05,850 --> 00:03:09,810
‫esta se establecerá automáticamente en verdadero, pero esto es solo

43
00:03:09,810 --> 00:03:12,050
‫en caso de que, por

44
00:03:12,050 --> 00:03:14,360
‫ejemplo, un administrador quiera crear una

45
00:03:14,360 --> 00:03:16,250
‫reserva fuera de Stripe.

46
00:03:16,250 --> 00:03:19,550
‫Entonces, por ejemplo, si un cliente no tiene tarjeta de

47
00:03:19,550 --> 00:03:22,940
‫crédito y quiere pagar directamente, como en una tienda con efectivo,

48
00:03:22,940 --> 00:03:24,330
‫o algo así.

49
00:03:24,330 --> 00:03:27,050
‫Y en este caso, un administrador podría usar

50
00:03:27,050 --> 00:03:29,740
‫nuestra API de reservas para crear básicamente

51
00:03:29,740 --> 00:03:33,430
‫un recorrido manualmente, y para que luego se pague o aún

52
00:03:33,430 --> 00:03:34,683
‫no se pague.

53
00:03:37,140 --> 00:03:39,163
‫Así que solo un detalle

54
00:03:41,180 --> 00:03:44,210
‫muy pequeño aquí, con solo pensar en eso, y

55
00:03:44,210 --> 00:03:46,670
‫pensé que podría ser interesante incluirlo aquí también.

56
00:03:46,670 --> 00:03:49,070
‫Pero claro, por defecto, será cierto para que

57
00:03:49,070 --> 00:03:50,920
‫no tengamos que hacer nada.

58
00:03:52,790 --> 00:03:56,663
‫Ahora, finalmente, creemos un modelo a partir de esto, para que la

59
00:03:59,440 --> 00:04:03,793
‫reserva sea igual a la mangosta. modelo, y luego, por

60
00:04:10,510 --> 00:04:13,444
‫supuesto, nuestro bookingSchema y luego exportar

61
00:04:13,444 --> 00:04:15,183
‫todo, es

62
00:04:19,850 --> 00:04:21,770
‫igual a Booking.

63
00:04:21,770 --> 00:04:23,680
‫Ahora, lo que también

64
00:04:23,680 --> 00:04:27,850
‫queremos hacer aquí es completar el recorrido y el usuario automáticamente

65
00:04:27,850 --> 00:04:30,890
‫siempre que haya una consulta, ¿de acuerdo?

66
00:04:30,890 --> 00:04:33,220
‫Así que recuerde cómo solíamos hacer eso usando

67
00:04:33,220 --> 00:04:34,723
‫el middleware de consultas.

68
00:04:35,770 --> 00:04:39,210
‫Entonces, justo en el esquema. pre, y luego

69
00:04:39,210 --> 00:04:42,470
‫aquí o como expresión regular habitual y lo

70
00:04:43,990 --> 00:04:46,183
‫que sea que comience con find.

71
00:04:50,640 --> 00:04:53,363
‫Así que aquí sigue,

72
00:04:55,240 --> 00:05:00,240
‫y luego esto. poblar, y hagámoslo realmente automáticamente

73
00:05:00,970 --> 00:05:02,760
‫tanto para

74
00:05:02,760 --> 00:05:05,450
‫el usuario como para los recorridos.

75
00:05:05,450 --> 00:05:07,810
‫Y en este caso, eso

76
00:05:07,810 --> 00:05:10,220
‫no es ningún problema para el

77
00:05:10,220 --> 00:05:14,170
‫rendimiento, porque no habrá muchas llamadas a las reservas, porque

78
00:05:14,170 --> 00:05:17,600
‫solo los guías y administradores podrán hacerlo, ¿de acuerdo?

79
00:05:17,600 --> 00:05:19,590
‫Entonces, básicamente, para que un guía

80
00:05:19,590 --> 00:05:21,920
‫lo verifique, en realidad se reservaron sus recorridos.

81
00:05:21,920 --> 00:05:23,980
‫Entonces ese es uno de los casos

82
00:05:23,980 --> 00:05:27,000
‫de uso que veo para esta parte de la API, ¿de acuerdo?

83
00:05:27,000 --> 00:05:30,140
‫Entonces, nuevamente, esta consulta no ocurrirá con tanta frecuencia, por

84
00:05:30,140 --> 00:05:32,350
‫lo que podemos completar fácilmente todo esto

85
00:05:32,350 --> 00:05:33,493
‫sin ningún problema.

86
00:05:35,120 --> 00:05:37,850
‫Así que completemos también el recorrido, pero

87
00:05:37,850 --> 00:05:40,833
‫aquí solo quiero seleccionar el nombre del recorrido.

88
00:05:42,410 --> 00:05:47,410
‫Entonces, digamos ruta, recorrido y seleccione solo el nombre, ¿de acuerdo?

89
00:05:52,400 --> 00:05:56,070
‫Ahora bien, aquí tenemos algún tipo de error, de acuerdo, por

90
00:05:56,070 --> 00:05:59,413
‫lo que, por supuesto, debería ser mangosta, no moongoose.

91
00:06:01,250 --> 00:06:05,420
‫Entonces, una vez más, ESLint nos salvó aquí.

92
00:06:05,420 --> 00:06:07,163
‫Ah, y de hecho hay más.

93
00:06:08,860 --> 00:06:12,260
‫Guárdalo una vez más, y ahora estamos bien.

94
00:06:12,260 --> 00:06:14,060
‫Entonces eso es realmente.

95
00:06:14,060 --> 00:06:15,540
‫Este es nuestro modelo de reservas

96
00:06:16,429 --> 00:06:18,613
‫que ahora podemos comenzar a usar en el siguiente video.

