@b2y/ecommerce-common 1.1.5 → 1.1.7

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 (84) hide show
  1. package/README.md +4 -4
  2. package/constants/AppConstants.js +14 -6
  3. package/constants/ReportConstants.js +14 -14
  4. package/constants/StatusMessageConstants.js +54 -17
  5. package/controller/LocationController.js +144 -0
  6. package/controller/SubscriptionAbstractController.js +161 -0
  7. package/controller/TenantAbstractController.js +349 -0
  8. package/controller/TenantSettingsAbstractController.js +70 -0
  9. package/dbconnection/Connect.js +432 -432
  10. package/enum/AccessModeEnum.js +7 -7
  11. package/enum/AddressTypeEnum.js +6 -6
  12. package/enum/BillingCycleEnum.js +5 -5
  13. package/enum/BooleanEnum.js +4 -4
  14. package/enum/BulkImportStatusEnum.js +6 -6
  15. package/enum/EntityTypeEnum.js +11 -11
  16. package/enum/FeatureTypeEnum.js +6 -6
  17. package/enum/GenderEnum.js +7 -7
  18. package/enum/NotificationStatusEnum.js +5 -5
  19. package/enum/NotificationTypeEnum.js +9 -9
  20. package/enum/OrderStatusEnum.js +7 -7
  21. package/enum/PaymentMethodEnum.js +6 -6
  22. package/enum/PaymentStatusEnum.js +6 -6
  23. package/enum/PaymentTypeEnum.js +6 -6
  24. package/enum/PlatformEnum.js +4 -4
  25. package/enum/RegistrationStatusEnum.js +5 -5
  26. package/enum/SortByEnum.js +7 -7
  27. package/enum/SubscriptionStatusEnum.js +7 -7
  28. package/index.js +25 -22
  29. package/model/Address.js +95 -95
  30. package/model/AttributeType.js +50 -50
  31. package/model/AttributeValue.js +64 -64
  32. package/model/Banner.js +78 -78
  33. package/model/Brand.js +76 -76
  34. package/model/Cart.js +76 -76
  35. package/model/Category.js +72 -72
  36. package/model/CategoryAttributeType.js +62 -62
  37. package/model/Colour.js +52 -52
  38. package/model/Customer.js +94 -94
  39. package/model/DeviceToken.js +51 -51
  40. package/model/Document.js +73 -73
  41. package/model/DynamicUIComponent.js +52 -52
  42. package/model/Feedback.js +79 -79
  43. package/model/Inventory.js +87 -83
  44. package/model/NotificationHistory.js +67 -67
  45. package/model/Order.js +94 -94
  46. package/model/OrderItem.js +98 -98
  47. package/model/OrderItemHistory.js +69 -69
  48. package/model/OrderStatus.js +48 -48
  49. package/model/Payment.js +101 -101
  50. package/model/PaymentMethod.js +36 -36
  51. package/model/PaymentStatus.js +36 -36
  52. package/model/PaymentType.js +36 -36
  53. package/model/Permission.js +55 -55
  54. package/model/Product.js +87 -87
  55. package/model/ProductGroup.js +48 -48
  56. package/model/ProductImport.js +55 -55
  57. package/model/ProductImportFailureAudits.js +57 -57
  58. package/model/ProductSpecification.js +65 -65
  59. package/model/ProductVariant.js +75 -75
  60. package/model/ProductVariantAttribute.js +58 -58
  61. package/model/Role.js +61 -61
  62. package/model/RolePermissionMapping.js +63 -63
  63. package/model/SpecificationType.js +41 -41
  64. package/model/Store.js +99 -99
  65. package/model/StoreUserMapping.js +44 -44
  66. package/model/SubscriptionFeature.js +49 -49
  67. package/model/SubscriptionPlan.js +66 -66
  68. package/model/SubscriptionPlanFeature.js +48 -48
  69. package/model/Tenant.js +91 -91
  70. package/model/TenantSettings.js +47 -47
  71. package/model/TenantSubscription.js +73 -73
  72. package/model/User.js +132 -132
  73. package/model/WishList.js +62 -62
  74. package/package.json +29 -29
  75. package/utility/AppUtil.js +65 -65
  76. package/utility/DateUtil.js +55 -55
  77. package/utility/ExcelUtil.js +125 -125
  78. package/utility/LocationUtility.js +130 -130
  79. package/utility/OrderTimeFilterUtil.js +88 -88
  80. package/utility/PdfUtil.js +64 -64
  81. package/utility/QueryUtil.js +261 -261
  82. package/utility/Razorpay.js +65 -65
  83. package/utility/ResolveAccessMode.js +38 -38
  84. package/utility/VariantPriceUtil.js +54 -54
