skyeye-svc-common-utils 1.0.41 → 1.0.43

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.
@@ -8,4 +8,5 @@ export declare abstract class BaseController {
8
8
  startTransaction(): Promise<QueryRunner>;
9
9
  endTransaction(baseControllerParameter: BaseControllerParameter): Promise<any>;
10
10
  executeRest(req: Request, res: Response, next: NextFunction): Promise<void>;
11
+ executeGrpc(call: any, callback: any): Promise<any>;
11
12
  }
@@ -14,6 +14,7 @@ const commonUtils_1 = require("../commonUtils");
14
14
  const logger_1 = require("../logger/logger");
15
15
  const models_1 = require("../../models");
16
16
  const typeorm_1 = require("typeorm");
17
+ const appConst_1 = require("../appConst");
17
18
  const appConfig_1 = require("../appConfig");
18
19
  const async_mutex_1 = require("async-mutex");
19
20
  class BaseController {
@@ -116,6 +117,58 @@ class BaseController {
116
117
  logger_1.logger.profile(`${req.originalUrl}`);
117
118
  });
118
119
  }
120
+ executeGrpc(call, callback) {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ let baseControllerParameter = new models_1.BaseControllerParameter();
123
+ baseControllerParameter.serviceResponse = { isSuccess: false, message: undefined, data: undefined, totalCount: undefined };
124
+ try {
125
+ baseControllerParameter.userInfo = undefined;
126
+ const authorization = call.metadata.get(appConst_1.commonAppConst.httpHeader.AUTHORIZATION);
127
+ if (!!authorization && authorization.length) {
128
+ const headerInfo = authorization[0].split(' ');
129
+ if (headerInfo.length === 2 && headerInfo[0] === appConst_1.commonAppConst.httpHeader.BEARER) {
130
+ baseControllerParameter.userInfo = yield commonUtils_1.verifyJWT(headerInfo[1]);
131
+ }
132
+ }
133
+ if (appConfig_1.commonAppConfig.SqlEnable) {
134
+ BaseController.mutex.runExclusive(() => __awaiter(this, void 0, void 0, function* () {
135
+ this.startTransaction().then((queryRunner) => {
136
+ baseControllerParameter.queryRunner = queryRunner;
137
+ return this.executeImpl(call.request, baseControllerParameter);
138
+ }).then(() => {
139
+ return this.endTransaction(baseControllerParameter);
140
+ }).then(() => {
141
+ return callback(null, baseControllerParameter.serviceResponse);
142
+ }).catch((err) => {
143
+ baseControllerParameter.serviceResponse.isSuccess = false;
144
+ baseControllerParameter.serviceResponse.error = true;
145
+ baseControllerParameter.serviceResponse.message = err.message;
146
+ this.endTransaction(baseControllerParameter).then(() => {
147
+ throw err;
148
+ });
149
+ });
150
+ ;
151
+ }));
152
+ }
153
+ else {
154
+ this.executeImpl(call.request, baseControllerParameter).then(() => {
155
+ return callback(null, baseControllerParameter.serviceResponse);
156
+ }).catch((err) => {
157
+ baseControllerParameter.serviceResponse.isSuccess = false;
158
+ baseControllerParameter.serviceResponse.error = true;
159
+ baseControllerParameter.serviceResponse.message = err.message;
160
+ throw err;
161
+ });
162
+ }
163
+ }
164
+ catch (err) {
165
+ logger_1.logger.error(`BaseController/executeGrpc: ${err}`);
166
+ baseControllerParameter.serviceResponse.isSuccess = false;
167
+ baseControllerParameter.serviceResponse.error = true;
168
+ return callback(null, baseControllerParameter.serviceResponse);
169
+ }
170
+ });
171
+ }
119
172
  }
120
173
  exports.BaseController = BaseController;
121
174
  BaseController.mutex = new async_mutex_1.Mutex();
@@ -1 +1 @@
1
- {"version":3,"file":"baseController.js","sourceRoot":"","sources":["../../../src/utils/baseClass/baseController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseController.js","sourceRoot":"","sources":["../../../src/utils/baseClass/baseController.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skyeye-svc-common-utils",
3
- "version": "1.0.41",
3
+ "version": "1.0.43",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -54,7 +54,7 @@
54
54
  "node-fetch": "^2.6.0",
55
55
  "nyc": "^15.1.0",
56
56
  "rotating-file-stream": "^1.4.6",
57
- "skyeye-common-const": "1.0.30",
57
+ "skyeye-common-const": "1.0.31",
58
58
  "swagger-jsdoc": "^3.5.0",
59
59
  "swagger-ui-express": "^4.1.3",
60
60
  "ts-node": "^9.0.0",
@@ -106,4 +106,57 @@ export abstract class BaseController {
106
106
 
107
107
  logger.profile(`${req.originalUrl}`);
108
108
  }
109
+
110
+ public async executeGrpc(call: any, callback: any): Promise<any> {
111
+ let baseControllerParameter: BaseControllerParameter = new BaseControllerParameter();
112
+ baseControllerParameter.serviceResponse = { isSuccess: false, message: undefined, data: undefined, totalCount: undefined };
113
+
114
+ try {
115
+ baseControllerParameter.userInfo = undefined;
116
+
117
+ const authorization: string = call.metadata.get(commonAppConst.httpHeader.AUTHORIZATION);
118
+ if (!!authorization && authorization.length) {
119
+ const headerInfo: string[] = authorization[0].split(' ');
120
+ if (headerInfo.length === 2 && headerInfo[0] === commonAppConst.httpHeader.BEARER) {
121
+ baseControllerParameter.userInfo = await verifyJWT (headerInfo[1]);
122
+ }
123
+ }
124
+
125
+ if (commonAppConfig.SqlEnable) {
126
+ BaseController.mutex.runExclusive(async () => {
127
+ this.startTransaction().then((queryRunner: QueryRunner) => {
128
+ baseControllerParameter.queryRunner = queryRunner;
129
+ return this.executeImpl(call.request, baseControllerParameter);
130
+ }).then(() => {
131
+ return this.endTransaction(baseControllerParameter);
132
+ }).then(() => {
133
+ return callback(null, baseControllerParameter.serviceResponse);
134
+ }).catch((err: Error) => {
135
+ baseControllerParameter.serviceResponse.isSuccess = false;
136
+ baseControllerParameter.serviceResponse.error = true;
137
+ baseControllerParameter.serviceResponse.message = err.message;
138
+
139
+ this.endTransaction(baseControllerParameter).then(() => {
140
+ throw err;
141
+ });
142
+ });;
143
+ });
144
+ } else {
145
+ this.executeImpl(call.request, baseControllerParameter).then(() => {
146
+ return callback(null, baseControllerParameter.serviceResponse);
147
+ }).catch((err: Error) => {
148
+ baseControllerParameter.serviceResponse.isSuccess = false;
149
+ baseControllerParameter.serviceResponse.error = true;
150
+ baseControllerParameter.serviceResponse.message = err.message;
151
+
152
+ throw err;
153
+ });
154
+ }
155
+ } catch (err) {
156
+ logger.error(`BaseController/executeGrpc: ${err}`);
157
+ baseControllerParameter.serviceResponse.isSuccess = false;
158
+ baseControllerParameter.serviceResponse.error = true;
159
+ return callback(null, baseControllerParameter.serviceResponse);
160
+ }
161
+ }
109
162
  };