formData.js 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. const formLayout = {
  2. fieldId: '101', //对应一级表单层级
  3. fieldName: '基本信息',
  4. formInfo: [ //每个层级下面 具体表单元素
  5. {
  6. label: '服务类型',//标题
  7. type: 'picker', //表单类型 text,upload,picker,time
  8. id: 'servicetype', //表单id
  9. placeholder: '选择服务类型',//设置文本框默认提示
  10. inputValue:'',
  11. data: [
  12. { value: '售前', label: '售前' ,hide:'sa_orderid'},
  13. { value: '售中', label: '售中' },
  14. { value: '售后', label: '售后' },
  15. { value: '历史售后', label: '历史售后',hide:'sa_orderid' },
  16. ], //填充表单的数据 例如下拉框
  17. role: {
  18. type: 'reg',
  19. value: '',//正则表达式
  20. },
  21. force: true,//是否必输入
  22. },
  23. {
  24. label: '服务开始时间',//标题
  25. type: 'datepicker', //表单类型 text,upload,picker,time
  26. id: 'begdate', //表单id
  27. inputValue:(new Date()).toISOString().split('T')[0],
  28. placeholder: '选择日期',//设置文本框默认提示
  29. role: {
  30. type: 'reg',
  31. value: '',//正则表达式
  32. },
  33. force: false,//是否必输入
  34. },
  35. {
  36. label: '服务结束时间',//标题
  37. type: 'datepicker', //表单类型 text,upload,picker,time
  38. id: 'enddate', //表单id
  39. inputValue:(new Date()).toISOString().split('T')[0],
  40. placeholder: '选择日期',//设置文本框默认提示
  41. role: {
  42. type: 'reg',
  43. value: '',//正则表达式
  44. },
  45. force: false,//是否必输入
  46. },
  47. {
  48. label: '省市县',//标题
  49. type: 'cascader', //表单类型 text,upload,picker,datepicker
  50. id: 'provinceArr', //表单id
  51. placeholder: '选择省市县',//设置文本框默认提示
  52. inputValue:'',
  53. data: [], //填充表单的数据 例如下拉框
  54. role: {
  55. type: 'reg',
  56. formatter:(v)=>{
  57. console.log(v)
  58. if (v == '') return '省市县不能为空'
  59. return ''
  60. }
  61. },
  62. force: true,//是否必输入
  63. },
  64. {
  65. label: '详细地址',//标题
  66. type: 'text', //表单类型 text,upload,picker,datepicker
  67. id: 'address', //表单id
  68. placeholder: '输入详细地址',//设置文本框默认提示
  69. inputValue:'',
  70. data: [], //填充表单的数据 例如下拉框
  71. role: {
  72. type: 'reg',
  73. },
  74. force: true,//是否必输入
  75. },
  76. {
  77. label: '关联订单',//标题
  78. type: 'link', //表单类型 text,upload,picker,datepicker
  79. url:'/Eservice/agent/orderList/index',
  80. id: 'sa_orderid', //表单id
  81. placeholder: '输入详细地址',//设置文本框默认提示
  82. data: [], //填充表单的数据 例如下拉框
  83. inputValue:'',
  84. hide:[{id:'servicetype',value:['售前','历史售后']}],
  85. role: {
  86. type: 'reg',
  87. formatter:(v)=>{
  88. if (v == '') {
  89. return '订单不能为空'
  90. }
  91. return ''
  92. }
  93. },
  94. force: false,//是否必输入
  95. },
  96. {
  97. label: '联系人',//标题
  98. type: 'text', //表单类型 text,upload,picker,time
  99. id: 'scenecontact', //表单id
  100. placeholder: '输入现场联系人',//设置文本框默认提示
  101. data: [], //填充表单的数据 例如下拉框
  102. inputValue:'',
  103. role: {
  104. type: 'reg',
  105. },
  106. force: true,//是否必输入
  107. },
  108. {
  109. label: '手机号',//标题
  110. type: 'text', //表单类型 text,upload,picker,time
  111. id: 'scenecontactphonenumber', //表单id
  112. placeholder: '输入现场联系人手机号',//设置文本框默认提示
  113. data: [], //填充表单的数据 例如下拉框
  114. inputValue:'',
  115. role: {
  116. type: 'reg',
  117. formatter:(v)=>{
  118. let reg = /^1[3-9]\d{9}$/
  119. if (!reg.test(v)) return '手机号输入有误'
  120. return ''
  121. }
  122. },
  123. force: true,//是否必输入
  124. },
  125. {
  126. label: '身份备注',//标题
  127. type: 'text', //表单类型 text,upload,picker,time
  128. id: 'scenecontactrole', //表单id
  129. placeholder: '输入现场联系人身份备注',//设置文本框默认提示
  130. data: [], //填充表单的数据 例如下拉框
  131. inputValue:'',
  132. role: {
  133. type: 'reg',
  134. },
  135. force: true,//是否必输入
  136. },
  137. {
  138. label: '客诉大类',//标题
  139. type: 'picker', //表单类型 text,upload,picker,time
  140. id: 'class2', //表单id
  141. placeholder: '选择客诉大类',//设置文本框默认提示
  142. inputValue:'漏水',
  143. data: [
  144. { value: '漏水', label: '漏水' },
  145. { value: '未能保压', label: '未能保压' },
  146. { value: '拖拔', label: '拖拔' },
  147. { value: '卡压脱皮', label: '卡压脱皮' },
  148. { value: '外观异常', label: '外观异常' },
  149. { value: '数量缺失', label: '数量缺失' },
  150. { value: '质量异常', label: '质量异常' },
  151. { value: '工具及卡钳', label: '工具及卡钳' },
  152. { value: '打压指导', label: '打压指导' },
  153. { value: '试点指导', label: '试点指导' },
  154. { value: '其他', label: '其他' },
  155. ], //填充表单的数据 例如下拉框
  156. role: {
  157. type: 'reg',
  158. value: '',//正则表达式
  159. },
  160. force: false,//是否必输入
  161. },
  162. {
  163. label: '应用系统',//标题
  164. type: 'picker', //表单类型 text,upload,picker,time
  165. id: 'class1', //表单id
  166. placeholder: '选择客应用系统',//设置文本框默认提示
  167. inputValue:'燃气系统',
  168. data: [
  169. { value: '燃气系统', label: '燃气系统' },
  170. { value: '消防系统', label: '消防系统' },
  171. { value: '给水系统', label: '给水系统' },
  172. { value: '暖通系统', label: '暖通系统' },
  173. ], //填充表单的数据 例如下拉框
  174. role: {
  175. type: 'reg',
  176. value: '',//正则表达式
  177. },
  178. force: false,//是否必输入
  179. },
  180. {
  181. label: '问题描述',//标题
  182. type: 'text', //表单类型 text,upload,picker,time
  183. id: 'reason', //表单id
  184. placeholder: '输入问题描述',//设置文本框默认提示
  185. data: [], //填充表单的数据 例如下拉框
  186. role: {
  187. type: 'reg',
  188. },
  189. force: false,//是否必输入
  190. },
  191. {
  192. label: '附件上传',//标题
  193. type: 'upload', //表单类型 text,upload,picker,time
  194. id: 'attachmentids', //表单id
  195. placeholder: '请上传附件',//设置文本框默认提示
  196. data: {
  197. ownertable:'sa_serviceorder'
  198. }, //填充表单的数据 例如下拉框
  199. role: {
  200. type: 'reg',
  201. },
  202. force: false,//是否必输入
  203. },
  204. ]
  205. }
  206. module.exports = {
  207. formLayout
  208. }