test-entity-library-asm 3.2.1 → 3.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { DiscountCodeUser, LocalPlan, PosSystem, Request } from "..";
1
+ import { DiscountCodeUser, LocalPlan, PosSystem, RequestLocal } from "..";
2
2
  import { BusinessTypeProduct } from "./BusinessTypeProduct";
3
3
  import { Category } from "./Category";
4
4
  import { City } from "./City";
@@ -26,7 +26,7 @@ export declare class Local {
26
26
  status: number;
27
27
  visible: number;
28
28
  locals_partners: Partner[];
29
- requests_local: Request[];
29
+ requests_local: RequestLocal[];
30
30
  categories: Category[];
31
31
  payment_methods: PaymentMethod[];
32
32
  qualifications: LocalQualification[];
@@ -144,18 +144,7 @@ var Local = /** @class */ (function () {
144
144
  __metadata("design:type", Array)
145
145
  ], Local.prototype, "locals_partners", void 0);
146
146
  __decorate([
147
- (0, typeorm_1.ManyToMany)(function () { return __1.Request; }, function (request) { return request.requests_local; }),
148
- (0, typeorm_1.JoinTable)({
149
- name: "request_local",
150
- joinColumn: {
151
- name: "local",
152
- referencedColumnName: "id",
153
- },
154
- inverseJoinColumn: {
155
- name: "request",
156
- referencedColumnName: "id",
157
- },
158
- }),
147
+ (0, typeorm_1.OneToMany)(function () { return __1.RequestLocal; }, function (requestLocal) { return requestLocal.local; }),
159
148
  __metadata("design:type", Array)
160
149
  ], Local.prototype, "requests_local", void 0);
161
150
  __decorate([
@@ -1,4 +1,4 @@
1
- import { Category, MasterNotification, PartnerSession, Product, VerifyLocal } from "..";
1
+ import { Category, MasterNotification, PartnerSession, Product, RequestLocalHistory, VerifyLocal } from "..";
2
2
  import { City } from "./City";
3
3
  import { Company } from "./Company";
4
4
  import { DiscountCodeUser } from "./DiscountCodeUser";
@@ -37,4 +37,5 @@ export declare class Partner {
37
37
  partners_category_update_by: Category[];
38
38
  partners_category_created_by: Category[];
39
39
  partners_session: PartnerSession[];
40
+ updated_by_history: RequestLocalHistory[];
40
41
  }
@@ -229,6 +229,10 @@ var Partner = /** @class */ (function () {
229
229
  (0, typeorm_1.OneToMany)(function () { return __1.PartnerSession; }, function (partnerSession) { return partnerSession.partner; }),
230
230
  __metadata("design:type", Array)
231
231
  ], Partner.prototype, "partners_session", void 0);
232
+ __decorate([
233
+ (0, typeorm_1.OneToMany)(function () { return __1.RequestLocalHistory; }, function (requestLocalHistory) { return requestLocalHistory.updated_by; }),
234
+ __metadata("design:type", Array)
235
+ ], Partner.prototype, "updated_by_history", void 0);
232
236
  Partner = __decorate([
233
237
  (0, typeorm_1.Entity)({
234
238
  comment: "Tabla agregada para los usuarios qué quieran registrar su local o empresa de comida rápida en la plataforma.\r\n\r\nEste usuario es independiente a los usuarios de la tabla `user` ya que tiene diferentes plataformas.\r\n\r\nTambién van a estar los usuarios qué el administrador/dueño desee agregar como empleados/colaboradores.",
@@ -1,8 +1,7 @@
1
- import { Local } from "..";
1
+ import { RequestLocal } from "..";
2
2
  import { PaymentMethod } from "./PaymentMethod";
3
3
  import { RequestProduct } from "./RequestProduct";
4
4
  import { RequestProductGroupComplement } from "./RequestProductGroupComplement";
5
- import { RequestStatus } from "./RequestStatus";
6
5
  import { User } from "./User";
7
6
  export declare class Request {
8
7
  id: number;
@@ -13,12 +12,12 @@ export declare class Request {
13
12
  payment_method: PaymentMethod;
14
13
  order_cost: string;
15
14
  paid_status: number;
16
- status: RequestStatus;
15
+ status: number;
17
16
  details: string;
18
17
  comments: string;
19
18
  created: Date;
20
19
  updated: Date;
21
- requests_local: Local[];
20
+ requests_local: RequestLocal[];
22
21
  requests_group: User[];
23
22
  request_products: RequestProduct[];
24
23
  request_product_group_complements: RequestProductGroupComplement[];
@@ -16,7 +16,6 @@ var dateTransformer_1 = require("../transformers/dateTransformer");
16
16
  var PaymentMethod_1 = require("./PaymentMethod");
17
17
  var RequestProduct_1 = require("./RequestProduct");
18
18
  var RequestProductGroupComplement_1 = require("./RequestProductGroupComplement");
19
- var RequestStatus_1 = require("./RequestStatus");
20
19
  var User_1 = require("./User");
21
20
  var Request = /** @class */ (function () {
22
21
  function Request() {
@@ -81,12 +80,11 @@ var Request = /** @class */ (function () {
81
80
  __metadata("design:type", Number)
82
81
  ], Request.prototype, "paid_status", void 0);
83
82
  __decorate([
84
- (0, typeorm_1.ManyToOne)(function () { return RequestStatus_1.RequestStatus; }, function (requestStatus) { return requestStatus.requests; }, {
85
- onDelete: "RESTRICT",
86
- onUpdate: "NO ACTION",
83
+ (0, typeorm_1.Column)({
84
+ default: 0,
85
+ comment: "Estado en el que se encuentra un pedido.\r\n0. En proceso: El usuario está agregando los productos del/los local/es.\r\n1. Creado: El usuario ya creó el pedido con los prductos en los/el local/es especificado/s.\r\n2. Cancelado: El usuario canceló el pedido, esto sólo se permite si aún no está pago el pedido.\r\n3. Rechazado: Si un local canceló el pedido por x circustancias. Cabe resaltar que si el pedido fue solicitado a más de un local, el estado 3 sólo se agregaría al pedido si todos los locales cancelaron (Se tiene un estado para cada local en la tabla request_local) -> Aún no se sabe si este estado va.\r\n4. Finalizado: El pedido fue entregado y también pagado. Si el pedido se realizó en varios locales, entonces sólo se pasará a Finalizado, cuando todos los locales a los que se le hizo el pedido están pagos y con los productos entregados.",
87
86
  }),
88
- (0, typeorm_1.JoinColumn)({ name: "status" }),
89
- __metadata("design:type", RequestStatus_1.RequestStatus)
87
+ __metadata("design:type", Number)
90
88
  ], Request.prototype, "status", void 0);
91
89
  __decorate([
92
90
  (0, typeorm_1.Column)({
@@ -121,18 +119,7 @@ var Request = /** @class */ (function () {
121
119
  __metadata("design:type", Date)
122
120
  ], Request.prototype, "updated", void 0);
123
121
  __decorate([
124
- (0, typeorm_1.ManyToMany)(function () { return __1.Local; }, function (local) { return local.requests_local; }),
125
- (0, typeorm_1.JoinTable)({
126
- name: "request_local",
127
- joinColumn: {
128
- name: "request",
129
- referencedColumnName: "id",
130
- },
131
- inverseJoinColumn: {
132
- name: "local",
133
- referencedColumnName: "id",
134
- },
135
- }),
122
+ (0, typeorm_1.OneToMany)(function () { return __1.RequestLocal; }, function (requestLocal) { return requestLocal.request; }),
136
123
  __metadata("design:type", Array)
137
124
  ], Request.prototype, "requests_local", void 0);
138
125
  __decorate([
@@ -0,0 +1,9 @@
1
+ import { Local, Request, RequestLocalHistory } from "..";
2
+ export declare class RequestLocal {
3
+ id: number;
4
+ request: Request;
5
+ local: Local;
6
+ total_cost: string;
7
+ status: number;
8
+ requests_local_history: RequestLocalHistory[];
9
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RequestLocal = void 0;
13
+ var typeorm_1 = require("typeorm");
14
+ var __1 = require("..");
15
+ var RequestLocal = /** @class */ (function () {
16
+ function RequestLocal() {
17
+ }
18
+ __decorate([
19
+ (0, typeorm_1.PrimaryGeneratedColumn)(),
20
+ __metadata("design:type", Number)
21
+ ], RequestLocal.prototype, "id", void 0);
22
+ __decorate([
23
+ (0, typeorm_1.ManyToOne)(function () { return __1.Request; }, function (request) { return request.requests_local; }, {
24
+ onDelete: "CASCADE",
25
+ }),
26
+ (0, typeorm_1.JoinColumn)({ name: "request" }),
27
+ __metadata("design:type", __1.Request)
28
+ ], RequestLocal.prototype, "request", void 0);
29
+ __decorate([
30
+ (0, typeorm_1.ManyToOne)(function () { return __1.Local; }, function (local) { return local.requests_local; }, {
31
+ onDelete: "CASCADE",
32
+ }),
33
+ (0, typeorm_1.JoinColumn)({ name: "local" }),
34
+ __metadata("design:type", __1.Local)
35
+ ], RequestLocal.prototype, "local", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.Column)({
38
+ length: 20,
39
+ comment: "Costo total del pedido. ",
40
+ }),
41
+ __metadata("design:type", String)
42
+ ], RequestLocal.prototype, "total_cost", void 0);
43
+ __decorate([
44
+ (0, typeorm_1.Column)({
45
+ default: 1,
46
+ comment: "Estado en el que se encuentra un pedido.\r\n0. En proceso: El usuario está agregando los productos del/los local/es.\r\n1. Creado: El usuario ya creó el pedido con los prductos en los/el local/es especificado/s.\r\n2. Cancelado: El usuario canceló el pedido, esto sólo se permite si aún no está pago el pedido.\r\n3. Rechazado: Si un local canceló el pedido por x circustancias. Cabe resaltar que si el pedido fue solicitado a más de un local, el estado 3 sólo se agregaría al pedido si todos los locales cancelaron (Se tiene un estado para cada local en la tabla request_local) -> Aún no se sabe si este estado va.\r\n4. Finalizado: El pedido fue entregado y también pagado. Si el pedido se realizó en varios locales, entonces sólo se pasará a Finalizado, cuando todos los locales a los que se le hizo el pedido están pagos y con los productos entregados.",
47
+ }),
48
+ __metadata("design:type", Number)
49
+ ], RequestLocal.prototype, "status", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.OneToMany)(function () { return __1.RequestLocalHistory; }, function (requestLocalHistory) { return requestLocalHistory.request_local; }),
52
+ __metadata("design:type", Array)
53
+ ], RequestLocal.prototype, "requests_local_history", void 0);
54
+ RequestLocal = __decorate([
55
+ (0, typeorm_1.Entity)({
56
+ comment: "Tabla para guardar las relaciones de un pedido y los locales",
57
+ name: "request_local",
58
+ })
59
+ ], RequestLocal);
60
+ return RequestLocal;
61
+ }());
62
+ exports.RequestLocal = RequestLocal;
@@ -0,0 +1,9 @@
1
+ import { Partner, RequestLocal } from "..";
2
+ export declare class RequestLocalHistory {
3
+ id: number;
4
+ request_local: RequestLocal;
5
+ status: number;
6
+ comment: string;
7
+ updated_by: Partner;
8
+ updated: Date;
9
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RequestLocalHistory = void 0;
13
+ var typeorm_1 = require("typeorm");
14
+ var __1 = require("..");
15
+ var dateTransformer_1 = require("../transformers/dateTransformer");
16
+ var RequestLocalHistory = /** @class */ (function () {
17
+ function RequestLocalHistory() {
18
+ }
19
+ __decorate([
20
+ (0, typeorm_1.PrimaryGeneratedColumn)(),
21
+ __metadata("design:type", Number)
22
+ ], RequestLocalHistory.prototype, "id", void 0);
23
+ __decorate([
24
+ (0, typeorm_1.ManyToOne)(function () { return __1.RequestLocal; }, function (requestLocal) { return requestLocal.requests_local_history; }, {
25
+ onDelete: "CASCADE",
26
+ onUpdate: "NO ACTION",
27
+ }),
28
+ (0, typeorm_1.JoinColumn)({ name: "request_local" }),
29
+ __metadata("design:type", __1.RequestLocal)
30
+ ], RequestLocalHistory.prototype, "request_local", void 0);
31
+ __decorate([
32
+ (0, typeorm_1.Column)({
33
+ comment: "Estado en el que se encuentra el registro.",
34
+ }),
35
+ __metadata("design:type", Number)
36
+ ], RequestLocalHistory.prototype, "status", void 0);
37
+ __decorate([
38
+ (0, typeorm_1.Column)({
39
+ length: 600,
40
+ nullable: true,
41
+ comment: "Comentarios del cambio de estado del registro.",
42
+ }),
43
+ __metadata("design:type", String)
44
+ ], RequestLocalHistory.prototype, "comment", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.ManyToOne)(function () { return __1.Partner; }, function (partner) { return partner.updated_by_history; }, {
47
+ onDelete: "CASCADE",
48
+ onUpdate: "NO ACTION",
49
+ }),
50
+ (0, typeorm_1.JoinColumn)({ name: "request_local" }),
51
+ __metadata("design:type", __1.Partner)
52
+ ], RequestLocalHistory.prototype, "updated_by", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({
55
+ type: "datetime",
56
+ comment: "Fecha en la que realizó el cambio.",
57
+ transformer: new dateTransformer_1.DateTransformer(),
58
+ }),
59
+ __metadata("design:type", Date)
60
+ ], RequestLocalHistory.prototype, "updated", void 0);
61
+ RequestLocalHistory = __decorate([
62
+ (0, typeorm_1.Entity)({
63
+ comment: "Con esta tabla podemos llevar el control de cambios qué se le han realizado al pedido.",
64
+ name: "request_local_history",
65
+ })
66
+ ], RequestLocalHistory);
67
+ return RequestLocalHistory;
68
+ }());
69
+ exports.RequestLocalHistory = RequestLocalHistory;
@@ -30,7 +30,6 @@ export { Region } from "./entities/Region";
30
30
  export { Request } from "./entities/Request";
31
31
  export { RequestProduct } from "./entities/RequestProduct";
32
32
  export { RequestProductGroupComplement } from "./entities/RequestProductGroupComplement";
33
- export { RequestStatus } from "./entities/RequestStatus";
34
33
  export { Square } from "./entities/Square";
35
34
  export { TypeMeasureIngredient } from "./entities/TypeMeasureIngredient";
36
35
  export { User } from "./entities/User";
@@ -50,6 +49,8 @@ export { ProductSchedule } from "./entities/ProductSchedule";
50
49
  export { ProductDate } from "./entities/ProductDate";
51
50
  export { ToppingImage } from "./entities/ToppingImage";
52
51
  export { PartnerSession } from "./entities/PartnerSession";
52
+ export { RequestLocal } from "./entities/RequestLocal";
53
+ export { RequestLocalHistory } from "./entities/RequestLocalHistory";
53
54
  export { LocalsCompany } from "./views/LocalsCompany";
54
55
  export { VerifyLocals } from "./views/VerifyLocals";
55
56
  export { MasterNotifications } from "./views/MasterNotifications";
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.ProductDate = exports.ProductSchedule = exports.CategoryDate = exports.Bank = exports.ServicePlan = exports.PartnerPlatform = exports.PartnerPermissionSection = exports.LocalPlan = exports.MasterNotification = exports.VerifyLocal = exports.PosSystem = exports.AuthenticationCredential = exports.BusinessType = exports.UserAddress = exports.User = exports.TypeMeasureIngredient = exports.Square = exports.RequestStatus = exports.RequestProductGroupComplement = exports.RequestProduct = exports.Request = exports.Region = exports.ProductTopping = exports.ProductIngredient = exports.ProductGroupComplement = exports.ProductGroup = exports.Product = exports.Plan = exports.PaymentMethod = exports.PartnerRole = exports.PartnerPermission = exports.PartnerNotification = exports.Partner = exports.MasterRole = exports.MasterPermission = exports.Master = exports.LocalQualification = exports.Local = exports.DiscountCodeUser = exports.DiscountCodeCompany = exports.Day = exports.Country = exports.Configuration = exports.Company = exports.CodeRedemptionHistoryUser = exports.CodeRedemptionHistoryCompany = exports.City = exports.ScheduleCategory = exports.Category = exports.BusinessTypeProduct = void 0;
18
- exports.CustomRepository = exports.PartnerNotifications = exports.DiscountsCodeUser = exports.Partners = exports.ViewLocalsCompanies = exports.MasterNotifications = exports.VerifyLocals = exports.LocalsCompany = exports.PartnerSession = exports.ToppingImage = void 0;
17
+ exports.ToppingImage = exports.ProductDate = exports.ProductSchedule = exports.CategoryDate = exports.Bank = exports.ServicePlan = exports.PartnerPlatform = exports.PartnerPermissionSection = exports.LocalPlan = exports.MasterNotification = exports.VerifyLocal = exports.PosSystem = exports.AuthenticationCredential = exports.BusinessType = exports.UserAddress = exports.User = exports.TypeMeasureIngredient = exports.Square = exports.RequestProductGroupComplement = exports.RequestProduct = exports.Request = exports.Region = exports.ProductTopping = exports.ProductIngredient = exports.ProductGroupComplement = exports.ProductGroup = exports.Product = exports.Plan = exports.PaymentMethod = exports.PartnerRole = exports.PartnerPermission = exports.PartnerNotification = exports.Partner = exports.MasterRole = exports.MasterPermission = exports.Master = exports.LocalQualification = exports.Local = exports.DiscountCodeUser = exports.DiscountCodeCompany = exports.Day = exports.Country = exports.Configuration = exports.Company = exports.CodeRedemptionHistoryUser = exports.CodeRedemptionHistoryCompany = exports.City = exports.ScheduleCategory = exports.Category = exports.BusinessTypeProduct = void 0;
18
+ exports.CustomRepository = exports.PartnerNotifications = exports.DiscountsCodeUser = exports.Partners = exports.ViewLocalsCompanies = exports.MasterNotifications = exports.VerifyLocals = exports.LocalsCompany = exports.RequestLocalHistory = exports.RequestLocal = exports.PartnerSession = void 0;
19
19
  var BusinessTypeProduct_1 = require("./entities/BusinessTypeProduct");
20
20
  Object.defineProperty(exports, "BusinessTypeProduct", { enumerable: true, get: function () { return BusinessTypeProduct_1.BusinessTypeProduct; } });
21
21
  var Category_1 = require("./entities/Category");
@@ -80,8 +80,6 @@ var RequestProduct_1 = require("./entities/RequestProduct");
80
80
  Object.defineProperty(exports, "RequestProduct", { enumerable: true, get: function () { return RequestProduct_1.RequestProduct; } });
81
81
  var RequestProductGroupComplement_1 = require("./entities/RequestProductGroupComplement");
82
82
  Object.defineProperty(exports, "RequestProductGroupComplement", { enumerable: true, get: function () { return RequestProductGroupComplement_1.RequestProductGroupComplement; } });
83
- var RequestStatus_1 = require("./entities/RequestStatus");
84
- Object.defineProperty(exports, "RequestStatus", { enumerable: true, get: function () { return RequestStatus_1.RequestStatus; } });
85
83
  var Square_1 = require("./entities/Square");
86
84
  Object.defineProperty(exports, "Square", { enumerable: true, get: function () { return Square_1.Square; } });
87
85
  var TypeMeasureIngredient_1 = require("./entities/TypeMeasureIngredient");
@@ -120,6 +118,10 @@ var ToppingImage_1 = require("./entities/ToppingImage");
120
118
  Object.defineProperty(exports, "ToppingImage", { enumerable: true, get: function () { return ToppingImage_1.ToppingImage; } });
121
119
  var PartnerSession_1 = require("./entities/PartnerSession");
122
120
  Object.defineProperty(exports, "PartnerSession", { enumerable: true, get: function () { return PartnerSession_1.PartnerSession; } });
121
+ var RequestLocal_1 = require("./entities/RequestLocal");
122
+ Object.defineProperty(exports, "RequestLocal", { enumerable: true, get: function () { return RequestLocal_1.RequestLocal; } });
123
+ var RequestLocalHistory_1 = require("./entities/RequestLocalHistory");
124
+ Object.defineProperty(exports, "RequestLocalHistory", { enumerable: true, get: function () { return RequestLocalHistory_1.RequestLocalHistory; } });
123
125
  var LocalsCompany_1 = require("./views/LocalsCompany");
124
126
  Object.defineProperty(exports, "LocalsCompany", { enumerable: true, get: function () { return LocalsCompany_1.LocalsCompany; } });
125
127
  var VerifyLocals_1 = require("./views/VerifyLocals");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "test-entity-library-asm",
3
- "version": "3.2.1",
3
+ "version": "3.2.3",
4
4
  "description": "Entidades de ejemplo para una base de datos",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -8,7 +8,13 @@ import {
8
8
  OneToMany,
9
9
  PrimaryGeneratedColumn,
10
10
  } from "typeorm";
11
- import { DiscountCodeUser, LocalPlan, PosSystem, Request } from "..";
11
+ import {
12
+ DiscountCodeUser,
13
+ LocalPlan,
14
+ PosSystem,
15
+ Request,
16
+ RequestLocal,
17
+ } from "..";
12
18
  import { jsonTransformer } from "../transformers/jsonTransformer";
13
19
  import { BusinessTypeProduct } from "./BusinessTypeProduct";
14
20
  import { Category } from "./Category";
@@ -126,19 +132,21 @@ export class Local {
126
132
  })
127
133
  locals_partners: Partner[];
128
134
 
129
- @ManyToMany(() => Request, (request) => request.requests_local)
130
- @JoinTable({
131
- name: "request_local",
132
- joinColumn: {
133
- name: "local",
134
- referencedColumnName: "id",
135
- },
136
- inverseJoinColumn: {
137
- name: "request",
138
- referencedColumnName: "id",
139
- },
140
- })
141
- requests_local: Request[];
135
+ // @ManyToMany(() => Request, (request) => request.requests_local)
136
+ // @JoinTable({
137
+ // name: "request_local",
138
+ // joinColumn: {
139
+ // name: "local",
140
+ // referencedColumnName: "id",
141
+ // },
142
+ // inverseJoinColumn: {
143
+ // name: "request",
144
+ // referencedColumnName: "id",
145
+ // },
146
+ // })
147
+ // requests_local: Request[];
148
+ @OneToMany(() => RequestLocal, (requestLocal) => requestLocal.local)
149
+ requests_local: RequestLocal[];
142
150
 
143
151
  @OneToMany(() => Category, (category) => category.local)
144
152
  categories: Category[];
@@ -13,6 +13,7 @@ import {
13
13
  MasterNotification,
14
14
  PartnerSession,
15
15
  Product,
16
+ RequestLocalHistory,
16
17
  VerifyLocal,
17
18
  } from "..";
18
19
  import { DateTransformer } from "../transformers/dateTransformer";
@@ -218,4 +219,10 @@ export class Partner {
218
219
 
219
220
  @OneToMany(() => PartnerSession, (partnerSession) => partnerSession.partner)
220
221
  partners_session: PartnerSession[];
222
+
223
+ @OneToMany(
224
+ () => RequestLocalHistory,
225
+ (requestLocalHistory) => requestLocalHistory.updated_by
226
+ )
227
+ updated_by_history: RequestLocalHistory[];
221
228
  }
@@ -8,12 +8,11 @@ import {
8
8
  OneToMany,
9
9
  PrimaryGeneratedColumn,
10
10
  } from "typeorm";
11
- import { Local } from "..";
11
+ import { RequestLocal } from "..";
12
12
  import { DateTransformer } from "../transformers/dateTransformer";
13
13
  import { PaymentMethod } from "./PaymentMethod";
14
14
  import { RequestProduct } from "./RequestProduct";
15
15
  import { RequestProductGroupComplement } from "./RequestProductGroupComplement";
16
- import { RequestStatus } from "./RequestStatus";
17
16
  import { User } from "./User";
18
17
 
19
18
  @Entity({
@@ -78,12 +77,12 @@ export class Request {
78
77
  })
79
78
  paid_status: number;
80
79
 
81
- @ManyToOne(() => RequestStatus, (requestStatus) => requestStatus.requests, {
82
- onDelete: "RESTRICT",
83
- onUpdate: "NO ACTION",
80
+ @Column({
81
+ default: 0,
82
+ comment:
83
+ "Estado en el que se encuentra un pedido.\r\n0. En proceso: El usuario está agregando los productos del/los local/es.\r\n1. Creado: El usuario ya creó el pedido con los prductos en los/el local/es especificado/s.\r\n2. Cancelado: El usuario canceló el pedido, esto sólo se permite si aún no está pago el pedido.\r\n3. Rechazado: Si un local canceló el pedido por x circustancias. Cabe resaltar que si el pedido fue solicitado a más de un local, el estado 3 sólo se agregaría al pedido si todos los locales cancelaron (Se tiene un estado para cada local en la tabla request_local) -> Aún no se sabe si este estado va.\r\n4. Finalizado: El pedido fue entregado y también pagado. Si el pedido se realizó en varios locales, entonces sólo se pasará a Finalizado, cuando todos los locales a los que se le hizo el pedido están pagos y con los productos entregados.",
84
84
  })
85
- @JoinColumn({ name: "status" })
86
- status: RequestStatus;
85
+ status: number;
87
86
 
88
87
  @Column({
89
88
  length: 400,
@@ -115,19 +114,21 @@ export class Request {
115
114
  })
116
115
  updated: Date;
117
116
 
118
- @ManyToMany(() => Local, (local) => local.requests_local)
119
- @JoinTable({
120
- name: "request_local",
121
- joinColumn: {
122
- name: "request",
123
- referencedColumnName: "id",
124
- },
125
- inverseJoinColumn: {
126
- name: "local",
127
- referencedColumnName: "id",
128
- },
129
- })
130
- requests_local: Local[];
117
+ // @ManyToMany(() => Local, (local) => local.requests_local)
118
+ // @JoinTable({
119
+ // name: "request_local",
120
+ // joinColumn: {
121
+ // name: "request",
122
+ // referencedColumnName: "id",
123
+ // },
124
+ // inverseJoinColumn: {
125
+ // name: "local",
126
+ // referencedColumnName: "id",
127
+ // },
128
+ // })
129
+ // requests_local: Local[];
130
+ @OneToMany(() => RequestLocal, (requestLocal) => requestLocal.request)
131
+ requests_local: RequestLocal[];
131
132
 
132
133
  @ManyToMany(() => User, (user) => user.requests_group)
133
134
  @JoinTable({
@@ -0,0 +1,49 @@
1
+ import {
2
+ Column,
3
+ Entity,
4
+ JoinColumn,
5
+ ManyToOne,
6
+ OneToMany,
7
+ PrimaryGeneratedColumn,
8
+ } from "typeorm";
9
+ import { Local, Request, RequestLocalHistory } from "..";
10
+
11
+ @Entity({
12
+ comment: "Tabla para guardar las relaciones de un pedido y los locales",
13
+ name: "request_local",
14
+ })
15
+ export class RequestLocal {
16
+ @PrimaryGeneratedColumn()
17
+ id: number;
18
+
19
+ @ManyToOne(() => Request, (request) => request.requests_local, {
20
+ onDelete: "CASCADE",
21
+ })
22
+ @JoinColumn({ name: "request" })
23
+ request: Request;
24
+
25
+ @ManyToOne(() => Local, (local) => local.requests_local, {
26
+ onDelete: "CASCADE",
27
+ })
28
+ @JoinColumn({ name: "local" })
29
+ local: Local;
30
+
31
+ @Column({
32
+ length: 20,
33
+ comment: "Costo total del pedido. ",
34
+ })
35
+ total_cost: string;
36
+
37
+ @Column({
38
+ default: 1,
39
+ comment:
40
+ "Estado en el que se encuentra un pedido.\r\n0. En proceso: El usuario está agregando los productos del/los local/es.\r\n1. Creado: El usuario ya creó el pedido con los prductos en los/el local/es especificado/s.\r\n2. Cancelado: El usuario canceló el pedido, esto sólo se permite si aún no está pago el pedido.\r\n3. Rechazado: Si un local canceló el pedido por x circustancias. Cabe resaltar que si el pedido fue solicitado a más de un local, el estado 3 sólo se agregaría al pedido si todos los locales cancelaron (Se tiene un estado para cada local en la tabla request_local) -> Aún no se sabe si este estado va.\r\n4. Finalizado: El pedido fue entregado y también pagado. Si el pedido se realizó en varios locales, entonces sólo se pasará a Finalizado, cuando todos los locales a los que se le hizo el pedido están pagos y con los productos entregados.",
41
+ })
42
+ status: number;
43
+
44
+ @OneToMany(
45
+ () => RequestLocalHistory,
46
+ (requestLocalHistory) => requestLocalHistory.request_local
47
+ )
48
+ requests_local_history: RequestLocalHistory[];
49
+ }
@@ -0,0 +1,56 @@
1
+ import {
2
+ Column,
3
+ Entity,
4
+ JoinColumn,
5
+ ManyToOne,
6
+ PrimaryGeneratedColumn,
7
+ } from "typeorm";
8
+ import { Partner, RequestLocal } from "..";
9
+ import { DateTransformer } from "../transformers/dateTransformer";
10
+
11
+ @Entity({
12
+ comment:
13
+ "Con esta tabla podemos llevar el control de cambios qué se le han realizado al pedido.",
14
+ name: "request_local_history",
15
+ })
16
+ export class RequestLocalHistory {
17
+ @PrimaryGeneratedColumn()
18
+ id: number;
19
+
20
+ @ManyToOne(
21
+ () => RequestLocal,
22
+ (requestLocal) => requestLocal.requests_local_history,
23
+ {
24
+ onDelete: "CASCADE",
25
+ onUpdate: "NO ACTION",
26
+ }
27
+ )
28
+ @JoinColumn({ name: "request_local" })
29
+ request_local: RequestLocal;
30
+
31
+ @Column({
32
+ comment: "Estado en el que se encuentra el registro.",
33
+ })
34
+ status: number;
35
+
36
+ @Column({
37
+ length: 600,
38
+ nullable: true,
39
+ comment: "Comentarios del cambio de estado del registro.",
40
+ })
41
+ comment: string;
42
+
43
+ @ManyToOne(() => Partner, (partner) => partner.updated_by_history, {
44
+ onDelete: "CASCADE",
45
+ onUpdate: "NO ACTION",
46
+ })
47
+ @JoinColumn({ name: "request_local" })
48
+ updated_by: Partner;
49
+
50
+ @Column({
51
+ type: "datetime",
52
+ comment: "Fecha en la que realizó el cambio.",
53
+ transformer: new DateTransformer(),
54
+ })
55
+ updated: Date;
56
+ }
@@ -30,7 +30,6 @@ export { Region } from "./entities/Region";
30
30
  export { Request } from "./entities/Request";
31
31
  export { RequestProduct } from "./entities/RequestProduct";
32
32
  export { RequestProductGroupComplement } from "./entities/RequestProductGroupComplement";
33
- export { RequestStatus } from "./entities/RequestStatus";
34
33
  export { Square } from "./entities/Square";
35
34
  export { TypeMeasureIngredient } from "./entities/TypeMeasureIngredient";
36
35
  export { User } from "./entities/User";
@@ -50,6 +49,8 @@ export { ProductSchedule } from "./entities/ProductSchedule";
50
49
  export { ProductDate } from "./entities/ProductDate";
51
50
  export { ToppingImage } from "./entities/ToppingImage";
52
51
  export { PartnerSession } from "./entities/PartnerSession";
52
+ export { RequestLocal } from "./entities/RequestLocal";
53
+ export { RequestLocalHistory } from "./entities/RequestLocalHistory";
53
54
 
54
55
  export { LocalsCompany } from "./views/LocalsCompany";
55
56
  export { VerifyLocals } from "./views/VerifyLocals";
@@ -1,54 +0,0 @@
1
- import {
2
- Column,
3
- Entity,
4
- OneToMany,
5
- PrimaryGeneratedColumn
6
- } from 'typeorm'
7
- import { Request } from './Request'
8
-
9
- @Entity('request_status', {
10
- comment:
11
- 'Acá se podrán agregar los estados que puede tener un pedido, es decir:\r\n\r\n0. Por ordenar (0): Es cuando el usuario agrega los productos al carrito de compras pero aún no realiza la orden.\r\n\r\n1. En espera del cliente (local) cuando el pago ya fue realizado exitosamente (1): Indica que la orden ya fue recibida y está en proceso de verificación.\r\n\r\n2. En espera del usuario (2): Indica que el usuario realizó el pedido y desea cancelarlo en efectivo, en este caso, se genera un código QR/BARCODE donde se puede acercar a la caja del local y pagar el valor del pedido. Cuando el usuario paga se pasa a estado (1), acá el cliente (local/company) puede decir el tiempo de espera máxima para que el cliente se levante a realizar el pago, de lo contrario la orden se cancelará automáticamente.\r\n\r\n3. En proceso (3): Indica que la orden/pedido fue recibid@ y se está preparando.\r\n\r\n4. Listo para servir (4): Indica que la orden ya se preparó y se está a la espera del usuario para entregar.\r\n\r\n5. Entregado/servido (5): Indica que el usuario ya reclamó la orden.\r\n\r\n6. Cancelado (6): Cuando un pedido se marca como "cancelado", significa que la orden ha sido anulada o eliminada del sistema antes de ser procesada o entregada. Esto puede deberse a una solicitud del cliente para cancelar el pedido, a que el pedido no se pueda completar por algún motivo o a una decisión interna del negocio de no procesar el pedido.\r\n\r\n7. Devolución (7): El estado "devolución" se aplica a un pedido que ha sido entregado o completado, pero que por algún motivo el cliente ha devuelto total o parcialmente. Esto podría ser debido a que el producto estaba defectuoso, no era lo que esperaba o por cualquier otra razón por la que el cliente haya solicitado devolver parte o la totalidad del pedido.',
12
- })
13
- export class RequestStatus {
14
- @PrimaryGeneratedColumn({
15
- comment: 'Número de identificación (ID) único de cada registro.',
16
- })
17
- id: number
18
-
19
- @Column({
20
- comment:
21
- 'Los tipos de elemento, esto se hace para validaciones por parte del código:\r\n0, 1, 2, 3, 4, 5, 6, 7....',
22
- })
23
- code: number
24
-
25
- @Column({
26
- length: 50,
27
- comment:
28
- 'Nombre del estado, este campo debe tener el id/key de cada lenguaje.\r\n\r\nVer la carpeta ``locales`` del proyecto frontend para ver el id de cada tipo de elemento.',
29
- })
30
- name: string
31
-
32
- @Column({
33
- length: 50,
34
- comment:
35
- 'Descripción del estado, este campo debe tener el id/key de cada lenguaje.\r\n\r\nVer la carpeta ``locales`` del proyecto frontend para ver el id de cada tipo de elemento.',
36
- })
37
- description: string
38
-
39
- @Column({
40
- comment:
41
- 'Quién puede ver y asignar el estado en la orden:\r\n1. Usuario.\r\n2. Cliente (local).\r\n3. Todos.',
42
- })
43
- visible_to: number
44
-
45
- @Column({
46
- default: 1,
47
- comment:
48
- 'Valida si el estado es visible para agregar al pedido:\r\n1. Activo.\r\n0. Inactivo.',
49
- })
50
- status: number
51
-
52
- @OneToMany(() => Request, (request) => request.status)
53
- requests: Request[]
54
- }