<#----> <#-- 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> </#if> </#function> <#----> <#-- 驼峰转下划线 --> <#function camelToDashed(str, case='normal')> <#return camelToChar(str, "_", case)> </#function> <#----> <#-- 驼峰转横线 --> <#function camelToHorizontal(str, case='normal')> <#return camelToChar(str, "-", case)> </#function> <#----> <#-- 获取 v-model 属性 --> <#function getVModel po,suffix=""> <#return "v-model=\"queryParam.${po.fieldName}${suffix}\""> </#function> <#-- 获取 placeholder 属性 --> <#function getPlaceholder po,prefix,fillComment=true> <#if fillComment> <#return "placeholder=\"${prefix}${po.filedComment}\""> <#else> <#return "placeholder=\"${prefix}\""> </#if> </#function> <#-- ** 判断某字段是否配置了校验 * --> <#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' > <#return true> </#if> </#if> <#elseif po.defaultVal??> <#return true> </#if> <#return false> </#function> <#-- ** 如果配置了校验就显示 validatorRules * --> <#function autoWriteRules po> <#if poHasCheck(po)> <#return ", validatorRules.${po.fieldName}"> <#else> <#return ""> </#if> </#function> <#-- ** 高级查询生成 * --> <#function superQueryFieldList po> <#assign superQuery_dictTable=""> <#assign superQuery_dictText=""> <#if po.dictTable?default("")?trim?length gt 1> <#assign superQuery_dictTable="${po.dictTable}"> </#if> <#if po.dictText?default("")?trim?length gt 1> <#assign superQuery_dictText="${po.dictText}"> </#if> <#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}'}"> </#if> </#if> </#function>