@kipicore/dbcore 1.1.604 → 1.1.606

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.
@@ -1507,7 +1507,8 @@ export declare enum RMS_APPROVAL_STATUS {
1507
1507
  APPROVED = "APPROVED",
1508
1508
  REJECTED = "REJECTED",
1509
1509
  CANCELLED = "CANCELLED",
1510
- PO_CREATED = "PO_CREATED"
1510
+ PO_CREATED = "PO_CREATED",
1511
+ GRN_CREATED = "GRN_CREATED"
1511
1512
  }
1512
1513
  export declare enum RMS_PRIORITY {
1513
1514
  LOW = "LOW",
@@ -1818,6 +1818,7 @@ var RMS_APPROVAL_STATUS;
1818
1818
  RMS_APPROVAL_STATUS["REJECTED"] = "REJECTED";
1819
1819
  RMS_APPROVAL_STATUS["CANCELLED"] = "CANCELLED";
1820
1820
  RMS_APPROVAL_STATUS["PO_CREATED"] = "PO_CREATED";
1821
+ RMS_APPROVAL_STATUS["GRN_CREATED"] = "GRN_CREATED";
1821
1822
  })(RMS_APPROVAL_STATUS || (exports.RMS_APPROVAL_STATUS = RMS_APPROVAL_STATUS = {}));
1822
1823
  var RMS_PRIORITY;
