diff --git a/template/soy.index.vue.vm b/template/soy.index.vue.vm new file mode 100644 index 00000000..c4dfccc1 --- /dev/null +++ b/template/soy.index.vue.vm @@ -0,0 +1,150 @@ + + + + + diff --git a/template/typings/soy.api.d.ts.vm b/template/typings/soy.api.d.ts.vm new file mode 100644 index 00000000..2c17d7be --- /dev/null +++ b/template/typings/soy.api.d.ts.vm @@ -0,0 +1,39 @@ +#set($ModuleName=$moduleName.substring(0, 1).toUpperCase() + $moduleName.substring(1)) +/** + * namespace ${ModuleName} + * + * backend api module: "${ModuleName}" + */ +namespace ${ModuleName} { + /** ${businessName} */ + type ${ClassName} = Common.CommonRecord<{ + #foreach($column in $columns) + /** $column.columnComment */ + $column.javaField:#if($column.javaField.indexOf("id") != -1 || $column.javaField.indexOf("Id") != -1) CommonType.IdType; #elseif($column.javaType == 'Long' || $column.javaType == 'Integer' || $column.javaType == 'Double' || $column.javaType == 'Float' || $column.javaType == 'BigDecimal') number; #elseif($column.javaType == 'Boolean') boolean; #else string; #end + #end + }>; + + /** ${businessName} search params */ + type ${BusinessName}SearchParams = CommonType.RecordNullable< + Pick< + Api.${ModuleName}.${BusinessName}, + #foreach($column in $columns) + #if($column.query) + #set($dictType=$column.dictType) + #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) + #set($parentheseIndex=$column.columnComment.indexOf("(")) + #if($parentheseIndex != -1) + #set($comment=$column.columnComment.substring(0, $parentheseIndex)) + #else + #set($comment=$column.columnComment) + #end + #if($foreach.hasNext) | #end ' ${column.javaField}' + #end + #end + > & + CommonSearchParams + >; + + /** ${businessName} list */ + type ${BusinessName}List = Common.PaginatingQueryRecord<${BusinessName}>; +}