formData.js 8.4 KB

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