package/model/Store.js CHANGED
@@ -1,99 +1,99 @@
1
- const {DataTypes}= require('sequelize');
2
- module.exports = (sequelize) => {
3
- const Store = sequelize.define('Store', {
4
- StoreID: {
5
- type: DataTypes.UUID,
6
- primaryKey: true,
7
- defaultValue: DataTypes.UUIDV4,
8
- },
9
- TenantID: {
10
- type: DataTypes.UUID,
11
- allowNull: false,
12
- references: {
13
- model: 'Tenant',
14
- key: 'TenantID'
15
- },
16
- onDelete: 'CASCADE',
17
- onUpdate: 'CASCADE'
18
- },
19
- StoreName: {
20
- type: DataTypes.STRING(100),
21
- allowNull: false,
22
- unique: true,
23
- },
24
- Email: {
25
- type: DataTypes.STRING(100),
26
- allowNull: false,
27
- },
28
- CountryCallingCode: {
29
- type: DataTypes.STRING(5),
30
- allowNull: false
31
- },
32
- PhoneNumber: {
33
- type: DataTypes.STRING(20),
34
- allowNull: false,
35
- },
36
- AddressLine1: {
37
- type: DataTypes.STRING(255),
38
- allowNull: false,
39
- },
40
- AddressLine2: {
41
- type: DataTypes.STRING(255),
42
- },
43
- CountryCode:{
44
- type:DataTypes.CHAR(2),
45
- allowNull:false
46
- },
47
- StateCode: {
48
- type:DataTypes.STRING(3),
49
- allowNull:false
50
- },
51
- CityName: {
52
- type: DataTypes.STRING(100),
53
- allowNull: false,
54
- },
55
- Zipcode: {
56
- type: DataTypes.STRING(20),
57
- allowNull: false,
58
- },
59
- IsActive: {
60
- type: DataTypes.BOOLEAN,
61
- defaultValue: true,
62
- },
63
- CreatedBy: {
64
- type: DataTypes.UUID,
65
- allowNull: false,
66
- },
67
- CreatedAt: {
68
- type: DataTypes.DATE,
69
- defaultValue: DataTypes.NOW,
70
- },
71
- UpdatedBy: {
72
- type: DataTypes.UUID,
73
- allowNull: false,
74
- },
75
- UpdatedAt: {
76
- type: DataTypes.DATE,
77
- defaultValue: DataTypes.NOW,
78
- },
79
- }, {
80
- tableName: 'Store',
81
- timestamps: false,
82
- indexes: [
83
- {
84
- name: "UQ_Store_Tenant_Email",
85
- unique: true,
86
- fields: ["TenantID", "Email"],
87
- },
88
- {
89
- name: "UQ_Store_Tenant_Phone",
90
- unique: true,
91
- fields: ["TenantID", "CountryCallingCode", "PhoneNumber"],
92
- },
93
- ],
94
- });
95
-
96
- return Store;
97
- };
98
-
99
-
1
+ const {DataTypes}= require('sequelize');
2
+ module.exports = (sequelize) => {
3
+ const Store = sequelize.define('Store', {
4
+ StoreID: {
5
+ type: DataTypes.UUID,
6
+ primaryKey: true,
7
+ defaultValue: DataTypes.UUIDV4,
8
+ },
9
+ TenantID: {
10
+ type: DataTypes.UUID,
11
+ allowNull: false,
12
+ references: {
13
+ model: 'Tenant',
14
+ key: 'TenantID'
15
+ },
16
+ onDelete: 'CASCADE',
17
+ onUpdate: 'CASCADE'
18
+ },
19
+ StoreName: {
20
+ type: DataTypes.STRING(100),
21
+ allowNull: false,
22
+ unique: true,
23
+ },
24
+ Email: {
25
+ type: DataTypes.STRING(100),
26
+ allowNull: false,
27
+ },
28
+ CountryCallingCode: {
29
+ type: DataTypes.STRING(5),
30
+ allowNull: false
31
+ },
32
+ PhoneNumber: {
33
+ type: DataTypes.STRING(20),
34
+ allowNull: false,
35
+ },
36
+ AddressLine1: {
37
+ type: DataTypes.STRING(255),
38
+ allowNull: false,
39
+ },
40
+ AddressLine2: {
41
+ type: DataTypes.STRING(255),
42
+ },
43
+ CountryCode:{
44
+ type:DataTypes.CHAR(2),
45
+ allowNull:false
46
+ },
47
+ StateCode: {
48
+ type:DataTypes.STRING(3),
49
+ allowNull:false
50
+ },
51
+ CityName: {
52
+ type: DataTypes.STRING(100),
53
+ allowNull: false,
54
+ },
55
+ Zipcode: {
56
+ type: DataTypes.STRING(20),
57
+ allowNull: false,
58
+ },
59
+ IsActive: {
60
+ type: DataTypes.BOOLEAN,
61
+ defaultValue: true,
62
+ },
63
+ CreatedBy: {
64
+ type: DataTypes.UUID,
65
+ allowNull: false,
66
+ },
67
+ CreatedAt: {
68
+ type: DataTypes.DATE,
69
+ defaultValue: DataTypes.NOW,
70
+ },
71
+ UpdatedBy: {
72
+ type: DataTypes.UUID,
73
+ allowNull: false,
74
+ },
75
+ UpdatedAt: {
76
+ type: DataTypes.DATE,
77
+ defaultValue: DataTypes.NOW,
78
+ },
79
+ }, {
80
+ tableName: 'Store',
81
+ timestamps: false,
82
+ indexes: [
83
+ {
84
+ name: "UQ_Store_Tenant_Email",
85
+ unique: true,
86
+ fields: ["TenantID", "Email"],
87
+ },
88
+ {
89
+ name: "UQ_Store_Tenant_Phone",
90
+ unique: true,
91
+ fields: ["TenantID", "CountryCallingCode", "PhoneNumber"],
92
+ },
93
+ ],
94
+ });
95
+
96
+ return Store;
97
+ };
98
+
99
+
@@ -1,44 +1,44 @@
1
- const { DataTypes } = require('sequelize');
2
-
3
- module.exports = (sequelize) => {
4
- const StoreUserMapping = sequelize.define('StoreUserMapping', {
5
- StoreUserMappingID: {
6
- type: DataTypes.UUID,
7
- primaryKey: true,
8
- defaultValue: DataTypes.UUIDV4,
9
- },
10
- TenantID: {
11
- type: DataTypes.UUID,
12
- allowNull: false,
13
- },
14
- StoreID: {
15
- type: DataTypes.UUID,
16
- allowNull: false,
17
- },
18
- UserID: {
19
- type: DataTypes.UUID,
20
- allowNull: false,
21
- },
22
- CreatedBy: {
23
- type: DataTypes.UUID,
24
- allowNull: false,
25
- },
26
- CreatedAt: {
27
- type: DataTypes.DATE,
28
- defaultValue: DataTypes.NOW,
29
- },
30
- UpdatedBy: {
31
- type: DataTypes.UUID,
32
- allowNull: false,
33
- },
34
- UpdatedAt: {
35
- type: DataTypes.DATE,
36
- defaultValue: DataTypes.NOW,
37
- },
38
- }, {
39
- tableName: 'StoreUserMapping',
40
- timestamps: false,
41
- });
42
-
43
- return StoreUserMapping;
44
- };
1
+ const { DataTypes } = require('sequelize');
2
+
3
+ module.exports = (sequelize) => {
4
+ const StoreUserMapping = sequelize.define('StoreUserMapping', {
5
+ StoreUserMappingID: {
6
+ type: DataTypes.UUID,
7
+ primaryKey: true,
8
+ defaultValue: DataTypes.UUIDV4,
9
+ },
10
+ TenantID: {
11
+ type: DataTypes.UUID,
12
+ allowNull: false,
13
+ },
14
+ StoreID: {
15
+ type: DataTypes.UUID,
16
+ allowNull: false,
17
+ },
18
+ UserID: {
19
+ type: DataTypes.UUID,
20
+ allowNull: false,
21
+ },
22
+ CreatedBy: {
23
+ type: DataTypes.UUID,
24
+ allowNull: false,
25
+ },
26
+ CreatedAt: {
27
+ type: DataTypes.DATE,
28
+ defaultValue: DataTypes.NOW,
29
+ },
30
+ UpdatedBy: {
31
+ type: DataTypes.UUID,
32
+ allowNull: false,
33
+ },
34
+ UpdatedAt: {
35
+ type: DataTypes.DATE,
36
+ defaultValue: DataTypes.NOW,
37
+ },
38
+ }, {
39
+ tableName: 'StoreUserMapping',
40
+ timestamps: false,
41
+ });
42
+
43
+ return StoreUserMapping;
44
+ };
@@ -1,50 +1,50 @@
1
- const { DataTypes } = require('sequelize');
2
- const FeatureTypeEnum = require('../enum/FeatureTypeEnum');
3
- module.exports = (sequelize) => {
4
- return sequelize.define(
5
- "SubscriptionFeature",
6
- {
7
- SubscriptionFeatureID: {
8
- type: DataTypes.UUID,
9
- primaryKey: true,
10
- allowNull: false,
11
- defaultValue: DataTypes.UUIDV4,
12
- },
13
- FeatureName: {
14
- type: DataTypes.STRING(100),
15
- allowNull: false,
16
- },
17
- FeatureCode: {
18
- type: DataTypes.STRING(100),
19
- allowNull: false,
20
- unique: true,
21
- },
22
- FeatureType: {
23
- type: DataTypes.ENUM(...Object.values(FeatureTypeEnum)),
24
- allowNull: false,
25
- },
26
- CreatedBy: {
27
- type: DataTypes.UUID,
28
- allowNull: false,
29
- },
30
- CreatedAt: {
31
- type: DataTypes.DATE,
32
- allowNull: false,
33
- defaultValue: DataTypes.NOW,
34
- },
35
- UpdatedBy: {
36
- type: DataTypes.UUID,
37
- allowNull: false,
38
- },
39
- UpdatedAt: {
40
- type: DataTypes.DATE,
41
- allowNull: false,
42
- defaultValue: DataTypes.NOW,
43
- },
44
- },
45
- {
46
- tableName: "SubscriptionFeature",
47
- timestamps: false,
48
- }
49
- );
1
+ const { DataTypes } = require('sequelize');
2
+ const FeatureTypeEnum = require('../enum/FeatureTypeEnum');
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define(
5
+ "SubscriptionFeature",
6
+ {
7
+ SubscriptionFeatureID: {
8
+ type: DataTypes.UUID,
9
+ primaryKey: true,
10
+ allowNull: false,
11
+ defaultValue: DataTypes.UUIDV4,
12
+ },
13
+ FeatureName: {
14
+ type: DataTypes.STRING(100),
15
+ allowNull: false,
16
+ },
17
+ FeatureCode: {
18
+ type: DataTypes.STRING(100),
19
+ allowNull: false,
20
+ unique: true,
21
+ },
22
+ FeatureType: {
23
+ type: DataTypes.ENUM(...Object.values(FeatureTypeEnum)),
24
+ allowNull: false,
25
+ },
26
+ CreatedBy: {
27
+ type: DataTypes.UUID,
28
+ allowNull: false,
29
+ },
30
+ CreatedAt: {
31
+ type: DataTypes.DATE,
32
+ allowNull: false,
33
+ defaultValue: DataTypes.NOW,
34
+ },
35
+ UpdatedBy: {
36
+ type: DataTypes.UUID,
37
+ allowNull: false,
38
+ },
39
+ UpdatedAt: {
40
+ type: DataTypes.DATE,
41
+ allowNull: false,
42
+ defaultValue: DataTypes.NOW,
43
+ },
44
+ },
45
+ {
46
+ tableName: "SubscriptionFeature",
47
+ timestamps: false,
48
+ }
49
+ );
50
50
  };
