formData.js 8.0 KB

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