storemw-core-api 1.0.139 → 1.0.141
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/app.js +1 -1
- package/dist/app.js.map +1 -1
- package/dist/controllers/index.d.ts +1 -2
- package/dist/controllers/index.js +5 -4
- package/dist/controllers/index.js.map +1 -1
- package/dist/controllers/user/userController.js +8 -4
- package/dist/controllers/user/userController.js.map +1 -1
- package/dist/controllers/user/userMeController.d.ts +3 -0
- package/dist/controllers/user/userMeController.js +52 -361
- package/dist/controllers/user/userMeController.js.map +1 -1
- package/dist/controllers/utils/unuse/changePasswordUtilController.d.ts +1 -0
- package/dist/controllers/utils/unuse/changePasswordUtilController.js +55 -0
- package/dist/controllers/utils/unuse/changePasswordUtilController.js.map +1 -0
- package/dist/middlewares/route/index.d.ts +1 -1
- package/dist/middlewares/route/index.js +4 -2
- package/dist/middlewares/route/index.js.map +1 -1
- package/dist/middlewares/route/validateUserMe.d.ts +2 -0
- package/dist/middlewares/route/validateUserMe.js +9 -1
- package/dist/middlewares/route/validateUserMe.js.map +1 -1
- package/dist/models/account/AccountModel.d.ts +13 -13
- package/dist/models/branch_user/BranchUserModel.d.ts +13 -13
- package/dist/models/user/AgentModel.d.ts +2 -24
- package/dist/models/user/MemberModel.d.ts +2 -24
- package/dist/models/user/UserModel.d.ts +13 -2
- package/dist/routes/index.d.ts +0 -1
- package/dist/routes/index.js +2 -3
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/user/userMeRoutes.js +4 -0
- package/dist/routes/user/userMeRoutes.js.map +1 -1
- package/dist/routes/utils/unuse/changePasswordUtilRoutes.d.ts +1 -0
- package/dist/routes/utils/unuse/changePasswordUtilRoutes.js +10 -0
- package/dist/routes/utils/unuse/changePasswordUtilRoutes.js.map +1 -0
- package/dist/schema/payload/account/schemaAccount.d.ts +7 -0
- package/dist/schema/payload/index.d.ts +2 -2
- package/dist/schema/payload/index.js +7 -4
- package/dist/schema/payload/index.js.map +1 -1
- package/dist/schema/payload/user/schemaUser.d.ts +3 -0
- package/dist/schema/payload/user/schemaUser.js +1 -0
- package/dist/schema/payload/user/schemaUser.js.map +1 -1
- package/dist/schema/payload/user/schemaUserAdministrator.d.ts +14 -0
- package/dist/schema/payload/user/schemaUserAgent.d.ts +15 -12
- package/dist/schema/payload/user/schemaUserAgent.js +2 -2
- package/dist/schema/payload/user/schemaUserAgent.js.map +1 -1
- package/dist/schema/payload/user/schemaUserCustomer.d.ts +14 -0
- package/dist/schema/payload/user/schemaUserDriver.d.ts +14 -0
- package/dist/schema/payload/user/schemaUserMe.d.ts +31 -0
- package/dist/schema/payload/user/schemaUserMe.js +17 -0
- package/dist/schema/payload/user/schemaUserMe.js.map +1 -0
- package/dist/schema/payload/user/schemaUserMember.d.ts +15 -12
- package/dist/schema/payload/user/schemaUserMember.js +2 -2
- package/dist/schema/payload/user/schemaUserMember.js.map +1 -1
- package/dist/schema/payload/user/schemaUserOperator.d.ts +14 -0
- package/dist/schema/payload/user/schemaUserRetailer.d.ts +14 -0
- package/dist/schema/payload/user/schemaUserWorker.d.ts +14 -0
- package/dist/schema/payload/utils/unuse/schemaChangePasswordUtil.d.ts +53 -0
- package/dist/schema/payload/utils/unuse/schemaChangePasswordUtil.js +18 -0
- package/dist/schema/payload/utils/unuse/schemaChangePasswordUtil.js.map +1 -0
- package/dist/services/account/AccountService.js +14 -4
- package/dist/services/account/AccountService.js.map +1 -1
- package/dist/services/auth/AuthService.js +4 -1
- package/dist/services/auth/AuthService.js.map +1 -1
- package/dist/services/index.d.ts +2 -4
- package/dist/services/index.js +4 -3
- package/dist/services/index.js.map +1 -1
- package/dist/services/user/AdministratorService.d.ts +1 -0
- package/dist/services/user/AdministratorService.js +7 -0
- package/dist/services/user/AdministratorService.js.map +1 -1
- package/dist/services/user/AgentService.d.ts +2 -12
- package/dist/services/user/AgentService.js +35 -26
- package/dist/services/user/AgentService.js.map +1 -1
- package/dist/services/user/CustomerService.d.ts +1 -0
- package/dist/services/user/CustomerService.js +7 -0
- package/dist/services/user/CustomerService.js.map +1 -1
- package/dist/services/user/DriverService.d.ts +1 -0
- package/dist/services/user/DriverService.js +7 -0
- package/dist/services/user/DriverService.js.map +1 -1
- package/dist/services/user/MemberService.d.ts +2 -12
- package/dist/services/user/MemberService.js +35 -26
- package/dist/services/user/MemberService.js.map +1 -1
- package/dist/services/user/OperatorService.d.ts +4 -2
- package/dist/services/user/OperatorService.js +11 -3
- package/dist/services/user/OperatorService.js.map +1 -1
- package/dist/services/user/RetailerService.d.ts +1 -0
- package/dist/services/user/RetailerService.js +7 -0
- package/dist/services/user/RetailerService.js.map +1 -1
- package/dist/services/user/UserMeService.d.ts +31 -7
- package/dist/services/user/UserMeService.js +71 -3
- package/dist/services/user/UserMeService.js.map +1 -1
- package/dist/services/user/UserService.d.ts +27 -1
- package/dist/services/user/UserService.js +54 -38
- package/dist/services/user/UserService.js.map +1 -1
- package/dist/services/user/WorkerService.d.ts +1 -0
- package/dist/services/user/WorkerService.js +52 -44
- package/dist/services/user/WorkerService.js.map +1 -1
- package/dist/services/utils/unuse/ChangePasswordUtilService.d.ts +13 -0
- package/dist/services/utils/unuse/ChangePasswordUtilService.js +78 -0
- package/dist/services/utils/unuse/ChangePasswordUtilService.js.map +1 -0
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +3 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/passwordUtils.d.ts +3 -0
- package/dist/utils/passwordUtils.js +22 -0
- package/dist/utils/passwordUtils.js.map +1 -1
- package/package.json +1 -1
- package/prisma/schema.prisma +44 -47
package/dist/app.js
CHANGED
|
@@ -54,7 +54,7 @@ app.use(["/account"], routes_1.accountRoutes);
|
|
|
54
54
|
app.use(["/accounts"], routes_1.accountsRoutes);
|
|
55
55
|
app.use(["/business"], routes_1.businessRoutes);
|
|
56
56
|
app.use(["/businesses"], routes_1.businessesRoutes);
|
|
57
|
-
app.use(["/utils"],
|
|
57
|
+
// app.use(["/utils"], changePasswordUtilRoutes)
|
|
58
58
|
app.use(["/utils"], routes_1.accessKeyUtilRoutes);
|
|
59
59
|
// Global error handler
|
|
60
60
|
app.use(common_1.errorHandler);
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";;;;;AAAA,sDAA6B;AAC7B,gDAAwB;AAExB,qCAkCiB;AAEjB,mDAA2F;AAC3F,iDAAoD;AAEpD,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;AAEtB,gBAAgB;AAChB,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAO,CAAC,MAAM,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAEzE,8BAA8B;AAC9B,GAAG,CAAC,GAAG,CAAC,sBAAY,CAAC,CAAC;AAEtB,wCAAwC;AACxC,GAAG,CAAC,GAAG,CAAC,wBAAc,CAAC,CAAC;AAExB,aAAa;AACb,GAAG,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACzC,GAAG,CAAC,GAAG,CAAC,iBAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAE/D,iBAAiB;AACjB,yBAAyB;AAEzB,mBAAmB;AACnB,GAAG,CAAC,GAAG,CAAC,IAAA,+BAAqB,EAAC;IAC1B,cAAc,EAAE,EAAE;CACrB,CAAC,CAAC,CAAC,CAAC,6BAA6B;AAElC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,mBAAU,CAAC,CAAA;AAC9B,GAAG,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC,EAAE,4BAAmB,CAAC,CAAA;AACjD,GAAG,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE,wBAAe,CAAC,CAAA;AACzC,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,EAAE,yBAAgB,CAAC,CAAA;AAC3C,GAAG,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC,EAAE,4BAAmB,CAAC,CAAA;AACjD,GAAG,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,EAAE,0BAAiB,CAAC,CAAA;AAC9C,GAAG,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC,EAAE,2BAAkB,CAAC,CAAA;AAChD,GAAG,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EAAE,sBAAa,CAAC,CAAA;AACpC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,uBAAc,CAAC,CAAA;AACtC,GAAG,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EAAE,qBAAY,CAAC,CAAA;AACnC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,mBAAU,CAAC,CAAA;AAC9B,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,oBAAW,CAAC,CAAA;AAChC,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,EAAE,yBAAgB,CAAC,CAAA;AAC3C,GAAG,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,EAAE,2BAAkB,CAAC,CAAA;AAC/C,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,uBAAc,CAAC,CAAA;AACtC,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,wBAAe,CAAC,CAAA;AACxC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,mBAAU,CAAC,CAAA;AAC9B,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,oBAAW,CAAC,CAAA;AAChC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,mBAAU,CAAC,CAAA;AAC9B,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,oBAAW,CAAC,CAAA;AAChC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,EAAE,qBAAY,CAAC,CAAA;AAClC,GAAG,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EAAE,sBAAa,CAAC,CAAA;AACpC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,uBAAc,CAAC,CAAA;AACtC,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,wBAAe,CAAC,CAAA;AACxC,GAAG,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,EAAE,6BAAoB,CAAC,CAAA;AACnD,GAAG,CAAC,GAAG,CAAC,CAAC,mBAAmB,CAAC,EAAE,8BAAqB,CAAC,CAAA;AACrD,GAAG,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EAAE,sBAAa,CAAC,CAAA;AACpC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,uBAAc,CAAC,CAAA;AACtC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,uBAAc,CAAC,CAAA;AACtC,GAAG,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE,yBAAgB,CAAC,CAAA;AAE1C,gDAAgD;AAChD,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,4BAAmB,CAAC,CAAA;AAExC,uBAAuB;AACvB,GAAG,CAAC,GAAG,CAAC,qBAAY,CAAC,CAAA;AAErB,kBAAe,GAAG,CAAC","sourcesContent":["import express from \"express\"\nimport path from \"path\";\n\nimport {\n // fileRoutes,\n // filesRoutes,\n // ocrRoutes,\n authRoutes,\n accessControlRoutes,\n accessKeyRoutes,\n accessKeysRoutes,\n resetPasswordRoutes,\n oneTimeCodeRoutes,\n oneTimeCodesRoutes,\n userRoutes,\n userMeRoutes,\n usersRoutes,\n businessRoutes,\n businessesRoutes,\n accountRoutes,\n accountsRoutes,\n fileRoutes,\n filesRoutes,\n userBranchRoutes,\n userBranchesRoutes,\n documentRoutes,\n documentsRoutes,\n itemRoutes,\n itemsRoutes,\n regionRoutes,\n regionsRoutes,\n locationRoutes,\n locationsRoutes,\n injectionFieldRoutes,\n injectionFieldsRoutes,\n // changePasswordUtilRoutes,\n accessKeyUtilRoutes\n} from \"@/routes\"\n\nimport { validateHeader, validateAuthorization, validateCors } from \"@/middlewares/request\"\nimport { errorHandler } from \"./middlewares/common\";\n\nconst app = express();\n\n// Static Routes\napp.use('/public', express.static(path.join(__dirname, '..', 'public')));\n\n// Enable CORS for all origins\napp.use(validateCors);\n\n// Register global check headers handler\napp.use(validateHeader);\n\n// Middleware\napp.use(express.json({ limit: '15mb' }));\napp.use(express.urlencoded({ limit: '15mb', extended: true }));\n\n// Initial Prisma\n// app.use(initialPrisma)\n\n// Protected Routes\napp.use(validateAuthorization({\n excludedRoutes: []\n})); // Validate the Authorization\n\napp.use([\"/auth\"], authRoutes)\napp.use([\"/access_control\"], accessControlRoutes)\napp.use([\"/access_key\"], accessKeyRoutes)\napp.use([\"/access_keys\"], accessKeysRoutes)\napp.use([\"/reset_password\"], resetPasswordRoutes)\napp.use([\"/one_time_code\"], oneTimeCodeRoutes)\napp.use([\"/one_time_codes\"], oneTimeCodesRoutes)\napp.use([\"/account\"], accountRoutes)\napp.use([\"/accounts\"], accountsRoutes)\napp.use([\"/user/me\"], userMeRoutes)\napp.use([\"/user\"], userRoutes)\napp.use([\"/users\"], usersRoutes)\napp.use([\"/user_branch\"], userBranchRoutes)\napp.use([\"/user_branches\"], userBranchesRoutes)\napp.use([\"/document\"], documentRoutes)\napp.use([\"/documents\"], documentsRoutes)\napp.use([\"/item\"], itemRoutes)\napp.use([\"/items\"], itemsRoutes)\napp.use([\"/file\"], fileRoutes)\napp.use([\"/files\"], filesRoutes)\napp.use([\"/region\"], regionRoutes)\napp.use([\"/regions\"], regionsRoutes)\napp.use([\"/location\"], locationRoutes)\napp.use([\"/locations\"], locationsRoutes)\napp.use([\"/injection_field\"], injectionFieldRoutes)\napp.use([\"/injection_fields\"], injectionFieldsRoutes)\napp.use([\"/account\"], accountRoutes)\napp.use([\"/accounts\"], accountsRoutes)\napp.use([\"/business\"], businessRoutes)\napp.use([\"/businesses\"], businessesRoutes)\n\n// app.use([\"/utils\"], changePasswordUtilRoutes)\napp.use([\"/utils\"], accessKeyUtilRoutes)\n\n// Global error handler\napp.use(errorHandler)\n\nexport default app;"]}
|
|
@@ -6,7 +6,7 @@ export { requestResetPassword, validateResetPasswordCode, performResetPassword }
|
|
|
6
6
|
export { getAccount, listAccounts, createAccount, deleteAccounts, updateAccount } from '../controllers/account/accountController';
|
|
7
7
|
export { getBusiness, listBusinesses, createBusiness, deleteBusinesses, updateBusiness } from '../controllers/business/businessController';
|
|
8
8
|
export { createUser, updateUser, getUser, listUsers, deleteUsers, getUserDataTypes } from '../controllers/user/userController';
|
|
9
|
-
export { getUserMe, deleteUserMe } from '../controllers/user/userMeController';
|
|
9
|
+
export { getUserMe, updateUserMe, changePasswordUserMe, deleteUserMe } from '../controllers/user/userMeController';
|
|
10
10
|
export { createUserBranch, updateUserBranch, getUserBranch, listUserBranches, deleteUserBranches, getUserBranchDataTypes } from '../controllers/branch/userBranchController';
|
|
11
11
|
export { createDocument, updateDocument, getDocument, listDocuments, deleteDocuments, getDocumentDataTypes } from '../controllers/document/documentController';
|
|
12
12
|
export { createRegion, updateRegion, getRegion, listRegions, deleteRegions, getRegionDataTypes } from '../controllers/region/regionController';
|
|
@@ -14,5 +14,4 @@ export { createLocation, updateLocation, getLocation, listLocations, deleteLocat
|
|
|
14
14
|
export { uploadFiles, getFile, listFiles, deleteFiles } from '../controllers/file/fileController';
|
|
15
15
|
export { createItem, updateItem, getItem, listItems, deleteItems, getItemDataTypes } from '../controllers/item/itemController';
|
|
16
16
|
export { listInjectionFields, getInjectionField, replaceInjectionFields, createInjectionField, deleteInjectionFields } from '../controllers/injection_field/injectionFieldController';
|
|
17
|
-
export { changePasswordUtil } from '../controllers/utils/changePasswordUtilController';
|
|
18
17
|
export { validateAccessKeyUtil, getAccountOwnerAccessKeyUtil } from '../controllers/utils/accessKeyUtilController';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.getAccountOwnerAccessKeyUtil = exports.validateAccessKeyUtil = exports.
|
|
3
|
+
exports.createLocation = exports.getRegionDataTypes = exports.deleteRegions = exports.listRegions = exports.getRegion = exports.updateRegion = exports.createRegion = exports.getDocumentDataTypes = exports.deleteDocuments = exports.listDocuments = exports.getDocument = exports.updateDocument = exports.createDocument = exports.getUserBranchDataTypes = exports.deleteUserBranches = exports.listUserBranches = exports.getUserBranch = exports.updateUserBranch = exports.createUserBranch = exports.deleteUserMe = exports.changePasswordUserMe = exports.updateUserMe = exports.getUserMe = exports.getUserDataTypes = exports.deleteUsers = exports.listUsers = exports.getUser = exports.updateUser = exports.createUser = exports.updateBusiness = exports.deleteBusinesses = exports.createBusiness = exports.listBusinesses = exports.getBusiness = exports.updateAccount = exports.deleteAccounts = exports.createAccount = exports.listAccounts = exports.getAccount = exports.performResetPassword = exports.validateResetPasswordCode = exports.requestResetPassword = exports.getOneTimeCode = exports.listOneTimeCodes = exports.listAccessControlPolicyOptions = exports.revokeAccessKeys = exports.getAccessKey = exports.listAccessKeys = exports.createAccessKey = exports.getAuthToken = void 0;
|
|
4
|
+
exports.getAccountOwnerAccessKeyUtil = exports.validateAccessKeyUtil = exports.deleteInjectionFields = exports.createInjectionField = exports.replaceInjectionFields = exports.getInjectionField = exports.listInjectionFields = exports.getItemDataTypes = exports.deleteItems = exports.listItems = exports.getItem = exports.updateItem = exports.createItem = exports.deleteFiles = exports.listFiles = exports.getFile = exports.uploadFiles = exports.getLocationDataTypes = exports.deleteLocations = exports.listLocations = exports.getLocation = exports.updateLocation = void 0;
|
|
5
5
|
var authController_1 = require("../controllers/auth/authController");
|
|
6
6
|
Object.defineProperty(exports, "getAuthToken", { enumerable: true, get: function () { return authController_1.getAuthToken; } });
|
|
7
7
|
var accessKeyController_1 = require("../controllers/access_key/accessKeyController");
|
|
@@ -39,6 +39,8 @@ Object.defineProperty(exports, "deleteUsers", { enumerable: true, get: function
|
|
|
39
39
|
Object.defineProperty(exports, "getUserDataTypes", { enumerable: true, get: function () { return userController_1.getUserDataTypes; } });
|
|
40
40
|
var userMeController_1 = require("../controllers/user/userMeController");
|
|
41
41
|
Object.defineProperty(exports, "getUserMe", { enumerable: true, get: function () { return userMeController_1.getUserMe; } });
|
|
42
|
+
Object.defineProperty(exports, "updateUserMe", { enumerable: true, get: function () { return userMeController_1.updateUserMe; } });
|
|
43
|
+
Object.defineProperty(exports, "changePasswordUserMe", { enumerable: true, get: function () { return userMeController_1.changePasswordUserMe; } });
|
|
42
44
|
Object.defineProperty(exports, "deleteUserMe", { enumerable: true, get: function () { return userMeController_1.deleteUserMe; } });
|
|
43
45
|
var userBranchController_1 = require("../controllers/branch/userBranchController");
|
|
44
46
|
Object.defineProperty(exports, "createUserBranch", { enumerable: true, get: function () { return userBranchController_1.createUserBranch; } });
|
|
@@ -86,8 +88,7 @@ Object.defineProperty(exports, "getInjectionField", { enumerable: true, get: fun
|
|
|
86
88
|
Object.defineProperty(exports, "replaceInjectionFields", { enumerable: true, get: function () { return injectionFieldController_1.replaceInjectionFields; } });
|
|
87
89
|
Object.defineProperty(exports, "createInjectionField", { enumerable: true, get: function () { return injectionFieldController_1.createInjectionField; } });
|
|
88
90
|
Object.defineProperty(exports, "deleteInjectionFields", { enumerable: true, get: function () { return injectionFieldController_1.deleteInjectionFields; } });
|
|
89
|
-
|
|
90
|
-
Object.defineProperty(exports, "changePasswordUtil", { enumerable: true, get: function () { return changePasswordUtilController_1.changePasswordUtil; } });
|
|
91
|
+
// export { changePasswordUtil } from '../controllers/utils/changePasswordUtilController';
|
|
91
92
|
var accessKeyUtilController_1 = require("../controllers/utils/accessKeyUtilController");
|
|
92
93
|
Object.defineProperty(exports, "validateAccessKeyUtil", { enumerable: true, get: function () { return accessKeyUtilController_1.validateAccessKeyUtil; } });
|
|
93
94
|
Object.defineProperty(exports, "getAccountOwnerAccessKeyUtil", { enumerable: true, get: function () { return accessKeyUtilController_1.getAccountOwnerAccessKeyUtil; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":";;;;AAAA,oEAAiE;AAAxD,8GAAA,YAAY,OAAA;AACrB,oFAA+H;AAAtH,sHAAA,eAAe,OAAA;AAAE,qHAAA,cAAc,OAAA;AAAE,mHAAA,YAAY,OAAA;AAAE,uHAAA,gBAAgB,OAAA;AACxE,gGAAsG;AAA7F,yIAAA,8BAA8B,OAAA;AACvC,2FAAqG;AAA5F,yHAAA,gBAAgB,OAAA;AAAE,uHAAA,cAAc,OAAA;AACzC,gGAA6I;AAApI,+HAAA,oBAAoB,OAAA;AAAE,oIAAA,yBAAyB,OAAA;AAAE,+HAAA,oBAAoB,OAAA;AAC9E,6EAAiI;AAAxH,+GAAA,UAAU,OAAA;AAAE,iHAAA,YAAY,OAAA;AAAE,kHAAA,aAAa,OAAA;AAAE,mHAAA,cAAc,OAAA;AAAE,kHAAA,aAAa,OAAA;AAC/E,gFAA0I;AAAjI,iHAAA,WAAW,OAAA;AAAE,oHAAA,cAAc,OAAA;AAAE,oHAAA,cAAc,OAAA;AAAE,sHAAA,gBAAgB,OAAA;AAAE,oHAAA,cAAc,OAAA;AACtF,oEAA8H;AAArH,4GAAA,UAAU,OAAA;AAAE,4GAAA,UAAU,OAAA;AAAE,yGAAA,OAAO,OAAA;AAAE,2GAAA,SAAS,OAAA;AAAE,6GAAA,WAAW,OAAA;AAAE,kHAAA,gBAAgB,OAAA;AAClF,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/controllers/index.ts"],"names":[],"mappings":";;;;AAAA,oEAAiE;AAAxD,8GAAA,YAAY,OAAA;AACrB,oFAA+H;AAAtH,sHAAA,eAAe,OAAA;AAAE,qHAAA,cAAc,OAAA;AAAE,mHAAA,YAAY,OAAA;AAAE,uHAAA,gBAAgB,OAAA;AACxE,gGAAsG;AAA7F,yIAAA,8BAA8B,OAAA;AACvC,2FAAqG;AAA5F,yHAAA,gBAAgB,OAAA;AAAE,uHAAA,cAAc,OAAA;AACzC,gGAA6I;AAApI,+HAAA,oBAAoB,OAAA;AAAE,oIAAA,yBAAyB,OAAA;AAAE,+HAAA,oBAAoB,OAAA;AAC9E,6EAAiI;AAAxH,+GAAA,UAAU,OAAA;AAAE,iHAAA,YAAY,OAAA;AAAE,kHAAA,aAAa,OAAA;AAAE,mHAAA,cAAc,OAAA;AAAE,kHAAA,aAAa,OAAA;AAC/E,gFAA0I;AAAjI,iHAAA,WAAW,OAAA;AAAE,oHAAA,cAAc,OAAA;AAAE,oHAAA,cAAc,OAAA;AAAE,sHAAA,gBAAgB,OAAA;AAAE,oHAAA,cAAc,OAAA;AACtF,oEAA8H;AAArH,4GAAA,UAAU,OAAA;AAAE,4GAAA,UAAU,OAAA;AAAE,yGAAA,OAAO,OAAA;AAAE,2GAAA,SAAS,OAAA;AAAE,6GAAA,WAAW,OAAA;AAAE,kHAAA,gBAAgB,OAAA;AAClF,wEAAkH;AAAzG,6GAAA,SAAS,OAAA;AAAE,gHAAA,YAAY,OAAA;AAAE,wHAAA,oBAAoB,OAAA;AAAE,gHAAA,YAAY,OAAA;AACpE,kFAA4K;AAAnK,wHAAA,gBAAgB,OAAA;AAAE,wHAAA,gBAAgB,OAAA;AAAE,qHAAA,aAAa,OAAA;AAAE,wHAAA,gBAAgB,OAAA;AAAE,0HAAA,kBAAkB,OAAA;AAAE,8HAAA,sBAAsB,OAAA;AACxH,gFAA8J;AAArJ,oHAAA,cAAc,OAAA;AAAE,oHAAA,cAAc,OAAA;AAAE,iHAAA,WAAW,OAAA;AAAE,mHAAA,aAAa,OAAA;AAAE,qHAAA,eAAe,OAAA;AAAE,0HAAA,oBAAoB,OAAA;AAC1G,0EAA8I;AAArI,gHAAA,YAAY,OAAA;AAAE,gHAAA,YAAY,OAAA;AAAE,6GAAA,SAAS,OAAA;AAAE,+GAAA,WAAW,OAAA;AAAE,iHAAA,aAAa,OAAA;AAAE,sHAAA,kBAAkB,OAAA;AAC9F,gFAA8J;AAArJ,oHAAA,cAAc,OAAA;AAAE,oHAAA,cAAc,OAAA;AAAE,iHAAA,WAAW,OAAA;AAAE,mHAAA,aAAa,OAAA;AAAE,qHAAA,eAAe,OAAA;AAAE,0HAAA,oBAAoB,OAAA;AAC1G,oEAAiG;AAAxF,6GAAA,WAAW,OAAA;AAAE,yGAAA,OAAO,OAAA;AAAE,2GAAA,SAAS,OAAA;AAAE,6GAAA,WAAW,OAAA;AACrD,oEAA8H;AAArH,4GAAA,UAAU,OAAA;AAAE,4GAAA,UAAU,OAAA;AAAE,yGAAA,OAAO,OAAA;AAAE,2GAAA,SAAS,OAAA;AAAE,6GAAA,WAAW,OAAA;AAAE,kHAAA,gBAAgB,OAAA;AAClF,mGAAqL;AAA5K,+HAAA,mBAAmB,OAAA;AAAE,6HAAA,iBAAiB,OAAA;AAAE,kIAAA,sBAAsB,OAAA;AAAE,gIAAA,oBAAoB,OAAA;AAAE,iIAAA,qBAAqB,OAAA;AAEpH,yFAAyF;AACzF,uFAAkH;AAAzG,gIAAA,qBAAqB,OAAA;AAAE,uIAAA,4BAA4B,OAAA","sourcesContent":["export { getAuthToken } from '@/controllers/auth/authController';\nexport { createAccessKey, listAccessKeys, getAccessKey, revokeAccessKeys } from '@/controllers/access_key/accessKeyController';\nexport { listAccessControlPolicyOptions } from '@/controllers/access_control/accessControlController';\nexport { listOneTimeCodes, getOneTimeCode } from '@/controllers/one_time_code/oneTimeCodeController';\nexport { requestResetPassword, validateResetPasswordCode, performResetPassword } from '@/controllers/reset_password/resetPasswordController';\nexport { getAccount, listAccounts, createAccount, deleteAccounts, updateAccount } from '@/controllers/account/accountController';\nexport { getBusiness, listBusinesses, createBusiness, deleteBusinesses, updateBusiness } from '@/controllers/business/businessController';\nexport { createUser, updateUser, getUser, listUsers, deleteUsers, getUserDataTypes } from '@/controllers/user/userController';\nexport { getUserMe, updateUserMe, changePasswordUserMe, deleteUserMe } from '@/controllers/user/userMeController';\nexport { createUserBranch, updateUserBranch, getUserBranch, listUserBranches, deleteUserBranches, getUserBranchDataTypes } from '@/controllers/branch/userBranchController';\nexport { createDocument, updateDocument, getDocument, listDocuments, deleteDocuments, getDocumentDataTypes } from '@/controllers/document/documentController';\nexport { createRegion, updateRegion, getRegion, listRegions, deleteRegions, getRegionDataTypes } from '@/controllers/region/regionController';\nexport { createLocation, updateLocation, getLocation, listLocations, deleteLocations, getLocationDataTypes } from '@/controllers/location/locationController';\nexport { uploadFiles, getFile, listFiles, deleteFiles } from '@/controllers/file/fileController';\nexport { createItem, updateItem, getItem, listItems, deleteItems, getItemDataTypes } from '@/controllers/item/itemController';\nexport { listInjectionFields, getInjectionField, replaceInjectionFields, createInjectionField, deleteInjectionFields } from '@/controllers/injection_field/injectionFieldController';\n\n// export { changePasswordUtil } from '@/controllers/utils/changePasswordUtilController';\nexport { validateAccessKeyUtil, getAccountOwnerAccessKeyUtil } from '@/controllers/utils/accessKeyUtilController';"]}
|
|
@@ -77,6 +77,7 @@ const createUser = async (req, res, next) => {
|
|
|
77
77
|
},
|
|
78
78
|
email: values.email,
|
|
79
79
|
address: values.address ?? "",
|
|
80
|
+
...(values?.parent_user_id ? { parentUserId: values.parent_user_id } : {}),
|
|
80
81
|
status: Boolean(values.status)
|
|
81
82
|
}
|
|
82
83
|
};
|
|
@@ -94,6 +95,7 @@ const createUser = async (req, res, next) => {
|
|
|
94
95
|
email: values.email,
|
|
95
96
|
firstname: values.firstname,
|
|
96
97
|
lastname: values.lastname,
|
|
98
|
+
...(values?.parentUserId ? { parentUserId: values.parentUserId } : {}),
|
|
97
99
|
status: Boolean(values.status)
|
|
98
100
|
}
|
|
99
101
|
};
|
|
@@ -274,7 +276,7 @@ const createUser = async (req, res, next) => {
|
|
|
274
276
|
member: {
|
|
275
277
|
companyName: reqPayload.member.company_name,
|
|
276
278
|
...(reqPayload?.member?.code ? { code: reqPayload.member.code } : {}),
|
|
277
|
-
ownerUserId: reqPayload.member.owner_user_id,
|
|
279
|
+
// ownerUserId: reqPayload.member.owner_user_id,
|
|
278
280
|
identityNo: reqPayload.member.identity_no,
|
|
279
281
|
address1: reqPayload.member.address_1,
|
|
280
282
|
address2: reqPayload.member.address_2,
|
|
@@ -304,7 +306,7 @@ const createUser = async (req, res, next) => {
|
|
|
304
306
|
dob: request.payload.member.dob ?? "",
|
|
305
307
|
gender: request.payload.member.gender ?? "",
|
|
306
308
|
identityNo: request.payload.member.identityNo ?? "",
|
|
307
|
-
ownerUserId: request.payload.member.ownerUserId ?? 0,
|
|
309
|
+
// ownerUserId: request.payload.member.ownerUserId ?? 0,
|
|
308
310
|
postcode: request.payload.member.postcode ?? "",
|
|
309
311
|
remark: request.payload.member.remark ?? ""
|
|
310
312
|
}
|
|
@@ -325,7 +327,7 @@ const createUser = async (req, res, next) => {
|
|
|
325
327
|
agent: {
|
|
326
328
|
companyName: reqPayload.agent.company_name,
|
|
327
329
|
...(reqPayload?.agent?.code ? { code: reqPayload.agent.code } : {}),
|
|
328
|
-
ownerUserId: reqPayload.agent.owner_user_id,
|
|
330
|
+
// ownerUserId: reqPayload.agent.owner_user_id,
|
|
329
331
|
identityNo: reqPayload.agent.identity_no,
|
|
330
332
|
address1: reqPayload.agent.address_1,
|
|
331
333
|
address2: reqPayload.agent.address_2,
|
|
@@ -355,7 +357,7 @@ const createUser = async (req, res, next) => {
|
|
|
355
357
|
dob: request.payload.agent.dob ?? "",
|
|
356
358
|
gender: request.payload.agent.gender ?? "",
|
|
357
359
|
identityNo: request.payload.agent.identityNo ?? "",
|
|
358
|
-
ownerUserId: request.payload.agent.ownerUserId ?? 0,
|
|
360
|
+
// ownerUserId: request.payload.agent.ownerUserId ?? 0,
|
|
359
361
|
postcode: request.payload.agent.postcode ?? "",
|
|
360
362
|
remark: request.payload.agent.remark ?? ""
|
|
361
363
|
}
|
|
@@ -434,6 +436,7 @@ const updateUser = async (req, res, next) => {
|
|
|
434
436
|
},
|
|
435
437
|
email: values.email,
|
|
436
438
|
address: values.address ?? "",
|
|
439
|
+
...(values?.parent_user_id ? { parentUserId: values.parent_user_id } : {}),
|
|
437
440
|
status: Boolean(values.status)
|
|
438
441
|
}
|
|
439
442
|
};
|
|
@@ -452,6 +455,7 @@ const updateUser = async (req, res, next) => {
|
|
|
452
455
|
email: values.email,
|
|
453
456
|
firstname: values.firstname,
|
|
454
457
|
lastname: values.lastname,
|
|
458
|
+
...(values?.parentUserId ? { parentUserId: values.parentUserId } : {}),
|
|
455
459
|
status: Boolean(values.status)
|
|
456
460
|
}
|
|
457
461
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userController.js","sourceRoot":"","sources":["../../../src/controllers/user/userController.ts"],"names":[],"mappings":"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","sourcesContent":["import { Request, Response, NextFunction } from \"express\";\n\nimport { getDefaultServiceProps, sendSuccess, sendError, HTTP_STATUS } from \"@/utils\"\n\nimport { UserService, UserType, UserCreateProps, UserServiceProps, UserUpdateProps, userTypes } from \"@/services\"\nimport {\n schemaUserCustomerCreatePayload,\n schemaUserCustomerUpdatePayload,\n schemaUserRetailerCreatePayload,\n schemaUserRetailerUpdatePayload,\n schemaUserAdministratorCreatePayload,\n schemaUserAdministratorUpdatePayload,\n schemaUserWorkerCreatePayload,\n schemaUserWorkerUpdatePayload,\n schemaUserDeletePayload,\n schemaUserOperatorCreatePayload,\n schemaUserOperatorUpdatePayload,\n schemaUserDriverCreatePayload,\n schemaUserDriverUpdatePayload,\n schemaUserMemberCreatePayload,\n schemaUserMemberUpdatePayload,\n schemaUserAgentCreatePayload,\n schemaUserAgentUpdatePayload\n} from \"@/schema/payload\";\nimport { QueryList } from \"@/schema/middleware/route\";\n// import { RequestAuthContext } from \"@/middlewares/request\";\n\nconst getRootName = (requestUserType: UserServiceProps[\"userType\"], toSingular: boolean) => {\n\n let rootName: any = ``\n\n switch (requestUserType) {\n case \"operator\": rootName = toSingular ? \"operator\" : \"operators\"; break;\n case \"administrator\": rootName = toSingular ? \"administrator\" : \"administrators\"; break;\n case \"customer\": rootName = toSingular ? \"customer\" : \"customers\"; break;\n case \"retailer\": rootName = toSingular ? \"retailer\" : \"retailers\"; break;\n case \"driver\": rootName = toSingular ? \"driver\" : \"drivers\"; break;\n case \"worker\": rootName = toSingular ? \"worker\" : \"workers\"; break;\n case \"member\": rootName = toSingular ? \"member\" : \"members\"; break;\n case \"agent\": rootName = toSingular ? \"agent\" : \"agents\"; break;\n }\n\n return rootName\n}\n\n/** user/:userType/:userId : get user */\nexport const getUser = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n try {\n\n const { userId, userType } = req.params;\n const requestQuery = req.query as unknown as QueryList;\n const requestUserType = userType as UserServiceProps[\"userType\"];\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const data = await userService.getUser({ id: Number(userId), datatypes: requestQuery.datatypes })\n\n return sendSuccess(res, data, \"Retrieved successfully\", getRootName(requestUserType, true));\n\n } catch (error: any) {\n next(error)\n }\n}\n\n/** user : create user */\nexport const createUser = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const requestUserType = req.body.scope.target as UserServiceProps[\"userType\"]\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n const getCredentialParse = (values: any) => {\n return {\n credential: {\n username: values.username,\n password: values.password,\n firstname: values.firstname,\n lastname: values.lastname,\n contact: {\n countryCode: values?.contact?.country_code ?? \"\",\n phoneNumber: values?.contact?.phone_number ?? \"\"\n },\n email: values.email,\n address: values.address ?? \"\",\n status: Boolean(values.status)\n }\n }\n }\n\n const getCredentialPayload = (values: any) => {\n return {\n user: {\n loginUsername: values.username,\n loginPassword: values.password,\n address: values?.address ?? \"\",\n contact: {\n countryCode: values.contact.countryCode,\n phoneNumber: values.contact.phoneNumber\n },\n email: values.email,\n firstname: values.firstname,\n lastname: values.lastname,\n status: Boolean(values.status)\n }\n }\n }\n\n if (requestUserType === \"operator\") {\n\n let request = schemaUserOperatorCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n operator: {},\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n operator: {}\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"customer\") {\n\n let request = schemaUserCustomerCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n customer: {\n code: reqPayload.customer.code,\n accountCode: reqPayload.customer.account_code,\n companyName: reqPayload.customer.company_name,\n regNo: reqPayload.customer.reg_no,\n secondaryRegNo: reqPayload.customer.secondary_reg_no,\n gstNo: reqPayload.customer.gst_no,\n taxIdentificationNo: reqPayload.customer.tax_identification_no,\n taxRegistrationNo: reqPayload.customer.tax_registration_no,\n remark: reqPayload.customer.remark\n },\n props: {\n salesperson: reqPayload.props.salesperson\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n customer: {\n code: request.payload.customer.code,\n accountCode: request.payload.customer.accountCode,\n companyName: request.payload.customer.companyName,\n regNo: request.payload.customer.regNo,\n secondaryRegNo: request.payload.customer.secondaryRegNo,\n remark: request.payload.customer.remark,\n gstNo: request.payload.customer.gstNo,\n taxIdentificationNo: request.payload.customer.taxIdentificationNo,\n taxRegistrationNo: request.payload.customer.taxRegistrationNo,\n // salesperson: request.payload.props.salesperson,\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"administrator\") {\n\n let request = schemaUserAdministratorCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n administrator: {\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n administrator: {\n isOwner: false\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"worker\") {\n\n let request = schemaUserWorkerCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n worker: {\n remark: reqPayload.worker.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n worker: {\n remark: request.payload.worker.remark ?? \"\"\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"driver\") {\n\n let request = schemaUserDriverCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n driver: {\n companyName: reqPayload.driver.company_name,\n remark: reqPayload.driver.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n driver: {\n companyName: request.payload.driver.companyName ?? \"\",\n remark: request.payload.driver.remark ?? \"\"\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"member\") {\n\n let request = schemaUserMemberCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n member: {\n companyName: reqPayload.member.company_name,\n ...(reqPayload?.member?.code ? { code: reqPayload.member.code } : {}),\n ownerUserId: reqPayload.member.owner_user_id,\n identityNo: reqPayload.member.identity_no,\n address1: reqPayload.member.address_1,\n address2: reqPayload.member.address_2,\n countryId: reqPayload.member.country_id,\n stateId: reqPayload.member.state_id,\n areaId: reqPayload.member.area_id,\n gender: reqPayload.member.gender,\n postcode: reqPayload.member.postcode,\n dob: reqPayload.member.dob,\n remark: reqPayload.member.remark\n },\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n member: {\n address1: request.payload.member.address1 ?? \"\",\n address2: request.payload.member.address2 ?? \"\",\n areaId: request.payload.member.areaId ?? 0,\n stateId: request.payload.member.stateId ?? 0,\n countryId: request.payload.member.countryId ?? 0,\n ...(request?.payload?.member?.code ? { code: request.payload.member.code } : {}),\n companyName: request.payload.member.companyName ?? \"\",\n dob: request.payload.member.dob ?? \"\",\n gender: request.payload.member.gender ?? \"\",\n identityNo: request.payload.member.identityNo ?? \"\",\n ownerUserId: request.payload.member.ownerUserId ?? 0,\n postcode: request.payload.member.postcode ?? \"\",\n remark: request.payload.member.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"agent\") {\n\n let request = schemaUserAgentCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n agent: {\n companyName: reqPayload.agent.company_name,\n ...(reqPayload?.agent?.code ? { code: reqPayload.agent.code } : {}),\n ownerUserId: reqPayload.agent.owner_user_id,\n identityNo: reqPayload.agent.identity_no,\n address1: reqPayload.agent.address_1,\n address2: reqPayload.agent.address_2,\n countryId: reqPayload.agent.country_id,\n stateId: reqPayload.agent.state_id,\n areaId: reqPayload.agent.area_id,\n gender: reqPayload.agent.gender,\n postcode: reqPayload.agent.postcode,\n dob: reqPayload.agent.dob,\n remark: reqPayload.agent.remark\n },\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n agent: {\n address1: request.payload.agent.address1 ?? \"\",\n address2: request.payload.agent.address2 ?? \"\",\n areaId: request.payload.agent.areaId ?? 0,\n stateId: request.payload.agent.stateId ?? 0,\n countryId: request.payload.agent.countryId ?? 0,\n ...(request?.payload?.agent?.code ? { code: request.payload.agent.code } : {}),\n companyName: request.payload.agent.companyName ?? \"\",\n dob: request.payload.agent.dob ?? \"\",\n gender: request.payload.agent.gender ?? \"\",\n identityNo: request.payload.agent.identityNo ?? \"\",\n ownerUserId: request.payload.agent.ownerUserId ?? 0,\n postcode: request.payload.agent.postcode ?? \"\",\n remark: request.payload.agent.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"retailer\") {\n\n let request = schemaUserRetailerCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n retailer: {\n code: reqPayload.retailer.code,\n accountCode: reqPayload.retailer.account_code,\n companyName: reqPayload.retailer.company_name,\n regNo: reqPayload.retailer.reg_no,\n gstNo: reqPayload.retailer.gst_no,\n remark: reqPayload.retailer.remark,\n },\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n retailer: {\n code: request.payload.retailer.code,\n accountCode: request.payload.retailer.accountCode,\n companyName: request.payload.retailer.companyName,\n regNo: request.payload.retailer.regNo,\n remark: request.payload.retailer.remark,\n gstNo: request.payload.retailer.gstNo\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n sendSuccess(res, response, `User(${requestUserType}) created successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** user/:userId : update user */\nexport const updateUser = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const { userId } = req.params;\n const requestUserType = req.body.scope.target as UserServiceProps[\"userType\"]\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n const getCredentialParse = (values: any) => {\n return {\n credential: {\n username: values.username,\n password: values.password,\n firstname: values.firstname,\n lastname: values.lastname,\n contact: {\n countryCode: values?.contact?.country_code ?? \"\",\n phoneNumber: values?.contact?.phone_number ?? \"\"\n },\n email: values.email,\n address: values.address ?? \"\",\n status: Boolean(values.status)\n }\n }\n }\n\n const getCredentialPayload = (values: any) => {\n return {\n user: {\n loginUsername: values.username,\n ...(values?.password ? { loginPassword: values.password } : {}),\n loginPassword: values.password,\n address: values?.address ?? \"\",\n contact: {\n countryCode: values.contact.countryCode,\n phoneNumber: values.contact.phoneNumber\n },\n email: values.email,\n firstname: values.firstname,\n lastname: values.lastname,\n status: Boolean(values.status)\n }\n }\n }\n\n if (requestUserType === \"customer\") {\n\n let request = schemaUserCustomerUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n customer: {\n code: reqPayload.customer.code,\n accountCode: reqPayload.customer.account_code,\n companyName: reqPayload.customer.company_name,\n regNo: reqPayload.customer.reg_no,\n secondaryRegNo: reqPayload.customer.secondary_reg_no,\n gstNo: reqPayload.customer.gst_no,\n taxIdentificationNo: reqPayload.customer.tax_identification_no,\n taxRegistrationNo: reqPayload.customer.tax_registration_no,\n remark: reqPayload.customer.remark\n },\n props: {\n salesperson: reqPayload.props.salesperson\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n customer: {\n code: request.payload.customer.code,\n accountCode: request.payload.customer.accountCode,\n companyName: request.payload.customer.companyName,\n regNo: request.payload.customer.regNo,\n secondaryRegNo: request.payload.customer.secondaryRegNo,\n remark: request.payload.customer.remark,\n gstNo: request.payload.customer.gstNo,\n taxIdentificationNo: request.payload.customer.taxIdentificationNo,\n taxRegistrationNo: request.payload.customer.taxRegistrationNo,\n // salesperson: request.payload.props.salesperson,\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"operator\") {\n\n let request = schemaUserOperatorUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n operator: {},\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n operator: {},\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"administrator\") {\n\n let request = schemaUserAdministratorUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n administrator: {},\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n administrator: {},\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"worker\") {\n\n let request = schemaUserWorkerUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n worker: {\n remark: reqPayload.worker.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n worker: {\n remark: request.payload.worker.remark\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"driver\") {\n\n let request = schemaUserDriverUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n driver: {\n companyName: reqPayload.driver.company_name,\n remark: reqPayload.driver.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n driver: {\n companyName: request.payload.driver.companyName ?? \"\",\n remark: request.payload.driver.remark ?? \"\"\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"member\") {\n\n let request = schemaUserMemberUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n member: {\n companyName: reqPayload.member.company_name,\n identityNo: reqPayload.member.identity_no,\n address1: reqPayload.member.address_1,\n address2: reqPayload.member.address_2,\n countryId: reqPayload.member.country_id,\n stateId: reqPayload.member.state_id,\n areaId: reqPayload.member.area_id,\n gender: reqPayload.member.gender,\n postcode: reqPayload.member.postcode,\n dob: reqPayload.member.dob,\n remark: reqPayload.member.remark\n },\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n member: {\n address1: request.payload.member.address1 ?? \"\",\n address2: request.payload.member.address2 ?? \"\",\n areaId: request.payload.member.areaId ?? 0,\n stateId: request.payload.member.stateId ?? 0,\n countryId: request.payload.member.countryId ?? 0,\n companyName: request.payload.member.companyName ?? \"\",\n dob: request.payload.member.dob ?? \"\",\n gender: request.payload.member.gender ?? \"\",\n identityNo: request.payload.member.identityNo ?? \"\",\n postcode: request.payload.member.postcode ?? \"\",\n remark: request.payload.member.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"agent\") {\n\n let request = schemaUserAgentUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n agent: {\n companyName: reqPayload.agent.company_name,\n identityNo: reqPayload.agent.identity_no,\n address1: reqPayload.agent.address_1,\n address2: reqPayload.agent.address_2,\n countryId: reqPayload.agent.country_id,\n stateId: reqPayload.agent.state_id,\n areaId: reqPayload.agent.area_id,\n gender: reqPayload.agent.gender,\n postcode: reqPayload.agent.postcode,\n dob: reqPayload.agent.dob,\n remark: reqPayload.agent.remark\n },\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n agent: {\n address1: request.payload.agent.address1 ?? \"\",\n address2: request.payload.agent.address2 ?? \"\",\n areaId: request.payload.agent.areaId ?? 0,\n stateId: request.payload.agent.stateId ?? 0,\n countryId: request.payload.agent.countryId ?? 0,\n companyName: request.payload.agent.companyName ?? \"\",\n dob: request.payload.agent.dob ?? \"\",\n gender: request.payload.agent.gender ?? \"\",\n identityNo: request.payload.agent.identityNo ?? \"\",\n postcode: request.payload.agent.postcode ?? \"\",\n remark: request.payload.agent.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"retailer\") {\n\n let request = schemaUserRetailerUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n retailer: {\n code: reqPayload.retailer.code,\n accountCode: reqPayload.retailer.account_code,\n companyName: reqPayload.retailer.company_name,\n regNo: reqPayload.retailer.reg_no,\n gstNo: reqPayload.retailer.gst_no,\n remark: reqPayload.retailer.remark,\n },\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n retailer: {\n code: request.payload.retailer.code,\n accountCode: request.payload.retailer.accountCode,\n companyName: request.payload.retailer.companyName,\n regNo: request.payload.retailer.regNo,\n remark: request.payload.retailer.remark,\n gstNo: request.payload.retailer.gstNo\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n sendSuccess(res, response, `User(${requestUserType}) updated successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** users : list users */\nexport const listUsers = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestUserType = req.params.userType as UserServiceProps[\"userType\"];\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const { data, total } = await userService.listUsers({\n ...requestQuery,\n includePassword: false\n });\n\n let response = {\n [`${getRootName(requestUserType, false)}`]: data,\n total,\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** users/delete : delete users */\nexport const deleteUsers = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestUserType = req.body.scope.target as UserServiceProps[\"userType\"]\n // const requestQuery = req.query as unknown as QueryList;\n // const requestFileId = Number(req.params.fileId)\n\n const request = schemaUserDeletePayload.parse(req.body)\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const payload = {\n ids: request.payload.ids.map(i => BigInt(i))\n }\n\n const data = await userService.removeUsers(payload);\n\n return sendSuccess(res, data, \"Deleted\", getRootName(requestUserType, false));\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** user/data_types/:userType : get user data types */\nexport const getUserDataTypes = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestUserType = req.params.userType as UserServiceProps[\"userType\"];\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const data = userService.getDataTypes();\n\n let response = {\n data_types: data\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n"]}
|
|
1
|
+
{"version":3,"file":"userController.js","sourceRoot":"","sources":["../../../src/controllers/user/userController.ts"],"names":[],"mappings":"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","sourcesContent":["import { Request, Response, NextFunction } from \"express\";\n\nimport { getDefaultServiceProps, sendSuccess, sendError, HTTP_STATUS } from \"@/utils\"\n\nimport { UserService, UserType, UserCreateProps, UserServiceProps, UserUpdateProps, userTypes } from \"@/services\"\nimport {\n schemaUserCustomerCreatePayload,\n schemaUserCustomerUpdatePayload,\n schemaUserRetailerCreatePayload,\n schemaUserRetailerUpdatePayload,\n schemaUserAdministratorCreatePayload,\n schemaUserAdministratorUpdatePayload,\n schemaUserWorkerCreatePayload,\n schemaUserWorkerUpdatePayload,\n schemaUserDeletePayload,\n schemaUserOperatorCreatePayload,\n schemaUserOperatorUpdatePayload,\n schemaUserDriverCreatePayload,\n schemaUserDriverUpdatePayload,\n schemaUserMemberCreatePayload,\n schemaUserMemberUpdatePayload,\n schemaUserAgentCreatePayload,\n schemaUserAgentUpdatePayload\n} from \"@/schema/payload\";\nimport { QueryList } from \"@/schema/middleware/route\";\n// import { RequestAuthContext } from \"@/middlewares/request\";\n\nconst getRootName = (requestUserType: UserServiceProps[\"userType\"], toSingular: boolean) => {\n\n let rootName: any = ``\n\n switch (requestUserType) {\n case \"operator\": rootName = toSingular ? \"operator\" : \"operators\"; break;\n case \"administrator\": rootName = toSingular ? \"administrator\" : \"administrators\"; break;\n case \"customer\": rootName = toSingular ? \"customer\" : \"customers\"; break;\n case \"retailer\": rootName = toSingular ? \"retailer\" : \"retailers\"; break;\n case \"driver\": rootName = toSingular ? \"driver\" : \"drivers\"; break;\n case \"worker\": rootName = toSingular ? \"worker\" : \"workers\"; break;\n case \"member\": rootName = toSingular ? \"member\" : \"members\"; break;\n case \"agent\": rootName = toSingular ? \"agent\" : \"agents\"; break;\n }\n\n return rootName\n}\n\n/** user/:userType/:userId : get user */\nexport const getUser = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n try {\n\n const { userId, userType } = req.params;\n const requestQuery = req.query as unknown as QueryList;\n const requestUserType = userType as UserServiceProps[\"userType\"];\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const data = await userService.getUser({ id: Number(userId), datatypes: requestQuery.datatypes })\n\n return sendSuccess(res, data, \"Retrieved successfully\", getRootName(requestUserType, true));\n\n } catch (error: any) {\n next(error)\n }\n}\n\n/** user : create user */\nexport const createUser = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const requestUserType = req.body.scope.target as UserServiceProps[\"userType\"]\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n const getCredentialParse = (values: any) => {\n return {\n credential: {\n username: values.username,\n password: values.password,\n firstname: values.firstname,\n lastname: values.lastname,\n contact: {\n countryCode: values?.contact?.country_code ?? \"\",\n phoneNumber: values?.contact?.phone_number ?? \"\"\n },\n email: values.email,\n address: values.address ?? \"\",\n ...(values?.parent_user_id ? { parentUserId: values.parent_user_id } : {}),\n status: Boolean(values.status)\n }\n }\n }\n\n const getCredentialPayload = (values: any) => {\n return {\n user: {\n loginUsername: values.username,\n loginPassword: values.password,\n address: values?.address ?? \"\",\n contact: {\n countryCode: values.contact.countryCode,\n phoneNumber: values.contact.phoneNumber\n },\n email: values.email,\n firstname: values.firstname,\n lastname: values.lastname,\n ...(values?.parentUserId ? { parentUserId: values.parentUserId } : {}),\n status: Boolean(values.status)\n }\n }\n }\n\n if (requestUserType === \"operator\") {\n\n let request = schemaUserOperatorCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n operator: {},\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n operator: {}\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"customer\") {\n\n let request = schemaUserCustomerCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n customer: {\n code: reqPayload.customer.code,\n accountCode: reqPayload.customer.account_code,\n companyName: reqPayload.customer.company_name,\n regNo: reqPayload.customer.reg_no,\n secondaryRegNo: reqPayload.customer.secondary_reg_no,\n gstNo: reqPayload.customer.gst_no,\n taxIdentificationNo: reqPayload.customer.tax_identification_no,\n taxRegistrationNo: reqPayload.customer.tax_registration_no,\n remark: reqPayload.customer.remark\n },\n props: {\n salesperson: reqPayload.props.salesperson\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n customer: {\n code: request.payload.customer.code,\n accountCode: request.payload.customer.accountCode,\n companyName: request.payload.customer.companyName,\n regNo: request.payload.customer.regNo,\n secondaryRegNo: request.payload.customer.secondaryRegNo,\n remark: request.payload.customer.remark,\n gstNo: request.payload.customer.gstNo,\n taxIdentificationNo: request.payload.customer.taxIdentificationNo,\n taxRegistrationNo: request.payload.customer.taxRegistrationNo,\n // salesperson: request.payload.props.salesperson,\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"administrator\") {\n\n let request = schemaUserAdministratorCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n administrator: {\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n administrator: {\n isOwner: false\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"worker\") {\n\n let request = schemaUserWorkerCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n worker: {\n remark: reqPayload.worker.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n worker: {\n remark: request.payload.worker.remark ?? \"\"\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"driver\") {\n\n let request = schemaUserDriverCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n driver: {\n companyName: reqPayload.driver.company_name,\n remark: reqPayload.driver.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n driver: {\n companyName: request.payload.driver.companyName ?? \"\",\n remark: request.payload.driver.remark ?? \"\"\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"member\") {\n\n let request = schemaUserMemberCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n member: {\n companyName: reqPayload.member.company_name,\n ...(reqPayload?.member?.code ? { code: reqPayload.member.code } : {}),\n // ownerUserId: reqPayload.member.owner_user_id,\n identityNo: reqPayload.member.identity_no,\n address1: reqPayload.member.address_1,\n address2: reqPayload.member.address_2,\n countryId: reqPayload.member.country_id,\n stateId: reqPayload.member.state_id,\n areaId: reqPayload.member.area_id,\n gender: reqPayload.member.gender,\n postcode: reqPayload.member.postcode,\n dob: reqPayload.member.dob,\n remark: reqPayload.member.remark\n },\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n member: {\n address1: request.payload.member.address1 ?? \"\",\n address2: request.payload.member.address2 ?? \"\",\n areaId: request.payload.member.areaId ?? 0,\n stateId: request.payload.member.stateId ?? 0,\n countryId: request.payload.member.countryId ?? 0,\n ...(request?.payload?.member?.code ? { code: request.payload.member.code } : {}),\n companyName: request.payload.member.companyName ?? \"\",\n dob: request.payload.member.dob ?? \"\",\n gender: request.payload.member.gender ?? \"\",\n identityNo: request.payload.member.identityNo ?? \"\",\n // ownerUserId: request.payload.member.ownerUserId ?? 0,\n postcode: request.payload.member.postcode ?? \"\",\n remark: request.payload.member.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"agent\") {\n\n let request = schemaUserAgentCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n agent: {\n companyName: reqPayload.agent.company_name,\n ...(reqPayload?.agent?.code ? { code: reqPayload.agent.code } : {}),\n // ownerUserId: reqPayload.agent.owner_user_id,\n identityNo: reqPayload.agent.identity_no,\n address1: reqPayload.agent.address_1,\n address2: reqPayload.agent.address_2,\n countryId: reqPayload.agent.country_id,\n stateId: reqPayload.agent.state_id,\n areaId: reqPayload.agent.area_id,\n gender: reqPayload.agent.gender,\n postcode: reqPayload.agent.postcode,\n dob: reqPayload.agent.dob,\n remark: reqPayload.agent.remark\n },\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n agent: {\n address1: request.payload.agent.address1 ?? \"\",\n address2: request.payload.agent.address2 ?? \"\",\n areaId: request.payload.agent.areaId ?? 0,\n stateId: request.payload.agent.stateId ?? 0,\n countryId: request.payload.agent.countryId ?? 0,\n ...(request?.payload?.agent?.code ? { code: request.payload.agent.code } : {}),\n companyName: request.payload.agent.companyName ?? \"\",\n dob: request.payload.agent.dob ?? \"\",\n gender: request.payload.agent.gender ?? \"\",\n identityNo: request.payload.agent.identityNo ?? \"\",\n // ownerUserId: request.payload.agent.ownerUserId ?? 0,\n postcode: request.payload.agent.postcode ?? \"\",\n remark: request.payload.agent.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n if (requestUserType === \"retailer\") {\n\n let request = schemaUserRetailerCreatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n retailer: {\n code: reqPayload.retailer.code,\n accountCode: reqPayload.retailer.account_code,\n companyName: reqPayload.retailer.company_name,\n regNo: reqPayload.retailer.reg_no,\n gstNo: reqPayload.retailer.gst_no,\n remark: reqPayload.retailer.remark,\n },\n props: {}\n }\n })\n\n let payload: UserCreateProps = {\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n retailer: {\n code: request.payload.retailer.code,\n accountCode: request.payload.retailer.accountCode,\n companyName: request.payload.retailer.companyName,\n regNo: request.payload.retailer.regNo,\n remark: request.payload.retailer.remark,\n gstNo: request.payload.retailer.gstNo\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.createUser(payload)\n }\n }\n\n sendSuccess(res, response, `User(${requestUserType}) created successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** user/:userId : update user */\nexport const updateUser = async (req: Request, res: Response, next: NextFunction): Promise<void> => {\n try {\n\n const { userId } = req.params;\n const requestUserType = req.body.scope.target as UserServiceProps[\"userType\"]\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n let response: any = {}\n\n let reqScope = req.body.scope\n let reqPayload = req.body.payload\n\n const getCredentialParse = (values: any) => {\n return {\n credential: {\n username: values.username,\n password: values.password,\n firstname: values.firstname,\n lastname: values.lastname,\n contact: {\n countryCode: values?.contact?.country_code ?? \"\",\n phoneNumber: values?.contact?.phone_number ?? \"\"\n },\n email: values.email,\n address: values.address ?? \"\",\n ...(values?.parent_user_id ? { parentUserId: values.parent_user_id } : {}),\n status: Boolean(values.status)\n }\n }\n }\n\n const getCredentialPayload = (values: any) => {\n return {\n user: {\n loginUsername: values.username,\n ...(values?.password ? { loginPassword: values.password } : {}),\n loginPassword: values.password,\n address: values?.address ?? \"\",\n contact: {\n countryCode: values.contact.countryCode,\n phoneNumber: values.contact.phoneNumber\n },\n email: values.email,\n firstname: values.firstname,\n lastname: values.lastname,\n ...(values?.parentUserId ? { parentUserId: values.parentUserId } : {}),\n status: Boolean(values.status)\n }\n }\n }\n\n if (requestUserType === \"customer\") {\n\n let request = schemaUserCustomerUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n customer: {\n code: reqPayload.customer.code,\n accountCode: reqPayload.customer.account_code,\n companyName: reqPayload.customer.company_name,\n regNo: reqPayload.customer.reg_no,\n secondaryRegNo: reqPayload.customer.secondary_reg_no,\n gstNo: reqPayload.customer.gst_no,\n taxIdentificationNo: reqPayload.customer.tax_identification_no,\n taxRegistrationNo: reqPayload.customer.tax_registration_no,\n remark: reqPayload.customer.remark\n },\n props: {\n salesperson: reqPayload.props.salesperson\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n customer: {\n code: request.payload.customer.code,\n accountCode: request.payload.customer.accountCode,\n companyName: request.payload.customer.companyName,\n regNo: request.payload.customer.regNo,\n secondaryRegNo: request.payload.customer.secondaryRegNo,\n remark: request.payload.customer.remark,\n gstNo: request.payload.customer.gstNo,\n taxIdentificationNo: request.payload.customer.taxIdentificationNo,\n taxRegistrationNo: request.payload.customer.taxRegistrationNo,\n // salesperson: request.payload.props.salesperson,\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"operator\") {\n\n let request = schemaUserOperatorUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n operator: {},\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n operator: {},\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"administrator\") {\n\n let request = schemaUserAdministratorUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n administrator: {},\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n administrator: {},\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"worker\") {\n\n let request = schemaUserWorkerUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n worker: {\n remark: reqPayload.worker.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n worker: {\n remark: request.payload.worker.remark\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"driver\") {\n\n let request = schemaUserDriverUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n driver: {\n companyName: reqPayload.driver.company_name,\n remark: reqPayload.driver.remark\n },\n props: {\n locationIds: reqPayload.props.location_ids\n }\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n driver: {\n companyName: request.payload.driver.companyName ?? \"\",\n remark: request.payload.driver.remark ?? \"\"\n },\n props: {\n locationIds: request.payload.props.locationIds.map(i => Number(i))\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"member\") {\n\n let request = schemaUserMemberUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n member: {\n companyName: reqPayload.member.company_name,\n identityNo: reqPayload.member.identity_no,\n address1: reqPayload.member.address_1,\n address2: reqPayload.member.address_2,\n countryId: reqPayload.member.country_id,\n stateId: reqPayload.member.state_id,\n areaId: reqPayload.member.area_id,\n gender: reqPayload.member.gender,\n postcode: reqPayload.member.postcode,\n dob: reqPayload.member.dob,\n remark: reqPayload.member.remark\n },\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n member: {\n address1: request.payload.member.address1 ?? \"\",\n address2: request.payload.member.address2 ?? \"\",\n areaId: request.payload.member.areaId ?? 0,\n stateId: request.payload.member.stateId ?? 0,\n countryId: request.payload.member.countryId ?? 0,\n companyName: request.payload.member.companyName ?? \"\",\n dob: request.payload.member.dob ?? \"\",\n gender: request.payload.member.gender ?? \"\",\n identityNo: request.payload.member.identityNo ?? \"\",\n postcode: request.payload.member.postcode ?? \"\",\n remark: request.payload.member.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"agent\") {\n\n let request = schemaUserAgentUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n agent: {\n companyName: reqPayload.agent.company_name,\n identityNo: reqPayload.agent.identity_no,\n address1: reqPayload.agent.address_1,\n address2: reqPayload.agent.address_2,\n countryId: reqPayload.agent.country_id,\n stateId: reqPayload.agent.state_id,\n areaId: reqPayload.agent.area_id,\n gender: reqPayload.agent.gender,\n postcode: reqPayload.agent.postcode,\n dob: reqPayload.agent.dob,\n remark: reqPayload.agent.remark\n },\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n agent: {\n address1: request.payload.agent.address1 ?? \"\",\n address2: request.payload.agent.address2 ?? \"\",\n areaId: request.payload.agent.areaId ?? 0,\n stateId: request.payload.agent.stateId ?? 0,\n countryId: request.payload.agent.countryId ?? 0,\n companyName: request.payload.agent.companyName ?? \"\",\n dob: request.payload.agent.dob ?? \"\",\n gender: request.payload.agent.gender ?? \"\",\n identityNo: request.payload.agent.identityNo ?? \"\",\n postcode: request.payload.agent.postcode ?? \"\",\n remark: request.payload.agent.remark ?? \"\"\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n if (requestUserType === \"retailer\") {\n\n let request = schemaUserRetailerUpdatePayload.parse({\n scope: {\n target: reqScope.target,\n action: reqScope.action\n },\n payload: {\n ...getCredentialParse(reqPayload.credential),\n retailer: {\n code: reqPayload.retailer.code,\n accountCode: reqPayload.retailer.account_code,\n companyName: reqPayload.retailer.company_name,\n regNo: reqPayload.retailer.reg_no,\n gstNo: reqPayload.retailer.gst_no,\n remark: reqPayload.retailer.remark,\n },\n props: {}\n }\n })\n\n let payload: UserUpdateProps = {\n id: Number(userId),\n userType: requestUserType,\n data: {\n ...getCredentialPayload(request.payload.credential),\n retailer: {\n code: request.payload.retailer.code,\n accountCode: request.payload.retailer.accountCode,\n companyName: request.payload.retailer.companyName,\n regNo: request.payload.retailer.regNo,\n remark: request.payload.retailer.remark,\n gstNo: request.payload.retailer.gstNo\n }\n }\n }\n\n response = {\n [`${getRootName(requestUserType, true)}`]: await userService.updateUser(payload)\n }\n }\n\n sendSuccess(res, response, `User(${requestUserType}) updated successfully`)\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** users : list users */\nexport const listUsers = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestUserType = req.params.userType as UserServiceProps[\"userType\"];\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const { data, total } = await userService.listUsers({\n ...requestQuery,\n includePassword: false\n });\n\n let response = {\n [`${getRootName(requestUserType, false)}`]: data,\n total,\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** users/delete : delete users */\nexport const deleteUsers = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestUserType = req.body.scope.target as UserServiceProps[\"userType\"]\n // const requestQuery = req.query as unknown as QueryList;\n // const requestFileId = Number(req.params.fileId)\n\n const request = schemaUserDeletePayload.parse(req.body)\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const payload = {\n ids: request.payload.ids.map(i => BigInt(i))\n }\n\n const data = await userService.removeUsers(payload);\n\n return sendSuccess(res, data, \"Deleted\", getRootName(requestUserType, false));\n\n } catch (error: any) {\n next(error)\n }\n};\n\n/** user/data_types/:userType : get user data types */\nexport const getUserDataTypes = async (req: Request, res: Response, next: NextFunction): Promise<any> => {\n\n try {\n\n const requestQuery = req.query as unknown as QueryList;\n const requestUserType = req.params.userType as UserServiceProps[\"userType\"];\n\n const userService = UserService({\n ...getDefaultServiceProps(req),\n userType: requestUserType\n })\n\n const data = userService.getDataTypes();\n\n let response = {\n data_types: data\n }\n\n return sendSuccess(res, response, \"Retrieved successfully\");\n\n } catch (error: any) {\n next(error)\n }\n};\n"]}
|
|
@@ -2,5 +2,8 @@ import { Request, Response, NextFunction } from "express";
|
|
|
2
2
|
/** user/me : get user */
|
|
3
3
|
export declare const getUserMe: (req: Request, res: Response, next: NextFunction) => Promise<any>;
|
|
4
4
|
/** user/me : update user me */
|
|
5
|
+
export declare const updateUserMe: (req: Request, res: Response, next: NextFunction) => Promise<void>;
|
|
6
|
+
/** user/me/password : change password me */
|
|
7
|
+
export declare const changePasswordUserMe: (req: Request, res: Response, next: NextFunction) => Promise<any>;
|
|
5
8
|
/** user/me : delete me */
|
|
6
9
|
export declare const deleteUserMe: (req: Request, res: Response, next: NextFunction) => Promise<any>;
|