@@ -1,67 +1,67 @@
1
- const { DataTypes } = require('sequelize');
2
- const BillingCycleEnum = require('../enum/BillingCycleEnum');
3
- module.exports = (sequelize) => {
4
- return sequelize.define(
5
- "SubscriptionPlan",
6
- {
7
- SubscriptionPlanID: {
8
- type: DataTypes.UUID,
9
- primaryKey: true,
10
- allowNull: false,
11
- defaultValue: DataTypes.UUIDV4,
12
- },
13
- PlanName: {
14
- type: DataTypes.STRING(100),
15
- allowNull: false,
16
- },
17
- PlanCode: {
18
- type: DataTypes.STRING(50),
19
- allowNull: false,
20
- unique: true,
21
- },
22
- Price: {
23
- type: DataTypes.DECIMAL(10, 2),
24
- allowNull: false,
25
- },
26
- BillingCycle: {
27
- type: DataTypes.ENUM(...Object.values(BillingCycleEnum)),
28
- allowNull: false,
29
- },
30
- Currency: {
31
- type: DataTypes.STRING(10),
32
- allowNull: false,
33
- },
34
- TrialPeriodDays: {
35
- type: DataTypes.INTEGER,
36
- allowNull: false,
37
- defaultValue: 0
38
- },
39
- IsActive: {
40
- type: DataTypes.BOOLEAN,
41
- defaultValue: true,
42
- },
43
- CreatedBy: {
44
- type: DataTypes.UUID,
45
- allowNull: false,
46
- },
47
- CreatedAt: {
48
- type: DataTypes.DATE,
49
- allowNull: false,
50
- defaultValue: DataTypes.NOW,
51
- },
52
- UpdatedBy: {
53
- type: DataTypes.UUID,
54
- allowNull: false,
55
- },
56
- UpdatedAt: {
57
- type: DataTypes.DATE,
58
- allowNull: false,
59
- defaultValue: DataTypes.NOW,
60
- },
61
- },
62
- {
63
- tableName: "SubscriptionPlan",
64
- timestamps: false,
65
- }
66
- );
1
+ const { DataTypes } = require('sequelize');
2
+ const BillingCycleEnum = require('../enum/BillingCycleEnum');
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define(
5
+ "SubscriptionPlan",
6
+ {
7
+ SubscriptionPlanID: {
8
+ type: DataTypes.UUID,
9
+ primaryKey: true,
10
+ allowNull: false,
11
+ defaultValue: DataTypes.UUIDV4,
12
+ },
13
+ PlanName: {
14
+ type: DataTypes.STRING(100),
15
+ allowNull: false,
16
+ },
17
+ PlanCode: {
18
+ type: DataTypes.STRING(50),
19
+ allowNull: false,
20
+ unique: true,
21
+ },
22
+ Price: {
23
+ type: DataTypes.DECIMAL(10, 2),
24
+ allowNull: false,
25
+ },
26
+ BillingCycle: {
27
+ type: DataTypes.ENUM(...Object.values(BillingCycleEnum)),
28
+ allowNull: false,
29
+ },
30
+ Currency: {
31
+ type: DataTypes.STRING(10),
32
+ allowNull: false,
33
+ },
34
+ TrialPeriodDays: {
35
+ type: DataTypes.INTEGER,
36
+ allowNull: false,
37
+ defaultValue: 0
38
+ },
39
+ IsActive: {
40
+ type: DataTypes.BOOLEAN,
41
+ defaultValue: true,
42
+ },
43
+ CreatedBy: {
44
+ type: DataTypes.UUID,
45
+ allowNull: false,
46
+ },
47
+ CreatedAt: {
48
+ type: DataTypes.DATE,
49
+ allowNull: false,
50
+ defaultValue: DataTypes.NOW,
51
+ },
52
+ UpdatedBy: {
53
+ type: DataTypes.UUID,
54
+ allowNull: false,
55
+ },
56
+ UpdatedAt: {
57
+ type: DataTypes.DATE,
58
+ allowNull: false,
59
+ defaultValue: DataTypes.NOW,
60
+ },
61
+ },
62
+ {
63
+ tableName: "SubscriptionPlan",
64
+ timestamps: false,
65
+ }
66
+ );
67
67
  };
