@b2y/ecommerce-common 1.0.5 → 1.0.6

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.
Files changed (67) hide show
  1. package/README.md +4 -4
  2. package/constants/AppConstants.js +3 -3
  3. package/constants/ReportConstants.js +14 -14
  4. package/constants/StatusMessageConstants.js +17 -17
  5. package/dbconnection/Connect.js +379 -379
  6. package/enum/AddressTypeEnum.js +6 -6
  7. package/enum/BooleanEnum.js +4 -4
  8. package/enum/EntityTypeEnum.js +11 -11
  9. package/enum/GenderEnum.js +7 -7
  10. package/enum/NotificationStatusEnum.js +5 -5
  11. package/enum/NotificationTypeEnum.js +9 -9
  12. package/enum/OrderStatusEnum.js +7 -7
  13. package/enum/PaymentMethodEnum.js +6 -6
  14. package/enum/PaymentStatusEnum.js +6 -6
  15. package/enum/PaymentTypeEnum.js +6 -6
  16. package/enum/PlatformEnum.js +4 -4
  17. package/enum/RegistrationStatusEnum.js +5 -5
  18. package/enum/SortByEnum.js +7 -7
  19. package/index.js +22 -22
  20. package/model/Address.js +95 -95
  21. package/model/AttributeType.js +50 -50
  22. package/model/AttributeValue.js +64 -64
  23. package/model/Banner.js +78 -78
  24. package/model/Brand.js +76 -76
  25. package/model/Cart.js +76 -76
  26. package/model/Category.js +72 -72
  27. package/model/CategoryAttributeType.js +62 -62
  28. package/model/Colour.js +52 -52
  29. package/model/Customer.js +94 -94
  30. package/model/DeviceToken.js +51 -51
  31. package/model/Document.js +70 -70
  32. package/model/DynamicUIComponent.js +52 -52
  33. package/model/Feedback.js +79 -79
  34. package/model/Inventory.js +83 -83
  35. package/model/NotificationHistory.js +67 -67
  36. package/model/Order.js +94 -94
  37. package/model/OrderItem.js +98 -98
  38. package/model/OrderItemHistory.js +69 -69
  39. package/model/OrderStatus.js +48 -48
  40. package/model/Payment.js +101 -101
  41. package/model/PaymentMethod.js +36 -36
  42. package/model/PaymentStatus.js +36 -36
  43. package/model/PaymentType.js +36 -36
  44. package/model/Permission.js +55 -55
  45. package/model/Product.js +82 -82
  46. package/model/ProductGroup.js +48 -48
  47. package/model/ProductSpecification.js +65 -65
  48. package/model/ProductVariant.js +75 -75
  49. package/model/ProductVariantAttribute.js +58 -58
  50. package/model/Role.js +61 -61
  51. package/model/RolePermissionMapping.js +63 -63
  52. package/model/SpecificationType.js +41 -41
  53. package/model/Store.js +99 -99
  54. package/model/StoreUserMapping.js +44 -44
  55. package/model/Tenant.js +91 -91
  56. package/model/TenantSettings.js +47 -47
  57. package/model/User.js +132 -132
  58. package/model/WishList.js +62 -62
  59. package/package.json +28 -28
  60. package/utility/AppUtil.js +65 -57
  61. package/utility/DateUtil.js +55 -55
  62. package/utility/ExcelUtil.js +125 -125
  63. package/utility/LocationUtility.js +130 -130
  64. package/utility/OrderTimeFilterUtil.js +87 -87
  65. package/utility/QueryUtil.js +261 -261
  66. package/utility/Razorpay.js +65 -65
  67. package/utility/VariantPriceUtil.js +54 -54
