@eggjs/dal-runtime 3.33.0 → 3.34.0
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/src/BaseSqlMap.d.ts +2 -2
- package/dist/src/BaseSqlMap.js +1 -1
- package/dist/src/SqlMapLoader.d.ts +2 -2
- package/dist/src/SqlMapLoader.js +1 -1
- package/dist/src/templates/base_dao.njk +150 -0
- package/dist/src/templates/dao.njk +17 -0
- package/dist/src/templates/extension.njk +17 -0
- package/dist/src/templates/templates/base_dao.njk +150 -0
- package/dist/src/templates/templates/dao.njk +17 -0
- package/dist/src/templates/templates/extension.njk +17 -0
- package/package.json +8 -6
package/dist/src/BaseSqlMap.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SqlType, SqlMap, TableModel } from '@eggjs/dal-decorator';
|
|
2
|
-
import {
|
|
2
|
+
import { Logger } from '@eggjs/tegg';
|
|
3
3
|
export interface GenerateSqlMap {
|
|
4
4
|
name: string;
|
|
5
5
|
type: SqlType.DELETE | SqlType.UPDATE | SqlType.INSERT | SqlType.SELECT;
|
|
@@ -8,7 +8,7 @@ export interface GenerateSqlMap {
|
|
|
8
8
|
export declare class BaseSqlMapGenerator {
|
|
9
9
|
private readonly tableModel;
|
|
10
10
|
private readonly logger;
|
|
11
|
-
constructor(tableModel: TableModel, logger:
|
|
11
|
+
constructor(tableModel: TableModel, logger: Logger);
|
|
12
12
|
generateAllColumns(countIf: boolean): string;
|
|
13
13
|
generateFindByPrimary(): Array<GenerateSqlMap>;
|
|
14
14
|
generateFindByIndexes(): GenerateSqlMap[];
|
package/dist/src/BaseSqlMap.js
CHANGED
|
@@ -307,4 +307,4 @@ class BaseSqlMapGenerator {
|
|
|
307
307
|
}
|
|
308
308
|
}
|
|
309
309
|
exports.BaseSqlMapGenerator = BaseSqlMapGenerator;
|
|
310
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
310
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVNxbE1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9CYXNlU3FsTWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUF1QjtBQUN2Qix3REFBMEY7QUFFMUYsaURBQThDO0FBUTlDLE1BQWEsbUJBQW1CO0lBSTlCLFlBQVksVUFBc0IsRUFBRSxNQUFjO1FBQ2hELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFnQjtRQUNqQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLElBQUksQ0FBQzthQUNoRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDYixPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUMsc0NBQXNDLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDaEYsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixNQUFNLE1BQU0sR0FBMEIsRUFBRSxDQUFDO1FBQ3pDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUkscUJBQXFCLENBQUMsQ0FBQztZQUNuRSxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO1FBRUQsSUFBSSxHQUFHLEdBQUcsVUFBVSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDO3dCQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUk7c0JBQ3RCLENBQUM7UUFFbkIsR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsS0FBSyxRQUFRLENBQUMsVUFBVSxXQUFXLFFBQVEsQ0FBQyxZQUFZLElBQUksQ0FBQzthQUM5RixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakIsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLElBQUksRUFBRSx1QkFBTyxDQUFDLE1BQU07Z0JBQ3BCLElBQUksRUFBRSxTQUFTLGdCQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQzNELEdBQUc7YUFDSixDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNWLElBQUksRUFBRSxlQUFlO1lBQ3JCLElBQUksRUFBRSx1QkFBTyxDQUFDLE1BQU07WUFDcEIsR0FBRztTQUNKLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIscUJBQXFCO1FBQ25CLE1BQU0sT0FBTyxHQUEwQixFQUFFLENBQUM7UUFDMUMsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzVDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyx5QkFBUyxDQUFDLE9BQU87Z0JBQUUsU0FBUztZQUUvQyxJQUFJLEdBQUcsR0FBRyxVQUFVLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7MEJBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSTt3QkFDdEIsQ0FBQztZQUVuQixHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQy9CLE1BQU0sQ0FBQyxHQUFHLEtBQUssUUFBUSxDQUFDLFVBQVUsa0JBQWtCLFFBQVEsQ0FBQyxZQUFZLDJCQUEyQixRQUFRLENBQUMsWUFBWSxJQUFJLENBQUM7Z0JBQzlILE9BQU8sQ0FBQyxDQUFDO1lBQ1gsQ0FBQyxDQUFDO2lCQUNDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUVqQixNQUFNLFFBQVEsR0FBRyxnQkFBQyxDQUFDLFVBQVUsQ0FBQyxnQkFBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM5RyxPQUFPLENBQUMsSUFBSSxDQUFDO2dCQUNYLElBQUksRUFBRSxTQUFTLFFBQVEsRUFBRTtnQkFDekIsSUFBSSxFQUFFLHVCQUFPLENBQUMsTUFBTTtnQkFDcEIsR0FBRzthQUNKLENBQUMsQ0FBQztZQUNILE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ1gsSUFBSSxFQUFFLFlBQVksUUFBUSxFQUFFO2dCQUM1QixJQUFJLEVBQUUsdUJBQU8sQ0FBQyxNQUFNO2dCQUNwQixHQUFHLEVBQUUsR0FBRyxHQUFHLGFBQWE7YUFDekIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxHQUFHLEdBQUcsaUJBQWlCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxLQUFLLENBQUM7UUFDckQsR0FBRyxJQUFJLDJCQUEyQixDQUFDO1FBRW5DLE1BQU0sSUFBSSxHQUFhLEVBQUUsQ0FBQztRQUMxQixNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdDLE1BQU0sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxHQUFHLE1BQU0sQ0FBQztZQUNsRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxZQUFZLEtBQUssYUFBYSxFQUFFLENBQUM7Z0JBQ2pGLDhCQUE4QjtnQkFDOUIsWUFBWTtnQkFDWixXQUFXO2dCQUNYLGNBQWM7Z0JBQ2QsZUFBZTtnQkFDZixpQkFBaUI7Z0JBQ2pCLGdCQUFnQjtnQkFDaEIsbUJBQW1CO2dCQUNuQix5QkFBeUI7Z0JBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDRixZQUFZOzs7Ozs7O2NBT2YsVUFBVTs7U0FFZixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFFWCxJQUFJLDJCQUFZLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7b0JBQ3ZDLE1BQU0sTUFBTSxHQUFHLDJCQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDL0QsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNOLFlBQVk7Ozs7Ozs7ZUFPZCxZQUFZLE1BQU0sTUFBTTs7U0FFOUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQ1gsQ0FBQztxQkFBTSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLDBCQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2hELE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDTixZQUFZOzs7Ozs7O2VBT2QsWUFBWTs7U0FFbEIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQ1gsQ0FBQztxQkFBTSxDQUFDO29CQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDTixZQUFZOzs7Ozs7O2VBT2QsWUFBWTs7U0FFbEIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQ1gsQ0FBQztZQUdILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLEdBQUcsQ0FBQztnQkFDUiwwQ0FBMEM7Z0JBQzFDLHNCQUFzQjtnQkFDdEIsbURBQW1EO2dCQUNuRCwyQkFBMkI7Z0JBQzNCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSywwQkFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUNqQyxRQUFRO29CQUNSLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQztnQkFDM0IsQ0FBQztxQkFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssMEJBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDM0MsU0FBUztvQkFDVCxHQUFHLEdBQUcsMENBQTBDLENBQUM7Z0JBQ25ELENBQUM7cUJBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLDBCQUFVLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssMEJBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztvQkFDbkYsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQzVELENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLElBQUksUUFBUSxZQUFZLEVBQUUsQ0FBQyxDQUFDO2dCQUNwRSxDQUFDO2dCQUNELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzs7Ozs7OztZQU9QLFVBQVU7U0FDYixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFFWCxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Ozs7Ozs7Y0FPUCxZQUFZLFFBQVEsWUFBWSx3QkFBd0IsR0FBRztTQUNoRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNiLENBQUM7UUFDSCxDQUFDO1FBRUQsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDO1FBQzVCLEdBQUcsSUFBSSwyQkFBMkIsQ0FBQztRQUNuQyxHQUFHLElBQUksVUFBVSxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7UUFFckMsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUkscUJBQXFCLENBQUMsQ0FBQztZQUNuRSxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksR0FBRyxHQUFHLFlBQVksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFFBQVEsQ0FBQztRQUNuRCxHQUFHLElBQUksMkJBQTJCLENBQUM7UUFDbkMsTUFBTSxFQUFFLEdBQWEsRUFBRSxDQUFDO1FBQ3hCLEtBQUssTUFBTSxNQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM3QyxNQUFNLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsR0FBRyxNQUFNLENBQUM7WUFDbEQsSUFBSSxHQUFHLENBQUM7WUFDUixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssMEJBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDakMsUUFBUTtnQkFDUixHQUFHLEdBQUcsa0JBQWtCLENBQUM7WUFDM0IsQ0FBQztpQkFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssMEJBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDM0MsU0FBUztnQkFDVCxHQUFHLEdBQUcsMENBQTBDLENBQUM7WUFDbkQsQ0FBQztpQkFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssMEJBQVUsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksS0FBSywwQkFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNuRixHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUM1RCxDQUFDO1lBRUQsb0JBQW9CO1lBQ3BCLE1BQU0sSUFBSSxHQUFHLFlBQVksS0FBSyxhQUFhLENBQUMsQ0FBQztnQkFFM0M7ZUFDTyxZQUFZOzs7Ozs7O1lBT2YsVUFBVSxXQUFXLFlBQVk7O09BRXRDLENBQUMsQ0FBQztnQkFFRDs7Ozs7OztVQU9FLFVBQVU7WUFDUixZQUFZLFFBQVEsWUFBWSx3QkFBd0IsR0FBRztPQUNoRSxDQUFDO1lBQ0YsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQixDQUFDO1FBRUQsR0FBRyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbkIsR0FBRyxJQUFJLFNBQVMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxVQUFVLGtCQUFrQixRQUFRLENBQUMsWUFBWSxJQUFJLENBQUM7YUFDOUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFFbkIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUkscUJBQXFCLENBQUMsQ0FBQztZQUNuRSxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksR0FBRyxHQUFHO3dCQUNVLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSTtzQkFDdEIsQ0FBQztRQUVuQixHQUFHLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxVQUFVLFVBQVUsUUFBUSxDQUFDLFlBQVksSUFBSSxDQUFDO2FBQzdGLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqQixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxJQUFJO1FBQ0YsTUFBTSxHQUFHLEdBQTJCLEVBQUUsQ0FBQztRQUV2QyxHQUFHLENBQUMsVUFBVSxHQUFHO1lBQ2YsSUFBSSxFQUFFLHVCQUFPLENBQUMsS0FBSztZQUNuQixPQUFPLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQztTQUN4QyxDQUFDO1FBR0YsTUFBTSxPQUFPLEdBQTBCO1lBQ3JDOzs7OztlQUtHO1lBQ0gsR0FBRyxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDL0I7Ozs7O2VBS0c7WUFDSCxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUMvQjs7ZUFFRztZQUNIO2dCQUNFLElBQUksRUFBRSxRQUFRO2dCQUNkLElBQUksRUFBRSx1QkFBTyxDQUFDLE1BQU07Z0JBQ3BCLEdBQUcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO2FBQ1Q7WUFDbkI7O2VBRUc7WUFDSDtnQkFDRSxJQUFJLEVBQUUsUUFBUTtnQkFDZCxJQUFJLEVBQUUsdUJBQU8sQ0FBQyxNQUFNO2dCQUNwQixHQUFHLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRTthQUNUO1lBQ25COztlQUVHO1lBQ0g7Z0JBQ0UsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsSUFBSSxFQUFFLHVCQUFPLENBQUMsTUFBTTtnQkFDcEIsR0FBRyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUU7YUFDVDtTQUNwQixDQUFDO1FBQ0YsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUM3QixHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHO2dCQUNqQixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7Z0JBQ2pCLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRzthQUNoQixDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztDQUNGO0FBcFVELGtEQW9VQyJ9
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { TableModel } from '@eggjs/dal-decorator';
|
|
2
|
-
import {
|
|
2
|
+
import { Logger } from '@eggjs/tegg';
|
|
3
3
|
import { TableSqlMap } from './TableSqlMap';
|
|
4
4
|
export declare class SqlMapLoader {
|
|
5
5
|
private readonly logger;
|
|
6
6
|
private readonly tableModel;
|
|
7
7
|
private readonly sqlMapPath;
|
|
8
|
-
constructor(tableModel: TableModel, moduleDir: string, logger:
|
|
8
|
+
constructor(tableModel: TableModel, moduleDir: string, logger: Logger);
|
|
9
9
|
load(): TableSqlMap;
|
|
10
10
|
}
|
package/dist/src/SqlMapLoader.js
CHANGED
|
@@ -32,4 +32,4 @@ class SqlMapLoader {
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
exports.SqlMapLoader = SqlMapLoader;
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3FsTWFwTG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1NxbE1hcExvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwwREFBNkI7QUFHN0IsNkNBQW1EO0FBQ25ELCtDQUE0QztBQUU1QyxNQUFhLFlBQVk7SUFLdkIsWUFBWSxVQUFzQixFQUFFLFNBQWlCLEVBQUUsTUFBYztRQUNuRSxJQUFJLENBQUMsVUFBVSxHQUFHLG1CQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksY0FBYyxDQUFDLENBQUM7UUFDaEcsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUM7WUFDSCw4REFBOEQ7WUFDOUQsTUFBTSxZQUFZLEdBQTJCLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdEUsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGdDQUFtQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2xGLE1BQU0sVUFBVSxHQUFHLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDO1lBQzlDLE1BQU0sTUFBTSxHQUFHO2dCQUNiLEdBQUcsVUFBVTtnQkFDYixHQUFHLFlBQVk7YUFDaEIsQ0FBQztZQUNGLE9BQU8sSUFBSSx5QkFBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM3RCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLENBQUMsQ0FBQyxPQUFPLEdBQUcsZ0JBQWdCLElBQUksQ0FBQyxVQUFVLFlBQVksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ25FLE1BQU0sQ0FBQyxDQUFDO1FBQ1YsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTNCRCxvQ0EyQkMifQ==
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
{% macro newDataLogic(columns, old, new) %}
|
|
2
|
+
let tmp;
|
|
3
|
+
{% for column in table.columns %}
|
|
4
|
+
// empty-line
|
|
5
|
+
tmp = {{ old }}.{{ column.propertyName }};
|
|
6
|
+
if (tmp !== undefined) {
|
|
7
|
+
{{ new }}.${{ column.propertyName }} = tmp;
|
|
8
|
+
}
|
|
9
|
+
{% endfor %}
|
|
10
|
+
{% endmacro %}
|
|
11
|
+
|
|
12
|
+
{% macro findLogic(funcName, sqlName, idx, uniq) %}
|
|
13
|
+
public async {{ funcName }}(
|
|
14
|
+
{% for key in idx.keys %}
|
|
15
|
+
${{ key.propertyName }}: {{columnMap[key.propertyName].type.type | dbTypeToTSType}}{% if loop.last !== true %},{% endif%}
|
|
16
|
+
{% endfor %}
|
|
17
|
+
): Promise<{{ clazzName }}{{ '| null' if uniq else '[]' }}> {
|
|
18
|
+
return this.dataSource.{{ 'executeScalar' if uniq else 'execute' }}('{{ sqlName }}', {
|
|
19
|
+
{% for key in idx.keys %}
|
|
20
|
+
${{ key.propertyName }},
|
|
21
|
+
{% endfor %}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
{% endmacro %}
|
|
25
|
+
|
|
26
|
+
{% macro generatePrimaryType(primary) %}
|
|
27
|
+
{% if (primary.keys | length) === 1 %}
|
|
28
|
+
{{primary.keys[0].propertyName}}: {{ columnMap[primary.keys[0].propertyName].type.type | dbTypeToTSType}}
|
|
29
|
+
{% else %}
|
|
30
|
+
primary: {
|
|
31
|
+
{% for key in primary.keys %}
|
|
32
|
+
{{ key.propertyName }}: {{columnMap[key.propertyName].type.type | dbTypeToTSType}}{% if loop.last !== true %},{% endif%}
|
|
33
|
+
{% endfor %}
|
|
34
|
+
}
|
|
35
|
+
{% endif %}
|
|
36
|
+
{% endmacro %}
|
|
37
|
+
|
|
38
|
+
{% macro generateUpdateValue(primary) %}
|
|
39
|
+
{% if (primary.keys | length) === 1 %}
|
|
40
|
+
const newData: Record<string, any> = {
|
|
41
|
+
primary: {
|
|
42
|
+
{{primary.keys[0].propertyName}},
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
{% else %}
|
|
46
|
+
const newData: Record<string, any> = {
|
|
47
|
+
primary,
|
|
48
|
+
};
|
|
49
|
+
{% endif %}
|
|
50
|
+
{% endmacro %}
|
|
51
|
+
|
|
52
|
+
{% macro generateDeleteValue(primary) %}
|
|
53
|
+
{% if (primary.keys | length) === 1 %}
|
|
54
|
+
{
|
|
55
|
+
{{primary.keys[0].propertyName}},
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
{% else %}
|
|
59
|
+
primary
|
|
60
|
+
{% endif %}
|
|
61
|
+
{% endmacro %}
|
|
62
|
+
|
|
63
|
+
{% macro generateInsertType(primary) %}
|
|
64
|
+
Optional<{{clazzName}},
|
|
65
|
+
{% for key in primary.keys %}
|
|
66
|
+
'{{ key.propertyName }}'{% if loop.last !== true %}|{% endif%}
|
|
67
|
+
{% endfor %}
|
|
68
|
+
>
|
|
69
|
+
{% endmacro %}
|
|
70
|
+
|
|
71
|
+
import type { InsertResult, UpdateResult, DeleteResult } from '@eggjs/rds/lib/types';
|
|
72
|
+
import { SingletonProto, AccessLevel, Inject } from '@eggjs/tegg';
|
|
73
|
+
import { DataSource, DataSourceInjectName, DataSourceQualifier, ColumnTsType } from '@eggjs/tegg/dal';
|
|
74
|
+
import { {{ clazzName }} } from '{{ tableModelPath }}';
|
|
75
|
+
// empty-line
|
|
76
|
+
type Optional<T, K extends keyof T> = Omit<T, K> & Partial<T>;
|
|
77
|
+
/**
|
|
78
|
+
* 自动生成的 {{ clazzName }}DAO 基类
|
|
79
|
+
* @class Base{{ clazzName }}DAO
|
|
80
|
+
* @classdesc 该文件由 @eggjs/tegg 自动生成,请**不要**修改它!
|
|
81
|
+
*/
|
|
82
|
+
/* istanbul ignore next */
|
|
83
|
+
@SingletonProto({
|
|
84
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
85
|
+
})
|
|
86
|
+
export class Base{{ clazzName }}DAO {
|
|
87
|
+
static clazzModel = {{ clazzName }};
|
|
88
|
+
|
|
89
|
+
@Inject({
|
|
90
|
+
name: DataSourceInjectName,
|
|
91
|
+
})
|
|
92
|
+
@DataSourceQualifier('{{moduleName}}.{{ table.dataSourceName }}.{{ clazzName }}')
|
|
93
|
+
protected readonly dataSource: DataSource<{{clazzName}}>;
|
|
94
|
+
|
|
95
|
+
// empty-line
|
|
96
|
+
{# insert: 插入 #}
|
|
97
|
+
public async insert(raw: {{generateInsertType(primaryIndex)}}): Promise<InsertResult> {
|
|
98
|
+
const data: Record<string, any> = {};
|
|
99
|
+
|
|
100
|
+
{{ newDataLogic(columns, 'raw', 'data') }}
|
|
101
|
+
|
|
102
|
+
// empty-line
|
|
103
|
+
return this.dataSource.executeRawScalar('insert', data);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// empty-line
|
|
107
|
+
{# update: 更新 #}
|
|
108
|
+
public async update({{generatePrimaryType(primaryIndex)}}, data: Partial<{{ ((clazzName)) }}>): Promise<UpdateResult> {
|
|
109
|
+
// empty-line
|
|
110
|
+
{{ generateUpdateValue(primaryIndex) }}
|
|
111
|
+
|
|
112
|
+
{{ newDataLogic(columns, 'data', 'newData') }}
|
|
113
|
+
|
|
114
|
+
// empty-line
|
|
115
|
+
return this.dataSource.executeRawScalar('update', newData);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
{% for funcName in [ 'delete', 'del' ] %}
|
|
119
|
+
// empty-line
|
|
120
|
+
{# delete: 删除 #}
|
|
121
|
+
public async {{ funcName }}({{generatePrimaryType(primaryIndex)}}): Promise<DeleteResult> {
|
|
122
|
+
return this.dataSource.executeRawScalar('delete', {{generateDeleteValue(primaryIndex)}});
|
|
123
|
+
}
|
|
124
|
+
{% endfor %}
|
|
125
|
+
|
|
126
|
+
{% for idx in table.indices %}
|
|
127
|
+
// empty-line
|
|
128
|
+
{# 某个索引 #}
|
|
129
|
+
{% set tmpName = ((idx.keys[0].propertyName if (idx.keys | length) === 1 else idx.name) | pascalCase) %}
|
|
130
|
+
{% set findName = 'findBy' + tmpName %}
|
|
131
|
+
{% set findOneName = 'findOneBy' + tmpName %}
|
|
132
|
+
{{ findLogic(findName, findName, idx, false) }}
|
|
133
|
+
// empty-line
|
|
134
|
+
{{ findLogic(findOneName, findOneName, idx, true) }}
|
|
135
|
+
{% endfor %}
|
|
136
|
+
|
|
137
|
+
// empty-line
|
|
138
|
+
{# 某个索引 #}
|
|
139
|
+
{% if primaryIndex %}
|
|
140
|
+
{% set tmpName = ((primaryIndex.keys[0].propertyName if (primaryIndex.keys | length) === 1 else primaryIndex.name) | pascalCase) %}
|
|
141
|
+
{% set findName = 'findBy' + tmpName %}
|
|
142
|
+
{% set findOneName = 'findOneBy' + tmpName %}
|
|
143
|
+
{{ findLogic(findName, findName, primaryIndex, true) }}
|
|
144
|
+
{% if (primaryIndex.keys | length) === 1 %}
|
|
145
|
+
// empty-line
|
|
146
|
+
{{ findLogic('findByPrimary', findName, primaryIndex, true) }}
|
|
147
|
+
{% endif %}
|
|
148
|
+
{% endif %}
|
|
149
|
+
}
|
|
150
|
+
// empty-line
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SingletonProto, AccessLevel } from '@eggjs/tegg';
|
|
2
|
+
import { Base{{ clazzName }}DAO } from './base/Base{{ clazzName }}DAO';
|
|
3
|
+
// empty-line
|
|
4
|
+
/**
|
|
5
|
+
* {{ clazzName }}DAO 类
|
|
6
|
+
{% if user.name %} * @author {{ user.name }} {% if user.email %}<{{ user.email }}>{% endif %}
|
|
7
|
+
{% endif %} * @class {{ clazzName }}DAO
|
|
8
|
+
* @classdesc 在此扩展关于 {{ clazzName }} 数据的一切操作
|
|
9
|
+
* @extends Base{{ clazzName }}DAO
|
|
10
|
+
*/
|
|
11
|
+
@SingletonProto({
|
|
12
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
13
|
+
})
|
|
14
|
+
export default class {{ clazzName }}DAO extends Base{{ clazzName }}DAO {
|
|
15
|
+
// empty-line
|
|
16
|
+
}
|
|
17
|
+
// empty-line
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SqlMap } from '@eggjs/tegg/dal';
|
|
2
|
+
// empty-line
|
|
3
|
+
/**
|
|
4
|
+
* Define Custom SQLs
|
|
5
|
+
*
|
|
6
|
+
* import { SqlMap, SqlType } from '@eggjs/tegg/dal';
|
|
7
|
+
*
|
|
8
|
+
* export default {
|
|
9
|
+
* findByName: {
|
|
10
|
+
* type: SqlType.SELECT,
|
|
11
|
+
* sql: 'SELECT {{ allColumns }} from foo where name = {{ name }}'
|
|
12
|
+
* },
|
|
13
|
+
* }
|
|
14
|
+
*/
|
|
15
|
+
export default {
|
|
16
|
+
// empty-line
|
|
17
|
+
} as Record<string, SqlMap>;
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
{% macro newDataLogic(columns, old, new) %}
|
|
2
|
+
let tmp;
|
|
3
|
+
{% for column in table.columns %}
|
|
4
|
+
// empty-line
|
|
5
|
+
tmp = {{ old }}.{{ column.propertyName }};
|
|
6
|
+
if (tmp !== undefined) {
|
|
7
|
+
{{ new }}.${{ column.propertyName }} = tmp;
|
|
8
|
+
}
|
|
9
|
+
{% endfor %}
|
|
10
|
+
{% endmacro %}
|
|
11
|
+
|
|
12
|
+
{% macro findLogic(funcName, sqlName, idx, uniq) %}
|
|
13
|
+
public async {{ funcName }}(
|
|
14
|
+
{% for key in idx.keys %}
|
|
15
|
+
${{ key.propertyName }}: {{columnMap[key.propertyName].type.type | dbTypeToTSType}}{% if loop.last !== true %},{% endif%}
|
|
16
|
+
{% endfor %}
|
|
17
|
+
): Promise<{{ clazzName }}{{ '| null' if uniq else '[]' }}> {
|
|
18
|
+
return this.dataSource.{{ 'executeScalar' if uniq else 'execute' }}('{{ sqlName }}', {
|
|
19
|
+
{% for key in idx.keys %}
|
|
20
|
+
${{ key.propertyName }},
|
|
21
|
+
{% endfor %}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
{% endmacro %}
|
|
25
|
+
|
|
26
|
+
{% macro generatePrimaryType(primary) %}
|
|
27
|
+
{% if (primary.keys | length) === 1 %}
|
|
28
|
+
{{primary.keys[0].propertyName}}: {{ columnMap[primary.keys[0].propertyName].type.type | dbTypeToTSType}}
|
|
29
|
+
{% else %}
|
|
30
|
+
primary: {
|
|
31
|
+
{% for key in primary.keys %}
|
|
32
|
+
{{ key.propertyName }}: {{columnMap[key.propertyName].type.type | dbTypeToTSType}}{% if loop.last !== true %},{% endif%}
|
|
33
|
+
{% endfor %}
|
|
34
|
+
}
|
|
35
|
+
{% endif %}
|
|
36
|
+
{% endmacro %}
|
|
37
|
+
|
|
38
|
+
{% macro generateUpdateValue(primary) %}
|
|
39
|
+
{% if (primary.keys | length) === 1 %}
|
|
40
|
+
const newData: Record<string, any> = {
|
|
41
|
+
primary: {
|
|
42
|
+
{{primary.keys[0].propertyName}},
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
{% else %}
|
|
46
|
+
const newData: Record<string, any> = {
|
|
47
|
+
primary,
|
|
48
|
+
};
|
|
49
|
+
{% endif %}
|
|
50
|
+
{% endmacro %}
|
|
51
|
+
|
|
52
|
+
{% macro generateDeleteValue(primary) %}
|
|
53
|
+
{% if (primary.keys | length) === 1 %}
|
|
54
|
+
{
|
|
55
|
+
{{primary.keys[0].propertyName}},
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
{% else %}
|
|
59
|
+
primary
|
|
60
|
+
{% endif %}
|
|
61
|
+
{% endmacro %}
|
|
62
|
+
|
|
63
|
+
{% macro generateInsertType(primary) %}
|
|
64
|
+
Optional<{{clazzName}},
|
|
65
|
+
{% for key in primary.keys %}
|
|
66
|
+
'{{ key.propertyName }}'{% if loop.last !== true %}|{% endif%}
|
|
67
|
+
{% endfor %}
|
|
68
|
+
>
|
|
69
|
+
{% endmacro %}
|
|
70
|
+
|
|
71
|
+
import type { InsertResult, UpdateResult, DeleteResult } from '@eggjs/rds/lib/types';
|
|
72
|
+
import { SingletonProto, AccessLevel, Inject } from '@eggjs/tegg';
|
|
73
|
+
import { DataSource, DataSourceInjectName, DataSourceQualifier, ColumnTsType } from '@eggjs/tegg/dal';
|
|
74
|
+
import { {{ clazzName }} } from '{{ tableModelPath }}';
|
|
75
|
+
// empty-line
|
|
76
|
+
type Optional<T, K extends keyof T> = Omit<T, K> & Partial<T>;
|
|
77
|
+
/**
|
|
78
|
+
* 自动生成的 {{ clazzName }}DAO 基类
|
|
79
|
+
* @class Base{{ clazzName }}DAO
|
|
80
|
+
* @classdesc 该文件由 @eggjs/tegg 自动生成,请**不要**修改它!
|
|
81
|
+
*/
|
|
82
|
+
/* istanbul ignore next */
|
|
83
|
+
@SingletonProto({
|
|
84
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
85
|
+
})
|
|
86
|
+
export class Base{{ clazzName }}DAO {
|
|
87
|
+
static clazzModel = {{ clazzName }};
|
|
88
|
+
|
|
89
|
+
@Inject({
|
|
90
|
+
name: DataSourceInjectName,
|
|
91
|
+
})
|
|
92
|
+
@DataSourceQualifier('{{moduleName}}.{{ table.dataSourceName }}.{{ clazzName }}')
|
|
93
|
+
protected readonly dataSource: DataSource<{{clazzName}}>;
|
|
94
|
+
|
|
95
|
+
// empty-line
|
|
96
|
+
{# insert: 插入 #}
|
|
97
|
+
public async insert(raw: {{generateInsertType(primaryIndex)}}): Promise<InsertResult> {
|
|
98
|
+
const data: Record<string, any> = {};
|
|
99
|
+
|
|
100
|
+
{{ newDataLogic(columns, 'raw', 'data') }}
|
|
101
|
+
|
|
102
|
+
// empty-line
|
|
103
|
+
return this.dataSource.executeRawScalar('insert', data);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// empty-line
|
|
107
|
+
{# update: 更新 #}
|
|
108
|
+
public async update({{generatePrimaryType(primaryIndex)}}, data: Partial<{{ ((clazzName)) }}>): Promise<UpdateResult> {
|
|
109
|
+
// empty-line
|
|
110
|
+
{{ generateUpdateValue(primaryIndex) }}
|
|
111
|
+
|
|
112
|
+
{{ newDataLogic(columns, 'data', 'newData') }}
|
|
113
|
+
|
|
114
|
+
// empty-line
|
|
115
|
+
return this.dataSource.executeRawScalar('update', newData);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
{% for funcName in [ 'delete', 'del' ] %}
|
|
119
|
+
// empty-line
|
|
120
|
+
{# delete: 删除 #}
|
|
121
|
+
public async {{ funcName }}({{generatePrimaryType(primaryIndex)}}): Promise<DeleteResult> {
|
|
122
|
+
return this.dataSource.executeRawScalar('delete', {{generateDeleteValue(primaryIndex)}});
|
|
123
|
+
}
|
|
124
|
+
{% endfor %}
|
|
125
|
+
|
|
126
|
+
{% for idx in table.indices %}
|
|
127
|
+
// empty-line
|
|
128
|
+
{# 某个索引 #}
|
|
129
|
+
{% set tmpName = ((idx.keys[0].propertyName if (idx.keys | length) === 1 else idx.name) | pascalCase) %}
|
|
130
|
+
{% set findName = 'findBy' + tmpName %}
|
|
131
|
+
{% set findOneName = 'findOneBy' + tmpName %}
|
|
132
|
+
{{ findLogic(findName, findName, idx, false) }}
|
|
133
|
+
// empty-line
|
|
134
|
+
{{ findLogic(findOneName, findOneName, idx, true) }}
|
|
135
|
+
{% endfor %}
|
|
136
|
+
|
|
137
|
+
// empty-line
|
|
138
|
+
{# 某个索引 #}
|
|
139
|
+
{% if primaryIndex %}
|
|
140
|
+
{% set tmpName = ((primaryIndex.keys[0].propertyName if (primaryIndex.keys | length) === 1 else primaryIndex.name) | pascalCase) %}
|
|
141
|
+
{% set findName = 'findBy' + tmpName %}
|
|
142
|
+
{% set findOneName = 'findOneBy' + tmpName %}
|
|
143
|
+
{{ findLogic(findName, findName, primaryIndex, true) }}
|
|
144
|
+
{% if (primaryIndex.keys | length) === 1 %}
|
|
145
|
+
// empty-line
|
|
146
|
+
{{ findLogic('findByPrimary', findName, primaryIndex, true) }}
|
|
147
|
+
{% endif %}
|
|
148
|
+
{% endif %}
|
|
149
|
+
}
|
|
150
|
+
// empty-line
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SingletonProto, AccessLevel } from '@eggjs/tegg';
|
|
2
|
+
import { Base{{ clazzName }}DAO } from './base/Base{{ clazzName }}DAO';
|
|
3
|
+
// empty-line
|
|
4
|
+
/**
|
|
5
|
+
* {{ clazzName }}DAO 类
|
|
6
|
+
{% if user.name %} * @author {{ user.name }} {% if user.email %}<{{ user.email }}>{% endif %}
|
|
7
|
+
{% endif %} * @class {{ clazzName }}DAO
|
|
8
|
+
* @classdesc 在此扩展关于 {{ clazzName }} 数据的一切操作
|
|
9
|
+
* @extends Base{{ clazzName }}DAO
|
|
10
|
+
*/
|
|
11
|
+
@SingletonProto({
|
|
12
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
13
|
+
})
|
|
14
|
+
export default class {{ clazzName }}DAO extends Base{{ clazzName }}DAO {
|
|
15
|
+
// empty-line
|
|
16
|
+
}
|
|
17
|
+
// empty-line
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SqlMap } from '@eggjs/tegg/dal';
|
|
2
|
+
// empty-line
|
|
3
|
+
/**
|
|
4
|
+
* Define Custom SQLs
|
|
5
|
+
*
|
|
6
|
+
* import { SqlMap, SqlType } from '@eggjs/tegg/dal';
|
|
7
|
+
*
|
|
8
|
+
* export default {
|
|
9
|
+
* findByName: {
|
|
10
|
+
* type: SqlType.SELECT,
|
|
11
|
+
* sql: 'SELECT {{ allColumns }} from foo where name = {{ name }}'
|
|
12
|
+
* },
|
|
13
|
+
* }
|
|
14
|
+
*/
|
|
15
|
+
export default {
|
|
16
|
+
// empty-line
|
|
17
|
+
} as Record<string, SqlMap>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/dal-runtime",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.34.0",
|
|
4
4
|
"description": "tegg dal decorator",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"egg",
|
|
@@ -12,14 +12,16 @@
|
|
|
12
12
|
"main": "dist/index.js",
|
|
13
13
|
"files": [
|
|
14
14
|
"dist/**/*.js",
|
|
15
|
-
"dist/**/*.d.ts"
|
|
15
|
+
"dist/**/*.d.ts",
|
|
16
|
+
"dist/**/*.njk"
|
|
16
17
|
],
|
|
17
18
|
"typings": "dist/index.d.ts",
|
|
18
19
|
"scripts": {
|
|
19
20
|
"test": "cross-env NODE_ENV=test NODE_OPTIONS='--no-deprecation' mocha",
|
|
20
21
|
"clean": "tsc -b --clean",
|
|
21
22
|
"tsc": "npm run clean && tsc -p ./tsconfig.json",
|
|
22
|
-
"tsc:pub": "npm run clean && tsc -p ./tsconfig.pub.json",
|
|
23
|
+
"tsc:pub": "npm run clean && tsc -p ./tsconfig.pub.json && npm run cp:template",
|
|
24
|
+
"cp:template": "cp -r src/templates dist/src/templates",
|
|
23
25
|
"prepublishOnly": "npm run tsc:pub"
|
|
24
26
|
},
|
|
25
27
|
"author": "killagu <killa123@126.com>",
|
|
@@ -37,7 +39,7 @@
|
|
|
37
39
|
"node": ">=14.0.0"
|
|
38
40
|
},
|
|
39
41
|
"dependencies": {
|
|
40
|
-
"@eggjs/dal-decorator": "^3.
|
|
42
|
+
"@eggjs/dal-decorator": "^3.34.0",
|
|
41
43
|
"@eggjs/rds": "^1.0.0",
|
|
42
44
|
"js-beautify": "^1.15.1",
|
|
43
45
|
"lodash": "^4.17.21",
|
|
@@ -49,7 +51,7 @@
|
|
|
49
51
|
"access": "public"
|
|
50
52
|
},
|
|
51
53
|
"devDependencies": {
|
|
52
|
-
"@eggjs/tegg": "^3.
|
|
54
|
+
"@eggjs/tegg": "^3.34.0",
|
|
53
55
|
"@types/lodash": "^4.17.0",
|
|
54
56
|
"@types/mocha": "^10.0.1",
|
|
55
57
|
"@types/node": "^20.2.4",
|
|
@@ -59,5 +61,5 @@
|
|
|
59
61
|
"ts-node": "^10.9.1",
|
|
60
62
|
"typescript": "^5.0.4"
|
|
61
63
|
},
|
|
62
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "5ec94efd8ed5eb10b27d37ef081da4ecfd4e263f"
|
|
63
65
|
}
|