@@ -1,49 +1,49 @@
1
- const { DataTypes } = require('sequelize');
2
-
3
- module.exports = (sequelize) => {
4
- return sequelize.define(
5
- "SubscriptionPlanFeature",
6
- {
7
- SubscriptionPlanFeatureID: {
8
- type: DataTypes.UUID,
9
- primaryKey: true,
10
- allowNull: false,
11
- defaultValue: DataTypes.UUIDV4,
12
- },
13
- SubscriptionPlanID: {
14
- type: DataTypes.UUID,
15
- allowNull: false,
16
- },
17
- SubscriptionFeatureID: {
18
- type: DataTypes.UUID,
19
- allowNull: false,
20
- },
21
- FeatureValue: {
22
- type: DataTypes.STRING(100),
23
- allowNull: false,
24
- },
25
- CreatedBy: {
26
- type: DataTypes.UUID,
27
- allowNull: false,
28
- },
29
- CreatedAt: {
30
- type: DataTypes.DATE,
31
- allowNull: false,
32
- defaultValue: DataTypes.NOW,
33
- },
34
- UpdatedBy: {
35
- type: DataTypes.UUID,
36
- allowNull: false,
37
- },
38
- UpdatedAt: {
39
- type: DataTypes.DATE,
40
- allowNull: false,
41
- defaultValue: DataTypes.NOW,
42
- },
43
- },
44
- {
45
- tableName: "SubscriptionPlanFeature",
46
- timestamps: false,
47
- }
48
- );
1
+ const { DataTypes } = require('sequelize');
2
+
3
+ module.exports = (sequelize) => {
4
+ return sequelize.define(
5
+ "SubscriptionPlanFeature",
6
+ {
7
+ SubscriptionPlanFeatureID: {
8
+ type: DataTypes.UUID,
9
+ primaryKey: true,
10
+ allowNull: false,
11
+ defaultValue: DataTypes.UUIDV4,
12
+ },
13
+ SubscriptionPlanID: {
14
+ type: DataTypes.UUID,
15
+ allowNull: false,
16
+ },
17
+ SubscriptionFeatureID: {
18
+ type: DataTypes.UUID,
19
+ allowNull: false,
20
+ },
21
+ FeatureValue: {
22
+ type: DataTypes.STRING(100),
23
+ allowNull: false,
24
+ },
25
+ CreatedBy: {
26
+ type: DataTypes.UUID,
27
+ allowNull: false,
28
+ },
29
+ CreatedAt: {
30
+ type: DataTypes.DATE,
31
+ allowNull: false,
32
+ defaultValue: DataTypes.NOW,
33
+ },
34
+ UpdatedBy: {
35
+ type: DataTypes.UUID,
36
+ allowNull: false,
37
+ },
38
+ UpdatedAt: {
39
+ type: DataTypes.DATE,
40
+ allowNull: false,
41
+ defaultValue: DataTypes.NOW,
42
+ },
43
+ },
44
+ {
45
+ tableName: "SubscriptionPlanFeature",
46
+ timestamps: false,
47
+ }
48
+ );
49
49
  };