query-core 0.6.5 → 0.6.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.
- package/lib/SearchBuilder.js +3 -0
- package/lib/index.js +1 -0
- package/lib/log.js +339 -0
- package/lib/services.js +12 -295
- package/package.json +2 -2
- package/src/SearchBuilder.ts +10 -9
- package/src/index.ts +1 -0
- package/src/log.ts +360 -0
- package/src/metadata.ts +33 -0
- package/src/services.ts +17 -366
package/lib/SearchBuilder.js
CHANGED
|
@@ -20,6 +20,9 @@ var SearchBuilder = (function () {
|
|
|
20
20
|
this.map = meta.map;
|
|
21
21
|
this.bools = meta.bools;
|
|
22
22
|
this.primaryKeys = meta.keys;
|
|
23
|
+
this.version = meta.version;
|
|
24
|
+
this.createdAt = meta.createdAt;
|
|
25
|
+
this.updatedAt = meta.updatedAt;
|
|
23
26
|
}
|
|
24
27
|
else {
|
|
25
28
|
this.primaryKeys = [];
|
package/lib/index.js
CHANGED
|
@@ -12,6 +12,7 @@ __export(require("./query"));
|
|
|
12
12
|
__export(require("./search"));
|
|
13
13
|
__export(require("./SearchBuilder"));
|
|
14
14
|
__export(require("./services"));
|
|
15
|
+
__export(require("./log"));
|
|
15
16
|
var Loader = (function () {
|
|
16
17
|
function Loader(query, sql, map, bools) {
|
|
17
18
|
this.query = query;
|
package/lib/log.js
ADDED
|
@@ -0,0 +1,339 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
extendStatics(d, b);
|
|
11
|
+
function __() { this.constructor = d; }
|
|
12
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
13
|
+
};
|
|
14
|
+
})();
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
function log(db, isLog, logger, q, result, r, duration) {
|
|
17
|
+
if (!isLog) {
|
|
18
|
+
return db;
|
|
19
|
+
}
|
|
20
|
+
if (q !== undefined && q != null && q.length > 0) {
|
|
21
|
+
if (!logger.isDebugEnabled()) {
|
|
22
|
+
return db;
|
|
23
|
+
}
|
|
24
|
+
return new LogExecutor(db, logger.error, logger.debug, q, result, r, duration);
|
|
25
|
+
}
|
|
26
|
+
if (!logger.isInfoEnabled()) {
|
|
27
|
+
return db;
|
|
28
|
+
}
|
|
29
|
+
return new LogExecutor(db, logger.error, logger.info, q, result, r, duration);
|
|
30
|
+
}
|
|
31
|
+
exports.log = log;
|
|
32
|
+
function useLog(db, isLog, err, lg, q, result, r, duration) {
|
|
33
|
+
if (!isLog) {
|
|
34
|
+
return db;
|
|
35
|
+
}
|
|
36
|
+
if (err) {
|
|
37
|
+
return new LogDB(db, err, lg, q, result, r, duration);
|
|
38
|
+
}
|
|
39
|
+
return db;
|
|
40
|
+
}
|
|
41
|
+
exports.useLog = useLog;
|
|
42
|
+
var LogExecutor = (function () {
|
|
43
|
+
function LogExecutor(executor, error, lg, q, result, r, duration) {
|
|
44
|
+
this.executor = executor;
|
|
45
|
+
this.error = error;
|
|
46
|
+
this.driver = executor.driver;
|
|
47
|
+
this.duration = duration && duration.length > 0 ? duration : "duration";
|
|
48
|
+
this.sql = q === undefined ? "" : q;
|
|
49
|
+
this.result = result !== undefined && result != null ? result : "";
|
|
50
|
+
this.return = r !== undefined && r != null ? r : "count";
|
|
51
|
+
this.log = lg;
|
|
52
|
+
this.param = this.param.bind(this);
|
|
53
|
+
this.execute = this.execute.bind(this);
|
|
54
|
+
this.executeBatch = this.executeBatch.bind(this);
|
|
55
|
+
this.query = this.query.bind(this);
|
|
56
|
+
this.queryOne = this.queryOne.bind(this);
|
|
57
|
+
this.executeScalar = this.executeScalar.bind(this);
|
|
58
|
+
this.count = this.count.bind(this);
|
|
59
|
+
}
|
|
60
|
+
LogExecutor.prototype.param = function (i) {
|
|
61
|
+
return this.executor.param(i);
|
|
62
|
+
};
|
|
63
|
+
LogExecutor.prototype.execute = function (sql, args, ctx) {
|
|
64
|
+
var _this = this;
|
|
65
|
+
var t1 = new Date();
|
|
66
|
+
return this.executor
|
|
67
|
+
.execute(sql, args, ctx)
|
|
68
|
+
.then(function (v) {
|
|
69
|
+
setTimeout(function () {
|
|
70
|
+
if (_this.log) {
|
|
71
|
+
var d = diff(t1);
|
|
72
|
+
var obj = {};
|
|
73
|
+
if (_this.sql.length > 0) {
|
|
74
|
+
obj[_this.sql] = getString(sql, args);
|
|
75
|
+
}
|
|
76
|
+
if (_this.return.length > 0) {
|
|
77
|
+
obj[_this.return] = v;
|
|
78
|
+
}
|
|
79
|
+
obj[_this.duration] = d;
|
|
80
|
+
_this.log("query", obj);
|
|
81
|
+
}
|
|
82
|
+
}, 0);
|
|
83
|
+
return v;
|
|
84
|
+
})
|
|
85
|
+
.catch(function (er) {
|
|
86
|
+
setTimeout(function () {
|
|
87
|
+
var d = diff(t1);
|
|
88
|
+
var obj = {};
|
|
89
|
+
if (_this.sql.length > 0) {
|
|
90
|
+
obj[_this.sql] = getString(sql, args);
|
|
91
|
+
}
|
|
92
|
+
obj[_this.duration] = d;
|
|
93
|
+
_this.error("error query: " + buildString(er));
|
|
94
|
+
}, 0);
|
|
95
|
+
throw er;
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
LogExecutor.prototype.executeBatch = function (statements, firstSuccess, ctx) {
|
|
99
|
+
var _this = this;
|
|
100
|
+
var t1 = new Date();
|
|
101
|
+
return this.executor
|
|
102
|
+
.executeBatch(statements, firstSuccess, ctx)
|
|
103
|
+
.then(function (v) {
|
|
104
|
+
setTimeout(function () {
|
|
105
|
+
if (_this.log) {
|
|
106
|
+
var d = diff(t1);
|
|
107
|
+
var obj = {};
|
|
108
|
+
if (_this.sql.length > 0) {
|
|
109
|
+
obj[_this.sql] = JSON.stringify(statements);
|
|
110
|
+
}
|
|
111
|
+
if (_this.return.length > 0) {
|
|
112
|
+
obj[_this.return] = v;
|
|
113
|
+
}
|
|
114
|
+
obj[_this.duration] = d;
|
|
115
|
+
_this.log("exec batch", obj);
|
|
116
|
+
}
|
|
117
|
+
}, 0);
|
|
118
|
+
return v;
|
|
119
|
+
})
|
|
120
|
+
.catch(function (er) {
|
|
121
|
+
setTimeout(function () {
|
|
122
|
+
var d = diff(t1);
|
|
123
|
+
var obj = {};
|
|
124
|
+
if (_this.sql.length > 0) {
|
|
125
|
+
obj[_this.sql] = JSON.stringify(statements);
|
|
126
|
+
}
|
|
127
|
+
obj[_this.duration] = d;
|
|
128
|
+
_this.error("error exec batch: " + buildString(er));
|
|
129
|
+
}, 0);
|
|
130
|
+
throw er;
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
LogExecutor.prototype.query = function (sql, args, m, bools, ctx) {
|
|
134
|
+
var _this = this;
|
|
135
|
+
var t1 = new Date();
|
|
136
|
+
return this.executor
|
|
137
|
+
.query(sql, args, m, bools, ctx)
|
|
138
|
+
.then(function (v) {
|
|
139
|
+
setTimeout(function () {
|
|
140
|
+
if (_this.log) {
|
|
141
|
+
var d = diff(t1);
|
|
142
|
+
var obj = {};
|
|
143
|
+
if (_this.sql.length > 0) {
|
|
144
|
+
obj[_this.sql] = getString(sql, args);
|
|
145
|
+
}
|
|
146
|
+
if (_this.result.length > 0) {
|
|
147
|
+
if (v && v.length > 0) {
|
|
148
|
+
obj[_this.result] = JSON.stringify(v);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
if (_this.return.length > 0) {
|
|
152
|
+
obj[_this.return] = v ? v.length : 0;
|
|
153
|
+
}
|
|
154
|
+
obj[_this.duration] = d;
|
|
155
|
+
_this.log("query", obj);
|
|
156
|
+
}
|
|
157
|
+
}, 0);
|
|
158
|
+
return v;
|
|
159
|
+
})
|
|
160
|
+
.catch(function (er) {
|
|
161
|
+
setTimeout(function () {
|
|
162
|
+
var d = diff(t1);
|
|
163
|
+
var obj = {};
|
|
164
|
+
if (_this.sql.length > 0) {
|
|
165
|
+
obj[_this.sql] = getString(sql, args);
|
|
166
|
+
}
|
|
167
|
+
obj[_this.duration] = d;
|
|
168
|
+
_this.error("error query: " + buildString(er));
|
|
169
|
+
}, 0);
|
|
170
|
+
throw er;
|
|
171
|
+
});
|
|
172
|
+
};
|
|
173
|
+
LogExecutor.prototype.queryOne = function (sql, args, m, bools, ctx) {
|
|
174
|
+
var _this = this;
|
|
175
|
+
var t1 = new Date();
|
|
176
|
+
return this.executor
|
|
177
|
+
.queryOne(sql, args, m, bools, ctx)
|
|
178
|
+
.then(function (v) {
|
|
179
|
+
setTimeout(function () {
|
|
180
|
+
if (_this.log) {
|
|
181
|
+
var d = diff(t1);
|
|
182
|
+
var obj = {};
|
|
183
|
+
if (_this.sql.length > 0) {
|
|
184
|
+
obj[_this.sql] = getString(sql, args);
|
|
185
|
+
}
|
|
186
|
+
if (_this.result.length > 0) {
|
|
187
|
+
obj[_this.result] = v ? JSON.stringify(v) : "null";
|
|
188
|
+
}
|
|
189
|
+
if (_this.return.length > 0) {
|
|
190
|
+
obj[_this.return] = v ? 1 : 0;
|
|
191
|
+
}
|
|
192
|
+
obj[_this.duration] = d;
|
|
193
|
+
_this.log("query one", obj);
|
|
194
|
+
}
|
|
195
|
+
}, 0);
|
|
196
|
+
return v;
|
|
197
|
+
})
|
|
198
|
+
.catch(function (er) {
|
|
199
|
+
setTimeout(function () {
|
|
200
|
+
var d = diff(t1);
|
|
201
|
+
var obj = {};
|
|
202
|
+
if (_this.sql.length > 0) {
|
|
203
|
+
obj[_this.sql] = getString(sql, args);
|
|
204
|
+
}
|
|
205
|
+
obj[_this.duration] = d;
|
|
206
|
+
_this.error("error query one: " + buildString(er));
|
|
207
|
+
}, 0);
|
|
208
|
+
throw er;
|
|
209
|
+
});
|
|
210
|
+
};
|
|
211
|
+
LogExecutor.prototype.executeScalar = function (sql, args, ctx) {
|
|
212
|
+
var _this = this;
|
|
213
|
+
var t1 = new Date();
|
|
214
|
+
return this.executor
|
|
215
|
+
.executeScalar(sql, args, ctx)
|
|
216
|
+
.then(function (v) {
|
|
217
|
+
setTimeout(function () {
|
|
218
|
+
if (_this.log) {
|
|
219
|
+
var d = diff(t1);
|
|
220
|
+
var obj = {};
|
|
221
|
+
if (_this.sql.length > 0) {
|
|
222
|
+
obj[_this.sql] = getString(sql, args);
|
|
223
|
+
}
|
|
224
|
+
if (_this.result.length > 0) {
|
|
225
|
+
obj[_this.result] = v ? buildString(v) : "null";
|
|
226
|
+
}
|
|
227
|
+
if (_this.return.length > 0) {
|
|
228
|
+
obj[_this.return] = v ? 1 : 0;
|
|
229
|
+
}
|
|
230
|
+
obj[_this.duration] = d;
|
|
231
|
+
_this.log("exec scalar", obj);
|
|
232
|
+
}
|
|
233
|
+
}, 0);
|
|
234
|
+
return v;
|
|
235
|
+
})
|
|
236
|
+
.catch(function (er) {
|
|
237
|
+
setTimeout(function () {
|
|
238
|
+
var d = diff(t1);
|
|
239
|
+
var obj = {};
|
|
240
|
+
if (_this.sql.length > 0) {
|
|
241
|
+
obj[_this.sql] = getString(sql, args);
|
|
242
|
+
}
|
|
243
|
+
obj[_this.duration] = d;
|
|
244
|
+
_this.error("error exec scalar: " + buildString(er));
|
|
245
|
+
}, 0);
|
|
246
|
+
throw er;
|
|
247
|
+
});
|
|
248
|
+
};
|
|
249
|
+
LogExecutor.prototype.count = function (sql, args, ctx) {
|
|
250
|
+
var _this = this;
|
|
251
|
+
var t1 = new Date();
|
|
252
|
+
return this.executor
|
|
253
|
+
.count(sql, args)
|
|
254
|
+
.then(function (v) {
|
|
255
|
+
setTimeout(function () {
|
|
256
|
+
if (_this.log) {
|
|
257
|
+
var d = diff(t1);
|
|
258
|
+
var obj = {};
|
|
259
|
+
if (_this.sql.length > 0) {
|
|
260
|
+
obj[_this.sql] = getString(sql, args);
|
|
261
|
+
}
|
|
262
|
+
if (_this.return.length > 0) {
|
|
263
|
+
obj[_this.return] = v;
|
|
264
|
+
}
|
|
265
|
+
obj[_this.duration] = d;
|
|
266
|
+
_this.log("count", obj);
|
|
267
|
+
}
|
|
268
|
+
}, 0);
|
|
269
|
+
return v;
|
|
270
|
+
})
|
|
271
|
+
.catch(function (er) {
|
|
272
|
+
setTimeout(function () {
|
|
273
|
+
var d = diff(t1);
|
|
274
|
+
var obj = {};
|
|
275
|
+
if (_this.sql.length > 0) {
|
|
276
|
+
obj[_this.sql] = getString(sql, args);
|
|
277
|
+
}
|
|
278
|
+
obj[_this.duration] = d;
|
|
279
|
+
_this.error("error count: " + buildString(er));
|
|
280
|
+
}, 0);
|
|
281
|
+
throw er;
|
|
282
|
+
});
|
|
283
|
+
};
|
|
284
|
+
return LogExecutor;
|
|
285
|
+
}());
|
|
286
|
+
exports.LogExecutor = LogExecutor;
|
|
287
|
+
function buildString(v) {
|
|
288
|
+
if (typeof v === "string") {
|
|
289
|
+
return v;
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
return JSON.stringify(v);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
function getString(sql, args) {
|
|
296
|
+
if (args && args.length > 0) {
|
|
297
|
+
return sql + " " + JSON.stringify(args);
|
|
298
|
+
}
|
|
299
|
+
else {
|
|
300
|
+
return sql;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
function diff(d1) {
|
|
304
|
+
var d2 = new Date();
|
|
305
|
+
return d2.getTime() - d1.getTime();
|
|
306
|
+
}
|
|
307
|
+
exports.diff = diff;
|
|
308
|
+
var LogTransaction = (function (_super) {
|
|
309
|
+
__extends(LogTransaction, _super);
|
|
310
|
+
function LogTransaction(tx, err, lg, q, result, r, duration) {
|
|
311
|
+
var _this = _super.call(this, tx, err, lg, q, result, r, duration) || this;
|
|
312
|
+
_this.tx = tx;
|
|
313
|
+
return _this;
|
|
314
|
+
}
|
|
315
|
+
LogTransaction.prototype.commit = function () {
|
|
316
|
+
return this.tx.commit();
|
|
317
|
+
};
|
|
318
|
+
LogTransaction.prototype.rollback = function () {
|
|
319
|
+
return this.tx.rollback();
|
|
320
|
+
};
|
|
321
|
+
return LogTransaction;
|
|
322
|
+
}(LogExecutor));
|
|
323
|
+
exports.LogTransaction = LogTransaction;
|
|
324
|
+
var LogDB = (function (_super) {
|
|
325
|
+
__extends(LogDB, _super);
|
|
326
|
+
function LogDB(db, err, lg, q, result, r, duration) {
|
|
327
|
+
var _this = _super.call(this, db, err, lg, q, result, r, duration) || this;
|
|
328
|
+
_this.db = db;
|
|
329
|
+
return _this;
|
|
330
|
+
}
|
|
331
|
+
LogDB.prototype.beginTransaction = function () {
|
|
332
|
+
var _this = this;
|
|
333
|
+
return this.db.beginTransaction().then(function (tx) {
|
|
334
|
+
return new LogTransaction(tx, _this.error, _this.log, _this.sql, _this.result, _this.return, _this.duration);
|
|
335
|
+
});
|
|
336
|
+
};
|
|
337
|
+
return LogDB;
|
|
338
|
+
}(LogExecutor));
|
|
339
|
+
exports.LogDB = LogDB;
|
package/lib/services.js
CHANGED
|
@@ -120,298 +120,6 @@ var QueryRepository = (function () {
|
|
|
120
120
|
return QueryRepository;
|
|
121
121
|
}());
|
|
122
122
|
exports.QueryRepository = QueryRepository;
|
|
123
|
-
function log(db, isLog, logger, q, result, r, duration) {
|
|
124
|
-
if (!isLog) {
|
|
125
|
-
return db;
|
|
126
|
-
}
|
|
127
|
-
if (q !== undefined && q != null && q.length > 0) {
|
|
128
|
-
if (!logger.isDebugEnabled()) {
|
|
129
|
-
return db;
|
|
130
|
-
}
|
|
131
|
-
return new LogManager(db, logger.error, logger.debug, q, result, r, duration);
|
|
132
|
-
}
|
|
133
|
-
if (!logger.isInfoEnabled()) {
|
|
134
|
-
return db;
|
|
135
|
-
}
|
|
136
|
-
return new LogManager(db, logger.error, logger.info, q, result, r, duration);
|
|
137
|
-
}
|
|
138
|
-
exports.log = log;
|
|
139
|
-
function useLog(db, isLog, err, lg, q, result, r, duration) {
|
|
140
|
-
if (!isLog) {
|
|
141
|
-
return db;
|
|
142
|
-
}
|
|
143
|
-
if (err) {
|
|
144
|
-
return new LogManager(db, err, lg, q, result, r, duration);
|
|
145
|
-
}
|
|
146
|
-
return db;
|
|
147
|
-
}
|
|
148
|
-
exports.useLog = useLog;
|
|
149
|
-
var LogManager = (function () {
|
|
150
|
-
function LogManager(db, err, lg, q, result, r, duration) {
|
|
151
|
-
this.db = db;
|
|
152
|
-
this.driver = db.driver;
|
|
153
|
-
this.duration = duration && duration.length > 0 ? duration : "duration";
|
|
154
|
-
this.sql = q === undefined ? "" : q;
|
|
155
|
-
this.return = r !== undefined && r != null ? r : "count";
|
|
156
|
-
this.result = result !== undefined && result != null ? result : "";
|
|
157
|
-
this.log = lg;
|
|
158
|
-
this.error = err;
|
|
159
|
-
this.param = this.param.bind(this);
|
|
160
|
-
this.execute = this.execute.bind(this);
|
|
161
|
-
this.executeBatch = this.executeBatch.bind(this);
|
|
162
|
-
this.query = this.query.bind(this);
|
|
163
|
-
this.queryOne = this.queryOne.bind(this);
|
|
164
|
-
this.executeScalar = this.executeScalar.bind(this);
|
|
165
|
-
this.count = this.count.bind(this);
|
|
166
|
-
}
|
|
167
|
-
LogManager.prototype.param = function (i) {
|
|
168
|
-
return this.db.param(i);
|
|
169
|
-
};
|
|
170
|
-
LogManager.prototype.execute = function (sql, args, ctx) {
|
|
171
|
-
var _this = this;
|
|
172
|
-
var t1 = new Date();
|
|
173
|
-
return this.db
|
|
174
|
-
.execute(sql, args, ctx)
|
|
175
|
-
.then(function (v) {
|
|
176
|
-
setTimeout(function () {
|
|
177
|
-
if (_this.log) {
|
|
178
|
-
var d = diff(t1);
|
|
179
|
-
var obj = {};
|
|
180
|
-
if (_this.sql.length > 0) {
|
|
181
|
-
obj[_this.sql] = getString(sql, args);
|
|
182
|
-
}
|
|
183
|
-
if (_this.return.length > 0) {
|
|
184
|
-
obj[_this.return] = v;
|
|
185
|
-
}
|
|
186
|
-
obj[_this.duration] = d;
|
|
187
|
-
_this.log("query", obj);
|
|
188
|
-
}
|
|
189
|
-
}, 0);
|
|
190
|
-
return v;
|
|
191
|
-
})
|
|
192
|
-
.catch(function (er) {
|
|
193
|
-
setTimeout(function () {
|
|
194
|
-
var d = diff(t1);
|
|
195
|
-
var obj = {};
|
|
196
|
-
if (_this.sql.length > 0) {
|
|
197
|
-
obj[_this.sql] = getString(sql, args);
|
|
198
|
-
}
|
|
199
|
-
obj[_this.duration] = d;
|
|
200
|
-
_this.error("error query: " + buildString(er));
|
|
201
|
-
}, 0);
|
|
202
|
-
throw er;
|
|
203
|
-
});
|
|
204
|
-
};
|
|
205
|
-
LogManager.prototype.executeBatch = function (statements, firstSuccess, ctx) {
|
|
206
|
-
var _this = this;
|
|
207
|
-
var t1 = new Date();
|
|
208
|
-
return this.db
|
|
209
|
-
.executeBatch(statements, firstSuccess, ctx)
|
|
210
|
-
.then(function (v) {
|
|
211
|
-
setTimeout(function () {
|
|
212
|
-
if (_this.log) {
|
|
213
|
-
var d = diff(t1);
|
|
214
|
-
var obj = {};
|
|
215
|
-
if (_this.sql.length > 0) {
|
|
216
|
-
obj[_this.sql] = JSON.stringify(statements);
|
|
217
|
-
}
|
|
218
|
-
if (_this.return.length > 0) {
|
|
219
|
-
obj[_this.return] = v;
|
|
220
|
-
}
|
|
221
|
-
obj[_this.duration] = d;
|
|
222
|
-
_this.log("exec batch", obj);
|
|
223
|
-
}
|
|
224
|
-
}, 0);
|
|
225
|
-
return v;
|
|
226
|
-
})
|
|
227
|
-
.catch(function (er) {
|
|
228
|
-
setTimeout(function () {
|
|
229
|
-
var d = diff(t1);
|
|
230
|
-
var obj = {};
|
|
231
|
-
if (_this.sql.length > 0) {
|
|
232
|
-
obj[_this.sql] = JSON.stringify(statements);
|
|
233
|
-
}
|
|
234
|
-
obj[_this.duration] = d;
|
|
235
|
-
_this.error("error exec batch: " + buildString(er));
|
|
236
|
-
}, 0);
|
|
237
|
-
throw er;
|
|
238
|
-
});
|
|
239
|
-
};
|
|
240
|
-
LogManager.prototype.query = function (sql, args, m, bools, ctx) {
|
|
241
|
-
var _this = this;
|
|
242
|
-
var t1 = new Date();
|
|
243
|
-
return this.db
|
|
244
|
-
.query(sql, args, m, bools, ctx)
|
|
245
|
-
.then(function (v) {
|
|
246
|
-
setTimeout(function () {
|
|
247
|
-
if (_this.log) {
|
|
248
|
-
var d = diff(t1);
|
|
249
|
-
var obj = {};
|
|
250
|
-
if (_this.sql.length > 0) {
|
|
251
|
-
obj[_this.sql] = getString(sql, args);
|
|
252
|
-
}
|
|
253
|
-
if (_this.result.length > 0) {
|
|
254
|
-
if (v && v.length > 0) {
|
|
255
|
-
obj[_this.result] = JSON.stringify(v);
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
if (_this.return.length > 0) {
|
|
259
|
-
obj[_this.return] = v ? v.length : 0;
|
|
260
|
-
}
|
|
261
|
-
obj[_this.duration] = d;
|
|
262
|
-
_this.log("query", obj);
|
|
263
|
-
}
|
|
264
|
-
}, 0);
|
|
265
|
-
return v;
|
|
266
|
-
})
|
|
267
|
-
.catch(function (er) {
|
|
268
|
-
setTimeout(function () {
|
|
269
|
-
var d = diff(t1);
|
|
270
|
-
var obj = {};
|
|
271
|
-
if (_this.sql.length > 0) {
|
|
272
|
-
obj[_this.sql] = getString(sql, args);
|
|
273
|
-
}
|
|
274
|
-
obj[_this.duration] = d;
|
|
275
|
-
_this.error("error query: " + buildString(er));
|
|
276
|
-
}, 0);
|
|
277
|
-
throw er;
|
|
278
|
-
});
|
|
279
|
-
};
|
|
280
|
-
LogManager.prototype.queryOne = function (sql, args, m, bools, ctx) {
|
|
281
|
-
var _this = this;
|
|
282
|
-
var t1 = new Date();
|
|
283
|
-
return this.db
|
|
284
|
-
.queryOne(sql, args, m, bools, ctx)
|
|
285
|
-
.then(function (v) {
|
|
286
|
-
setTimeout(function () {
|
|
287
|
-
if (_this.log) {
|
|
288
|
-
var d = diff(t1);
|
|
289
|
-
var obj = {};
|
|
290
|
-
if (_this.sql.length > 0) {
|
|
291
|
-
obj[_this.sql] = getString(sql, args);
|
|
292
|
-
}
|
|
293
|
-
if (_this.result.length > 0) {
|
|
294
|
-
obj[_this.result] = v ? JSON.stringify(v) : "null";
|
|
295
|
-
}
|
|
296
|
-
if (_this.return.length > 0) {
|
|
297
|
-
obj[_this.return] = v ? 1 : 0;
|
|
298
|
-
}
|
|
299
|
-
obj[_this.duration] = d;
|
|
300
|
-
_this.log("query one", obj);
|
|
301
|
-
}
|
|
302
|
-
}, 0);
|
|
303
|
-
return v;
|
|
304
|
-
})
|
|
305
|
-
.catch(function (er) {
|
|
306
|
-
setTimeout(function () {
|
|
307
|
-
var d = diff(t1);
|
|
308
|
-
var obj = {};
|
|
309
|
-
if (_this.sql.length > 0) {
|
|
310
|
-
obj[_this.sql] = getString(sql, args);
|
|
311
|
-
}
|
|
312
|
-
obj[_this.duration] = d;
|
|
313
|
-
_this.error("error query one: " + buildString(er));
|
|
314
|
-
}, 0);
|
|
315
|
-
throw er;
|
|
316
|
-
});
|
|
317
|
-
};
|
|
318
|
-
LogManager.prototype.executeScalar = function (sql, args, ctx) {
|
|
319
|
-
var _this = this;
|
|
320
|
-
var t1 = new Date();
|
|
321
|
-
return this.db
|
|
322
|
-
.executeScalar(sql, args, ctx)
|
|
323
|
-
.then(function (v) {
|
|
324
|
-
setTimeout(function () {
|
|
325
|
-
if (_this.log) {
|
|
326
|
-
var d = diff(t1);
|
|
327
|
-
var obj = {};
|
|
328
|
-
if (_this.sql.length > 0) {
|
|
329
|
-
obj[_this.sql] = getString(sql, args);
|
|
330
|
-
}
|
|
331
|
-
if (_this.result.length > 0) {
|
|
332
|
-
obj[_this.result] = v ? buildString(v) : "null";
|
|
333
|
-
}
|
|
334
|
-
if (_this.return.length > 0) {
|
|
335
|
-
obj[_this.return] = v ? 1 : 0;
|
|
336
|
-
}
|
|
337
|
-
obj[_this.duration] = d;
|
|
338
|
-
_this.log("exec scalar", obj);
|
|
339
|
-
}
|
|
340
|
-
}, 0);
|
|
341
|
-
return v;
|
|
342
|
-
})
|
|
343
|
-
.catch(function (er) {
|
|
344
|
-
setTimeout(function () {
|
|
345
|
-
var d = diff(t1);
|
|
346
|
-
var obj = {};
|
|
347
|
-
if (_this.sql.length > 0) {
|
|
348
|
-
obj[_this.sql] = getString(sql, args);
|
|
349
|
-
}
|
|
350
|
-
obj[_this.duration] = d;
|
|
351
|
-
_this.error("error exec scalar: " + buildString(er));
|
|
352
|
-
}, 0);
|
|
353
|
-
throw er;
|
|
354
|
-
});
|
|
355
|
-
};
|
|
356
|
-
LogManager.prototype.count = function (sql, args, ctx) {
|
|
357
|
-
var _this = this;
|
|
358
|
-
var t1 = new Date();
|
|
359
|
-
return this.db
|
|
360
|
-
.count(sql, args)
|
|
361
|
-
.then(function (v) {
|
|
362
|
-
setTimeout(function () {
|
|
363
|
-
if (_this.log) {
|
|
364
|
-
var d = diff(t1);
|
|
365
|
-
var obj = {};
|
|
366
|
-
if (_this.sql.length > 0) {
|
|
367
|
-
obj[_this.sql] = getString(sql, args);
|
|
368
|
-
}
|
|
369
|
-
if (_this.return.length > 0) {
|
|
370
|
-
obj[_this.return] = v;
|
|
371
|
-
}
|
|
372
|
-
obj[_this.duration] = d;
|
|
373
|
-
_this.log("count", obj);
|
|
374
|
-
}
|
|
375
|
-
}, 0);
|
|
376
|
-
return v;
|
|
377
|
-
})
|
|
378
|
-
.catch(function (er) {
|
|
379
|
-
setTimeout(function () {
|
|
380
|
-
var d = diff(t1);
|
|
381
|
-
var obj = {};
|
|
382
|
-
if (_this.sql.length > 0) {
|
|
383
|
-
obj[_this.sql] = getString(sql, args);
|
|
384
|
-
}
|
|
385
|
-
obj[_this.duration] = d;
|
|
386
|
-
_this.error("error count: " + buildString(er));
|
|
387
|
-
}, 0);
|
|
388
|
-
throw er;
|
|
389
|
-
});
|
|
390
|
-
};
|
|
391
|
-
return LogManager;
|
|
392
|
-
}());
|
|
393
|
-
exports.LogManager = LogManager;
|
|
394
|
-
function buildString(v) {
|
|
395
|
-
if (typeof v === "string") {
|
|
396
|
-
return v;
|
|
397
|
-
}
|
|
398
|
-
else {
|
|
399
|
-
return JSON.stringify(v);
|
|
400
|
-
}
|
|
401
|
-
}
|
|
402
|
-
function getString(sql, args) {
|
|
403
|
-
if (args && args.length > 0) {
|
|
404
|
-
return sql + " " + JSON.stringify(args);
|
|
405
|
-
}
|
|
406
|
-
else {
|
|
407
|
-
return sql;
|
|
408
|
-
}
|
|
409
|
-
}
|
|
410
|
-
function diff(d1) {
|
|
411
|
-
var d2 = new Date();
|
|
412
|
-
return d2.getTime() - d1.getTime();
|
|
413
|
-
}
|
|
414
|
-
exports.diff = diff;
|
|
415
123
|
var SqlWriter = (function () {
|
|
416
124
|
function SqlWriter(db, table, attributes, toDB) {
|
|
417
125
|
this.db = db;
|
|
@@ -552,9 +260,9 @@ var SqlSearchWriter = (function (_super) {
|
|
|
552
260
|
_this.db = db;
|
|
553
261
|
_this.attributes = attributes;
|
|
554
262
|
_this.toDB = toDB;
|
|
555
|
-
var x = build_1.
|
|
263
|
+
var x = build_1.buildMetadata(attributes);
|
|
556
264
|
if (x) {
|
|
557
|
-
_this.version = x.
|
|
265
|
+
_this.version = x.version;
|
|
558
266
|
}
|
|
559
267
|
_this.create = _this.create.bind(_this);
|
|
560
268
|
_this.update = _this.update.bind(_this);
|
|
@@ -566,6 +274,12 @@ var SqlSearchWriter = (function (_super) {
|
|
|
566
274
|
if (this.toDB) {
|
|
567
275
|
obj2 = this.toDB(obj);
|
|
568
276
|
}
|
|
277
|
+
if (this.createdAt) {
|
|
278
|
+
obj2[this.createdAt] = new Date();
|
|
279
|
+
}
|
|
280
|
+
if (this.updatedAt) {
|
|
281
|
+
obj2[this.updatedAt] = new Date();
|
|
282
|
+
}
|
|
569
283
|
var stmt = build_1.buildToInsert(obj2, this.table, this.attributes, this.db.param, this.version);
|
|
570
284
|
if (stmt.query) {
|
|
571
285
|
var db = tx ? tx : this.db;
|
|
@@ -587,6 +301,9 @@ var SqlSearchWriter = (function (_super) {
|
|
|
587
301
|
if (this.toDB) {
|
|
588
302
|
obj2 = this.toDB(obj);
|
|
589
303
|
}
|
|
304
|
+
if (this.updatedAt) {
|
|
305
|
+
obj2[this.updatedAt] = new Date();
|
|
306
|
+
}
|
|
590
307
|
var stmt = build_1.buildToUpdate(obj2, this.table, this.attributes, this.db.param, this.version);
|
|
591
308
|
if (stmt.query) {
|
|
592
309
|
var db = tx ? tx : this.db;
|
|
@@ -604,7 +321,7 @@ var SqlSearchWriter = (function (_super) {
|
|
|
604
321
|
exports.SqlSearchWriter = SqlSearchWriter;
|
|
605
322
|
var SqlRepository = (function (_super) {
|
|
606
323
|
__extends(SqlRepository, _super);
|
|
607
|
-
function SqlRepository(db, table, attributes, buildQ, toDB, fromDB, sort, q, excluding, buildSort,
|
|
324
|
+
function SqlRepository(db, table, attributes, buildQ, toDB, fromDB, sort, q, excluding, buildSort, total) {
|
|
608
325
|
var _this = _super.call(this, db, table, attributes, buildQ, toDB, fromDB, sort, q, excluding, buildSort, total) || this;
|
|
609
326
|
_this.attributes = attributes;
|
|
610
327
|
_this.toDB = toDB;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "query-core",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.7",
|
|
4
4
|
"description": "query",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./src/index.ts",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
},
|
|
18
18
|
"repository": {
|
|
19
19
|
"type": "git",
|
|
20
|
-
"url": "git@github.com/core-ts/
|
|
20
|
+
"url": "git@github.com/core-ts/sql"
|
|
21
21
|
},
|
|
22
22
|
"keywords": [
|
|
23
23
|
"query",
|