package/model/Banner.js CHANGED
@@ -1,79 +1,79 @@
1
- const { DataTypes } = require('sequelize');
2
-
3
- module.exports = (sequelize) => {
4
- return sequelize.define('Banner', {
5
- BannerID: {
6
- type: DataTypes.UUID,
7
- primaryKey: true,
8
- allowNull: false,
9
- defaultValue: DataTypes.UUIDV4
10
- },
11
- TenantID: {
12
- type: DataTypes.UUID,
13
- allowNull: false,
14
- references: {
15
- model: 'Tenant',
16
- key: 'TenantID'
17
- },
18
- onDelete: 'CASCADE',
19
- onUpdate: 'CASCADE'
20
- },
21
- BannerName: {
22
- type: DataTypes.STRING(100),
23
- allowNull: false
24
- },
25
- CategoryIDs: {
26
- type: DataTypes.JSON
27
- },
28
- BrandIDs: {
29
- type: DataTypes.JSON
30
- },
31
- DiscountPercentage: {
32
- type: DataTypes.DECIMAL(5, 2),
33
- allowNull: false
34
- },
35
- SellingPrice: {
36
- type: DataTypes.DECIMAL(10, 2),
37
- allowNull: false
38
- },
39
- SortOrder: {
40
- type: DataTypes.INTEGER,
41
- allowNull: false
42
- },
43
- IsActive: {
44
- type: DataTypes.BOOLEAN,
45
- defaultValue: true
46
- },
47
- CreatedBy: {
48
- type: DataTypes.UUID,
49
- allowNull: false
50
- },
51
- CreatedAt: {
52
- type: DataTypes.DATE,
53
- allowNull: false,
54
- defaultValue: DataTypes.NOW
55
- },
56
- UpdatedBy: {
57
- type: DataTypes.UUID,
58
- allowNull: false
59
- },
60
- UpdatedAt: {
61
- type: DataTypes.DATE,
62
- allowNull: false,
63
- defaultValue: DataTypes.NOW
64
- }
65
- }, {
66
- tableName: 'Banner',
67
- indexes: [
68
- {
69
- name: "idx_banner_unique_tenant_bannername",
70
- unique: true,
71
- fields: [
72
- sequelize.literal('LOWER("BannerName")'),
73
- "TenantID"
74
- ]
75
- }
76
- ],
77
- timestamps: false
78
- });
1
+ const { DataTypes } = require('sequelize');
2
+
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define('Banner', {
5
+ BannerID: {
6
+ type: DataTypes.UUID,
7
+ primaryKey: true,
8
+ allowNull: false,
9
+ defaultValue: DataTypes.UUIDV4
10
+ },
11
+ TenantID: {
12
+ type: DataTypes.UUID,
13
+ allowNull: false,
14
+ references: {
15
+ model: 'Tenant',
16
+ key: 'TenantID'
17
+ },
18
+ onDelete: 'CASCADE',
19
+ onUpdate: 'CASCADE'
20
+ },
21
+ BannerName: {
22
+ type: DataTypes.STRING(100),
23
+ allowNull: false
24
+ },
25
+ CategoryIDs: {
26
+ type: DataTypes.JSON
27
+ },
28
+ BrandIDs: {
29
+ type: DataTypes.JSON
30
+ },
31
+ DiscountPercentage: {
32
+ type: DataTypes.DECIMAL(5, 2),
33
+ allowNull: false
34
+ },
35
+ SellingPrice: {
36
+ type: DataTypes.DECIMAL(10, 2),
37
+ allowNull: false
38
+ },
39
+ SortOrder: {
40
+ type: DataTypes.INTEGER,
41
+ allowNull: false
42
+ },
43
+ IsActive: {
44
+ type: DataTypes.BOOLEAN,
45
+ defaultValue: true
46
+ },
47
+ CreatedBy: {
48
+ type: DataTypes.UUID,
49
+ allowNull: false
50
+ },
51
+ CreatedAt: {
52
+ type: DataTypes.DATE,
53
+ allowNull: false,
54
+ defaultValue: DataTypes.NOW
55
+ },
56
+ UpdatedBy: {
57
+ type: DataTypes.UUID,
58
+ allowNull: false
59
+ },
60
+ UpdatedAt: {
61
+ type: DataTypes.DATE,
62
+ allowNull: false,
63
+ defaultValue: DataTypes.NOW
64
+ }
65
+ }, {
66
+ tableName: 'Banner',
67
+ indexes: [
68
+ {
69
+ name: "idx_banner_unique_tenant_bannername",
70
+ unique: true,
71
+ fields: [
72
+ sequelize.literal('LOWER("BannerName")'),
73
+ "TenantID"
74
+ ]
75
+ }
76
+ ],
77
+ timestamps: false
78
+ });
79
79
  };