1823
1824
  (function (RMS_PRIORITY) {
@@ -0,0 +1,2 @@
1
+ declare const _exports: import("sequelize-cli").Migration;
2
+ export = _exports;
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+ /** @type {import('sequelize-cli').Migration} */
3
+ module.exports = {
4
+ async up(queryInterface, Sequelize) {
5
+ const checkAndAddColumn = async (table, column, type) => {
6
+ const tableInfo = await queryInterface.describeTable(table);
7
+ if (!tableInfo[column]) {
8
+ await queryInterface.addColumn(table, column, {
9
+ type: type,
10
+ allowNull: true,
11
+ });
12
+ }
13
+ };
14
+ await checkAndAddColumn('rms_assets', 'condition', Sequelize.STRING);
15
+ await checkAndAddColumn('rms_expense_entries', 'deleted_at', Sequelize.DATE);
16
+ await checkAndAddColumn('rms_maintenance_tickets', 'resource_id', Sequelize.UUID);
17
+ await checkAndAddColumn('rms_purchase_order_items', 'quantity', Sequelize.DECIMAL(10, 2));
18
+ await checkAndAddColumn('rms_purchase_order_items', 'received_quantity', Sequelize.DECIMAL(10, 2));
19
+ await checkAndAddColumn('rms_purchase_order_items', 'rate', Sequelize.DECIMAL(10, 2));
20
+ await checkAndAddColumn('rms_purchase_order_items', 'amount', Sequelize.DECIMAL(10, 2));
21
+ await checkAndAddColumn('rms_purchase_order_items', 'status', Sequelize.STRING);
22
+ },
23
+ async down(queryInterface, Sequelize) {
24
+ const checkAndRemoveColumn = async (table, column) => {
25
+ const tableInfo = await queryInterface.describeTable(table);
26
+ if (tableInfo[column]) {
27
+ await queryInterface.removeColumn(table, column);
28
+ }
29
+ };
30
+ await checkAndRemoveColumn('rms_assets', 'condition');
31
+ await checkAndRemoveColumn('rms_expense_entries', 'deleted_at');
32
+ await checkAndRemoveColumn('rms_maintenance_tickets', 'resource_id');
33
+ await checkAndRemoveColumn('rms_purchase_order_items', 'quantity');
34
+ await checkAndRemoveColumn('rms_purchase_order_items', 'received_quantity');
35
+ await checkAndRemoveColumn('rms_purchase_order_items', 'rate');
36
+ await checkAndRemoveColumn('rms_purchase_order_items', 'amount');
37
+ await checkAndRemoveColumn('rms_purchase_order_items', 'status');
38
+ }
39
+ };
@@ -0,0 +1,2 @@
1
+ export function up(queryInterface: any, Sequelize: any): Promise<void>;
2
+ export function down(queryInterface: any, Sequelize: any): Promise<void>;
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+ module.exports = {
3
+ up: async (queryInterface, Sequelize) => {
4
+ const tableInfo = await queryInterface.describeTable('rms_purchase_orders');
5
+ if (!tableInfo['remarks']) {
6
+ await queryInterface.addColumn('rms_purchase_orders', 'remarks', {
7
+ type: Sequelize.TEXT,
8
+ allowNull: true,
9
+ });
10
+ }
11
+ if (!tableInfo['approval_remarks']) {
12
+ await queryInterface.addColumn('rms_purchase_orders', 'approval_remarks', {
13
+ type: Sequelize.TEXT,
14
+ allowNull: true,
15
+ });
16
+ }
17
+ },
18
+ down: async (queryInterface, Sequelize) => {
19
+ await queryInterface.removeColumn('rms_purchase_orders', 'remarks');
20
+ await queryInterface.removeColumn('rms_purchase_orders', 'approval_remarks');
21
+ }
22
+ };
@@ -13,5 +13,7 @@ export interface IRmsPurchaseOrderAttributes extends IDefaultAttributes {
13
13
  discountAmount: number;
14
14
  approvalStatus: RMS_APPROVAL_STATUS;
15
15
  fulfillmentStatus: RMS_PO_FULFILLMENT_STATUS;
16
+ approvalRemarks?: string | null;
17
+ remarks?: string | null;
16
18
  status: string;
17
19
  }
@@ -31,22 +31,27 @@ RmsAssetModel.init({
31
31
  instituteId: {
32
32
  type: sequelize_1.DataTypes.UUID,
33
33
  allowNull: true,
34
+ field: 'institute_id',
34
35
  },
35
36
  assetCode: {
36
37
  type: sequelize_1.DataTypes.STRING,
37
38
  allowNull: true,
39
+ field: 'asset_code',
38
40
  },
39
41
  resourceId: {
40
42
  type: sequelize_1.DataTypes.UUID,
41
43
  allowNull: true,
44
+ field: 'resource_id',
42
45
  },
43
46
  grnItemId: {
44
47
  type: sequelize_1.DataTypes.UUID,
45
48
  allowNull: true,
49
+ field: 'grn_item_id',
46
50
  },
47
51
  serialNumber: {
48
52
  type: sequelize_1.DataTypes.STRING,
49
53
  allowNull: true,
54
+ field: 'serial_number',
50
55
  },
51
56
  condition: {
52
57
  type: sequelize_1.DataTypes.STRING,
@@ -55,10 +60,12 @@ RmsAssetModel.init({
55
60
  assignedTo: {
56
61
  type: sequelize_1.DataTypes.UUID,
57
62
  allowNull: true,
63
+ field: 'assigned_to',
58
64
  },
59
65
  locationId: {
60
66
  type: sequelize_1.DataTypes.UUID,
61
67
  allowNull: true,
68
+ field: 'location_id',
62
69
  },
63
70
  isExpiryTracked: {
64
71
  type: sequelize_1.DataTypes.BOOLEAN,
@@ -75,6 +82,7 @@ RmsAssetModel.init({
75
82
  type: sequelize_1.DataTypes.STRING,
76
83
  allowNull: true,
77
84
  defaultValue: app_1.RMS_ASSET_LIFECYCLE.AVAILABLE,
85
+ field: 'lifecycle_status',
78
86
  },
79
87
  status: {
80
88
  type: sequelize_1.DataTypes.STRING,
@@ -84,6 +84,5 @@ RmsAssetTransactionModel.init({
84
84
  tableName: 'rms_asset_transactions',
85
85
  timestamps: true,
86
86
  paranoid: true,
87
- underscored: true,
88
87
  });
89
88
  exports.default = RmsAssetTransactionModel;
@@ -42,21 +42,6 @@ RmsDepartmentModel.init({
42
42
  allowNull: true,
43
43
  defaultValue: 'ACTIVE',
44
44
  },
45
- createdBy: {
46
- type: sequelize_1.DataTypes.UUID,
47
- allowNull: true,
48
- field: 'created_by',
49
- },
50
- updatedBy: {
51
- type: sequelize_1.DataTypes.UUID,
52
- allowNull: true,
53
- field: 'updated_by',
54
- },
55
- deletedBy: {
56
- type: sequelize_1.DataTypes.UUID,
57
- allowNull: true,
58
- field: 'deleted_by',
59
- },
60
45
  }, {
61
46
  sequelize: index_1.sequelize,
62
47
  modelName: 'RmsDepartmentModel',
@@ -30,36 +30,44 @@ RmsGrnItemModel.init({
30
30
  instituteId: {
31
31
  type: sequelize_1.DataTypes.UUID,
32
32
  allowNull: true,
33
+ field: 'institute_id',
33
34
  },
34
35
  grnId: {
35
36
  type: sequelize_1.DataTypes.UUID,
36
37
  allowNull: true,
38
+ field: 'grn_id',
37
39
  },
38
40
  purchaseOrderItemId: {
39
41
  type: sequelize_1.DataTypes.UUID,
40
42
  allowNull: true,
43
+ field: 'purchase_order_item_id',
41
44
  },
42
45
  resourceId: {
43
46
  type: sequelize_1.DataTypes.UUID,
44
47
  allowNull: true,
48
+ field: 'resource_id',
45
49
  },
46
50
  orderedQuantity: {
47
51
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
48
52
  allowNull: true,
53
+ field: 'ordered_quantity',
49
54
  },
50
55
  receivedQuantity: {
51
56
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
52
57
  allowNull: true,
58
+ field: 'received_quantity',
53
59
  },
54
60
  acceptedQuantity: {
55
61
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
56
62
  allowNull: true,
57
63
  defaultValue: 0,
64
+ field: 'accepted_quantity',
58
65
  },
59
66
  rejectedQuantity: {
60
67
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
61
68
  allowNull: true,
62
69
  defaultValue: 0,
70
+ field: 'rejected_quantity',
63
71
  },
64
72
  isExpiryTracked: {
65
73
  type: sequelize_1.DataTypes.BOOLEAN,
@@ -29,26 +29,32 @@ RmsGrnModel.init({
29
29
  instituteId: {
30
30
  type: sequelize_1.DataTypes.UUID,
31
31
  allowNull: true,
32
+ field: 'institute_id',
32
33
  },
33
34
  grnNo: {
34
35
  type: sequelize_1.DataTypes.STRING,
35
36
  allowNull: true,
37
+ field: 'grn_no',
36
38
  },
37
39
  purchaseOrderId: {
38
40
  type: sequelize_1.DataTypes.UUID,
39
41
  allowNull: true,
42
+ field: 'purchase_order_id',
40
43
  },
41
44
  vendorId: {
42
45
  type: sequelize_1.DataTypes.UUID,
43
46
  allowNull: true,
47
+ field: 'vendor_id',
44
48
  },
45
49
  receivedDate: {
46
50
  type: sequelize_1.DataTypes.DATE,
47
51
  allowNull: true,
52
+ field: 'received_date',
48
53
  },
49
54
  receivedBy: {
50
55
  type: sequelize_1.DataTypes.UUID,
51
56
  allowNull: true,
57
+ field: 'received_by',
52
58
  },
53
59
  status: {
54
60
  type: sequelize_1.DataTypes.STRING,
@@ -59,6 +65,7 @@ RmsGrnModel.init({
59
65
  type: sequelize_1.DataTypes.STRING,
60
66
  allowNull: true,
61
67
  defaultValue: app_1.RMS_APPROVAL_STATUS.DRAFT,
68
+ field: 'approval_status',
62
69
  },
63
70
  remarks: {
64
71
  type: sequelize_1.DataTypes.TEXT,
@@ -54,21 +54,6 @@ RmsLocationModel.init({
54
54
  allowNull: true,
55
55
  defaultValue: 'ACTIVE',
56
56
  },
57
- createdBy: {
58
- type: sequelize_1.DataTypes.UUID,
59
- allowNull: true,
60
- field: 'created_by',
61
- },
62
- updatedBy: {
63
- type: sequelize_1.DataTypes.UUID,
64
- allowNull: true,
65
- field: 'updated_by',
66
- },
67
- deletedBy: {
68
- type: sequelize_1.DataTypes.UUID,
69
- allowNull: true,
70
- field: 'deleted_by',
71
- },
72
57
  }, {
73
58
  sequelize: index_1.sequelize,
74
59
  modelName: 'RmsLocationModel',
@@ -31,6 +31,6 @@ RmsMaintenanceActivityModel.init({
31
31
  modelName: 'RmsMaintenanceActivityModel',
32
32
  tableName: 'rms_maintenance_activities',
33
33
  timestamps: true,
34
- paranoid: false, // Immutable ledger
34
+ paranoid: true, // Immutable ledger
35
35
  });
36
36
  exports.default = RmsMaintenanceActivityModel;
@@ -42,14 +42,17 @@ RmsPurchaseOrderItemModel.init({
42
42
  instituteId: {
43
43
  type: sequelize_1.DataTypes.UUID,
44
44
  allowNull: true,
45
+ field: 'institute_id',
45
46
  },
46
47
  purchaseOrderId: {
47
48
  type: sequelize_1.DataTypes.UUID,
48
49
  allowNull: true,
50
+ field: 'purchase_order_id',
49
51
  },
50
52
  resourceId: {
51
53
  type: sequelize_1.DataTypes.UUID,
52
54
  allowNull: true,
55
+ field: 'resource_id',
53
56
  },
54
57
  quantity: {
55
58
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
@@ -59,6 +62,7 @@ RmsPurchaseOrderItemModel.init({
59
62
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
60
63
  allowNull: true,
61
64
  defaultValue: 0,
65
+ field: 'received_quantity',
62
66
  },
63
67
  rate: {
64
68
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
@@ -69,6 +73,7 @@ RmsPurchaseOrderItemModel.init({
69
73
  type: sequelize_1.DataTypes.DECIMAL(10, 2),
70
74
  allowNull: true,
71
75
  defaultValue: 0,
76
+ field: 'tax_amount',
72
77
  },
73
78
  amount: {
74
79
  type: sequelize_1.DataTypes.DECIMAL(15, 2),
@@ -15,6 +15,8 @@ declare class RmsPurchaseOrderModel extends Model<IRmsPurchaseOrderAttributes, T
15
15
  discountAmount: number;
16
16
  approvalStatus: RMS_APPROVAL_STATUS;
17
17
  fulfillmentStatus: RMS_PO_FULFILLMENT_STATUS;
18
+ approvalRemarks?: string | null;
19
+ remarks?: string | null;
18
20
  status: string;
19
21
  createdBy?: string | null;
20
22
  updatedBy?: string | null;
@@ -46,52 +46,72 @@ RmsPurchaseOrderModel.init({
46
46
  instituteId: {
47
47
  type: sequelize_1.DataTypes.UUID,
48
48
  allowNull: true,
49
+ field: 'institute_id',
49
50
  },
50
51
  poNumber: {
51
52
  type: sequelize_1.DataTypes.STRING,
52
53
  allowNull: true,
54
+ field: 'po_number',
53
55
  },
54
56
  purchaseRequestId: {
55
57
  type: sequelize_1.DataTypes.UUID,
56
58
  allowNull: true,
59
+ field: 'purchase_request_id',
57
60
  },
58
61
  vendorId: {
59
62
  type: sequelize_1.DataTypes.UUID,
60
63
  allowNull: true,
64
+ field: 'vendor_id',
61
65
  },
62
66
  orderDate: {
63
67
  type: sequelize_1.DataTypes.DATE,
64
68
  allowNull: true,
65
69
  defaultValue: sequelize_1.DataTypes.NOW,
70
+ field: 'order_date',
66
71
  },
67
72
  expectedDeliveryDate: {
68
73
  type: sequelize_1.DataTypes.DATE,
69
74
  allowNull: true,
75
+ field: 'expected_delivery_date',
70
76
  },
71
77
  totalAmount: {
72
78
  type: sequelize_1.DataTypes.DECIMAL(15, 2),
73
79
  allowNull: true,
74
80
  defaultValue: 0,
81
+ field: 'total_amount',
75
82
  },
76
83
  taxAmount: {
77
84
  type: sequelize_1.DataTypes.DECIMAL(15, 2),
78
85
  allowNull: true,
79
86
  defaultValue: 0,
87
+ field: 'tax_amount',
80
88
  },
81
89
  discountAmount: {
82
90
  type: sequelize_1.DataTypes.DECIMAL(15, 2),
83
91
  allowNull: true,
84
92
  defaultValue: 0,
93
+ field: 'discount_amount',
85
94
  },
86
95
  approvalStatus: {
87
96
  type: sequelize_1.DataTypes.STRING,
88
97
  allowNull: true,
89
98
  defaultValue: app_1.RMS_APPROVAL_STATUS.DRAFT,
99
+ field: 'approval_status',
90
100
  },
91
101
  fulfillmentStatus: {
92
102
  type: sequelize_1.DataTypes.STRING,
93
103
  allowNull: true,
94
104
  defaultValue: app_1.RMS_PO_FULFILLMENT_STATUS.PENDING,
105
+ field: 'fulfillment_status',
106
+ },
107
+ approvalRemarks: {
108
+ type: sequelize_1.DataTypes.TEXT,
109
+ allowNull: true,
110
+ field: 'approval_remarks',
111
+ },
112
+ remarks: {
113
+ type: sequelize_1.DataTypes.TEXT,
114
+ allowNull: true,
95
115
  },
96
116
  status: {
97
117
  type: sequelize_1.DataTypes.STRING,
@@ -95,21 +95,6 @@ RmsResourceModel.init({
95
95
  allowNull: true,
96
96
  defaultValue: constants_1.COMMAN_STATUS.ACTIVE,
97
97
  },
98
- createdBy: {
99
- type: sequelize_1.DataTypes.UUID,
100
- allowNull: true,
101
- field: 'created_by',
102
- },
103
- updatedBy: {
104
- type: sequelize_1.DataTypes.UUID,
105
- allowNull: true,
106
- field: 'updated_by',
107
- },
108
- deletedBy: {
109
- type: sequelize_1.DataTypes.UUID,
110
- allowNull: true,
111
- field: 'deleted_by',
112
- },
113
98
  }, {
114
99
  sequelize: index_1.sequelize,
115
100
  modelName: 'RmsResourceModel',
@@ -88,21 +88,6 @@ RmsStockModel.init({
88
88
  allowNull: true,
89
89
  defaultValue: 'ACTIVE',
90
90
  },
91
- createdBy: {
92
- type: sequelize_1.DataTypes.UUID,
93
- allowNull: true,
94
- field: 'created_by',
95
- },
96
- updatedBy: {
97
- type: sequelize_1.DataTypes.UUID,
98
- allowNull: true,
99
- field: 'updated_by',
100
- },
101
- deletedBy: {
102
- type: sequelize_1.DataTypes.UUID,
103
- allowNull: true,
104
- field: 'deleted_by',
105
- },
106
91
  }, {
107
92
  sequelize: index_1.sequelize,
108
93
  modelName: 'RmsStockModel',
@@ -88,21 +88,6 @@ RmsStockTransactionModel.init({
88
88
  defaultValue: sequelize_1.DataTypes.NOW,
89
89
  field: 'transaction_date',
90
90
  },
91
- createdBy: {
92
- type: sequelize_1.DataTypes.UUID,
93
- allowNull: true,
94
- field: 'created_by',
95
- },
96
- updatedBy: {
97
- type: sequelize_1.DataTypes.UUID,
98
- allowNull: true,
99
- field: 'updated_by',
100
- },
101
- deletedBy: {
102
- type: sequelize_1.DataTypes.UUID,
103
- allowNull: true,
104
- field: 'deleted_by',
105
- },
106
91
  }, {
107
92
  sequelize: index_1.sequelize,
108
93
  modelName: 'RmsStockTransactionModel',
@@ -48,6 +48,5 @@ RmsStorageSlotModel.init({
48
48
  tableName: 'rms_storage_slots',
49
49
  timestamps: true,
50
50
  paranoid: true,
51
- underscored: true,
52
51
  });
53
52
  exports.default = RmsStorageSlotModel;
@@ -44,26 +44,32 @@ RmsVendorDocumentModel.init({
44
44
  instituteId: {
45
45
  type: sequelize_1.DataTypes.UUID,
46
46
  allowNull: true,
47
+ field: 'institute_id',
47
48
  },
48
49
  vendorId: {
49
50
  type: sequelize_1.DataTypes.UUID,
50
51
  allowNull: true,
52
+ field: 'vendor_id',
51
53
  },
52
54
  fileStorageId: {
53
55
  type: sequelize_1.DataTypes.UUID,
54
56
  allowNull: true,
57
+ field: 'file_storage_id',
55
58
  },
56
59
  documentType: {
57
60
  type: sequelize_1.DataTypes.STRING,
58
61
  allowNull: true,
62
+ field: 'document_type',
59
63
  },
60
64
  fileUrl: {
61
65
  type: sequelize_1.DataTypes.STRING,
62
66
  allowNull: true,
67
+ field: 'file_url',
63
68
  },
64
69
  expiryDate: {
65
70
  type: sequelize_1.DataTypes.DATE,
66
71
  allowNull: true,
72
+ field: 'expiry_date',
67
73
  },
68
74
  status: {
69
75
  type: sequelize_1.DataTypes.STRING,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kipicore/dbcore",
3
- "version": "1.1.604",
3
+ "version": "1.1.606",
4
4
  "description": "Reusable DB core package with Postgres, MongoDB, models, services, interfaces, and types",
5
5
  "types": "dist/index.d.ts",
6
6
  "main": "dist/index.js",