formData.js 7.1 KB

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