123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- <#--字段宏-->
- <#setting number_format="0">
- <#function getOptionArrs field>
- <#assign rtn>[<#list field.aryOptions?keys as optkey> {'val':'${optkey}','text':'${field.aryOptions[optkey]}'}<#if optkey_has_next>,</#if></#list>]</#assign><#return rtn>
- </#function>
- <#--获取字段名字。 1为主表。2为子表。其他则为弹出框模式子表的字段model type:子表名-->
- <#function getFieldName field type>
- <#assign rtn="" />
- <#if type == 1>
- <#assign rtn>data.main.${field.fieldName}</#assign>
- <#elseif type== 2>
- <#assign rtn>item.${field.fieldName}</#assign>
- <#else>
- <#assign rtn>subTempData.${type}.${field.fieldName}</#assign>
- </#if>
- <#return rtn>
- </#function>
- <#-- 根据字段获取验证规则 -->
- <#function getValidRule field>
- <#assign rtn="" />
- <#if field.isRequired == 1>
- <#assign rtn >${rtn}required:true,</#assign>
- </#if>
- <#if field.fieldType == "number">
- <#assign rtn >${rtn}number:true,maxIntLen:${field.intLen},maxDecimalLen:${field.decimalLen},</#assign>
- <#elseif (field.charLen??) && (field.charLen?length>0)&&
- ((field.controlType??&& (field.controlType==1||field.controlType==2))
- )>
- <#assign rtn >${rtn}maxlength:${field.charLen},</#assign>
- </#if>
-
- <#if (field.validRule??) && (field.validRule?length>0) >
- <#assign rtn >${rtn}${field.validRule}:true,</#assign>
- </#if>
-
- <#if rtn!="">
- <#assign rtn>{${rtn?substring(0,rtn?length-1)}}</#assign>
- </#if>
- <#return rtn>
- </#function>
- <#-- 转小写 -->
- <#function toLower str>
- <#assign rtn>${str?lower_case}</#assign>
- <#return rtn>
- </#function>
- <#macro input field type>
- <#if field.fieldType == "varchar"><#---字符串类型-->
- <#switch field.controlType>
- <#case 1><#--单行文本框-->
- <input ht-input="${getFieldName(field,type)}" placeholder="${field.fieldDesc}" class="am-form-field" validate="${getValidRule(field)}" />
- <#break>
- <#case 2><#--多行文本框-->
- <textarea ht-textarea="${getFieldName(field,type)}" class="am-form-field" placeholder="${field.fieldDesc}" validate="${getValidRule(field)}"></textarea>
- <#break>
- <#case 3><#--数据字典-->
- <input ht-dic="${getFieldName(field,type)}" class="am-form-field" dictype="${field.dictType}" validate="${getValidRule(field)}"/>
- <#break>
- <#case 4><#--人员选择器(单选)-->
- <input validate="${getValidRule(field)}" type="text" class="am-form-field" ht-selector="${getFieldName(field,type)}" selectorConfig='{type:"UserDialog",display:"fullname", single:true,bind:{userId:"${getFieldName(field,type)}id",fullname:"${getFieldName(field,type)}"},scope:${field.getPropertyMap().scope}}' />
- <#break>
- <#case 5><#--角色选择器(多选)-->
- <#break>
- <#case 6><#--组织选择器(多选)-->
- <input validate="${getValidRule(field)}" class="am-form-field" ht-selector="${getFieldName(field,type)}" selectorConfig='{type:"OrgDialog",display:"orgName", single:false,bind:{orgId:"${getFieldName(field,type)}id",orgName:"${getFieldName(field,type)}"},scope:${field.getPropertyMap().scope}}' />
- <#break>
- <#case 7><#--岗位选择器(多选)-->
- <#break>
- <#case 8><#--人员选择器(多选)-->
- <input validate="${getValidRule(field)}" class="am-form-field" ht-selector="${getFieldName(field,type)}" selectorConfig='{type:"UserDialog",display:"fullname", single:false,bind:{userId:"${getFieldName(field,type)}id",fullname:"${getFieldName(field,type)}"},scope:${field.getPropertyMap().scope}}' />
- <#break>
- <#case 9><#--文件上传-->
- <input validate="${getValidRule(field)}" ht-upload="${getFieldName(field,type)}"/>
- <#break>
- <#case 10><#--富文本框ueditor-->
- <div ht-editor="${getFieldName(field,type)}" validate="${getValidRule(field)}" ng-model="${getFieldName(field,type)}"></div>
- <#break>
- <#case 11><#--下拉选项-->
- <select validate="${getValidRule(field)}" class="am-form-field" ht-select="${getFieldName(field,type)}" options="${getOptionArrs(field)}" data-am-selected="{btnStyle:'success'}">
- <#list field.aryOptions?keys as optkey>
- <option value="${optkey}">${field.aryOptions[optkey]}</option>
- </#list>
- </select>
- <#break>
- <#case 12><#--Office控件-->
- <#break>
- <#case 13><#--复选框-->
- <div class="am-checkbox" validate="${getValidRule(field)}" ht-checkboxs="${getFieldName(field,type)}" values="${getOptionArrs(field)}">
- <!-- 此checkbox只做展示使用-->
- <#list field.aryOptions?keys as optkey>
- <div class="am-checkbox-inline"> <input type="checkbox" value="${optkey}">${field.aryOptions[optkey]}</div>
- </#list>
- </div>
- <#break>
- <#case 14><#--单选按钮-->
- <div class="am-checkbox" validate="${getValidRule(field)}" type="checkbox" ht-radios="${getFieldName(field,type)}" values="${getOptionArrs(field)}">
- <!-- 此radio只做展示使用-->
- <#list field.aryOptions?keys as optkey>
- <div class="am-radio-inline"> <input type="radio" value="${optkey}">${field.aryOptions[optkey]}</div>
- </#list>
- </div>
- <#break>
- <#case 15><#--日期控件-->
- <input validate="${getValidRule(field)}" ht-date="${getFieldName(field,type)}" class="am-form-field" options="{format:'<#if (field.getPropertyMap().format==null)>yyyy-MM-dd<#else>${field.getPropertyMap().format}</#if>'}"/>
- <#break>
- <#case 16><#--隐藏域-->
- <#break>
- <#case 17><#--角色选择器(单选)-->
- <#break>
- <#case 18><#---组织选择器(单选)-->
- <input validate="${getValidRule(field)}" class="am-form-field" ht-selector="${getFieldName(field,type)}" selectorConfig='{type:"OrgDialog",display:"orgName", single:true,bind:{orgId:"${getFieldName(field,type)}id",orgName:"${getFieldName(field,type)}"},scope:${field.getPropertyMap().scope}}' />
- <#break>
- <#case 19><#--岗位选择器(单选)-->
- <#break>
- <#case 20><#--流程引用-->
-
- <#break>
- </#switch>
- <#elseif field.fieldType == "number"><#---数字类型-->
- <#if field.controlType == 16><#--隐藏域-->
- <#else><#--否则数字输入-->
- <input validate="${getValidRule(field)}" formator='${field.ctlProperty}' ht-input="${getFieldName(field,type)}" placeholder="${field.fieldDesc}" class="am-form-field" />
- </#if>
- <#elseif field.fieldType == "date"><#---日期类型-->
- <#if field.controlType == 16><#--隐藏域-->
- <#else>
- <input ht-date="${getFieldName(field,type)}" class="am-form-field"/>
- </#if>
- <#else>
- <#if field.controlType == 16><#---隐藏域-->
- <#elseif field.controlType == 10><#--富文本框ckeditor-->
- <div ht-editor="${getFieldName(field,type)}" validate="${getValidRule(field)}" ng-model="${getFieldName(field,type)}"></div>
- <#else><#--否则多文本框-->
- <textarea validate="${getValidRule(field)}" ht-textarea="${getFieldName(field,type)}" class="am-form-field" placeholder="${field.fieldDesc}"></textarea>
- </#if>
- </#if>
- </#macro>
|