uaxi-shared-entities 1.0.0
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.
- package/README.md +136 -0
- package/dist/config/database.config.d.ts +3 -0
- package/dist/config/database.config.d.ts.map +1 -0
- package/dist/config/database.config.js +21 -0
- package/dist/config/database.config.js.map +1 -0
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +18 -0
- package/dist/config/index.js.map +1 -0
- package/dist/entities/address.entity.d.ts +64 -0
- package/dist/entities/address.entity.d.ts.map +1 -0
- package/dist/entities/address.entity.js +254 -0
- package/dist/entities/address.entity.js.map +1 -0
- package/dist/entities/brand.entity.d.ts +16 -0
- package/dist/entities/brand.entity.d.ts.map +1 -0
- package/dist/entities/brand.entity.js +95 -0
- package/dist/entities/brand.entity.js.map +1 -0
- package/dist/entities/camping_coupons.entity.d.ts +13 -0
- package/dist/entities/camping_coupons.entity.d.ts.map +1 -0
- package/dist/entities/camping_coupons.entity.js +74 -0
- package/dist/entities/camping_coupons.entity.js.map +1 -0
- package/dist/entities/coupon.entity.d.ts +50 -0
- package/dist/entities/coupon.entity.d.ts.map +1 -0
- package/dist/entities/coupon.entity.js +227 -0
- package/dist/entities/coupon.entity.js.map +1 -0
- package/dist/entities/coupon_usages.entity.d.ts +28 -0
- package/dist/entities/coupon_usages.entity.d.ts.map +1 -0
- package/dist/entities/coupon_usages.entity.js +136 -0
- package/dist/entities/coupon_usages.entity.js.map +1 -0
- package/dist/entities/coupon_user_mappings.entity.d.ts +18 -0
- package/dist/entities/coupon_user_mappings.entity.d.ts.map +1 -0
- package/dist/entities/coupon_user_mappings.entity.js +108 -0
- package/dist/entities/coupon_user_mappings.entity.js.map +1 -0
- package/dist/entities/driver.entity.d.ts +46 -0
- package/dist/entities/driver.entity.d.ts.map +1 -0
- package/dist/entities/driver.entity.js +157 -0
- package/dist/entities/driver.entity.js.map +1 -0
- package/dist/entities/farerates.entity.d.ts +14 -0
- package/dist/entities/farerates.entity.d.ts.map +1 -0
- package/dist/entities/farerates.entity.js +97 -0
- package/dist/entities/farerates.entity.js.map +1 -0
- package/dist/entities/geofence.entity.d.ts +23 -0
- package/dist/entities/geofence.entity.d.ts.map +1 -0
- package/dist/entities/geofence.entity.js +120 -0
- package/dist/entities/geofence.entity.js.map +1 -0
- package/dist/entities/index.d.ts +24 -0
- package/dist/entities/index.d.ts.map +1 -0
- package/dist/entities/index.js +40 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/entities/notifications.entity.d.ts +25 -0
- package/dist/entities/notifications.entity.d.ts.map +1 -0
- package/dist/entities/notifications.entity.js +101 -0
- package/dist/entities/notifications.entity.js.map +1 -0
- package/dist/entities/payments.entity.d.ts +30 -0
- package/dist/entities/payments.entity.d.ts.map +1 -0
- package/dist/entities/payments.entity.js +123 -0
- package/dist/entities/payments.entity.js.map +1 -0
- package/dist/entities/promotion_camping.d.ts +26 -0
- package/dist/entities/promotion_camping.d.ts.map +1 -0
- package/dist/entities/promotion_camping.js +131 -0
- package/dist/entities/promotion_camping.js.map +1 -0
- package/dist/entities/raitings.entity.d.ts +15 -0
- package/dist/entities/raitings.entity.d.ts.map +1 -0
- package/dist/entities/raitings.entity.js +90 -0
- package/dist/entities/raitings.entity.js.map +1 -0
- package/dist/entities/recent_serch.entity.d.ts +16 -0
- package/dist/entities/recent_serch.entity.d.ts.map +1 -0
- package/dist/entities/recent_serch.entity.js +107 -0
- package/dist/entities/recent_serch.entity.js.map +1 -0
- package/dist/entities/roles.entity.d.ts +11 -0
- package/dist/entities/roles.entity.d.ts.map +1 -0
- package/dist/entities/roles.entity.js +66 -0
- package/dist/entities/roles.entity.js.map +1 -0
- package/dist/entities/supportticket.entity.d.ts +30 -0
- package/dist/entities/supportticket.entity.d.ts.map +1 -0
- package/dist/entities/supportticket.entity.js +123 -0
- package/dist/entities/supportticket.entity.js.map +1 -0
- package/dist/entities/trip-route-change.entity.d.ts +49 -0
- package/dist/entities/trip-route-change.entity.d.ts.map +1 -0
- package/dist/entities/trip-route-change.entity.js +228 -0
- package/dist/entities/trip-route-change.entity.js.map +1 -0
- package/dist/entities/trip-stop.entity.d.ts +44 -0
- package/dist/entities/trip-stop.entity.d.ts.map +1 -0
- package/dist/entities/trip-stop.entity.js +232 -0
- package/dist/entities/trip-stop.entity.js.map +1 -0
- package/dist/entities/triplocation.entity.d.ts +15 -0
- package/dist/entities/triplocation.entity.d.ts.map +1 -0
- package/dist/entities/triplocation.entity.js +110 -0
- package/dist/entities/triplocation.entity.js.map +1 -0
- package/dist/entities/trips.entity.d.ts +64 -0
- package/dist/entities/trips.entity.d.ts.map +1 -0
- package/dist/entities/trips.entity.js +331 -0
- package/dist/entities/trips.entity.js.map +1 -0
- package/dist/entities/user.entity.d.ts +54 -0
- package/dist/entities/user.entity.d.ts.map +1 -0
- package/dist/entities/user.entity.js +199 -0
- package/dist/entities/user.entity.js.map +1 -0
- package/dist/entities/userCard.entity.d.ts +45 -0
- package/dist/entities/userCard.entity.d.ts.map +1 -0
- package/dist/entities/userCard.entity.js +143 -0
- package/dist/entities/userCard.entity.js.map +1 -0
- package/dist/entities/vehicle-model.entity.d.ts +22 -0
- package/dist/entities/vehicle-model.entity.d.ts.map +1 -0
- package/dist/entities/vehicle-model.entity.js +128 -0
- package/dist/entities/vehicle-model.entity.js.map +1 -0
- package/dist/entities/vehicle.entity.d.ts +34 -0
- package/dist/entities/vehicle.entity.d.ts.map +1 -0
- package/dist/entities/vehicle.entity.js +168 -0
- package/dist/entities/vehicle.entity.js.map +1 -0
- package/dist/entities/wallet.entity.d.ts +23 -0
- package/dist/entities/wallet.entity.d.ts.map +1 -0
- package/dist/entities/wallet.entity.js +116 -0
- package/dist/entities/wallet.entity.js.map +1 -0
- package/dist/entities/walletTransaction.entity.d.ts +52 -0
- package/dist/entities/walletTransaction.entity.d.ts.map +1 -0
- package/dist/entities/walletTransaction.entity.js +183 -0
- package/dist/entities/walletTransaction.entity.js.map +1 -0
- package/dist/enums/address.enum.d.ts +7 -0
- package/dist/enums/address.enum.d.ts.map +1 -0
- package/dist/enums/address.enum.js +11 -0
- package/dist/enums/address.enum.js.map +1 -0
- package/dist/enums/coupon.enum.d.ts +32 -0
- package/dist/enums/coupon.enum.d.ts.map +1 -0
- package/dist/enums/coupon.enum.js +43 -0
- package/dist/enums/coupon.enum.js.map +1 -0
- package/dist/enums/driver.enum.d.ts +7 -0
- package/dist/enums/driver.enum.d.ts.map +1 -0
- package/dist/enums/driver.enum.js +14 -0
- package/dist/enums/driver.enum.js.map +1 -0
- package/dist/enums/geofence.enum.d.ts +9 -0
- package/dist/enums/geofence.enum.d.ts.map +1 -0
- package/dist/enums/geofence.enum.js +16 -0
- package/dist/enums/geofence.enum.js.map +1 -0
- package/dist/enums/index.d.ts +10 -0
- package/dist/enums/index.d.ts.map +1 -0
- package/dist/enums/index.js +29 -0
- package/dist/enums/index.js.map +1 -0
- package/dist/enums/notification.enum.d.ts +12 -0
- package/dist/enums/notification.enum.d.ts.map +1 -0
- package/dist/enums/notification.enum.js +19 -0
- package/dist/enums/notification.enum.js.map +1 -0
- package/dist/enums/payment.enum.d.ts +14 -0
- package/dist/enums/payment.enum.d.ts.map +1 -0
- package/dist/enums/payment.enum.js +22 -0
- package/dist/enums/payment.enum.js.map +1 -0
- package/dist/enums/trip.enum.d.ts +9 -0
- package/dist/enums/trip.enum.d.ts.map +1 -0
- package/dist/enums/trip.enum.js +16 -0
- package/dist/enums/trip.enum.js.map +1 -0
- package/dist/enums/user.enum.d.ts +7 -0
- package/dist/enums/user.enum.d.ts.map +1 -0
- package/dist/enums/user.enum.js +14 -0
- package/dist/enums/user.enum.js.map +1 -0
- package/dist/enums/vehicle.enum.d.ts +6 -0
- package/dist/enums/vehicle.enum.d.ts.map +1 -0
- package/dist/enums/vehicle.enum.js +13 -0
- package/dist/enums/vehicle.enum.js.map +1 -0
- package/dist/enums/wallet.enum.d.ts +33 -0
- package/dist/enums/wallet.enum.d.ts.map +1 -0
- package/dist/enums/wallet.enum.js +43 -0
- package/dist/enums/wallet.enum.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +28 -0
- package/dist/index.js.map +1 -0
- package/dist/types/common.types.d.ts +34 -0
- package/dist/types/common.types.d.ts.map +1 -0
- package/dist/types/common.types.js +6 -0
- package/dist/types/common.types.js.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +21 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +37 -0
- package/src/config/database.config.ts +39 -0
- package/src/config/index.ts +1 -0
- package/src/entities/address.entity.ts +239 -0
- package/src/entities/brand.entity.ts +87 -0
- package/src/entities/camping_coupons.entity.ts +60 -0
- package/src/entities/coupon.entity.ts +167 -0
- package/src/entities/coupon_usages.entity.ts +108 -0
- package/src/entities/coupon_user_mappings.entity.ts +89 -0
- package/src/entities/driver.entity.ts +151 -0
- package/src/entities/farerates.entity.ts +72 -0
- package/src/entities/geofence.entity.ts +88 -0
- package/src/entities/index.ts +27 -0
- package/src/entities/notifications.entity.ts +74 -0
- package/src/entities/payments.entity.ts +146 -0
- package/src/entities/promotion_camping.ts +96 -0
- package/src/entities/raitings.entity.ts +74 -0
- package/src/entities/recent_serch.entity.ts +86 -0
- package/src/entities/roles.entity.ts +44 -0
- package/src/entities/supportticket.entity.ts +104 -0
- package/src/entities/trip-route-change.entity.ts +196 -0
- package/src/entities/trip-stop.entity.ts +199 -0
- package/src/entities/triplocation.entity.ts +96 -0
- package/src/entities/trips.entity.ts +290 -0
- package/src/entities/user.entity.ts +170 -0
- package/src/entities/userCard.entity.ts +139 -0
- package/src/entities/vehicle-model.entity.ts +120 -0
- package/src/entities/vehicle.entity.ts +154 -0
- package/src/entities/wallet.entity.ts +104 -0
- package/src/entities/walletTransaction.entity.ts +103 -0
- package/src/enums/address.enum.ts +6 -0
- package/src/enums/coupon.enum.ts +39 -0
- package/src/enums/driver.enum.ts +10 -0
- package/src/enums/geofence.enum.ts +12 -0
- package/src/enums/index.ts +14 -0
- package/src/enums/notification.enum.ts +15 -0
- package/src/enums/payment.enum.ts +18 -0
- package/src/enums/trip.enum.ts +12 -0
- package/src/enums/user.enum.ts +10 -0
- package/src/enums/vehicle.enum.ts +9 -0
- package/src/enums/wallet.enum.ts +29 -0
- package/src/index.ts +15 -0
- package/src/types/common.types.ts +43 -0
- package/src/types/index.ts +5 -0
- package/tsconfig.json +24 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// =============================================
|
|
3
|
+
// CAMPAIGN COUPON MAPPING MODEL
|
|
4
|
+
// =============================================
|
|
5
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
6
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
8
|
+
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;
|
|
9
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
10
|
+
};
|
|
11
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
12
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.CampaignCoupon = void 0;
|
|
16
|
+
const sequelize_typescript_1 = require("sequelize-typescript");
|
|
17
|
+
const promotion_camping_1 = require("./promotion_camping");
|
|
18
|
+
const coupon_entity_1 = require("./coupon.entity");
|
|
19
|
+
let CampaignCoupon = class CampaignCoupon extends sequelize_typescript_1.Model {
|
|
20
|
+
};
|
|
21
|
+
exports.CampaignCoupon = CampaignCoupon;
|
|
22
|
+
__decorate([
|
|
23
|
+
(0, sequelize_typescript_1.Column)({
|
|
24
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
25
|
+
defaultValue: sequelize_typescript_1.DataType.UUIDV4,
|
|
26
|
+
primaryKey: true,
|
|
27
|
+
}),
|
|
28
|
+
__metadata("design:type", String)
|
|
29
|
+
], CampaignCoupon.prototype, "id", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, sequelize_typescript_1.ForeignKey)(() => promotion_camping_1.PromotionCampaign),
|
|
32
|
+
(0, sequelize_typescript_1.Column)({
|
|
33
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
34
|
+
allowNull: false,
|
|
35
|
+
}),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], CampaignCoupon.prototype, "campaignId", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, sequelize_typescript_1.ForeignKey)(() => coupon_entity_1.Coupon),
|
|
40
|
+
(0, sequelize_typescript_1.Column)({
|
|
41
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
42
|
+
allowNull: false,
|
|
43
|
+
}),
|
|
44
|
+
__metadata("design:type", String)
|
|
45
|
+
], CampaignCoupon.prototype, "couponId", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, sequelize_typescript_1.Column)({
|
|
48
|
+
type: sequelize_typescript_1.DataType.INTEGER,
|
|
49
|
+
defaultValue: 0,
|
|
50
|
+
}),
|
|
51
|
+
__metadata("design:type", Number)
|
|
52
|
+
], CampaignCoupon.prototype, "distributedCount", void 0);
|
|
53
|
+
__decorate([
|
|
54
|
+
(0, sequelize_typescript_1.Column)({
|
|
55
|
+
type: sequelize_typescript_1.DataType.INTEGER,
|
|
56
|
+
defaultValue: 0,
|
|
57
|
+
}),
|
|
58
|
+
__metadata("design:type", Number)
|
|
59
|
+
], CampaignCoupon.prototype, "redeemedCount", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, sequelize_typescript_1.BelongsTo)(() => promotion_camping_1.PromotionCampaign),
|
|
62
|
+
__metadata("design:type", promotion_camping_1.PromotionCampaign)
|
|
63
|
+
], CampaignCoupon.prototype, "campaign", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
(0, sequelize_typescript_1.BelongsTo)(() => coupon_entity_1.Coupon),
|
|
66
|
+
__metadata("design:type", coupon_entity_1.Coupon)
|
|
67
|
+
], CampaignCoupon.prototype, "coupon", void 0);
|
|
68
|
+
exports.CampaignCoupon = CampaignCoupon = __decorate([
|
|
69
|
+
(0, sequelize_typescript_1.Table)({
|
|
70
|
+
tableName: 'campaign_coupons',
|
|
71
|
+
timestamps: true,
|
|
72
|
+
})
|
|
73
|
+
], CampaignCoupon);
|
|
74
|
+
//# sourceMappingURL=camping_coupons.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"camping_coupons.entity.js","sourceRoot":"","sources":["../../src/entities/camping_coupons.entity.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,gCAAgC;AAChC,gDAAgD;;;;;;;;;;;;AAEhD,+DAO8B;AAC9B,2DAAwD;AACxD,mDAAyC;AAMlC,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,4BAAqB;CAwCxD,CAAA;AAxCY,wCAAc;AAMjB;IALP,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,+BAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,IAAI;KACjB,CAAC;;0CACiB;AAOnB;IALC,IAAA,iCAAU,EAAC,GAAG,EAAE,CAAC,qCAAiB,CAAC;IACnC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;;kDACiB;AAOnB;IALC,IAAA,iCAAU,EAAC,GAAG,EAAE,CAAC,sBAAM,CAAC;IACxB,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;;gDACe;AAMjB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,YAAY,EAAE,CAAC;KAChB,CAAC;;wDACuB;AAMzB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,YAAY,EAAE,CAAC;KAChB,CAAC;;qDACoB;AAItB;IADC,IAAA,gCAAS,EAAC,GAAG,EAAE,CAAC,qCAAiB,CAAC;8BACzB,qCAAiB;gDAAC;AAG5B;IADC,IAAA,gCAAS,EAAC,GAAG,EAAE,CAAC,sBAAM,CAAC;8BAChB,sBAAM;8CAAC;yBAvCJ,cAAc;IAJ1B,IAAA,4BAAK,EAAC;QACL,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE,IAAI;KACjB,CAAC;GACW,cAAc,CAwC1B"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Model } from 'sequelize-typescript';
|
|
2
|
+
import { CouponUsage } from './coupon_usages.entity';
|
|
3
|
+
import { CouponUserMapping } from './coupon_user_mappings.entity';
|
|
4
|
+
export declare enum CouponType {
|
|
5
|
+
PERCENTAGE = "percentage",// Descuento por porcentaje
|
|
6
|
+
FIXED_AMOUNT = "fixed_amount",// Descuento por cantidad fija
|
|
7
|
+
FREE_RIDE = "free_ride",// Viaje gratis
|
|
8
|
+
FIRST_RIDE = "first_ride"
|
|
9
|
+
}
|
|
10
|
+
export declare enum CouponStatus {
|
|
11
|
+
ACTIVE = "active",
|
|
12
|
+
INACTIVE = "inactive",
|
|
13
|
+
EXPIRED = "expired",
|
|
14
|
+
EXHAUSTED = "exhausted"
|
|
15
|
+
}
|
|
16
|
+
export declare enum CouponApplicability {
|
|
17
|
+
ALL_USERS = "all_users",
|
|
18
|
+
NEW_USERS = "new_users",
|
|
19
|
+
SPECIFIC_USERS = "specific_users",
|
|
20
|
+
USER_SEGMENT = "user_segment"
|
|
21
|
+
}
|
|
22
|
+
export declare class Coupon extends Model<Coupon> {
|
|
23
|
+
id: string;
|
|
24
|
+
code: string;
|
|
25
|
+
name: string;
|
|
26
|
+
description: string;
|
|
27
|
+
type: CouponType;
|
|
28
|
+
discountValue: number;
|
|
29
|
+
maxDiscountAmount: number;
|
|
30
|
+
minimumTripAmount: number;
|
|
31
|
+
maximumTripAmount: number;
|
|
32
|
+
applicability: CouponApplicability;
|
|
33
|
+
totalUsageLimit: number;
|
|
34
|
+
currentUsageCount: number;
|
|
35
|
+
usagePerUser: number;
|
|
36
|
+
validFrom: Date;
|
|
37
|
+
validUntil: Date;
|
|
38
|
+
status: CouponStatus;
|
|
39
|
+
vehicleTypes: string[];
|
|
40
|
+
geofenceData: any;
|
|
41
|
+
dayOfWeekRestrictions: number[];
|
|
42
|
+
validFromTime: string;
|
|
43
|
+
validUntilTime: string;
|
|
44
|
+
createdByAdminId: string;
|
|
45
|
+
isAutoApplicable: boolean;
|
|
46
|
+
metadata: any;
|
|
47
|
+
usages: CouponUsage[];
|
|
48
|
+
userMappings: CouponUserMapping[];
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=coupon.entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon.entity.d.ts","sourceRoot":"","sources":["../../src/entities/coupon.entity.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoC,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,oBAAY,UAAU;IACpB,UAAU,eAAe,CAAE,2BAA2B;IACtD,YAAY,iBAAiB,CAAE,8BAA8B;IAC7D,SAAS,cAAc,CAAE,eAAe;IACxC,UAAU,eAAe;CAC1B;AAED,oBAAY,YAAY;IACtB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,SAAS,cAAc;CACxB;AAED,oBAAY,mBAAmB;IAC7B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;CAC9B;AAED,qBAIa,MAAO,SAAQ,KAAK,CAAC,MAAM,CAAC;IAM/B,EAAE,EAAE,MAAM,CAAC;IAOnB,IAAI,EAAE,MAAM,CAAC;IAMb,IAAI,EAAE,MAAM,CAAC;IAMb,WAAW,EAAE,MAAM,CAAC;IAMpB,IAAI,EAAE,UAAU,CAAC;IAMjB,aAAa,EAAE,MAAM,CAAC;IAMtB,iBAAiB,EAAE,MAAM,CAAC;IAM1B,iBAAiB,EAAE,MAAM,CAAC;IAM1B,iBAAiB,EAAE,MAAM,CAAC;IAM1B,aAAa,EAAE,mBAAmB,CAAC;IAMnC,eAAe,EAAE,MAAM,CAAC;IAMxB,iBAAiB,EAAE,MAAM,CAAC;IAM1B,YAAY,EAAE,MAAM,CAAC;IAMrB,SAAS,EAAE,IAAI,CAAC;IAMhB,UAAU,EAAE,IAAI,CAAC;IAMjB,MAAM,EAAE,YAAY,CAAC;IAMrB,YAAY,EAAE,MAAM,EAAE,CAAC;IAMvB,YAAY,EAAE,GAAG,CAAC;IAMlB,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAMhC,aAAa,EAAE,MAAM,CAAC;IAMtB,cAAc,EAAE,MAAM,CAAC;IAMvB,gBAAgB,EAAE,MAAM,CAAC;IAMzB,gBAAgB,EAAE,OAAO,CAAC;IAM1B,QAAQ,EAAE,GAAG,CAAC;IAId,MAAM,EAAE,WAAW,EAAE,CAAC;IAGtB,YAAY,EAAE,iBAAiB,EAAE,CAAC;CACnC"}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// =============================================
|
|
3
|
+
// COUPON MODEL
|
|
4
|
+
// =============================================
|
|
5
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
6
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
8
|
+
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;
|
|
9
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
10
|
+
};
|
|
11
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
12
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Coupon = exports.CouponApplicability = exports.CouponStatus = exports.CouponType = void 0;
|
|
16
|
+
const sequelize_typescript_1 = require("sequelize-typescript");
|
|
17
|
+
const coupon_usages_entity_1 = require("./coupon_usages.entity");
|
|
18
|
+
const coupon_user_mappings_entity_1 = require("./coupon_user_mappings.entity");
|
|
19
|
+
var CouponType;
|
|
20
|
+
(function (CouponType) {
|
|
21
|
+
CouponType["PERCENTAGE"] = "percentage";
|
|
22
|
+
CouponType["FIXED_AMOUNT"] = "fixed_amount";
|
|
23
|
+
CouponType["FREE_RIDE"] = "free_ride";
|
|
24
|
+
CouponType["FIRST_RIDE"] = "first_ride";
|
|
25
|
+
})(CouponType || (exports.CouponType = CouponType = {}));
|
|
26
|
+
var CouponStatus;
|
|
27
|
+
(function (CouponStatus) {
|
|
28
|
+
CouponStatus["ACTIVE"] = "active";
|
|
29
|
+
CouponStatus["INACTIVE"] = "inactive";
|
|
30
|
+
CouponStatus["EXPIRED"] = "expired";
|
|
31
|
+
CouponStatus["EXHAUSTED"] = "exhausted";
|
|
32
|
+
})(CouponStatus || (exports.CouponStatus = CouponStatus = {}));
|
|
33
|
+
var CouponApplicability;
|
|
34
|
+
(function (CouponApplicability) {
|
|
35
|
+
CouponApplicability["ALL_USERS"] = "all_users";
|
|
36
|
+
CouponApplicability["NEW_USERS"] = "new_users";
|
|
37
|
+
CouponApplicability["SPECIFIC_USERS"] = "specific_users";
|
|
38
|
+
CouponApplicability["USER_SEGMENT"] = "user_segment";
|
|
39
|
+
})(CouponApplicability || (exports.CouponApplicability = CouponApplicability = {}));
|
|
40
|
+
let Coupon = class Coupon extends sequelize_typescript_1.Model {
|
|
41
|
+
};
|
|
42
|
+
exports.Coupon = Coupon;
|
|
43
|
+
__decorate([
|
|
44
|
+
(0, sequelize_typescript_1.Column)({
|
|
45
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
46
|
+
defaultValue: sequelize_typescript_1.DataType.UUIDV4,
|
|
47
|
+
primaryKey: true,
|
|
48
|
+
}),
|
|
49
|
+
__metadata("design:type", String)
|
|
50
|
+
], Coupon.prototype, "id", void 0);
|
|
51
|
+
__decorate([
|
|
52
|
+
(0, sequelize_typescript_1.Column)({
|
|
53
|
+
type: sequelize_typescript_1.DataType.STRING,
|
|
54
|
+
allowNull: false,
|
|
55
|
+
unique: true,
|
|
56
|
+
}),
|
|
57
|
+
__metadata("design:type", String)
|
|
58
|
+
], Coupon.prototype, "code", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
(0, sequelize_typescript_1.Column)({
|
|
61
|
+
type: sequelize_typescript_1.DataType.STRING,
|
|
62
|
+
allowNull: false,
|
|
63
|
+
}),
|
|
64
|
+
__metadata("design:type", String)
|
|
65
|
+
], Coupon.prototype, "name", void 0);
|
|
66
|
+
__decorate([
|
|
67
|
+
(0, sequelize_typescript_1.Column)({
|
|
68
|
+
type: sequelize_typescript_1.DataType.TEXT,
|
|
69
|
+
allowNull: true,
|
|
70
|
+
}),
|
|
71
|
+
__metadata("design:type", String)
|
|
72
|
+
], Coupon.prototype, "description", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
(0, sequelize_typescript_1.Column)({
|
|
75
|
+
type: sequelize_typescript_1.DataType.ENUM(...Object.values(CouponType)),
|
|
76
|
+
allowNull: false,
|
|
77
|
+
}),
|
|
78
|
+
__metadata("design:type", String)
|
|
79
|
+
], Coupon.prototype, "type", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
(0, sequelize_typescript_1.Column)({
|
|
82
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
83
|
+
allowNull: true,
|
|
84
|
+
}),
|
|
85
|
+
__metadata("design:type", Number)
|
|
86
|
+
], Coupon.prototype, "discountValue", void 0);
|
|
87
|
+
__decorate([
|
|
88
|
+
(0, sequelize_typescript_1.Column)({
|
|
89
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
90
|
+
allowNull: true,
|
|
91
|
+
}),
|
|
92
|
+
__metadata("design:type", Number)
|
|
93
|
+
], Coupon.prototype, "maxDiscountAmount", void 0);
|
|
94
|
+
__decorate([
|
|
95
|
+
(0, sequelize_typescript_1.Column)({
|
|
96
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
97
|
+
allowNull: true,
|
|
98
|
+
}),
|
|
99
|
+
__metadata("design:type", Number)
|
|
100
|
+
], Coupon.prototype, "minimumTripAmount", void 0);
|
|
101
|
+
__decorate([
|
|
102
|
+
(0, sequelize_typescript_1.Column)({
|
|
103
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
104
|
+
allowNull: true,
|
|
105
|
+
}),
|
|
106
|
+
__metadata("design:type", Number)
|
|
107
|
+
], Coupon.prototype, "maximumTripAmount", void 0);
|
|
108
|
+
__decorate([
|
|
109
|
+
(0, sequelize_typescript_1.Column)({
|
|
110
|
+
type: sequelize_typescript_1.DataType.ENUM(...Object.values(CouponApplicability)),
|
|
111
|
+
defaultValue: CouponApplicability.ALL_USERS,
|
|
112
|
+
}),
|
|
113
|
+
__metadata("design:type", String)
|
|
114
|
+
], Coupon.prototype, "applicability", void 0);
|
|
115
|
+
__decorate([
|
|
116
|
+
(0, sequelize_typescript_1.Column)({
|
|
117
|
+
type: sequelize_typescript_1.DataType.INTEGER,
|
|
118
|
+
allowNull: true,
|
|
119
|
+
}),
|
|
120
|
+
__metadata("design:type", Number)
|
|
121
|
+
], Coupon.prototype, "totalUsageLimit", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
(0, sequelize_typescript_1.Column)({
|
|
124
|
+
type: sequelize_typescript_1.DataType.INTEGER,
|
|
125
|
+
defaultValue: 0,
|
|
126
|
+
}),
|
|
127
|
+
__metadata("design:type", Number)
|
|
128
|
+
], Coupon.prototype, "currentUsageCount", void 0);
|
|
129
|
+
__decorate([
|
|
130
|
+
(0, sequelize_typescript_1.Column)({
|
|
131
|
+
type: sequelize_typescript_1.DataType.INTEGER,
|
|
132
|
+
defaultValue: 1,
|
|
133
|
+
}),
|
|
134
|
+
__metadata("design:type", Number)
|
|
135
|
+
], Coupon.prototype, "usagePerUser", void 0);
|
|
136
|
+
__decorate([
|
|
137
|
+
(0, sequelize_typescript_1.Column)({
|
|
138
|
+
type: sequelize_typescript_1.DataType.DATE,
|
|
139
|
+
allowNull: false,
|
|
140
|
+
}),
|
|
141
|
+
__metadata("design:type", Date)
|
|
142
|
+
], Coupon.prototype, "validFrom", void 0);
|
|
143
|
+
__decorate([
|
|
144
|
+
(0, sequelize_typescript_1.Column)({
|
|
145
|
+
type: sequelize_typescript_1.DataType.DATE,
|
|
146
|
+
allowNull: false,
|
|
147
|
+
}),
|
|
148
|
+
__metadata("design:type", Date)
|
|
149
|
+
], Coupon.prototype, "validUntil", void 0);
|
|
150
|
+
__decorate([
|
|
151
|
+
(0, sequelize_typescript_1.Column)({
|
|
152
|
+
type: sequelize_typescript_1.DataType.ENUM(...Object.values(CouponStatus)),
|
|
153
|
+
defaultValue: CouponStatus.ACTIVE,
|
|
154
|
+
}),
|
|
155
|
+
__metadata("design:type", String)
|
|
156
|
+
], Coupon.prototype, "status", void 0);
|
|
157
|
+
__decorate([
|
|
158
|
+
(0, sequelize_typescript_1.Column)({
|
|
159
|
+
type: sequelize_typescript_1.DataType.JSON,
|
|
160
|
+
allowNull: true,
|
|
161
|
+
}),
|
|
162
|
+
__metadata("design:type", Array)
|
|
163
|
+
], Coupon.prototype, "vehicleTypes", void 0);
|
|
164
|
+
__decorate([
|
|
165
|
+
(0, sequelize_typescript_1.Column)({
|
|
166
|
+
type: sequelize_typescript_1.DataType.JSON,
|
|
167
|
+
allowNull: true,
|
|
168
|
+
}),
|
|
169
|
+
__metadata("design:type", Object)
|
|
170
|
+
], Coupon.prototype, "geofenceData", void 0);
|
|
171
|
+
__decorate([
|
|
172
|
+
(0, sequelize_typescript_1.Column)({
|
|
173
|
+
type: sequelize_typescript_1.DataType.JSON,
|
|
174
|
+
allowNull: true,
|
|
175
|
+
}),
|
|
176
|
+
__metadata("design:type", Array)
|
|
177
|
+
], Coupon.prototype, "dayOfWeekRestrictions", void 0);
|
|
178
|
+
__decorate([
|
|
179
|
+
(0, sequelize_typescript_1.Column)({
|
|
180
|
+
type: sequelize_typescript_1.DataType.TIME,
|
|
181
|
+
allowNull: true,
|
|
182
|
+
}),
|
|
183
|
+
__metadata("design:type", String)
|
|
184
|
+
], Coupon.prototype, "validFromTime", void 0);
|
|
185
|
+
__decorate([
|
|
186
|
+
(0, sequelize_typescript_1.Column)({
|
|
187
|
+
type: sequelize_typescript_1.DataType.TIME,
|
|
188
|
+
allowNull: true,
|
|
189
|
+
}),
|
|
190
|
+
__metadata("design:type", String)
|
|
191
|
+
], Coupon.prototype, "validUntilTime", void 0);
|
|
192
|
+
__decorate([
|
|
193
|
+
(0, sequelize_typescript_1.Column)({
|
|
194
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
195
|
+
allowNull: true,
|
|
196
|
+
}),
|
|
197
|
+
__metadata("design:type", String)
|
|
198
|
+
], Coupon.prototype, "createdByAdminId", void 0);
|
|
199
|
+
__decorate([
|
|
200
|
+
(0, sequelize_typescript_1.Column)({
|
|
201
|
+
type: sequelize_typescript_1.DataType.BOOLEAN,
|
|
202
|
+
defaultValue: false,
|
|
203
|
+
}),
|
|
204
|
+
__metadata("design:type", Boolean)
|
|
205
|
+
], Coupon.prototype, "isAutoApplicable", void 0);
|
|
206
|
+
__decorate([
|
|
207
|
+
(0, sequelize_typescript_1.Column)({
|
|
208
|
+
type: sequelize_typescript_1.DataType.JSON,
|
|
209
|
+
allowNull: true,
|
|
210
|
+
}),
|
|
211
|
+
__metadata("design:type", Object)
|
|
212
|
+
], Coupon.prototype, "metadata", void 0);
|
|
213
|
+
__decorate([
|
|
214
|
+
(0, sequelize_typescript_1.HasMany)(() => coupon_usages_entity_1.CouponUsage, 'couponId'),
|
|
215
|
+
__metadata("design:type", Array)
|
|
216
|
+
], Coupon.prototype, "usages", void 0);
|
|
217
|
+
__decorate([
|
|
218
|
+
(0, sequelize_typescript_1.HasMany)(() => coupon_user_mappings_entity_1.CouponUserMapping, 'couponId'),
|
|
219
|
+
__metadata("design:type", Array)
|
|
220
|
+
], Coupon.prototype, "userMappings", void 0);
|
|
221
|
+
exports.Coupon = Coupon = __decorate([
|
|
222
|
+
(0, sequelize_typescript_1.Table)({
|
|
223
|
+
tableName: 'coupons',
|
|
224
|
+
timestamps: true,
|
|
225
|
+
})
|
|
226
|
+
], Coupon);
|
|
227
|
+
//# sourceMappingURL=coupon.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon.entity.js","sourceRoot":"","sources":["../../src/entities/coupon.entity.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,eAAe;AACf,gDAAgD;;;;;;;;;;;;AAEhD,+DAA+E;AAC/E,iEAAqD;AACrD,+EAAkE;AAElE,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,2CAA6B,CAAA;IAC7B,qCAAuB,CAAA;IACvB,uCAAyB,CAAA;AAC3B,CAAC,EALW,UAAU,0BAAV,UAAU,QAKrB;AAED,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;IACrB,mCAAmB,CAAA;IACnB,uCAAuB,CAAA;AACzB,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAED,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,wDAAiC,CAAA;IACjC,oDAA6B,CAAA;AAC/B,CAAC,EALW,mBAAmB,mCAAnB,mBAAmB,QAK9B;AAMM,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,4BAAa;CAyJxC,CAAA;AAzJY,wBAAM;AAMT;IALP,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,+BAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,IAAI;KACjB,CAAC;;kCACiB;AAOnB;IALC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,MAAM;QACrB,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE,IAAI;KACb,CAAC;;oCACW;AAMb;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,MAAM;QACrB,SAAS,EAAE,KAAK;KACjB,CAAC;;oCACW;AAMb;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;2CACkB;AAMpB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjD,SAAS,EAAE,KAAK;KACjB,CAAC;;oCACe;AAMjB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,IAAI;KAChB,CAAC;;6CACoB;AAMtB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,IAAI;KAChB,CAAC;;iDACwB;AAM1B;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,IAAI;KAChB,CAAC;;iDACwB;AAM1B;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,IAAI;KAChB,CAAC;;iDACwB;AAM1B;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,YAAY,EAAE,mBAAmB,CAAC,SAAS;KAC5C,CAAC;;6CACiC;AAMnC;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,SAAS,EAAE,IAAI;KAChB,CAAC;;+CACsB;AAMxB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,YAAY,EAAE,CAAC;KAChB,CAAC;;iDACwB;AAM1B;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,YAAY,EAAE,CAAC;KAChB,CAAC;;4CACmB;AAMrB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;8BACS,IAAI;yCAAC;AAMhB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,KAAK;KACjB,CAAC;8BACU,IAAI;0CAAC;AAMjB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACnD,YAAY,EAAE,YAAY,CAAC,MAAM;KAClC,CAAC;;sCACmB;AAMrB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;4CACqB;AAMvB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;4CACgB;AAMlB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;qDAC8B;AAMhC;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;6CACoB;AAMtB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;8CACqB;AAMvB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;gDACuB;AAMzB;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,YAAY,EAAE,KAAK;KACpB,CAAC;;gDACwB;AAM1B;IAJC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;;wCACY;AAId;IADC,IAAA,8BAAO,EAAC,GAAG,EAAE,CAAC,kCAAW,EAAE,UAAU,CAAC;;sCACjB;AAGtB;IADC,IAAA,8BAAO,EAAC,GAAG,EAAE,CAAC,+CAAiB,EAAE,UAAU,CAAC;;4CACX;iBAxJvB,MAAM;IAJlB,IAAA,4BAAK,EAAC;QACL,SAAS,EAAE,SAAS;QACpB,UAAU,EAAE,IAAI;KACjB,CAAC;GACW,MAAM,CAyJlB"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Model } from 'sequelize-typescript';
|
|
2
|
+
import { Coupon } from './coupon.entity';
|
|
3
|
+
import { User } from './user.entity';
|
|
4
|
+
import { Trip } from './trips.entity';
|
|
5
|
+
export declare enum UsageStatus {
|
|
6
|
+
APPLIED = "applied",// Cupón aplicado al viaje
|
|
7
|
+
REDEEMED = "redeemed",// Cupón canjeado exitosamente
|
|
8
|
+
REVERSED = "reversed",// Cupón revertido (ej: viaje cancelado)
|
|
9
|
+
EXPIRED_UNUSED = "expired_unused"
|
|
10
|
+
}
|
|
11
|
+
export declare class CouponUsage extends Model<CouponUsage> {
|
|
12
|
+
id: string;
|
|
13
|
+
couponId: string;
|
|
14
|
+
userId: string;
|
|
15
|
+
tripId: string;
|
|
16
|
+
originalAmount: number;
|
|
17
|
+
discountAmount: number;
|
|
18
|
+
finalAmount: number;
|
|
19
|
+
status: UsageStatus;
|
|
20
|
+
redeemedAt: Date;
|
|
21
|
+
reversedAt: Date;
|
|
22
|
+
reversalReason: string;
|
|
23
|
+
metadata: any;
|
|
24
|
+
coupon: Coupon;
|
|
25
|
+
user: User;
|
|
26
|
+
trip: Trip;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=coupon_usages.entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon_usages.entity.d.ts","sourceRoot":"","sources":["../../src/entities/coupon_usages.entity.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,EAEN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,oBAAY,WAAW;IACrB,OAAO,YAAY,CAAE,0BAA0B;IAC/C,QAAQ,aAAa,CAAE,8BAA8B;IACrD,QAAQ,aAAa,CAAE,wCAAwC;IAC/D,cAAc,mBAAmB;CAClC;AAED,qBAIa,WAAY,SAAQ,KAAK,CAAC,WAAW,CAAC;IAMzC,EAAE,EAAE,MAAM,CAAC;IAOnB,QAAQ,EAAE,MAAM,CAAC;IAOjB,MAAM,EAAE,MAAM,CAAC;IAOf,MAAM,EAAE,MAAM,CAAC;IAMf,cAAc,EAAE,MAAM,CAAC;IAMvB,cAAc,EAAE,MAAM,CAAC;IAMvB,WAAW,EAAE,MAAM,CAAC;IAMpB,MAAM,EAAE,WAAW,CAAC;IAMpB,UAAU,EAAE,IAAI,CAAC;IAMjB,UAAU,EAAE,IAAI,CAAC;IAMjB,cAAc,EAAE,MAAM,CAAC;IAMvB,QAAQ,EAAE,GAAG,CAAC;IAId,MAAM,EAAE,MAAM,CAAC;IAGf,IAAI,EAAE,IAAI,CAAC;IAGX,IAAI,EAAE,IAAI,CAAC;CACZ"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// =============================================
|
|
3
|
+
// COUPON USAGE MODEL
|
|
4
|
+
// =============================================
|
|
5
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
6
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
8
|
+
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;
|
|
9
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
10
|
+
};
|
|
11
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
12
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.CouponUsage = exports.UsageStatus = void 0;
|
|
16
|
+
const sequelize_typescript_1 = require("sequelize-typescript");
|
|
17
|
+
const coupon_entity_1 = require("./coupon.entity");
|
|
18
|
+
const user_entity_1 = require("./user.entity");
|
|
19
|
+
const trips_entity_1 = require("./trips.entity");
|
|
20
|
+
var UsageStatus;
|
|
21
|
+
(function (UsageStatus) {
|
|
22
|
+
UsageStatus["APPLIED"] = "applied";
|
|
23
|
+
UsageStatus["REDEEMED"] = "redeemed";
|
|
24
|
+
UsageStatus["REVERSED"] = "reversed";
|
|
25
|
+
UsageStatus["EXPIRED_UNUSED"] = "expired_unused";
|
|
26
|
+
})(UsageStatus || (exports.UsageStatus = UsageStatus = {}));
|
|
27
|
+
let CouponUsage = class CouponUsage extends sequelize_typescript_1.Model {
|
|
28
|
+
};
|
|
29
|
+
exports.CouponUsage = CouponUsage;
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, sequelize_typescript_1.Column)({
|
|
32
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
33
|
+
defaultValue: sequelize_typescript_1.DataType.UUIDV4,
|
|
34
|
+
primaryKey: true,
|
|
35
|
+
}),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], CouponUsage.prototype, "id", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, sequelize_typescript_1.ForeignKey)(() => coupon_entity_1.Coupon),
|
|
40
|
+
(0, sequelize_typescript_1.Column)({
|
|
41
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
42
|
+
allowNull: false,
|
|
43
|
+
}),
|
|
44
|
+
__metadata("design:type", String)
|
|
45
|
+
], CouponUsage.prototype, "couponId", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, sequelize_typescript_1.ForeignKey)(() => user_entity_1.User),
|
|
48
|
+
(0, sequelize_typescript_1.Column)({
|
|
49
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
50
|
+
allowNull: false,
|
|
51
|
+
}),
|
|
52
|
+
__metadata("design:type", String)
|
|
53
|
+
], CouponUsage.prototype, "userId", void 0);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, sequelize_typescript_1.ForeignKey)(() => trips_entity_1.Trip),
|
|
56
|
+
(0, sequelize_typescript_1.Column)({
|
|
57
|
+
type: sequelize_typescript_1.DataType.UUID,
|
|
58
|
+
allowNull: false,
|
|
59
|
+
}),
|
|
60
|
+
__metadata("design:type", String)
|
|
61
|
+
], CouponUsage.prototype, "tripId", void 0);
|
|
62
|
+
__decorate([
|
|
63
|
+
(0, sequelize_typescript_1.Column)({
|
|
64
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
65
|
+
allowNull: false,
|
|
66
|
+
}),
|
|
67
|
+
__metadata("design:type", Number)
|
|
68
|
+
], CouponUsage.prototype, "originalAmount", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, sequelize_typescript_1.Column)({
|
|
71
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
72
|
+
allowNull: false,
|
|
73
|
+
}),
|
|
74
|
+
__metadata("design:type", Number)
|
|
75
|
+
], CouponUsage.prototype, "discountAmount", void 0);
|
|
76
|
+
__decorate([
|
|
77
|
+
(0, sequelize_typescript_1.Column)({
|
|
78
|
+
type: sequelize_typescript_1.DataType.DECIMAL(10, 2),
|
|
79
|
+
allowNull: false,
|
|
80
|
+
}),
|
|
81
|
+
__metadata("design:type", Number)
|
|
82
|
+
], CouponUsage.prototype, "finalAmount", void 0);
|
|
83
|
+
__decorate([
|
|
84
|
+
(0, sequelize_typescript_1.Column)({
|
|
85
|
+
type: sequelize_typescript_1.DataType.ENUM(...Object.values(UsageStatus)),
|
|
86
|
+
defaultValue: UsageStatus.APPLIED,
|
|
87
|
+
}),
|
|
88
|
+
__metadata("design:type", String)
|
|
89
|
+
], CouponUsage.prototype, "status", void 0);
|
|
90
|
+
__decorate([
|
|
91
|
+
(0, sequelize_typescript_1.Column)({
|
|
92
|
+
type: sequelize_typescript_1.DataType.DATE,
|
|
93
|
+
allowNull: true,
|
|
94
|
+
}),
|
|
95
|
+
__metadata("design:type", Date)
|
|
96
|
+
], CouponUsage.prototype, "redeemedAt", void 0);
|
|
97
|
+
__decorate([
|
|
98
|
+
(0, sequelize_typescript_1.Column)({
|
|
99
|
+
type: sequelize_typescript_1.DataType.DATE,
|
|
100
|
+
allowNull: true,
|
|
101
|
+
}),
|
|
102
|
+
__metadata("design:type", Date)
|
|
103
|
+
], CouponUsage.prototype, "reversedAt", void 0);
|
|
104
|
+
__decorate([
|
|
105
|
+
(0, sequelize_typescript_1.Column)({
|
|
106
|
+
type: sequelize_typescript_1.DataType.STRING,
|
|
107
|
+
allowNull: true,
|
|
108
|
+
}),
|
|
109
|
+
__metadata("design:type", String)
|
|
110
|
+
], CouponUsage.prototype, "reversalReason", void 0);
|
|
111
|
+
__decorate([
|
|
112
|
+
(0, sequelize_typescript_1.Column)({
|
|
113
|
+
type: sequelize_typescript_1.DataType.JSON,
|
|
114
|
+
allowNull: true,
|
|
115
|
+
}),
|
|
116
|
+
__metadata("design:type", Object)
|
|
117
|
+
], CouponUsage.prototype, "metadata", void 0);
|
|
118
|
+
__decorate([
|
|
119
|
+
(0, sequelize_typescript_1.BelongsTo)(() => coupon_entity_1.Coupon),
|
|
120
|
+
__metadata("design:type", coupon_entity_1.Coupon)
|
|
121
|
+
], CouponUsage.prototype, "coupon", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
(0, sequelize_typescript_1.BelongsTo)(() => user_entity_1.User),
|
|
124
|
+
__metadata("design:type", user_entity_1.User)
|
|
125
|
+
], CouponUsage.prototype, "user", void 0);
|
|
126
|
+
__decorate([
|
|
127
|
+
(0, sequelize_typescript_1.BelongsTo)(() => trips_entity_1.Trip),
|
|
128
|
+
__metadata("design:type", trips_entity_1.Trip)
|
|
129
|
+
], CouponUsage.prototype, "trip", void 0);
|
|
130
|
+
exports.CouponUsage = CouponUsage = __decorate([
|
|
131
|
+
(0, sequelize_typescript_1.Table)({
|
|
132
|
+
tableName: 'coupon_usages',
|
|
133
|
+
timestamps: true,
|
|
134
|
+
})
|
|
135
|
+
], CouponUsage);
|
|
136
|
+
//# sourceMappingURL=coupon_usages.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon_usages.entity.js","sourceRoot":"","sources":["../../src/entities/coupon_usages.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Model } from 'sequelize-typescript';
|
|
2
|
+
import { Coupon } from './coupon.entity';
|
|
3
|
+
import { User } from './user.entity';
|
|
4
|
+
export declare class CouponUserMapping extends Model {
|
|
5
|
+
id: string;
|
|
6
|
+
couponId: string;
|
|
7
|
+
userId: string;
|
|
8
|
+
usageCount: number;
|
|
9
|
+
firstUsedAt: Date;
|
|
10
|
+
lastUsedAt: Date;
|
|
11
|
+
isEligible: boolean;
|
|
12
|
+
assignedAt: Date;
|
|
13
|
+
assignedByAdminId: string;
|
|
14
|
+
coupon: Coupon;
|
|
15
|
+
user: User;
|
|
16
|
+
static couponUserIndex: string[];
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=coupon_user_mappings.entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupon_user_mappings.entity.d.ts","sourceRoot":"","sources":["../../src/entities/coupon_user_mappings.entity.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,EAEN,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,qBAIa,iBAAkB,SAAQ,KAAK;IAMlC,EAAE,EAAE,MAAM,CAAC;IAOnB,QAAQ,EAAE,MAAM,CAAC;IAOjB,MAAM,EAAE,MAAM,CAAC;IAMf,UAAU,EAAE,MAAM,CAAC;IAMnB,WAAW,EAAE,IAAI,CAAC;IAMlB,UAAU,EAAE,IAAI,CAAC;IAMjB,UAAU,EAAE,OAAO,CAAC;IAMpB,UAAU,EAAE,IAAI,CAAC;IAMjB,iBAAiB,EAAE,MAAM,CAAC;IAI1B,MAAM,EAAE,MAAM,CAAC;IAGf,IAAI,EAAE,IAAI,CAAC;IAIX,MAAM,CAAC,eAAe,WAA0B;CACjD"}
|