| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 | const formLayout = {  fieldId: '101', //对应一级表单层级  fieldName: '基本信息',  formInfo: [    //每个层级下面 具体表单元素    {      label: '服务类型',//标题      type: 'picker', //表单类型 text,upload,picker,time      id: 'servicetype',   //表单id      placeholder: '选择服务类型',//设置文本框默认提示      inputValue:'售前',      data: [        { value: '售前', label: '售前' ,hide:'sa_orderid'},        { value: '售中', label: '售中' },        { value: '售后', label: '售后' },        { value: '历史售后', label: '历史售后',hide:'sa_orderid' },      ], //填充表单的数据 例如下拉框      role: {        type: 'reg',        value: '',//正则表达式      },      force: true,//是否必输入    },{      label: '单据日期',//标题      type: 'datepicker', //表单类型 text,upload,picker,time      id: 'billdate',   //表单id      inputValue:(new Date()).toISOString().split('T')[0],      placeholder: '选择日期',//设置文本框默认提示      role: {        type: 'reg',        value: '',//正则表达式      },      force: false,//是否必输入    },    {      label: '服务开始时间',//标题      type: 'datepicker', //表单类型 text,upload,picker,time      id: 'begdate',   //表单id      inputValue:(new Date()).toISOString().split('T')[0],      placeholder: '选择日期',//设置文本框默认提示      role: {        type: 'reg',        value: '',//正则表达式      },      force: false,//是否必输入    },    {      label: '服务结束时间',//标题      type: 'datepicker', //表单类型 text,upload,picker,time      id: 'enddate',   //表单id      inputValue:(new Date()).toISOString().split('T')[0],      placeholder: '选择日期',//设置文本框默认提示      role: {        type: 'reg',        value: '',//正则表达式      },      force: false,//是否必输入    },    {      label: '省市县',//标题      type: 'cascader', //表单类型 text,upload,picker,datepicker      id: 'provinceArr',   //表单id      placeholder: '选择省市县',//设置文本框默认提示      inputValue:'',      data: [], //填充表单的数据 例如下拉框      role: {        type: 'reg',        formatter:(v)=>{          console.log(v)          if (v == '') return '省市县不能为空'          return ''        }      },      force: true,//是否必输入    },    {      label: '详细地址',//标题      type: 'text', //表单类型 text,upload,picker,datepicker      id: 'address',   //表单id      placeholder: '输入详细地址',//设置文本框默认提示      inputValue:'',      data: [], //填充表单的数据 例如下拉框      role: {        type: 'reg',      },      force: true,//是否必输入    },    {      label: '关联订单',//标题      type: 'link', //表单类型 text,upload,picker,datepicker      url:'/Eservice/agent/orderList/index',      id: 'sa_orderid',   //表单id      placeholder: '输入详细地址',//设置文本框默认提示      data: [], //填充表单的数据 例如下拉框      inputValue:'',      hide:[{id:'servicetype',value:['售前','历史售后']}],      role: {        type: 'reg',        formatter:(v)=>{          if (v == '') {            return '订单不能为空'          }          return ''        }      },      force: true,//是否必输入    },    {      label: '联系人',//标题      type: 'text', //表单类型 text,upload,picker,time      id: 'scenecontact',   //表单id      placeholder: '输入现场联系人',//设置文本框默认提示      data: [], //填充表单的数据 例如下拉框      inputValue:'',      role: {        type: 'reg',      },      force: true,//是否必输入    },    {      label: '手机号',//标题      type: 'text', //表单类型 text,upload,picker,time      id: 'scenecontactphonenumber',   //表单id      placeholder: '输入现场联系人手机号',//设置文本框默认提示      data: [], //填充表单的数据 例如下拉框      inputValue:'',      role: {        type: 'reg',        formatter:(v)=>{          let reg = /^1[3-9]\d{9}$/          if (!reg.test(v)) return '手机号输入有误'          return ''        }      },      force: true,//是否必输入    },    {      label: '身份备注',//标题      type: 'text', //表单类型 text,upload,picker,time      id: 'scenecontactrole',   //表单id      placeholder: '输入现场联系人身份备注',//设置文本框默认提示      data: [], //填充表单的数据 例如下拉框      inputValue:'',      role: {        type: 'reg',      },      force: true,//是否必输入    },    {      label: '客诉大类',//标题      type: 'picker', //表单类型 text,upload,picker,time      id: 'class2',   //表单id      placeholder: '选择客诉大类',//设置文本框默认提示      inputValue:'漏水',      data: [        { value: '漏水', label: '漏水' },        { value: '未能保压', label: '未能保压' },        { value: '拖拔', label: '拖拔' },        { value: '卡压脱皮', label: '卡压脱皮' },        { value: '外观异常', label: '外观异常' },        { value: '数量缺失', label: '数量缺失' },        { value: '质量异常', label: '质量异常' },        { value: '工具及卡钳', label: '工具及卡钳' },        { value: '打压指导', label: '打压指导' },        { value: '试点指导', label: '试点指导' },        { value: '其他', label: '其他' },      ], //填充表单的数据 例如下拉框      role: {        type: 'reg',        value: '',//正则表达式      },      force: false,//是否必输入    },    {      label: '应用系统',//标题      type: 'picker', //表单类型 text,upload,picker,time      id: 'class1',   //表单id      placeholder: '选择客应用系统',//设置文本框默认提示      inputValue:'燃气系统',      data: [        { value: '燃气系统', label: '燃气系统' },        { value: '消防系统', label: '消防系统' },        { value: '给水系统', label: '给水系统' },        { value: '暖通系统', label: '暖通系统' },      ], //填充表单的数据 例如下拉框      role: {        type: 'reg',        value: '',//正则表达式      },      force: false,//是否必输入    },    {      label: '问题描述',//标题      type: 'text', //表单类型 text,upload,picker,time      id: 'reason',   //表单id      placeholder: '输入问题描述',//设置文本框默认提示      data: [], //填充表单的数据 例如下拉框      role: {        type: 'reg',      },      force: false,//是否必输入    },    {      label: '附件上传',//标题      type: 'upload', //表单类型 text,upload,picker,time      id: 'attachmentids',   //表单id      placeholder: '请上传附件',//设置文本框默认提示      data: {        ownertable:'sa_serviceorder'      }, //填充表单的数据 例如下拉框      role: {        type: 'reg',      },      force: false,//是否必输入    },  ]}module.exports = {  formLayout}
 |