tt-entities 0.0.47 → 0.0.50
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/dist/libs/tatayab-entities-library/entities/order.entity.d.ts +4 -0
- package/dist/libs/tatayab-entities-library/entities/order.entity.js +19 -0
- package/dist/libs/tatayab-entities-library/entities/order.entity.js.map +1 -1
- package/dist/libs/tatayab-entities-library/entities/purchase-order.entity.d.ts +1 -0
- package/dist/libs/tatayab-entities-library/entities/purchase-order.entity.js +4 -0
- package/dist/libs/tatayab-entities-library/entities/purchase-order.entity.js.map +1 -1
- package/dist/libs/tatayab-entities-library/entities/refund.entity.d.ts +31 -0
- package/dist/libs/tatayab-entities-library/entities/refund.entity.js +105 -0
- package/dist/libs/tatayab-entities-library/entities/refund.entity.js.map +1 -0
- package/dist/libs/tatayab-entities-library/entities/run-sheet-order.entity.d.ts +0 -3
- package/dist/libs/tatayab-entities-library/entities/run-sheet-order.entity.js +0 -10
- package/dist/libs/tatayab-entities-library/entities/run-sheet-order.entity.js.map +1 -1
- package/dist/libs/tatayab-entities-library/entities/run-sheet.entity.d.ts +3 -0
- package/dist/libs/tatayab-entities-library/entities/run-sheet.entity.js +10 -0
- package/dist/libs/tatayab-entities-library/entities/run-sheet.entity.js.map +1 -1
- package/dist/libs/tatayab-entities-library/index.d.ts +1 -0
- package/dist/libs/tatayab-entities-library/index.js +8 -2
- package/dist/libs/tatayab-entities-library/index.js.map +1 -1
- package/dist/src/main.js +164 -20
- package/libs/tatayab-entities-library/src/entities/order.entity.ts +27 -2
- package/libs/tatayab-entities-library/src/entities/purchase-order.entity.ts +3 -0
- package/libs/tatayab-entities-library/src/entities/refund.entity.ts +75 -0
- package/libs/tatayab-entities-library/src/entities/run-sheet-order.entity.ts +0 -8
- package/libs/tatayab-entities-library/src/entities/run-sheet.entity.ts +8 -0
- package/libs/tatayab-entities-library/src/index.ts +6 -0
- package/package.json +1 -1
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
|
-
Table,
|
|
3
|
-
|
|
2
|
+
Table,
|
|
3
|
+
Column,
|
|
4
|
+
Model,
|
|
5
|
+
ForeignKey,
|
|
6
|
+
BelongsTo,
|
|
7
|
+
HasMany,
|
|
8
|
+
DataType,
|
|
4
9
|
} from 'sequelize-typescript';
|
|
5
10
|
import { User } from './user.entity';
|
|
6
11
|
import { Store } from './store.entity';
|
|
@@ -143,6 +148,26 @@ export class Order extends Model {
|
|
|
143
148
|
@Column({ type: DataType.DATE, allowNull: true })
|
|
144
149
|
declare deliveredAt?: Date;
|
|
145
150
|
|
|
151
|
+
@Column({
|
|
152
|
+
type: DataType.ENUM(
|
|
153
|
+
'none',
|
|
154
|
+
'pending_bank_refund',
|
|
155
|
+
'wallet_credited',
|
|
156
|
+
'bank_refunded',
|
|
157
|
+
),
|
|
158
|
+
defaultValue: 'none',
|
|
159
|
+
})
|
|
160
|
+
declare refundStatus: string;
|
|
161
|
+
|
|
162
|
+
@Column({ type: DataType.BOOLEAN, defaultValue: false })
|
|
163
|
+
declare cashCollected: boolean;
|
|
164
|
+
|
|
165
|
+
@Column({ type: DataType.DATE, allowNull: true })
|
|
166
|
+
declare cashCollectedAt?: Date;
|
|
167
|
+
|
|
168
|
+
@Column({ allowNull: true })
|
|
169
|
+
declare cashCollectedBy?: number;
|
|
170
|
+
|
|
146
171
|
// ── Notes ─────────────────────────────────────────────────────────────────────
|
|
147
172
|
@Column({ type: DataType.TEXT, allowNull: true })
|
|
148
173
|
declare customerNotes?: string;
|
|
@@ -59,6 +59,9 @@ export class PurchaseOrder extends Model {
|
|
|
59
59
|
@Column({ type: DataType.TEXT, allowNull: true })
|
|
60
60
|
declare notes?: string;
|
|
61
61
|
|
|
62
|
+
@Column({ type: DataType.TEXT, allowNull: true })
|
|
63
|
+
declare invoiceUrl?: string;
|
|
64
|
+
|
|
62
65
|
@ForeignKey(() => SysUser)
|
|
63
66
|
@Column({ allowNull: true })
|
|
64
67
|
declare createdBy?: number;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Table,
|
|
3
|
+
Column,
|
|
4
|
+
Model,
|
|
5
|
+
ForeignKey,
|
|
6
|
+
BelongsTo,
|
|
7
|
+
DataType,
|
|
8
|
+
} from 'sequelize-typescript';
|
|
9
|
+
import { Order } from './order.entity';
|
|
10
|
+
import { User } from './user.entity';
|
|
11
|
+
import { SysUser } from './sys.user.entity';
|
|
12
|
+
|
|
13
|
+
export enum RefundMethod {
|
|
14
|
+
WALLET = 'wallet',
|
|
15
|
+
BANK = 'bank',
|
|
16
|
+
}
|
|
17
|
+
export enum RefundStatus {
|
|
18
|
+
PENDING = 'pending',
|
|
19
|
+
PROCESSING = 'processing',
|
|
20
|
+
REFUNDED = 'refunded',
|
|
21
|
+
FAILED = 'failed',
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@Table
|
|
25
|
+
export class Refund extends Model {
|
|
26
|
+
@ForeignKey(() => Order)
|
|
27
|
+
@Column({ allowNull: false })
|
|
28
|
+
declare orderId: number;
|
|
29
|
+
|
|
30
|
+
@ForeignKey(() => User)
|
|
31
|
+
@Column({ allowNull: true })
|
|
32
|
+
declare userId?: number;
|
|
33
|
+
|
|
34
|
+
@Column({ type: DataType.DECIMAL(10, 3), allowNull: false })
|
|
35
|
+
declare amount: number;
|
|
36
|
+
|
|
37
|
+
@Column({ allowNull: false, defaultValue: 'KWD' })
|
|
38
|
+
declare currency: string;
|
|
39
|
+
|
|
40
|
+
@Column({
|
|
41
|
+
type: DataType.ENUM(...Object.values(RefundMethod)),
|
|
42
|
+
allowNull: false,
|
|
43
|
+
})
|
|
44
|
+
declare method: RefundMethod;
|
|
45
|
+
|
|
46
|
+
@Column({
|
|
47
|
+
type: DataType.ENUM(...Object.values(RefundStatus)),
|
|
48
|
+
defaultValue: RefundStatus.PENDING,
|
|
49
|
+
})
|
|
50
|
+
declare status: RefundStatus;
|
|
51
|
+
|
|
52
|
+
@Column({ allowNull: true })
|
|
53
|
+
declare refundReference?: string;
|
|
54
|
+
|
|
55
|
+
@Column({ type: DataType.TEXT, allowNull: true })
|
|
56
|
+
declare notes?: string;
|
|
57
|
+
|
|
58
|
+
@Column({ type: DataType.DATE, allowNull: true })
|
|
59
|
+
declare processedAt?: Date;
|
|
60
|
+
|
|
61
|
+
@ForeignKey(() => SysUser)
|
|
62
|
+
@Column({ allowNull: true })
|
|
63
|
+
declare processedBy?: number;
|
|
64
|
+
|
|
65
|
+
@ForeignKey(() => SysUser)
|
|
66
|
+
@Column({ allowNull: true })
|
|
67
|
+
declare createdBy?: number;
|
|
68
|
+
|
|
69
|
+
@BelongsTo(() => Order) declare order: Order;
|
|
70
|
+
@BelongsTo(() => User) declare user?: User;
|
|
71
|
+
@BelongsTo(() => SysUser, { foreignKey: 'processedBy', as: 'processor' })
|
|
72
|
+
declare processor?: SysUser;
|
|
73
|
+
@BelongsTo(() => SysUser, { foreignKey: 'createdBy', as: 'creator' })
|
|
74
|
+
declare creator?: SysUser;
|
|
75
|
+
}
|
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
} from 'sequelize-typescript';
|
|
9
9
|
import { RunSheet } from './run-sheet.entity';
|
|
10
10
|
import { Order } from './order.entity';
|
|
11
|
-
import { Inventory } from './inventory.entity';
|
|
12
11
|
|
|
13
12
|
export enum RunSheetOrderStatus {
|
|
14
13
|
ASSIGNED = 'assigned', // Order added to runsheet, marked shipped
|
|
@@ -41,10 +40,6 @@ export class RunSheetOrder extends Model {
|
|
|
41
40
|
@Column({ allowNull: true })
|
|
42
41
|
declare orderNumber?: string;
|
|
43
42
|
|
|
44
|
-
@ForeignKey(() => Inventory)
|
|
45
|
-
@Column({ allowNull: true })
|
|
46
|
-
declare inventoryId?: number;
|
|
47
|
-
|
|
48
43
|
// ── Associations ─────────────────────────────────────────────────────────────
|
|
49
44
|
|
|
50
45
|
@BelongsTo(() => RunSheet)
|
|
@@ -52,7 +47,4 @@ export class RunSheetOrder extends Model {
|
|
|
52
47
|
|
|
53
48
|
@BelongsTo(() => Order)
|
|
54
49
|
declare order: Order;
|
|
55
|
-
|
|
56
|
-
@BelongsTo(() => Inventory)
|
|
57
|
-
declare inventory?: Inventory;
|
|
58
50
|
}
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
} from 'sequelize-typescript';
|
|
5
5
|
import { SysUser } from './sys.user.entity';
|
|
6
6
|
import { RunSheetOrder } from './run-sheet-order.entity';
|
|
7
|
+
import { Inventory } from './inventory.entity';
|
|
7
8
|
|
|
8
9
|
export enum RunSheetStatus {
|
|
9
10
|
OPEN = 'open', // Created, orders assigned, all moved to shipped
|
|
@@ -55,6 +56,10 @@ export class RunSheet extends Model {
|
|
|
55
56
|
@Column({ allowNull: true })
|
|
56
57
|
declare completedBy?: number;
|
|
57
58
|
|
|
59
|
+
@ForeignKey(() => Inventory)
|
|
60
|
+
@Column({ allowNull: true })
|
|
61
|
+
declare inventoryId?: number;
|
|
62
|
+
|
|
58
63
|
// ── Associations ─────────────────────────────────────────────────────────────
|
|
59
64
|
|
|
60
65
|
@BelongsTo(() => SysUser, { foreignKey: 'createdBy', as: 'creator' })
|
|
@@ -65,4 +70,7 @@ export class RunSheet extends Model {
|
|
|
65
70
|
|
|
66
71
|
@HasMany(() => RunSheetOrder)
|
|
67
72
|
declare runSheetOrders: RunSheetOrder[];
|
|
73
|
+
|
|
74
|
+
@BelongsTo(() => Inventory)
|
|
75
|
+
declare inventory?: Inventory;
|
|
68
76
|
}
|
|
@@ -77,6 +77,7 @@ import { UserTransaction } from './entities/user-transaction.entity';
|
|
|
77
77
|
import { PurchaseOrderOrderItem } from './entities/purchase-order-order-item.entity';
|
|
78
78
|
import { RunSheet } from './entities/run-sheet.entity';
|
|
79
79
|
import { RunSheetOrder } from './entities/run-sheet-order.entity';
|
|
80
|
+
import { Refund } from './entities/refund.entity';
|
|
80
81
|
|
|
81
82
|
// =============================================================================
|
|
82
83
|
// EXPORTS
|
|
@@ -109,6 +110,9 @@ export {
|
|
|
109
110
|
RunSheetOrderStatus,
|
|
110
111
|
} from './entities/run-sheet-order.entity';
|
|
111
112
|
|
|
113
|
+
export { Refund, RefundMethod, RefundStatus } from './entities/refund.entity';
|
|
114
|
+
|
|
115
|
+
|
|
112
116
|
// ─── Catalogue ────────────────────────────────────────────────────────────────
|
|
113
117
|
export { Category } from './entities/category.entity';
|
|
114
118
|
export { Brand } from './entities/brand.entity';
|
|
@@ -291,5 +295,7 @@ export function getDbModels(): ModelCtor[] {
|
|
|
291
295
|
|
|
292
296
|
RunSheet,
|
|
293
297
|
RunSheetOrder,
|
|
298
|
+
|
|
299
|
+
Refund
|
|
294
300
|
];
|
|
295
301
|
}
|