package/model/Brand.js CHANGED
@@ -1,76 +1,76 @@
1
- const { DataTypes } = require('sequelize');
2
-
3
- module.exports = (sequelize) => {
4
- return sequelize.define('Brand', {
5
- BrandID: {
6
- type: DataTypes.UUID,
7
- primaryKey: true,
8
- allowNull: false,
9
- defaultValue: DataTypes.UUIDV4
10
- },
11
- TenantID: {
12
- type: DataTypes.UUID,
13
- allowNull: false,
14
- references: {
15
- model: 'Tenant',
16
- key: 'TenantID'
17
- },
18
- onDelete: 'CASCADE',
19
- onUpdate: 'CASCADE'
20
- },
21
- BrandName: {
22
- type: DataTypes.STRING(100),
23
- allowNull: false
24
- },
25
- BrandDescription: {
26
- type: DataTypes.TEXT
27
- },
28
- BrandCode: {
29
- type: DataTypes.STRING(100)
30
- },
31
- IsActive: {
32
- type: DataTypes.BOOLEAN,
33
- defaultValue: true
34
- },
35
- CreatedBy: {
36
- type: DataTypes.UUID,
37
- allowNull: false
38
- },
39
- CreatedAt: {
40
- type: DataTypes.DATE,
41
- allowNull: false,
42
- defaultValue: DataTypes.NOW
43
- },
44
- UpdatedBy: {
45
- type: DataTypes.UUID,
46
- allowNull: false
47
- },
48
- UpdatedAt: {
49
- type: DataTypes.DATE,
50
- allowNull: false,
51
- defaultValue: DataTypes.NOW
52
- }
53
- }, {
54
- tableName: 'Brand',
55
- timestamps: false,
56
- indexes: [
57
- {
58
- name: "idx_brand_unique_tenant_brandname",
59
- unique: true,
60
- fields: [
61
- sequelize.literal('LOWER("BrandName")'),
62
- "TenantID"
63
- ]
64
- },
65
- {
66
- name: "idx_brand_unique_tenant_brandcode",
67
- unique: true,
68
- fields: [
69
- sequelize.literal('LOWER("BrandCode")'),
70
- "TenantID"
71
- ]
72
- }
73
- ]
74
- });
75
- };
76
-
1
+ const { DataTypes } = require('sequelize');
2
+
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define('Brand', {
5
+ BrandID: {
6
+ type: DataTypes.UUID,
7
+ primaryKey: true,
8
+ allowNull: false,
9
+ defaultValue: DataTypes.UUIDV4
10
+ },
11
+ TenantID: {
12
+ type: DataTypes.UUID,
13
+ allowNull: false,
14
+ references: {
15
+ model: 'Tenant',
16
+ key: 'TenantID'
17
+ },
18
+ onDelete: 'CASCADE',
19
+ onUpdate: 'CASCADE'
20
+ },
21
+ BrandName: {
22
+ type: DataTypes.STRING(100),
23
+ allowNull: false
24
+ },
25
+ BrandDescription: {
26
+ type: DataTypes.TEXT
27
+ },
28
+ BrandCode: {
29
+ type: DataTypes.STRING(100)
30
+ },
31
+ IsActive: {
32
+ type: DataTypes.BOOLEAN,
33
+ defaultValue: true
34
+ },
35
+ CreatedBy: {
36
+ type: DataTypes.UUID,
37
+ allowNull: false
38
+ },
39
+ CreatedAt: {
40
+ type: DataTypes.DATE,
41
+ allowNull: false,
42
+ defaultValue: DataTypes.NOW
43
+ },
44
+ UpdatedBy: {
45
+ type: DataTypes.UUID,
46
+ allowNull: false
47
+ },
48
+ UpdatedAt: {
49
+ type: DataTypes.DATE,
50
+ allowNull: false,
51
+ defaultValue: DataTypes.NOW
52
+ }
53
+ }, {
54
+ tableName: 'Brand',
55
+ timestamps: false,
56
+ indexes: [
57
+ {
58
+ name: "idx_brand_unique_tenant_brandname",
59
+ unique: true,
60
+ fields: [
61
+ sequelize.literal('LOWER("BrandName")'),
62
+ "TenantID"
63
+ ]
64
+ },
65
+ {
66
+ name: "idx_brand_unique_tenant_brandcode",
67
+ unique: true,
68
+ fields: [
69
+ sequelize.literal('LOWER("BrandCode")'),
70
+ "TenantID"
71
+ ]
72
+ }
73
+ ]
74
+ });
75
+ };
76
+
package/model/Cart.js CHANGED
@@ -1,77 +1,77 @@
1
- const { DataTypes } = require('sequelize');
2
-
3
- module.exports = (sequelize) => {
4
- return sequelize.define('Cart', {
5
- CartID: {
6
- type: DataTypes.UUID,
7
- primaryKey: true,
8
- allowNull: false,
9
- defaultValue: DataTypes.UUIDV4
10
- },
11
- TenantID: {
12
- type: DataTypes.UUID,
13
- allowNull: false,
14
- references: {
15
- model: 'Tenant',
16
- key: 'TenantID'
17
- },
18
- onDelete: 'CASCADE',
19
- onUpdate: 'CASCADE'
20
- },
21
- ProductVariantID: {
22
- type: DataTypes.UUID,
23
- allowNull: false,
24
- references: {
25
- model: 'ProductVariant',
26
- key: 'ProductVariantID'
27
- },
28
- onDelete: 'RESTRICT',
29
- onUpdate: 'CASCADE'
30
- },
31
- CustomerID: {
32
- type: DataTypes.UUID,
33
- allowNull: false,
34
- references: {
35
- model: 'Customer',
36
- key: 'CustomerID'
37
- },
38
- onDelete: 'RESTRICT',
39
- onUpdate: 'CASCADE'
40
- },
41
- InventoryID: {
42
- type: DataTypes.UUID,
43
- allowNull: true,
44
- references: {
45
- model: 'Inventory',
46
- key: 'InventoryID'
47
- },
48
- onDelete: 'SET NULL',
49
- onUpdate: 'CASCADE'
50
- },
51
- Quantity: {
52
- type: DataTypes.INTEGER,
53
- allowNull: false
54
- },
55
- CreatedBy: {
56
- type: DataTypes.UUID,
57
- allowNull: false
58
- },
59
- CreatedAt: {
60
- type: DataTypes.DATE,
61
- allowNull: false,
62
- defaultValue: DataTypes.NOW
63
- },
64
- UpdatedBy: {
65
- type: DataTypes.UUID,
66
- allowNull: false
67
- },
68
- UpdatedAt: {
69
- type: DataTypes.DATE,
70
- allowNull: false,
71
- defaultValue: DataTypes.NOW
72
- }
73
- }, {
74
- tableName: 'Cart',
75
- timestamps: false
76
- });
1
+ const { DataTypes } = require('sequelize');
2
+
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define('Cart', {
5
+ CartID: {
6
+ type: DataTypes.UUID,
7
+ primaryKey: true,
8
+ allowNull: false,
9
+ defaultValue: DataTypes.UUIDV4
10
+ },
11
+ TenantID: {
12
+ type: DataTypes.UUID,
13
+ allowNull: false,
14
+ references: {
15
+ model: 'Tenant',
16
+ key: 'TenantID'
17
+ },
18
+ onDelete: 'CASCADE',
19
+ onUpdate: 'CASCADE'
20
+ },
21
+ ProductVariantID: {
22
+ type: DataTypes.UUID,
23
+ allowNull: false,
24
+ references: {
25
+ model: 'ProductVariant',
26
+ key: 'ProductVariantID'
27
+ },
28
+ onDelete: 'RESTRICT',
29
+ onUpdate: 'CASCADE'
30
+ },
31
+ CustomerID: {
32
+ type: DataTypes.UUID,
33
+ allowNull: false,
34
+ references: {
35
+ model: 'Customer',
36
+ key: 'CustomerID'
37
+ },
38
+ onDelete: 'RESTRICT',
39
+ onUpdate: 'CASCADE'
40
+ },
41
+ InventoryID: {
42
+ type: DataTypes.UUID,
43
+ allowNull: true,
44
+ references: {
45
+ model: 'Inventory',
46
+ key: 'InventoryID'
47
+ },
48
+ onDelete: 'SET NULL',
49
+ onUpdate: 'CASCADE'
50
+ },
51
+ Quantity: {
52
+ type: DataTypes.INTEGER,
53
+ allowNull: false
54
+ },
55
+ CreatedBy: {
56
+ type: DataTypes.UUID,
57
+ allowNull: false
58
+ },
59
+ CreatedAt: {
60
+ type: DataTypes.DATE,
61
+ allowNull: false,
62
+ defaultValue: DataTypes.NOW
63
+ },
64
+ UpdatedBy: {
65
+ type: DataTypes.UUID,
66
+ allowNull: false
67
+ },
68
+ UpdatedAt: {
69
+ type: DataTypes.DATE,
70
+ allowNull: false,
71
+ defaultValue: DataTypes.NOW
72
+ }
73
+ }, {
74
+ tableName: 'Cart',
75
+ timestamps: false
76
+ });
77
77
  };
