<#----> <#-- freemarker 的一些工具方法 --> <#----> <#-- 驼峰转其他字符 --> <#-- @param str 待转换的文本 --> <#-- @param character 要转换成的字符 --> <#-- @param case 转换大小写(normal 不转换,lower 小写,upper 大写) --> <#function camelToChar(str, character, case='normal')> <#assign text=str?replace("([a-z])([A-Z]+)","$1${character}$2","r")/> <#if case=="upper"> <#return text?upper_case> <#elseif case=="lower"> <#return text?lower_case> <#else> <#return text> <#--下划线转驼峰--> <#function dashedToCamel(str)> <#assign text=""/> <#assign strlist = str?split("_")/> <#list strlist as v> <#assign text=text+v?cap_first/> <#return text?uncap_first> <#-- 驼峰转下划线 --> <#function camelToDashed(str, case='normal')> <#return camelToChar(str, "_", case)> <#----> <#-- 驼峰转横线 --> <#function camelToHorizontal(str, case='normal')> <#return camelToChar(str, "-", case)> <#----> <#-- 获取 v-model 属性 --> <#function getVModel po,suffix=""> <#return "v-model=\"queryParam.${po.fieldName}${suffix}\""> <#-- 获取 placeholder 属性 --> <#function getPlaceholder po,prefix,fillComment=true> <#if fillComment> <#return "placeholder=\"${prefix}${po.filedComment}\""> <#else> <#return "placeholder=\"${prefix}\""> <#-- ** 判断某字段是否配置了校验 * --> <#function poHasCheck po> <#if (po.fieldValidType!'')?trim?length gt 0 || po.nullable == 'N'> <#if po.fieldName != 'id'> <#if po.nullable == 'N' || po.fieldValidType == '*' || po.fieldValidType == 'only' || po.fieldValidType == 'n6-16' || po.fieldValidType == '*6-16' || po.fieldValidType == 's6-18' || po.fieldValidType == 'url' || po.fieldValidType == 'e' || po.fieldValidType == 'm' || po.fieldValidType == 'p' || po.fieldValidType == 's' || po.fieldValidType == 'n' || po.fieldValidType == 'z' || po.fieldValidType == 'money' || po.fieldValidType != '' > <#return true> <#return false> <#-- ** 如果配置了校验就显示 validatorRules * --> <#function autoWriteRules po> <#if poHasCheck(po)> <#return ", validatorRules.${po.fieldName}"> <#else> <#return ""> <#-- ** 如果Blob就显示 String * --> <#function autoStringSuffix po> <#if po.fieldDbType=='Blob'> <#return "'${po.fieldName}String'"> <#else> <#return "'${po.fieldName}'"> <#-- ** 如果Blob就显示model方式 String * --> <#function autoStringSuffixForModel po> <#if po.fieldDbType=='Blob'> <#return "${po.fieldName}String"> <#else> <#return "${po.fieldName}"> <#-- ** 高级查询生成 * --> <#function superQueryFieldList po> <#assign superQuery_dictTable=""> <#assign superQuery_dictText=""> <#if po.dictTable?default("")?trim?length gt 1> <#assign superQuery_dictTable="${po.dictTable}"> <#if po.dictText?default("")?trim?length gt 1> <#assign superQuery_dictText="${po.dictText}"> <#if po.classType=="popup"> <#return "{type:'${po.classType}',value:'${po.fieldName}',text:'${po.filedComment}', popup:{code:'${po.dictTable}',field:'${po.dictField?split(',')[0]}',orgFields:'${po.dictField?split(',')[0]}',destFields:'${po.dictText?split(',')[0]}'}}"> <#elseif po.classType=="sel_user" || po.classType=="sel_depart" || po.classType=="datetime" || po.classType=="date" || po.classType=="pca" || po.classType=="switch"> <#return "{type:'${po.classType}',value:'${po.fieldName}',text:'${po.filedComment}'}"> <#else> <#if po.classType=="sel_search" || po.classType=="list_multi"> <#return "{type:'${po.classType}',value:'${po.fieldName}',text:'${po.filedComment}',dictTable:\"${superQuery_dictTable}\", dictText:'${superQuery_dictText}', dictCode:'${po.dictField}'}"> <#elseif po.dictTable?? && po.dictTable!="" && po.classType!="sel_tree" && po.classType!="cat_tree" && po.classType!="link_down"> <#return "{type:'${po.fieldDbType}',value:'${po.fieldName}',text:'${po.filedComment}',dictCode:\"${po.dictTable},${po.dictText},${po.dictField}\"}"> <#elseif po.dictField?? && po.classType!="sel_tree" && po.classType!="cat_tree" && po.classType!="link_down"> <#return "{type:'${po.fieldDbType}',value:'${po.fieldName}',text:'${po.filedComment}',dictCode:'${po.dictField}'}"> <#elseif po.fieldDbType=="Text"> <#return "{type:'string',value:'${po.fieldName}',text:'${po.filedComment}'}"> <#elseif po.fieldDbType=="Blob"> <#return "{type:'byte',value:'${po.fieldName}',text:'${po.filedComment}'}"> <#elseif po.fieldDbType=="BigDecimal" || po.fieldDbType=="double"> <#return "{type:'number',value:'${po.fieldName}',text:'${po.filedComment}'}"> <#else> <#return "{type:'${po.fieldDbType}',value:'${po.fieldName}',text:'${po.filedComment}'}">