Skip to content

Commit cc83190

Browse files
committed
fix: fix custom sql extension
1 parent 8652c9d commit cc83190

File tree

3 files changed

+23
-3
lines changed

3 files changed

+23
-3
lines changed

core/dal-runtime/src/SqlMapLoader.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export class SqlMapLoader {
1919
load(): TableSqlMap {
2020
try {
2121
// eslint-disable-next-line @typescript-eslint/no-var-requires
22-
const customSqlMap: Record<string, SqlMap> = require(this.sqlMapPath);
22+
const { default: customSqlMap }: { default: Record<string, SqlMap> } = require(this.sqlMapPath);
2323
const baseSqlMapGenerator = new BaseSqlMapGenerator(this.tableModel, this.logger);
2424
const baseSqlMap = baseSqlMapGenerator.load();
2525
const sqlMap = {
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import assert from 'node:assert';
2+
import { TableModel } from '@eggjs/dal-decorator';
3+
import { Foo } from './fixtures/modules/dal/Foo';
4+
import { SqlMapLoader } from '../src/SqlMapLoader';
5+
import path from 'node:path';
6+
7+
describe('test/TableSqlMap.test.ts', () => {
8+
it('custom sql should work', () => {
9+
// const generator = new SqlGenerator();
10+
const fooModel = TableModel.build(Foo);
11+
// const sql = generator.generate(fooModel);
12+
const sqlMapLoader = new SqlMapLoader(fooModel, path.join(__dirname, 'fixtures/modules/dal'), console);
13+
const tableSqlMap = sqlMapLoader.load();
14+
const sql = tableSqlMap.generate('findAll', {}, 'UTC');
15+
assert.equal(sql, 'SELECT `id`,`name`,`col1`,`bit_column`,`bool_column`,`tiny_int_column`,`small_int_column`,`medium_int_column`,`int_column`,`big_int_column`,`decimal_column`,`float_column`,`double_column`,`date_column`,`date_time_column`,`timestamp_column`,`time_column`,`year_column`,`var_char_column`,`binary_column`,`var_binary_column`,`tiny_blob_column`,`tiny_text_column`,`blob_column`,`text_column`,`medium_blob_column`,`long_blob_column`,`medium_text_column`,`long_text_column`,`enum_column`,`set_column`,`geometry_column`,`point_column`,`line_string_column`,`polygon_column`,`multipoint_column`,`multi_line_string_column`,`multi_polygon_column`,`geometry_collection_column`,`json_column` from egg_foo;');
16+
});
17+
});
Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
import { SqlMap } from '@eggjs/dal-decorator';
1+
import { SqlMap, SqlType } from '@eggjs/dal-decorator';
22

33
export default {
4-
4+
findAll: {
5+
type: SqlType.SELECT,
6+
sql: 'SELECT {{ allColumns}} from egg_foo;'
7+
},
58
} as Record<string, SqlMap>;

0 commit comments

Comments
 (0)