package/model/Category.js CHANGED
@@ -1,73 +1,73 @@
1
- const { DataTypes } = require('sequelize');
2
-
3
- module.exports = (sequelize) => {
4
- return sequelize.define('Category', {
5
- CategoryID: {
6
- type: DataTypes.UUID,
7
- primaryKey: true,
8
- allowNull: false,
9
- defaultValue: DataTypes.UUIDV4
10
- },
11
- TenantID: {
12
- type: DataTypes.UUID,
13
- allowNull: false,
14
- references: {
15
- model: 'Tenant',
16
- key: 'TenantID'
17
- },
18
- onDelete: 'CASCADE',
19
- onUpdate: 'CASCADE'
20
- },
21
- CategoryName: {
22
- type: DataTypes.STRING(255),
23
- allowNull: false
24
- },
25
- ParentCategoryID: {
26
- type: DataTypes.UUID,
27
- references: {
28
- model: 'Category',
29
- key: 'CategoryID'
30
- },
31
- onDelete: 'SET NULL',
32
- onUpdate: 'CASCADE'
33
- },
34
- CategoryDescription: {
35
- type: DataTypes.TEXT
36
- },
37
- IsActive: {
38
- type: DataTypes.BOOLEAN,
39
- defaultValue: true
40
- },
41
- CreatedBy: {
42
- type: DataTypes.UUID,
43
- allowNull: false
44
- },
45
- CreatedAt: {
46
- type: DataTypes.DATE,
47
- allowNull: false,
48
- defaultValue: DataTypes.NOW
49
- },
50
- UpdatedBy: {
51
- type: DataTypes.UUID,
52
- allowNull: false
53
- },
54
- UpdatedAt: {
55
- type: DataTypes.DATE,
56
- allowNull: false,
57
- defaultValue: DataTypes.NOW
58
- }
59
- }, {
60
- tableName: 'Category',
61
- timestamps: false,
62
- indexes: [
63
- {
64
- name: "idx_category_unique_tenant_categoryname",
65
- unique: true,
66
- fields: [
67
- sequelize.literal('LOWER("CategoryName")'),
68
- "TenantID"
69
- ]
70
- }
71
- ]
72
- });
1
+ const { DataTypes } = require('sequelize');
2
+
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define('Category', {
5
+ CategoryID: {
6
+ type: DataTypes.UUID,
7
+ primaryKey: true,
8
+ allowNull: false,
9
+ defaultValue: DataTypes.UUIDV4
10
+ },
11
+ TenantID: {
12
+ type: DataTypes.UUID,
13
+ allowNull: false,
14
+ references: {
15
+ model: 'Tenant',
16
+ key: 'TenantID'
17
+ },
18
+ onDelete: 'CASCADE',
19
+ onUpdate: 'CASCADE'
20
+ },
21
+ CategoryName: {
22
+ type: DataTypes.STRING(255),
23
+ allowNull: false
24
+ },
25
+ ParentCategoryID: {
26
+ type: DataTypes.UUID,
27
+ references: {
28
+ model: 'Category',
29
+ key: 'CategoryID'
30
+ },
31
+ onDelete: 'SET NULL',
32
+ onUpdate: 'CASCADE'
33
+ },
34
+ CategoryDescription: {
35
+ type: DataTypes.TEXT
36
+ },
37
+ IsActive: {
38
+ type: DataTypes.BOOLEAN,
39
+ defaultValue: true
40
+ },
41
+ CreatedBy: {
42
+ type: DataTypes.UUID,
43
+ allowNull: false
44
+ },
45
+ CreatedAt: {
46
+ type: DataTypes.DATE,
47
+ allowNull: false,
48
+ defaultValue: DataTypes.NOW
49
+ },
50
+ UpdatedBy: {
51
+ type: DataTypes.UUID,
52
+ allowNull: false
53
+ },
54
+ UpdatedAt: {
55
+ type: DataTypes.DATE,
56
+ allowNull: false,
57
+ defaultValue: DataTypes.NOW
58
+ }
59
+ }, {
60
+ tableName: 'Category',
61
+ timestamps: false,
62
+ indexes: [
63
+ {
64
+ name: "idx_category_unique_tenant_categoryname",
65
+ unique: true,
66
+ fields: [
67
+ sequelize.literal('LOWER("CategoryName")'),
68
+ "TenantID"
69
+ ]
70
+ }
71
+ ]
72
+ });
73
73
  };