|
|
@ -19,9 +19,9 @@ func NoParameConvertFunc(vTable string, convertSql string) *VirtualTable { |
|
|
|
} |
|
|
|
|
|
|
|
type VirtualTable struct { |
|
|
|
MappingTableName string //example: user(db:db1,id:1)
|
|
|
|
//限定条件
|
|
|
|
SqlConvert VirtualQlConvert |
|
|
|
MappingTableName string //example: user(db:db1,id:1)
|
|
|
|
ArgNames []string //example: [db,id]
|
|
|
|
SqlConvert VirtualQlConvert |
|
|
|
} |
|
|
|
|
|
|
|
func parseTableName(tableNameExpression string) (tableName string, args map[string]string, err error) { |
|
|
@ -120,8 +120,10 @@ func (vql *VirtualQL) convert(query *Query, val map[string]interface{}) error { |
|
|
|
val = make(map[string]interface{}) |
|
|
|
} |
|
|
|
|
|
|
|
for k, v := range args { |
|
|
|
val[k] = v |
|
|
|
for k := range vtable.ArgNames { |
|
|
|
if args[vtable.ArgNames[k]] != "" { |
|
|
|
val[vtable.ArgNames[k]] = args[vtable.ArgNames[k]] |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
convertSql, err := vtable.SqlConvert(val) |
|
|
|