askbot-dragon 1.6.78-beta → 1.6.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/package.json +9 -6
  2. package/public/index.html +8 -5
  3. package/public/pdfjs/cmaps/78-EUC-H.bcmap +0 -0
  4. package/public/pdfjs/cmaps/78-EUC-V.bcmap +0 -0
  5. package/public/pdfjs/cmaps/78-H.bcmap +0 -0
  6. package/public/pdfjs/cmaps/78-RKSJ-H.bcmap +0 -0
  7. package/public/pdfjs/cmaps/78-RKSJ-V.bcmap +0 -0
  8. package/public/pdfjs/cmaps/78-V.bcmap +0 -0
  9. package/public/pdfjs/cmaps/78ms-RKSJ-H.bcmap +0 -0
  10. package/public/pdfjs/cmaps/78ms-RKSJ-V.bcmap +0 -0
  11. package/public/pdfjs/cmaps/83pv-RKSJ-H.bcmap +0 -0
  12. package/public/pdfjs/cmaps/90ms-RKSJ-H.bcmap +0 -0
  13. package/public/pdfjs/cmaps/90ms-RKSJ-V.bcmap +0 -0
  14. package/public/pdfjs/cmaps/90msp-RKSJ-H.bcmap +0 -0
  15. package/public/pdfjs/cmaps/90msp-RKSJ-V.bcmap +0 -0
  16. package/public/pdfjs/cmaps/90pv-RKSJ-H.bcmap +0 -0
  17. package/public/pdfjs/cmaps/90pv-RKSJ-V.bcmap +0 -0
  18. package/public/pdfjs/cmaps/Add-H.bcmap +0 -0
  19. package/public/pdfjs/cmaps/Add-RKSJ-H.bcmap +0 -0
  20. package/public/pdfjs/cmaps/Add-RKSJ-V.bcmap +0 -0
  21. package/public/pdfjs/cmaps/Add-V.bcmap +0 -0
  22. package/public/pdfjs/cmaps/Adobe-CNS1-0.bcmap +0 -0
  23. package/public/pdfjs/cmaps/Adobe-CNS1-1.bcmap +0 -0
  24. package/public/pdfjs/cmaps/Adobe-CNS1-2.bcmap +0 -0
  25. package/public/pdfjs/cmaps/Adobe-CNS1-3.bcmap +0 -0
  26. package/public/pdfjs/cmaps/Adobe-CNS1-4.bcmap +0 -0
  27. package/public/pdfjs/cmaps/Adobe-CNS1-5.bcmap +0 -0
  28. package/public/pdfjs/cmaps/Adobe-CNS1-6.bcmap +0 -0
  29. package/public/pdfjs/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
  30. package/public/pdfjs/cmaps/Adobe-GB1-0.bcmap +0 -0
  31. package/public/pdfjs/cmaps/Adobe-GB1-1.bcmap +0 -0
  32. package/public/pdfjs/cmaps/Adobe-GB1-2.bcmap +0 -0
  33. package/public/pdfjs/cmaps/Adobe-GB1-3.bcmap +0 -0
  34. package/public/pdfjs/cmaps/Adobe-GB1-4.bcmap +0 -0
  35. package/public/pdfjs/cmaps/Adobe-GB1-5.bcmap +0 -0
  36. package/public/pdfjs/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
  37. package/public/pdfjs/cmaps/Adobe-Japan1-0.bcmap +0 -0
  38. package/public/pdfjs/cmaps/Adobe-Japan1-1.bcmap +0 -0
  39. package/public/pdfjs/cmaps/Adobe-Japan1-2.bcmap +0 -0
  40. package/public/pdfjs/cmaps/Adobe-Japan1-3.bcmap +0 -0
  41. package/public/pdfjs/cmaps/Adobe-Japan1-4.bcmap +0 -0
  42. package/public/pdfjs/cmaps/Adobe-Japan1-5.bcmap +0 -0
  43. package/public/pdfjs/cmaps/Adobe-Japan1-6.bcmap +0 -0
  44. package/public/pdfjs/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
  45. package/public/pdfjs/cmaps/Adobe-Korea1-0.bcmap +0 -0
  46. package/public/pdfjs/cmaps/Adobe-Korea1-1.bcmap +0 -0
  47. package/public/pdfjs/cmaps/Adobe-Korea1-2.bcmap +0 -0
  48. package/public/pdfjs/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
  49. package/public/pdfjs/cmaps/B5-H.bcmap +0 -0
  50. package/public/pdfjs/cmaps/B5-V.bcmap +0 -0
  51. package/public/pdfjs/cmaps/B5pc-H.bcmap +0 -0
  52. package/public/pdfjs/cmaps/B5pc-V.bcmap +0 -0
  53. package/public/pdfjs/cmaps/CNS-EUC-H.bcmap +0 -0
  54. package/public/pdfjs/cmaps/CNS-EUC-V.bcmap +0 -0
  55. package/public/pdfjs/cmaps/CNS1-H.bcmap +0 -0
  56. package/public/pdfjs/cmaps/CNS1-V.bcmap +0 -0
  57. package/public/pdfjs/cmaps/CNS2-H.bcmap +0 -0
  58. package/public/pdfjs/cmaps/CNS2-V.bcmap +3 -0
  59. package/public/pdfjs/cmaps/ETHK-B5-H.bcmap +0 -0
  60. package/public/pdfjs/cmaps/ETHK-B5-V.bcmap +0 -0
  61. package/public/pdfjs/cmaps/ETen-B5-H.bcmap +0 -0
  62. package/public/pdfjs/cmaps/ETen-B5-V.bcmap +0 -0
  63. package/public/pdfjs/cmaps/ETenms-B5-H.bcmap +3 -0
  64. package/public/pdfjs/cmaps/ETenms-B5-V.bcmap +0 -0
  65. package/public/pdfjs/cmaps/EUC-H.bcmap +0 -0
  66. package/public/pdfjs/cmaps/EUC-V.bcmap +0 -0
  67. package/public/pdfjs/cmaps/Ext-H.bcmap +0 -0
  68. package/public/pdfjs/cmaps/Ext-RKSJ-H.bcmap +0 -0
  69. package/public/pdfjs/cmaps/Ext-RKSJ-V.bcmap +0 -0
  70. package/public/pdfjs/cmaps/Ext-V.bcmap +0 -0
  71. package/public/pdfjs/cmaps/GB-EUC-H.bcmap +0 -0
  72. package/public/pdfjs/cmaps/GB-EUC-V.bcmap +0 -0
  73. package/public/pdfjs/cmaps/GB-H.bcmap +4 -0
  74. package/public/pdfjs/cmaps/GB-V.bcmap +0 -0
  75. package/public/pdfjs/cmaps/GBK-EUC-H.bcmap +0 -0
  76. package/public/pdfjs/cmaps/GBK-EUC-V.bcmap +0 -0
  77. package/public/pdfjs/cmaps/GBK2K-H.bcmap +0 -0
  78. package/public/pdfjs/cmaps/GBK2K-V.bcmap +0 -0
  79. package/public/pdfjs/cmaps/GBKp-EUC-H.bcmap +0 -0
  80. package/public/pdfjs/cmaps/GBKp-EUC-V.bcmap +0 -0
  81. package/public/pdfjs/cmaps/GBT-EUC-H.bcmap +0 -0
  82. package/public/pdfjs/cmaps/GBT-EUC-V.bcmap +0 -0
  83. package/public/pdfjs/cmaps/GBT-H.bcmap +0 -0
  84. package/public/pdfjs/cmaps/GBT-V.bcmap +0 -0
  85. package/public/pdfjs/cmaps/GBTpc-EUC-H.bcmap +0 -0
  86. package/public/pdfjs/cmaps/GBTpc-EUC-V.bcmap +0 -0
  87. package/public/pdfjs/cmaps/GBpc-EUC-H.bcmap +0 -0
  88. package/public/pdfjs/cmaps/GBpc-EUC-V.bcmap +0 -0
  89. package/public/pdfjs/cmaps/H.bcmap +0 -0
  90. package/public/pdfjs/cmaps/HKdla-B5-H.bcmap +0 -0
  91. package/public/pdfjs/cmaps/HKdla-B5-V.bcmap +0 -0
  92. package/public/pdfjs/cmaps/HKdlb-B5-H.bcmap +0 -0
  93. package/public/pdfjs/cmaps/HKdlb-B5-V.bcmap +0 -0
  94. package/public/pdfjs/cmaps/HKgccs-B5-H.bcmap +0 -0
  95. package/public/pdfjs/cmaps/HKgccs-B5-V.bcmap +0 -0
  96. package/public/pdfjs/cmaps/HKm314-B5-H.bcmap +0 -0
  97. package/public/pdfjs/cmaps/HKm314-B5-V.bcmap +0 -0
  98. package/public/pdfjs/cmaps/HKm471-B5-H.bcmap +0 -0
  99. package/public/pdfjs/cmaps/HKm471-B5-V.bcmap +0 -0
  100. package/public/pdfjs/cmaps/HKscs-B5-H.bcmap +0 -0
  101. package/public/pdfjs/cmaps/HKscs-B5-V.bcmap +0 -0
  102. package/public/pdfjs/cmaps/Hankaku.bcmap +0 -0
  103. package/public/pdfjs/cmaps/Hiragana.bcmap +0 -0
  104. package/public/pdfjs/cmaps/KSC-EUC-H.bcmap +0 -0
  105. package/public/pdfjs/cmaps/KSC-EUC-V.bcmap +0 -0
  106. package/public/pdfjs/cmaps/KSC-H.bcmap +0 -0
  107. package/public/pdfjs/cmaps/KSC-Johab-H.bcmap +0 -0
  108. package/public/pdfjs/cmaps/KSC-Johab-V.bcmap +0 -0
  109. package/public/pdfjs/cmaps/KSC-V.bcmap +0 -0
  110. package/public/pdfjs/cmaps/KSCms-UHC-H.bcmap +0 -0
  111. package/public/pdfjs/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
  112. package/public/pdfjs/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
  113. package/public/pdfjs/cmaps/KSCms-UHC-V.bcmap +0 -0
  114. package/public/pdfjs/cmaps/KSCpc-EUC-H.bcmap +0 -0
  115. package/public/pdfjs/cmaps/KSCpc-EUC-V.bcmap +0 -0
  116. package/public/pdfjs/cmaps/Katakana.bcmap +0 -0
  117. package/public/pdfjs/cmaps/LICENSE +36 -0
  118. package/public/pdfjs/cmaps/NWP-H.bcmap +0 -0
  119. package/public/pdfjs/cmaps/NWP-V.bcmap +0 -0
  120. package/public/pdfjs/cmaps/RKSJ-H.bcmap +0 -0
  121. package/public/pdfjs/cmaps/RKSJ-V.bcmap +0 -0
  122. package/public/pdfjs/cmaps/Roman.bcmap +0 -0
  123. package/public/pdfjs/cmaps/UniCNS-UCS2-H.bcmap +0 -0
  124. package/public/pdfjs/cmaps/UniCNS-UCS2-V.bcmap +0 -0
  125. package/public/pdfjs/cmaps/UniCNS-UTF16-H.bcmap +0 -0
  126. package/public/pdfjs/cmaps/UniCNS-UTF16-V.bcmap +0 -0
  127. package/public/pdfjs/cmaps/UniCNS-UTF32-H.bcmap +0 -0
  128. package/public/pdfjs/cmaps/UniCNS-UTF32-V.bcmap +0 -0
  129. package/public/pdfjs/cmaps/UniCNS-UTF8-H.bcmap +0 -0
  130. package/public/pdfjs/cmaps/UniCNS-UTF8-V.bcmap +0 -0
  131. package/public/pdfjs/cmaps/UniGB-UCS2-H.bcmap +0 -0
  132. package/public/pdfjs/cmaps/UniGB-UCS2-V.bcmap +0 -0
  133. package/public/pdfjs/cmaps/UniGB-UTF16-H.bcmap +0 -0
  134. package/public/pdfjs/cmaps/UniGB-UTF16-V.bcmap +0 -0
  135. package/public/pdfjs/cmaps/UniGB-UTF32-H.bcmap +0 -0
  136. package/public/pdfjs/cmaps/UniGB-UTF32-V.bcmap +0 -0
  137. package/public/pdfjs/cmaps/UniGB-UTF8-H.bcmap +0 -0
  138. package/public/pdfjs/cmaps/UniGB-UTF8-V.bcmap +0 -0
  139. package/public/pdfjs/cmaps/UniJIS-UCS2-H.bcmap +0 -0
  140. package/public/pdfjs/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
  141. package/public/pdfjs/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
  142. package/public/pdfjs/cmaps/UniJIS-UCS2-V.bcmap +0 -0
  143. package/public/pdfjs/cmaps/UniJIS-UTF16-H.bcmap +0 -0
  144. package/public/pdfjs/cmaps/UniJIS-UTF16-V.bcmap +0 -0
  145. package/public/pdfjs/cmaps/UniJIS-UTF32-H.bcmap +0 -0
  146. package/public/pdfjs/cmaps/UniJIS-UTF32-V.bcmap +0 -0
  147. package/public/pdfjs/cmaps/UniJIS-UTF8-H.bcmap +0 -0
  148. package/public/pdfjs/cmaps/UniJIS-UTF8-V.bcmap +0 -0
  149. package/public/pdfjs/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
  150. package/public/pdfjs/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
  151. package/public/pdfjs/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
  152. package/public/pdfjs/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
  153. package/public/pdfjs/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
  154. package/public/pdfjs/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
  155. package/public/pdfjs/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
  156. package/public/pdfjs/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
  157. package/public/pdfjs/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
  158. package/public/pdfjs/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
  159. package/public/pdfjs/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
  160. package/public/pdfjs/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
  161. package/public/pdfjs/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
  162. package/public/pdfjs/cmaps/UniKS-UCS2-H.bcmap +0 -0
  163. package/public/pdfjs/cmaps/UniKS-UCS2-V.bcmap +0 -0
  164. package/public/pdfjs/cmaps/UniKS-UTF16-H.bcmap +0 -0
  165. package/public/pdfjs/cmaps/UniKS-UTF16-V.bcmap +0 -0
  166. package/public/pdfjs/cmaps/UniKS-UTF32-H.bcmap +0 -0
  167. package/public/pdfjs/cmaps/UniKS-UTF32-V.bcmap +0 -0
  168. package/public/pdfjs/cmaps/UniKS-UTF8-H.bcmap +0 -0
  169. package/public/pdfjs/cmaps/UniKS-UTF8-V.bcmap +0 -0
  170. package/public/pdfjs/cmaps/V.bcmap +0 -0
  171. package/public/pdfjs/cmaps/WP-Symbol.bcmap +0 -0
  172. package/public/pdfjs/standard_fonts/FoxitDingbats.pfb +0 -0
  173. package/public/pdfjs/standard_fonts/FoxitFixed.pfb +0 -0
  174. package/public/pdfjs/standard_fonts/FoxitFixedBold.pfb +0 -0
  175. package/public/pdfjs/standard_fonts/FoxitFixedBoldItalic.pfb +0 -0
  176. package/public/pdfjs/standard_fonts/FoxitFixedItalic.pfb +0 -0
  177. package/public/pdfjs/standard_fonts/FoxitSans.pfb +0 -0
  178. package/public/pdfjs/standard_fonts/FoxitSansBold.pfb +0 -0
  179. package/public/pdfjs/standard_fonts/FoxitSansBoldItalic.pfb +0 -0
  180. package/public/pdfjs/standard_fonts/FoxitSansItalic.pfb +0 -0
  181. package/public/pdfjs/standard_fonts/FoxitSerif.pfb +0 -0
  182. package/public/pdfjs/standard_fonts/FoxitSerifBold.pfb +0 -0
  183. package/public/pdfjs/standard_fonts/FoxitSerifBoldItalic.pfb +0 -0
  184. package/public/pdfjs/standard_fonts/FoxitSerifItalic.pfb +0 -0
  185. package/public/pdfjs/standard_fonts/FoxitSymbol.pfb +0 -0
  186. package/public/pdfjs/standard_fonts/LICENSE_FOXIT +27 -0
  187. package/public/pdfjs/standard_fonts/LICENSE_LIBERATION +102 -0
  188. package/public/pdfjs/standard_fonts/LiberationSans-Bold.ttf +0 -0
  189. package/public/pdfjs/standard_fonts/LiberationSans-BoldItalic.ttf +0 -0
  190. package/public/pdfjs/standard_fonts/LiberationSans-Italic.ttf +0 -0
  191. package/public/pdfjs/standard_fonts/LiberationSans-Regular.ttf +0 -0
  192. package/src/assets/image/default_avt_ui.png +0 -0
  193. package/src/assets/image/filtType/audio.png +0 -0
  194. package/src/assets/image/filtType/excel1.png +0 -0
  195. package/src/assets/image/filtType/general.png +0 -0
  196. package/src/assets/image/filtType/html.png +0 -0
  197. package/src/assets/image/filtType/image1.png +0 -0
  198. package/src/assets/image/filtType/link.png +0 -0
  199. package/src/assets/image/filtType/md2.png +0 -0
  200. package/src/assets/image/filtType/mode.png +0 -0
  201. package/src/assets/image/filtType/news.png +0 -0
  202. package/src/assets/image/filtType/pdf1.png +0 -0
  203. package/src/assets/image/filtType/ppt1.png +0 -0
  204. package/src/assets/image/filtType/selfadd1.png +0 -0
  205. package/src/assets/image/filtType/txt1.png +0 -0
  206. package/src/assets/image/filtType/video.png +0 -0
  207. package/src/assets/image/filtType/wechat.png +0 -0
  208. package/src/assets/image/filtType/word1.png +0 -0
  209. package/src/assets/image/loading.gif +0 -0
  210. package/src/assets/js/AliyunlssUtil.js +35 -10
  211. package/src/assets/js/common.js +44 -9
  212. package/src/assets/js/hammer.js +2 -13
  213. package/src/assets/less/converSationContainer/common.less +0 -7
  214. package/src/assets/less/converSationContainer/converSatonContainer.less +44 -51
  215. package/src/assets/less/variables.less +122 -0
  216. package/src/components/ActionAlertIframe.vue +5 -27
  217. package/src/components/AiGuide.vue +33 -26
  218. package/src/components/AnswerDocknowledge.vue +331 -183
  219. package/src/components/AnswerVoice.vue +8 -7
  220. package/src/components/ConversationContainer.vue +7046 -1100
  221. package/src/components/MyEditor.vue +17 -25
  222. package/src/components/QwFeedback.vue +304 -0
  223. package/src/components/actionSatisfaction.vue +9 -7
  224. package/src/components/actionSendToBot.vue +6 -4
  225. package/src/components/answerDissatisfaction.vue +5 -3
  226. package/src/components/answerRadio.vue +96 -21
  227. package/src/components/ask-components/DissatisfactionOptions.vue +4 -3
  228. package/src/components/ask-components/Msgloading.vue +3 -2
  229. package/src/components/askVideo.vue +78 -26
  230. package/src/components/assetDetails.vue +18 -17
  231. package/src/components/assetMessage.vue +29 -26
  232. package/src/components/associationIntention.vue +85 -26
  233. package/src/components/attachmentPreview.vue +7 -5
  234. package/src/components/botActionSatisfactor.vue +5 -3
  235. package/src/components/chatContent.vue +21 -20
  236. package/src/components/feedBack.vue +6 -4
  237. package/src/components/fielListView.vue +8 -7
  238. package/src/components/file/AliyunOssComponents.vue +1 -1
  239. package/src/components/formTemplate.vue +1593 -1648
  240. package/src/components/imgView.vue +32 -0
  241. package/src/components/intelligentSummary.vue +24 -19
  242. package/src/components/interruptComponents/imageSelectionAnswer.vue +203 -0
  243. package/src/components/interruptComponents/multipleChoiceAnswer.vue +134 -0
  244. package/src/components/interruptComponents/singleChoiceAnswer.vue +82 -0
  245. package/src/components/kkview.vue +20 -28
  246. package/src/components/markDownText.vue +961 -0
  247. package/src/components/message/TextMessage.vue +8 -6
  248. package/src/components/message/swiper/ticketSwiper.vue +1 -1
  249. package/src/components/myPopup.vue +18 -13
  250. package/src/components/outputComponents/outputCom.vue +149 -0
  251. package/src/components/pagination.vue +130 -0
  252. package/src/components/pdfPosition.vue +96 -267
  253. package/src/components/popup.vue +15 -12
  254. package/src/components/preview/docView.vue +263 -0
  255. package/src/components/preview/excelView.vue +260 -0
  256. package/src/components/preview/markDownView.vue +70 -0
  257. package/src/components/preview/newPositionPreview.vue +601 -0
  258. package/src/components/preview/pdfView.vue +976 -0
  259. package/src/components/previewDoc.vue +12 -3
  260. package/src/components/previewPdf.vue +521 -203
  261. package/src/components/previewWisdom.vue +255 -0
  262. package/src/components/receiverMessagePlatform.vue +28 -22
  263. package/src/components/recommend.vue +9 -7
  264. package/src/components/senderMessagePlatform.vue +24 -14
  265. package/src/components/tree.vue +120 -105
  266. package/src/components/utils/AliyunIssUtil.js +35 -13
  267. package/src/components/utils/ckeditor.js +59 -48
  268. package/src/components/voiceComponent.vue +9 -6
  269. package/src/components/welcomeKnowledgeFile.vue +19 -13
  270. package/src/components/welcomeLlmCard.vue +11 -9
  271. package/src/components/welcomeSuggest.vue +6 -4
  272. package/src/locales/cn.json +100 -0
  273. package/src/locales/en.json +99 -0
  274. package/src/main.js +19 -0
  275. package/src/components/newPdfPosition.vue +0 -878
@@ -1,177 +1,143 @@
1
1
  <template>
2
2
  <div class="media-body">
3
- <div class="formClass" :class="isPhone?'remPhoneClassForm':'remCompanyClassForm'" v-if="formShow.form">
4
- <div class="titleName" >
5
- {{!!formShow.form.formShowName?formShow.form.formShowName:formShow.form.name}}
3
+ <div class="formClass" :class="isPhone ? 'remPhoneClassForm' : 'remCompanyClassForm'" v-if="formShow.form">
4
+ <div class="titleName">
5
+ {{ !!formShow.form.formShowName ? formShow.form.formShowName : formShow.form.name }}
6
6
  </div>
7
7
  <div class="title-link"></div>
8
8
  <div class="pcFormClass" v-if="isCompany">
9
- <div v-for="(item) in formFieldRelation"
10
- :key="item.fieldId"
11
- :class="{notClick:disableds === true}"
12
- >
13
- <div class="field-item">
14
- <div v-if="item.fieldId !== 'workorder_name' && item.formField.type !== 'EXPLANATION' && item.formField.type !== 'EXPLAIN' " class="field-item-name">
15
- <span v-if="item.fieldId!=='workorder_description'&&item.fieldId!=='workorder_clientId'">{{item.formField.name}}</span>
16
- <span v-if="item.fieldId==='workorder_description'">{{ isBaiLi ? '反馈描述' : '问题描述' }}</span>
17
- <span v-if="item.fieldId==='workorder_clientId'">报单人</span>
18
- <span style="color: red;padding-left: 5px;padding-right: 5px" v-if="item.fieldId !== '0feca81fce97465da537248c066e4db8' && item.fieldId !=='1d8bd21485834773a6d18eae60013000' && (item.required || isRequiredFn(item.formField))">*</span>
19
- <el-tooltip class="item" effect="dark" placement="right-start">
20
- <div slot="content" v-if="item.formField.remark">{{item.formField.remark.text}}</div>
21
- <div slot="content" v-else-if="item.formField.extInfo && item.formField.extInfo.remark">{{item.formField.extInfo.remark.text}}</div>
22
- <span v-if="item.formField.remark && item.formField.remark.enable">
23
- <i class="el-icon-warning-outline"></i>
24
- </span>
25
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable">
26
- <i class="el-icon-warning-outline"></i>
27
- </span>
28
- </el-tooltip>
29
- </div>
30
- <!-- item.value -->
31
- <el-input v-model="item.value"
32
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'"
33
- :maxlength="item.formField.extInfo&&item.formField.extInfo.maxNum?item.formField.extInfo.maxNum*1:1000"
34
- v-if="item.formField.type==='INPUT'&&item.fieldId!=='workorder_name'"
35
- :type="item.formField.extInfo.inputType==='NUMBER'||
36
- item.formField.extInfo.inputType==='RATE'? 'number':'text'"
37
- @blur="typeCheck(item.formField,item)"
38
- :min="item.formField.extInfo.inputType==='NUMBER'||
39
- item.formField.extInfo.inputType==='RATE'?Number(item.formField.extInfo.range.start):''"
40
- :max="item.formField.extInfo.inputType==='NUMBER'||
41
- item.formField.extInfo.inputType==='RATE'?Number(item.formField.extInfo.range.end):''"
42
- ></el-input>
43
- <template v-else-if="item.formField.type==='EXPLANATION'">
44
- <div class="explanation">
45
- <p class="explanation-p">
46
- <span class="el-icon-info"></span>
47
- {{item.formField.extInfo.descriptionText}}
48
- </p>
49
- </div>
50
- </template>
51
- <template v-else-if="item.formField.type==='EXPLAIN'">
52
- <div class="explanation">
53
- <p class="explanation-p">
54
- <span class="el-icon-info"></span>
55
- <span v-if="item.formField.extInfo.url" class="explain-url"><a :href="item.formField.extInfo.url" target="_blank">{{item.value}}</a></span>
56
- <span v-else>{{item.value ? item.value : item.formField.extInfo.placeholder }}</span>
57
- </p>
9
+ <div v-for="(item) in formFieldRelation" :key="item.fieldId" :class="{ notClick: disableds === true }">
10
+ <div class="field-item">
11
+ <div
12
+ v-if="item.fieldId !== 'workorder_name' && item.formField.type !== 'EXPLANATION' && item.formField.type !== 'EXPLAIN'"
13
+ class="field-item-name">
14
+ <span
15
+ v-if="item.fieldId !== 'workorder_description' && item.fieldId !== 'workorder_clientId'">{{ item.formField.name }}</span>
16
+ <span v-if="item.fieldId === 'workorder_description'">{{ isBaiLi ? '反馈描述' : '问题描述' }}</span>
17
+ <span v-if="item.fieldId === 'workorder_clientId'">报单人</span>
18
+ <span style="color: red;padding-left: 5px;padding-right: 5px"
19
+ v-if="item.fieldId !== '0feca81fce97465da537248c066e4db8' && item.fieldId !== '1d8bd21485834773a6d18eae60013000' && (item.required || isRequiredFn(item.formField))">*</span>
20
+ <el-tooltip class="item" effect="dark" placement="right-start">
21
+ <div slot="content" v-if="item.formField.remark">{{ item.formField.remark.text }}</div>
22
+ <div slot="content" v-else-if="item.formField.extInfo && item.formField.extInfo.remark">
23
+ {{ item.formField.extInfo.remark.text }}</div>
24
+ <span v-if="item.formField.remark && item.formField.remark.enable">
25
+ <i class="el-icon-warning-outline"></i>
26
+ </span>
27
+ <span
28
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable">
29
+ <i class="el-icon-warning-outline"></i>
30
+ </span>
31
+ </el-tooltip>
58
32
  </div>
59
- </template>
60
- <el-input type="textarea" :rows="2" v-model="item.value"
61
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'"
62
- :maxlength="item.formField.extInfo&&item.formField.extInfo.maxNum?item.formField.extInfo.maxNum*1:1000"
63
- v-if="item.formField.type==='TEXTAREA'&& item.fieldId!=='workorder_description'"
64
- ></el-input>
65
- <div v-else-if="item.fieldId === 'workorder_description'">
66
- <!-- <ckeditor
33
+ <!-- item.value -->
34
+ <el-input v-model="item.value"
35
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请输入'"
36
+ :maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
37
+ v-if="item.formField.type === 'INPUT' && item.fieldId !== 'workorder_name'" :type="item.formField.extInfo.inputType === 'NUMBER' ||
38
+ item.formField.extInfo.inputType === 'RATE' ? 'number' : 'text'"
39
+ @blur="typeCheck(item.formField, item)" :min="item.formField.extInfo.inputType === 'NUMBER' ||
40
+ item.formField.extInfo.inputType === 'RATE' ? Number(item.formField.extInfo.range.start) : ''"
41
+ :max="item.formField.extInfo.inputType === 'NUMBER' ||
42
+ item.formField.extInfo.inputType === 'RATE' ? Number(item.formField.extInfo.range.end) : ''"></el-input>
43
+ <template v-else-if="item.formField.type === 'EXPLANATION'">
44
+ <div class="explanation">
45
+ <p class="explanation-p">
46
+ <span class="el-icon-info"></span>
47
+ {{ item.formField.extInfo.descriptionText }}
48
+ </p>
49
+ </div>
50
+ </template>
51
+ <template v-else-if="item.formField.type === 'EXPLAIN'">
52
+ <div class="explanation">
53
+ <p class="explanation-p">
54
+ <span class="el-icon-info"></span>
55
+ <span v-if="item.formField.extInfo.url" class="explain-url"><a :href="item.formField.extInfo.url"
56
+ target="_blank">{{ item.formField.description ? item.formField.description : item.formField.extInfo.placeholder }}</a></span>
57
+ <span v-else>{{ item.formField.description ? item.formField.description : item.formField.extInfo.placeholder }}</span>
58
+ </p>
59
+ </div>
60
+ </template>
61
+ <el-input type="textarea" :rows="2" v-model="item.value"
62
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请输入'"
63
+ :maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
64
+ v-if="item.formField.type === 'TEXTAREA' && item.fieldId !== 'workorder_description'"></el-input>
65
+ <div v-else-if="item.fieldId === 'workorder_description'">
66
+ <!-- <ckeditor
67
67
  :editor="ckeditor.editor"
68
68
  v-model="item.value"
69
69
  :config="{...ckeditor.editorConfig,placeholder:item.formField.extInfo && item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'}"
70
70
  @ready="(editor)=>currentEditor=editor"
71
71
  @focus="(zh,editor)=>currentEditor=editor"
72
72
  ></ckeditor> -->
73
- <MyEditor
74
- v-model="item.value"
75
- :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'"
76
- @fileUploadCallback="desUploadImageAndFile"
77
- :havToolbar="mainId !== '8b9bd566e3e64156ab764b19defc9d48' && mainId !== '0b73521f96e4486aaf6be42932bd7b07'">
78
- </MyEditor>
79
- <!-- @input="(value) =>{item.value = value}" -->
80
- <file-list-view :attachmentList="attachmentList" @attachDeleteAttch="attachDeleteAttch"></file-list-view>
81
- </div>
82
- <el-date-picker
83
- v-model=item.value
84
- type="date"
85
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择日期'"
86
- style="width: 100%"
87
- v-else-if="item.formField.type==='DATE_PICKER'"
88
- >
89
- </el-date-picker>
90
- <el-time-picker
91
- v-model=item.value
92
- format="HH:mm"
93
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择时间'"
94
- style="width: 100%"
95
- v-else-if="item.formField.type==='TIME_PICKER' && (!item.formField.extInfo.mold || item.formField.extInfo.mold == 'TIME' || getMoldTime(item.formField) == 'TIME')"
96
- >
97
- </el-time-picker>
98
- <el-date-picker
99
- v-model=item.value
100
- type="date"
101
- style="width: 100%"
102
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择日期'"
103
- v-else-if="item.formField.type==='TIME_PICKER' && (item.formField.extInfo.mold==='DATA' || item.formField.extInfo.mold==='DATE' || getMoldTime(item.formField) == 'DATE')"
104
- >
105
- </el-date-picker>
106
- <el-date-picker
107
- v-model=item.value
108
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择日期时间'"
109
- clearable
110
- style="width: 100%"
111
- type="datetime"
112
- v-else-if="item.formField.type==='TIME_PICKER' && (item.formField.extInfo.mold==='DATA_TIME' || item.formField.extInfo.mold==='DATE_TIME' || getMoldTime(item.formField) == 'DATE_TIME')"
113
- >
114
- </el-date-picker>
115
- <div v-else-if="item.formField.type==='RADIO' &&item.formField.extInfo.options">
116
- <el-radio-group v-model=item.value style="text-align:left" @change="changeSelect(item)">
117
- <el-radio v-for="(items,index) in optionsLists(item)" :label=items.value :key="index">{{items.label}}</el-radio>
118
- </el-radio-group>
119
- </div>
120
- <div v-else-if="item.formField.type==='RADIO' &&item.formField.extInfo.option">
121
- <el-radio-group v-model=item.value style="text-align:left" @change="changeSelect(item)">
122
- <el-radio v-for="(items,index) in item.formField.extInfo.option" :label=items.value :key="index">{{items.label}}</el-radio>
123
- </el-radio-group>
124
- </div>
125
- <div v-else-if="item.formField.type==='CHECKBOX' && item.formField.extInfo.option">
126
- <el-checkbox-group v-model=item.value style="text-align:left">
127
- <el-checkbox
128
- v-for="(items,index) in item.formField.extInfo.option"
129
- :label=items.value
130
- :key="index"
131
- >{{items.label}}</el-checkbox>
132
- </el-checkbox-group>
133
- </div>
134
- <div v-else-if="item.formField.type==='CHECKBOX' && item.formField.extInfo.options">
135
- <el-checkbox-group v-model=item.value style="text-align:left">
136
- <el-checkbox
137
- v-for="(items,index) in optionsLists(item)"
138
- :label=items.value
139
- :key="index"
140
- >{{items.label}}</el-checkbox>
141
- </el-checkbox-group>
142
- </div>
143
- <div v-else-if="item.formField.type==='SELECT' || item.formField.type==='OPTION'" >
144
- <el-select
145
- v-model=item.value
146
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
147
- style="width: 100%"
148
- filterable
149
- v-if="item.fieldId==='workorder_clientId' || item.fieldId === 'workorder_statusId' || item.fieldId === 'workorder_priority'"
150
- >
151
- <el-option
152
- v-for="(items,index) in selectOptions(item.formField)"
153
- :key="index"
154
- :label="items.label"
73
+ <MyEditor v-model="item.value"
74
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请输入'"
75
+ @fileUploadCallback="desUploadImageAndFile"
76
+ :havToolbar="mainId !== '8b9bd566e3e64156ab764b19defc9d48' && mainId !== '0b73521f96e4486aaf6be42932bd7b07'">
77
+ </MyEditor>
78
+ <!-- @input="(value) =>{item.value = value}" -->
79
+ <file-list-view :attachmentList="attachmentList" @attachDeleteAttch="attachDeleteAttch"></file-list-view>
80
+ </div>
81
+ <el-date-picker v-model=item.value type="date"
82
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择日期'"
83
+ style="width: 100%" v-else-if="item.formField.type === 'DATE_PICKER'">
84
+ </el-date-picker>
85
+ <el-time-picker v-model=item.value format="HH:mm"
86
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择时间'"
87
+ style="width: 100%"
88
+ v-else-if="item.formField.type === 'TIME_PICKER' && (!item.formField.extInfo.mold || item.formField.extInfo.mold == 'TIME' || getMoldTime(item.formField) == 'TIME')">
89
+ </el-time-picker>
90
+ <el-date-picker v-model=item.value type="date" style="width: 100%"
91
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择日期'"
92
+ v-else-if="item.formField.type === 'TIME_PICKER' && (item.formField.extInfo.mold === 'DATA' || item.formField.extInfo.mold === 'DATE' || getMoldTime(item.formField) == 'DATE')">
93
+ </el-date-picker>
94
+ <el-date-picker v-model=item.value
95
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择日期时间'"
96
+ clearable style="width: 100%" type="datetime"
97
+ v-else-if="item.formField.type === 'TIME_PICKER' && (item.formField.extInfo.mold === 'DATA_TIME' || item.formField.extInfo.mold === 'DATE_TIME' || getMoldTime(item.formField) == 'DATE_TIME')">
98
+ </el-date-picker>
99
+ <div v-else-if="item.formField.type === 'RADIO' && item.formField.extInfo.options">
100
+ <el-radio-group v-model=item.value style="text-align:left" @change="changeSelect(item)">
101
+ <el-radio v-for="(items, index) in optionsLists(item)" :label=items.value
102
+ :key="index">{{ items.label }}</el-radio>
103
+ </el-radio-group>
104
+ </div>
105
+ <div v-else-if="item.formField.type === 'RADIO' && item.formField.extInfo.option">
106
+ <el-radio-group v-model=item.value style="text-align:left" @change="changeSelect(item)">
107
+ <el-radio v-for="(items, index) in item.formField.extInfo.option" :label=items.value
108
+ :key="index">{{ items.label }}</el-radio>
109
+ </el-radio-group>
110
+ </div>
111
+ <div v-else-if="item.formField.type === 'CHECKBOX' && item.formField.extInfo.option">
112
+ <el-checkbox-group v-model=item.value style="text-align:left">
113
+ <el-checkbox v-for="(items, index) in item.formField.extInfo.option" :label=items.value
114
+ :key="index">{{ items.label }}</el-checkbox>
115
+ </el-checkbox-group>
116
+ </div>
117
+ <div v-else-if="item.formField.type === 'CHECKBOX' && item.formField.extInfo.options">
118
+ <el-checkbox-group v-model=item.value style="text-align:left">
119
+ <el-checkbox v-for="(items, index) in optionsLists(item)" :label=items.value
120
+ :key="index">{{ items.label }}</el-checkbox>
121
+ </el-checkbox-group>
122
+ </div>
123
+ <div v-else-if="item.formField.type === 'SELECT' || item.formField.type === 'OPTION'">
124
+ <el-select v-model=item.value
125
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
126
+ style="width: 100%" filterable
127
+ v-if="item.fieldId === 'workorder_clientId' || item.fieldId === 'workorder_statusId' || item.fieldId === 'workorder_priority'">
128
+ <el-option v-for="(items, index) in selectOptions(item.formField)" :key="index" :label="items.label"
155
129
  :value="items.value">
156
- </el-option>
157
- </el-select>
158
- <el-select
159
- v-model=item.value
160
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
161
- style="width: 100%"
162
- filterable
163
- v-else
164
- @change="changeSelect(item)"
165
- :multiple="item.formField.extInfo && item.formField.extInfo.selectType == '多选'"
166
- >
167
- <el-option
168
- v-for="(items,index) in optionsLists(item)"
169
- :key="index"
170
- :label="items.label"
130
+ </el-option>
131
+ </el-select>
132
+ <el-select v-model=item.value
133
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
134
+ style="width: 100%" filterable v-else @change="changeSelect(item)"
135
+ :multiple="item.formField.extInfo && item.formField.extInfo.selectType == '多选'">
136
+ <el-option v-for="(items, index) in optionsLists(item)" :key="index" :label="items.label"
171
137
  :value="items.value">
172
- </el-option>
173
- </el-select>
174
- <!-- <div class="cascader-input" v-else @click="openDrawer(item,'select')">
138
+ </el-option>
139
+ </el-select>
140
+ <!-- <div class="cascader-input" v-else @click="openDrawer(item,'select')">
175
141
  <template v-if="item.value && (!Array.isArray(item.value) || (Array.isArray(item.value) && item.value.length))">
176
142
  <template v-if="Array.isArray(item.value)">
177
143
  <span v-for="(select,selectIndex) in item.value" :key="selectIndex">
@@ -182,17 +148,20 @@
182
148
  </template>
183
149
  <span v-else>{{item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'}}</span>
184
150
  </div>-->
185
- </div>
186
- <template v-else-if="item.formField.type==='CASCADER'">
187
- <div class="cascader-input" @click="openDrawer(item,'pc_cascader')">
188
- <template v-if="extInfoFieldValue[item.fieldId] && (Array.isArray(extInfoFieldValue[item.fieldId]) && extInfoFieldValue[item.fieldId].length > 0)">
189
- <span v-for="(cas,casIndex) in extInfoFieldValue[item.fieldId]" :key="casIndex">
190
- {{casIndex==0?cas.label:'/'+cas.label}}
191
- </span>
192
- </template>
193
- <span v-else>{{item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'}}</span>
194
151
  </div>
195
- <!-- <el-cascader
152
+ <template v-else-if="item.formField.type === 'CASCADER'">
153
+ <div class="cascader-input" @click="openDrawer(item, 'pc_cascader')">
154
+ <!-- {{ extInfoFieldValue[item.fieldId] }} -->
155
+ <template
156
+ v-if="extInfoFieldValue[item.fieldId] && (Array.isArray(extInfoFieldValue[item.fieldId]) && extInfoFieldValue[item.fieldId].length > 0)">
157
+ <span v-for="(cas, casIndex) in extInfoFieldValue[item.fieldId]" :key="casIndex">
158
+ {{ casIndex == 0 ? cas.label : '/' + cas.label }}
159
+ </span>
160
+ </template>
161
+ <span
162
+ v-else>{{ item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择' }}</span>
163
+ </div>
164
+ <!-- <el-cascader
196
165
  v-model=item.value
197
166
  :options=item.formField.extInfo.cascade
198
167
  style="width: 100%;"
@@ -213,451 +182,379 @@
213
182
  :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
214
183
  v-else-if="item.formField.extInfo.cascadeDown.length != 0"
215
184
  ></el-cascader>-->
216
- </template>
217
- <template v-else-if="item.formField.type==='FILE' || item.formField.type === 'IMAGE' || item.formField.type === 'ATTACHMENT' || item.formField.type === 'VIDEO'">
218
- <div @click="checkUpload(item.fieldId,item.formField.extInfo)" @mouseover="checkUpload(item.fieldId,item.formField.extInfo)" class="form-field-file" style="display:flex;flex-direction: column">
219
- <el-upload
220
-
221
- ref="upload"
222
- :list-type="item.formField.type === 'IMAGE' || item.formField.type === 'FILE' ? 'picture-card':''"
223
- :accept="acceptFieldType(item.formField.type)"
224
- name="file"
225
- action="/open/media/file/upload"
226
- :multiple="item.formField.extInfo&&item.formField.extInfo.limitNum&&item.formField.extInfo.limitNum>1?true:false"
227
- :file-list="extInfoFieldValue[item.fieldId]"
228
- :limit="item.formField.extInfo.limitNum?Number(item.formField.extInfo.limitNum):(item.formField.extInfo.limit ? Number(item.formField.extInfo.limit) : 1)"
229
- :before-upload="(file=>{return beforeAvatarUpload(file,item.formField.type)})"
230
- :on-exceed="exceedUpload"
231
- :on-remove="handleRemove"
232
- :http-request="aliyunOssRequest"
233
- :on-change="handleEditChange"
234
- :on-success="successUpload"
235
- :show-file-list="item.formField.type === 'IMAGE' || item.formField.type === 'FILE' ? true : false"
236
- >
237
- <div class="upload-demo">
238
- <i class="el-icon-plus"></i>
185
+ </template>
186
+ <template
187
+ v-else-if="item.formField.type === 'FILE' || item.formField.type === 'IMAGE' || item.formField.type === 'ATTACHMENT' || item.formField.type === 'VIDEO'">
188
+ <div @click="checkUpload(item.fieldId, item.formField.extInfo)"
189
+ @mouseover="checkUpload(item.fieldId, item.formField.extInfo)" class="form-field-file"
190
+ style="display:flex;flex-direction: column">
191
+ <el-upload ref="upload"
192
+ :list-type="item.formField.type === 'IMAGE' || item.formField.type === 'FILE' ? 'picture-card' : ''"
193
+ :accept="acceptFieldType(item.formField.type)" name="file" action="/open/media/file/upload"
194
+ :multiple="item.formField.extInfo && item.formField.extInfo.limitNum && item.formField.extInfo.limitNum > 1 ? true : false"
195
+ :file-list="extInfoFieldValue[item.fieldId]"
196
+ :limit="item.formField.extInfo.limitNum ? Number(item.formField.extInfo.limitNum) : (item.formField.extInfo.limit ? Number(item.formField.extInfo.limit) : 1)"
197
+ :before-upload="(file => { return beforeAvatarUpload(file, item.formField.type) })" :on-exceed="exceedUpload"
198
+ :on-remove="handleRemove" :http-request="aliyunOssRequest" :on-change="handleEditChange"
199
+ :on-success="successUpload"
200
+ :show-file-list="item.formField.type === 'IMAGE' || item.formField.type === 'FILE' ? true : false">
201
+ <div class="upload-demo">
202
+ <i class="el-icon-plus"></i>
203
+ </div>
204
+ <!-- <el-button size="small" type="primary" v-else class="uploadBtn">点击上传</el-button>-->
205
+ </el-upload>
206
+ <file-list-view :attachmentList="extInfoFieldValue[item.fieldId]"
207
+ v-if="extInfoFieldValue[item.fieldId] && item.formField.type !== 'IMAGE' && item.formField.type !== 'FILE'"
208
+ @attachDeleteAttch="attachDeleteFile($event, item.fieldId)"></file-list-view>
209
+ </div>
210
+ </template>
211
+ <div v-else-if="item.formField.type == 'REF_TEMPLATE' || item.formField.type == 'REF'">
212
+ <el-select v-model=item.value
213
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
214
+ style="width: 100%" filterable
215
+ :multiple="item.formField.extInfo && item.formField.extInfo.selectType == '多选'"
216
+ @visible-change="(visible) => { return refTemplateVisibleChange(visible, item) }" collapse-tags
217
+ @change="changeRefData($event, item)" @focus="setOptionWidth">
218
+ <template v-for="(items, index) in refTemplateList[item.fieldId]">
219
+ <el-option v-if="refTemplateList[item.fieldId]" :key="index" :label="items.name" :value="items.id"
220
+ :style="{ width: selectOptionWidth }">
221
+ </el-option>
222
+ </template>
223
+ <div @click="lodeMore(item)" v-if="refNextPage[item.fieldId] && refNextPage[item.fieldId].hasNextPage"
224
+ style="width:100%;height:30px;display:flex;align-items: center;justify-content: center;color:#606266">
225
+ 加载更多
239
226
  </div>
240
- <!-- <el-button size="small" type="primary" v-else class="uploadBtn">点击上传</el-button>-->
241
- </el-upload>
242
- <file-list-view :attachmentList="extInfoFieldValue[item.fieldId]" v-if="extInfoFieldValue[item.fieldId] && item.formField.type !== 'IMAGE' && item.formField.type !== 'FILE'" @attachDeleteAttch="attachDeleteFile($event,item.fieldId)"></file-list-view>
227
+ </el-select>
243
228
  </div>
244
- </template>
245
- <div v-else-if="item.formField.type == 'REF_TEMPLATE' || item.formField.type == 'REF'">
246
- <el-select
247
- v-model=item.value
248
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
249
- style="width: 100%"
250
- filterable
251
- :multiple="item.formField.extInfo && item.formField.extInfo.selectType == '多选'"
252
- @visible-change="(visible) =>{ return refTemplateVisibleChange(visible,item) }"
253
- collapse-tags
254
- @change="changeRefData($event,item)"
255
- @focus="setOptionWidth"
256
- >
257
- <template v-for="(items,index) in refTemplateList[item.fieldId]">
258
- <el-option
259
- v-if="refTemplateList[item.fieldId]"
260
- :key="index"
261
- :label="items.name"
262
- :value="items.id"
263
- :style="{width:selectOptionWidth}"
264
- >
265
- </el-option>
266
- </template>
267
- <div
268
- @click="lodeMore(item)"
269
- v-if="refNextPage[item.fieldId] && refNextPage[item.fieldId].hasNextPage"
270
- style="width:100%;height:30px;display:flex;align-items: center;justify-content: center;color:#606266">
271
- 加载更多
272
- </div>
273
- </el-select>
274
229
  </div>
275
230
  </div>
276
231
  </div>
277
- </div>
278
- <div class="mobileFormClass" v-else style="padding: 10px 0;" :class="{notClick:disableds === true}">
279
- <div v-for="(item) in formFieldRelation"
280
- :key="item.fieldId"
281
- class="form-field-item"
282
- >
283
- <div v-if="item.formField.type==='INPUT'" class="form-field-item-value">
284
- <van-field v-model=item.value
285
- :label=item.formField.name
286
- :required="item.required || isRequiredFn(item.formField)"
287
- :disabled="disableds"
288
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'"
289
- :maxlength="item.formField.extInfo&&item.formField.extInfo.maxNum?item.formField.extInfo.maxNum*1:1000"
290
- @blur="typeCheck(item.formField,item)"
291
- :type="item.formField.extInfo.inputType==='NUMBER'||
292
- item.formField.extInfo.inputType==='RATE'? 'number':'text'"
293
- >
294
- <template slot="label">
295
- <span style="padding-right: 5px">{{item.formField.name}}</span>
296
- <span v-if="item.formField.remark && item.formField.remark.enable"
297
- @click.stop="leftIcon(item.formField.remark)">
298
- <i class="el-icon-warning-outline"></i>
299
- </span>
300
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
301
- @click.stop="leftIcon(item.formField.extInfo.remark)">
302
- <i class="el-icon-warning-outline"></i>
303
- </span>
304
- </template>
305
- </van-field>
306
- </div>
307
- <div v-else-if="item.formField.type==='EXPLANATION'||item.formField.type==='EXPLAIN'" class="explan-ation">
308
- <div class="explanation">
309
- <p class="explanation-p" v-if="item.formField.type==='EXPLANATION'">
310
- <span class="el-icon-info"></span>
311
- {{item.formField.extInfo.descriptionText}}
312
- </p>
313
- <p v-else class="explanation-p">
314
- <span class="el-icon-info"></span>
315
- <span v-if="item.formField.extInfo.url" class="explain-url"><a :href="item.formField.extInfo.url" target="_blank">{{item.formField.description?item.formField.description:item.formField.extInfo.placeholder}}</a></span>
316
- <span v-else>{{item.formField.description?item.formField.description:item.formField.extInfo.placeholder}}</span>
317
- </p>
232
+ <div class="mobileFormClass" v-else style="padding: 10px 0;" :class="{ notClick: disableds === true }">
233
+ <div v-for="(item) in formFieldRelation" :key="item.fieldId" class="form-field-item">
234
+ <div v-if="item.formField.type === 'INPUT'" class="form-field-item-value">
235
+ <van-field v-model=item.value :label=item.formField.name
236
+ :required="item.required || isRequiredFn(item.formField)" :disabled="disableds"
237
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请输入'"
238
+ :maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
239
+ @blur="typeCheck(item.formField, item)" :type="item.formField.extInfo.inputType === 'NUMBER' ||
240
+ item.formField.extInfo.inputType === 'RATE' ? 'number' : 'text'">
241
+ <template slot="label">
242
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
243
+ <span v-if="item.formField.remark && item.formField.remark.enable"
244
+ @click.stop="leftIcon(item.formField.remark)">
245
+ <i class="el-icon-warning-outline"></i>
246
+ </span>
247
+ <span
248
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
249
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
250
+ <i class="el-icon-warning-outline"></i>
251
+ </span>
252
+ </template>
253
+ </van-field>
318
254
  </div>
319
- </div>
320
- <div v-else-if="item.formField.type==='TEXTAREA'" class="form-field-item-value">
321
- <van-field v-model=item.value
322
- :label=item.formField.name
323
- :required="item.required || isRequiredFn(item.formField)"
324
- type="textarea"
325
- :disabled="disableds"
326
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'"
327
- :maxlength="item.formField.extInfo&&item.formField.extInfo.maxNum?item.formField.extInfo.maxNum*1:1000"
328
- v-if="item.fieldId!=='workorder_description'"
329
- >
330
- <template slot="label">
331
- <span style="padding-right: 5px">{{item.formField.name}}</span>
332
- <span v-if="item.formField.remark && item.formField.remark.enable"
333
- @click.stop="leftIcon(item.formField.remark)">
334
- <i class="el-icon-warning-outline"></i>
335
- </span>
336
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
337
- @click.stop="leftIcon(item.formField.extInfo.remark)">
338
- <i class="el-icon-warning-outline"></i>
339
- </span>
340
- </template>
341
- </van-field>
342
- <div v-if="item.fieldId==='workorder_description'" class="workorder_description">
343
- <div class="field-name" :class="item.required || isRequiredFn(item.formField)?'required-name':''">
344
- <span v-if="item.required || isRequiredFn(item.formField)" style="color: red">*</span>
345
- <span style="padding-right: 5px">{{ isBaiLi ? '反馈描述' : item.formField.name }}</span>
346
- <span v-if="item.formField.remark && item.formField.remark.enable"
347
- @click.stop="leftIcon(item.formField.remark)">
348
- <i class="el-icon-warning-outline"></i>
349
- </span>
350
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
351
- @click.stop="leftIcon(item.formField.extInfo.remark)">
352
- <i class="el-icon-warning-outline"></i>
353
- </span>
255
+ <div v-else-if="item.formField.type === 'EXPLANATION' || item.formField.type === 'EXPLAIN'" class="explan-ation">
256
+ <div class="explanation">
257
+ <p class="explanation-p" v-if="item.formField.type === 'EXPLANATION'">
258
+ <span class="el-icon-info"></span>
259
+ {{ item.formField.extInfo.descriptionText }}
260
+ </p>
261
+ <p v-else class="explanation-p">
262
+ <span class="el-icon-info"></span>
263
+ <span v-if="item.formField.extInfo.url" class="explain-url"><a :href="item.formField.extInfo.url"
264
+ target="_blank">{{ item.formField.description ? item.formField.description : item.formField.extInfo.placeholder }}</a></span>
265
+ <span
266
+ v-else>{{ item.formField.description ? item.formField.description : item.formField.extInfo.placeholder }}</span>
267
+ </p>
354
268
  </div>
355
- <!-- <ckeditor
269
+ </div>
270
+ <div v-else-if="item.formField.type === 'TEXTAREA'" class="form-field-item-value">
271
+ <van-field v-model=item.value :label=item.formField.name
272
+ :required="item.required || isRequiredFn(item.formField)" type="textarea" :disabled="disableds"
273
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请输入'"
274
+ :maxlength="item.formField.extInfo && item.formField.extInfo.maxNum ? item.formField.extInfo.maxNum * 1 : 1000"
275
+ v-if="item.fieldId !== 'workorder_description'">
276
+ <template slot="label">
277
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
278
+ <span v-if="item.formField.remark && item.formField.remark.enable"
279
+ @click.stop="leftIcon(item.formField.remark)">
280
+ <i class="el-icon-warning-outline"></i>
281
+ </span>
282
+ <span
283
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
284
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
285
+ <i class="el-icon-warning-outline"></i>
286
+ </span>
287
+ </template>
288
+ </van-field>
289
+ <div v-if="item.fieldId === 'workorder_description'" class="workorder_description">
290
+ <div class="field-name" :class="item.required || isRequiredFn(item.formField) ? 'required-name' : ''">
291
+ <span v-if="item.required || isRequiredFn(item.formField)" style="color: red">*</span>
292
+ <span style="padding-right: 5px">{{ isBaiLi ? '反馈描述' : item.formField.name }}</span>
293
+ <span v-if="item.formField.remark && item.formField.remark.enable"
294
+ @click.stop="leftIcon(item.formField.remark)">
295
+ <i class="el-icon-warning-outline"></i>
296
+ </span>
297
+ <span
298
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
299
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
300
+ <i class="el-icon-warning-outline"></i>
301
+ </span>
302
+ </div>
303
+ <!-- <ckeditor
356
304
  :editor="ckeditor.editor"
357
305
  v-model="item.value"
358
306
  @ready="(editor)=>currentEditor=editor"
359
307
  @focus="(zh,editor)=>currentEditor=editor"
360
308
  :config="{...ckeditor.editorConfig,placeholder:item.formField.extInfo && item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'}"
361
309
  ></ckeditor> -->
362
- <MyEditor
363
- v-model="item.value"
364
- :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请输入'"
365
- @fileUploadCallback="desUploadImageAndFile"
366
- :havToolbar="mainId !== '8b9bd566e3e64156ab764b19defc9d48' && mainId !== '0b73521f96e4486aaf6be42932bd7b07' "
367
- >
368
- </MyEditor>
369
- <file-list-view :attachmentList="attachmentList" @attachDeleteAttch="attachDeleteAttch"></file-list-view>
310
+ <MyEditor v-model="item.value"
311
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请输入'"
312
+ @fileUploadCallback="desUploadImageAndFile"
313
+ :havToolbar="mainId !== '8b9bd566e3e64156ab764b19defc9d48' && mainId !== '0b73521f96e4486aaf6be42932bd7b07'">
314
+ </MyEditor>
315
+ <file-list-view :attachmentList="attachmentList" @attachDeleteAttch="attachDeleteAttch"></file-list-view>
316
+ </div>
370
317
  </div>
371
- </div>
372
- <div v-else-if="item.formField.type==='DATE_PICKER'" class="form-field-item-value">
373
- <van-field
374
- readonly
375
- clickable
376
- name="calendar"
377
- :value=dateValue[item.fieldId]
378
- :label=item.formField.name
379
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择日期'"
380
- :required="item.required || isRequiredFn(item.formField)"
381
- @click="dateClick(item.fieldId)"
382
- :disabled="disableds"
383
- right-icon="van-icon van-icon-arrow van-cell__right-icon"
384
- >
385
- <template slot="label">
386
- <span style="padding-right: 5px">{{item.formField.name}}</span>
387
- <span v-if="item.formField.remark && item.formField.remark.enable"
388
- @click.stop="leftIcon(item.formField.remark)">
389
- <i class="el-icon-warning-outline"></i>
390
- </span>
391
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
392
- @click.stop="leftIcon(item.formField.extInfo.remark)">
393
- <i class="el-icon-warning-outline"></i>
394
- </span>
395
- </template>
396
- </van-field>
397
- <van-calendar
398
- v-model="showCalendar"
399
- :min-date="minDate"
400
- :max-date="maxDate"
401
- @confirm="onConfirmCalendar($event,item)"
402
- />
403
- </div>
404
- <div v-else-if="item.formField.type==='TIME_PICKER'&&(item.formField.extInfo.mold==='DATA_TIME' || item.formField.extInfo.mold==='DATE_TIME' || getMoldTime(item.formField) == 'DATE_TIME')" class="form-field-item-value">
405
- <van-field
406
- readonly
407
- clickable
408
- name="datetimePicker"
409
- :required="item.required || isRequiredFn(item.formField)"
410
- :value=extInfoFieldValue[item.fieldId]
411
- :label=item.formField.name
412
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
413
- @click="timeClick(item.fieldId,item,'DATE_TIME')"
414
- :disabled="disableds"
415
- right-icon="van-icon van-icon-arrow van-cell__right-icon"
416
-
417
- >
418
- <template slot="label">
419
- <span style="padding-right: 5px">{{item.formField.name}}</span>
420
- <span v-if="item.formField.remark && item.formField.remark.enable"
421
- @click.stop="leftIcon(item.formField.remark)">
422
- <i class="el-icon-warning-outline"></i>
423
- </span>
424
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
425
- @click.stop="leftIcon(item.formField.extInfo.remark)">
426
- <i class="el-icon-warning-outline"></i>
427
- </span>
428
- </template>
429
- </van-field>
430
- <van-popup v-model="dateTimePicker" position="bottom">
431
- <van-datetime-picker
432
- v-model="currentDate"
433
- type="datetime"
434
- @confirm="onConfirm($event,item.fieldId,item,'DATE_TIME')"
435
- @cancel="dateTimePicker = false"
436
- :min-date="minDate"
437
- :formatter="formatter"
438
- :max-date="maxDate"
439
- />
440
- </van-popup>
441
- </div>
442
- <div v-else-if="item.formField.type==='TIME_PICKER'&&(!item.formField.extInfo.mold || item.formField.extInfo.mold==='TIME' || getMoldTime(item.formField) == 'TIME')" class="form-field-item-value">
443
- <van-field
444
- readonly
445
- clickable
446
- name="datetimePicker"
447
- :required="item.required || isRequiredFn(item.formField)"
448
- :value=extInfoFieldValue[item.fieldId]
449
- :label=item.formField.name
450
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
451
- @click="timeClick(item.fieldId,item,'TIME')"
452
- :disabled="disableds"
453
- right-icon="van-icon van-icon-arrow van-cell__right-icon"
454
-
455
- >
318
+ <div v-else-if="item.formField.type === 'DATE_PICKER'" class="form-field-item-value">
319
+ <van-field readonly clickable name="calendar" :value=dateValue[item.fieldId] :label=item.formField.name
320
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择日期'"
321
+ :required="item.required || isRequiredFn(item.formField)" @click="dateClick(item.fieldId)"
322
+ :disabled="disableds" right-icon="van-icon van-icon-arrow van-cell__right-icon">
456
323
  <template slot="label">
457
- <span style="padding-right: 5px">{{item.formField.name}}</span>
324
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
458
325
  <span v-if="item.formField.remark && item.formField.remark.enable"
459
- @click.stop="leftIcon(item.formField.remark)">
326
+ @click.stop="leftIcon(item.formField.remark)">
460
327
  <i class="el-icon-warning-outline"></i>
461
328
  </span>
462
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
463
- @click.stop="leftIcon(item.formField.extInfo.remark)">
329
+ <span
330
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
331
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
464
332
  <i class="el-icon-warning-outline"></i>
465
333
  </span>
466
334
  </template>
467
335
  </van-field>
468
- <van-popup v-model="timePicker" position="bottom">
469
- <van-datetime-picker
470
- v-model="currentTime"
471
- type="time"
472
- title="选择时间"
473
- :min-hour="0"
474
- :max-hour="23"
475
- @confirm="onConfirm($event,item.fieldId,item,'TIME')"
476
- @cancel="timePicker = false"
477
- />
336
+ <van-calendar v-model="showCalendar" :min-date="minDate" :max-date="maxDate"
337
+ @confirm="onConfirmCalendar($event, item)" />
338
+ </div>
339
+ <div
340
+ v-else-if="item.formField.type === 'TIME_PICKER' && (item.formField.extInfo.mold === 'DATA_TIME' || item.formField.extInfo.mold === 'DATE_TIME' || getMoldTime(item.formField) == 'DATE_TIME')"
341
+ class="form-field-item-value">
342
+ <van-field readonly clickable name="datetimePicker" :required="item.required || isRequiredFn(item.formField)"
343
+ :value=extInfoFieldValue[item.fieldId] :label=item.formField.name
344
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
345
+ @click="timeClick(item.fieldId, item, 'DATE_TIME')" :disabled="disableds"
346
+ right-icon="van-icon van-icon-arrow van-cell__right-icon">
347
+ <template slot="label">
348
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
349
+ <span v-if="item.formField.remark && item.formField.remark.enable"
350
+ @click.stop="leftIcon(item.formField.remark)">
351
+ <i class="el-icon-warning-outline"></i>
352
+ </span>
353
+ <span
354
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
355
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
356
+ <i class="el-icon-warning-outline"></i>
357
+ </span>
358
+ </template>
359
+ </van-field>
360
+ <van-popup v-model="dateTimePicker" position="bottom">
361
+ <van-datetime-picker v-model="currentDate" type="datetime"
362
+ @confirm="onConfirm($event, item.fieldId, item, 'DATE_TIME')" @cancel="dateTimePicker = false"
363
+ :min-date="minDate" :formatter="formatter" :max-date="maxDate" />
478
364
  </van-popup>
479
365
  </div>
480
- <div v-else-if="item.formField.type==='TIME_PICKER'&&(item.formField.extInfo.mold==='DATA' || item.formField.extInfo.mold==='DATE' || getMoldTime(item.formField) == 'DATE')" class="form-field-item-value">
481
- <van-field
482
- readonly
483
- clickable
484
- name="datetimePicker"
485
- :required="item.required || isRequiredFn(item.formField)"
486
- :value=extInfoFieldValue[item.fieldId]
487
- :label=item.formField.name
488
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
489
- @click="timeClick(item.fieldId,item,'DATE')"
490
- :disabled="disableds"
491
- right-icon="van-icon van-icon-arrow van-cell__right-icon"
492
-
493
- >
494
- <template slot="label">
495
- <span style="padding-right: 5px">{{item.formField.name}}</span>
496
- <span v-if="item.formField.remark && item.formField.remark.enable"
497
- @click.stop="leftIcon(item.formField.remark)">
498
- <i class="el-icon-warning-outline"></i>
499
- </span>
500
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
501
- @click.stop="leftIcon(item.formField.extInfo.remark)">
502
- <i class="el-icon-warning-outline"></i>
503
- </span>
504
- </template>
505
- </van-field>
506
- <van-calendar v-model="datePicker" :show-confirm="false" @confirm="onConfirm($event,item.fieldId,item,'DATE')" :min-date="minDate" :max-date="maxDate" @cancel="datePicker = false"/>
507
- </div>
508
- <div v-else-if="item.formField.type==='RADIO'" class="form-field-item-other">
509
- <van-field name="radio" :label="item.formField.name" :required="item.required || isRequiredFn(item.formField)" :disabled="disableds" v-if="item.formField.extInfo.option">
510
- <template slot="label">
511
- <span style="padding-right: 5px">{{item.formField.name}}</span>
512
- <span v-if="item.formField.remark && item.formField.remark.enable"
513
- @click.stop="leftIcon(item.formField.remark)">
514
- <i class="el-icon-warning-outline"></i>
515
- </span>
516
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
517
- @click.stop="leftIcon(item.formField.extInfo.remark)">
518
- <i class="el-icon-warning-outline"></i>
519
- </span>
520
- </template>
521
- <template #input style="display: flex;align-items: center">
522
- <van-radio-group v-model=item.value direction="horizontal" :disabled="disableds">
523
- <van-radio v-for="(items,index) in item.formField.extInfo.option" :name=items.value :key="index" @click="changeSelect(item)">{{items.label}}</van-radio>
524
- </van-radio-group>
525
- </template>
526
- </van-field>
527
- <van-field name="radio" :label="item.formField.name" :required="item.required || isRequiredFn(item.formField)" :disabled="disableds" v-if="item.formField.extInfo.options">
528
- <template slot="label">
529
- <span style="padding-right: 5px">{{item.formField.name}}</span>
530
- <span v-if="item.formField.remark && item.formField.remark.enable"
531
- @click.stop="leftIcon(item.formField.remark)">
532
- <i class="el-icon-warning-outline"></i>
533
- </span>
534
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
535
- @click.stop="leftIcon(item.formField.extInfo.remark)">
536
- <i class="el-icon-warning-outline"></i>
537
- </span>
538
- </template>
539
- <template #input style="display: flex;align-items: center" >
540
- <van-radio-group v-model=item.value direction="horizontal" :disabled="disableds">
541
- <van-radio v-for="(items,index) in optionsLists(item)" :name=items.value :key="index" @click="changeSelect(item)">{{items.label}}</van-radio>
542
- </van-radio-group>
543
- </template>
544
- </van-field>
545
- </div>
546
- <div v-else-if="item.formField.type==='CHECKBOX'" class="form-field-item-other">
547
- <van-field name="checkbox" :label=item.formField.name :required="item.required || isRequiredFn(item.formField)" :disabled="disableds" v-if="item.formField.extInfo.option">
548
- <template slot="label">
549
- <span style="padding-right: 5px">{{item.formField.name}}</span>
550
- <span v-if="item.formField.remark && item.formField.remark.enable"
551
- @click.stop="leftIcon(item.formField.remark)">
552
- <i class="el-icon-warning-outline"></i>
553
- </span>
554
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
555
- @click.stop="leftIcon(item.formField.extInfo.remark)">
556
- <i class="el-icon-warning-outline"></i>
557
- </span>
558
- </template>
559
- <template #input style="display: flex;align-items: center" >
560
- <van-checkbox-group v-model=item.value ref="checkboxGroup" direction="horizontal" :disabled="disableds">
561
- <van-checkbox
562
- v-for="(items,index) in item.formField.extInfo.option"
563
- shape="square"
564
- :key="index"
565
- :name=items.value>
566
- {{items.label}}
567
- </van-checkbox>
568
- </van-checkbox-group>
569
- </template>
570
- </van-field>
571
- <van-field name="checkbox" :label=item.formField.name :required="item.required || isRequiredFn(item.formField)" :disabled="disableds" v-if="item.formField.extInfo.options">
572
- <template slot="label">
573
- <span style="padding-right: 5px">{{item.formField.name}}</span>
574
- <span v-if="item.formField.remark && item.formField.remark.enable"
575
- @click.stop="leftIcon(item.formField.remark)">
576
- <i class="el-icon-warning-outline"></i>
577
- </span>
578
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
579
- @click.stop="leftIcon(item.formField.extInfo.remark)">
580
- <i class="el-icon-warning-outline"></i>
581
- </span>
582
- </template>
583
- <template #input style="display: flex;align-items: center" >
584
- <van-checkbox-group v-model=item.value ref="checkboxGroup" direction="horizontal" :disabled="disableds">
585
- <van-checkbox
586
- v-for="(items,index) in optionsLists(item)"
587
- shape="square"
588
- :key="index"
589
- :name=items.value>
590
- {{items.label}}
591
- </van-checkbox>
592
- </van-checkbox-group>
593
- </template>
594
- </van-field>
595
- </div>
596
- <div v-else-if="item.formField.type==='SELECT' || item.formField.type==='OPTION'" class="form-field-item-value">
597
- <template v-if="item.fieldId==='workorder_clientId' || item.fieldId === 'workorder_statusId' || item.fieldId === 'workorder_priority'">
598
- <van-field
599
- readonly
600
- clickable
601
- name="picker"
602
- :value=selectValues[item.fieldId]
603
- :label="item.fieldId==='workorder_clientId'?'报单人':item.formField.name"
604
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
605
- @click="selectClick(item.fieldId,'client',item)"
606
- :required="item.required || isRequiredFn(item.formField)"
607
- :disabled="disableds"
608
- @click-right-icon.stop="SelectClear(item.fieldId)"
609
- :right-icon="selectValues[item.fieldId]? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'"
610
- >
366
+ <div
367
+ v-else-if="item.formField.type === 'TIME_PICKER' && (!item.formField.extInfo.mold || item.formField.extInfo.mold === 'TIME' || getMoldTime(item.formField) == 'TIME')"
368
+ class="form-field-item-value">
369
+ <van-field readonly clickable name="datetimePicker" :required="item.required || isRequiredFn(item.formField)"
370
+ :value=extInfoFieldValue[item.fieldId] :label=item.formField.name
371
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
372
+ @click="timeClick(item.fieldId, item, 'TIME')" :disabled="disableds"
373
+ right-icon="van-icon van-icon-arrow van-cell__right-icon">
611
374
  <template slot="label">
612
- <span style="padding-right: 5px">{{item.formField.name}}</span>
375
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
613
376
  <span v-if="item.formField.remark && item.formField.remark.enable"
614
- @click.stop="leftIcon(item.formField.remark)">
377
+ @click.stop="leftIcon(item.formField.remark)">
615
378
  <i class="el-icon-warning-outline"></i>
616
379
  </span>
617
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
618
- @click.stop="leftIcon(item.formField.extInfo.remark)">
380
+ <span
381
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
382
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
619
383
  <i class="el-icon-warning-outline"></i>
620
384
  </span>
621
385
  </template>
622
386
  </van-field>
623
- <van-popup v-model="showPicker" position="bottom">
624
- <van-picker
625
- show-toolbar
626
- :columns=selectValue
627
- @confirm="onConfirmSelect($event,item)"
628
- @cancel="showPicker = false"
629
- :key="selectKey"
630
-
631
- />
387
+ <van-popup v-model="timePicker" position="bottom">
388
+ <van-datetime-picker v-model="currentTime" type="time" title="选择时间" :min-hour="0" :max-hour="23"
389
+ @confirm="onConfirm($event, item.fieldId, item, 'TIME')" @cancel="timePicker = false" />
632
390
  </van-popup>
633
- </template>
634
- <template v-else>
635
- <van-field
636
- readonly
637
- clickable
638
- name="picker"
639
- :value="showSelectText(item.formField.extInfo ? (item.formField.extInfo.option || item.formField.extInfo.options) : [],item.value)"
640
- :label=item.formField.name
641
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
642
- @click="selectClick(item.fieldId,'select',item)"
643
- :required="item.required || isRequiredFn(item.formField)"
644
- :disabled="disableds"
645
- @click-right-icon.stop="SelectClear(item.fieldId)"
646
- :right-icon="item.value && item.value.length? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'"
647
- >
391
+ </div>
392
+ <div
393
+ v-else-if="item.formField.type === 'TIME_PICKER' && (item.formField.extInfo.mold === 'DATA' || item.formField.extInfo.mold === 'DATE' || getMoldTime(item.formField) == 'DATE')"
394
+ class="form-field-item-value">
395
+ <van-field readonly clickable name="datetimePicker" :required="item.required || isRequiredFn(item.formField)"
396
+ :value=extInfoFieldValue[item.fieldId] :label=item.formField.name
397
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
398
+ @click="timeClick(item.fieldId, item, 'DATE')" :disabled="disableds"
399
+ right-icon="van-icon van-icon-arrow van-cell__right-icon">
648
400
  <template slot="label">
649
- <span style="padding-right: 5px">{{item.formField.name}}</span>
401
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
650
402
  <span v-if="item.formField.remark && item.formField.remark.enable"
651
- @click.stop="leftIcon(item.formField.remark)">
403
+ @click.stop="leftIcon(item.formField.remark)">
652
404
  <i class="el-icon-warning-outline"></i>
653
405
  </span>
654
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
655
- @click.stop="leftIcon(item.formField.extInfo.remark)">
406
+ <span
407
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
408
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
656
409
  <i class="el-icon-warning-outline"></i>
657
410
  </span>
658
411
  </template>
659
412
  </van-field>
660
- <!-- <van-field
413
+ <van-calendar v-model="datePicker" :show-confirm="false" @confirm="onConfirm($event, item.fieldId, item, 'DATE')"
414
+ :min-date="minDate" :max-date="maxDate" @cancel="datePicker = false" />
415
+ </div>
416
+ <div v-else-if="item.formField.type === 'RADIO'" class="form-field-item-other">
417
+ <van-field name="radio" :label="item.formField.name" :required="item.required || isRequiredFn(item.formField)"
418
+ :disabled="disableds" v-if="item.formField.extInfo.option">
419
+ <template slot="label">
420
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
421
+ <span v-if="item.formField.remark && item.formField.remark.enable"
422
+ @click.stop="leftIcon(item.formField.remark)">
423
+ <i class="el-icon-warning-outline"></i>
424
+ </span>
425
+ <span
426
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
427
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
428
+ <i class="el-icon-warning-outline"></i>
429
+ </span>
430
+ </template>
431
+ <template #input style="display: flex;align-items: center">
432
+ <van-radio-group v-model=item.value direction="horizontal" :disabled="disableds">
433
+ <van-radio v-for="(items, index) in item.formField.extInfo.option" :name=items.value :key="index"
434
+ @click="changeSelect(item)">{{ items.label }}</van-radio>
435
+ </van-radio-group>
436
+ </template>
437
+ </van-field>
438
+ <van-field name="radio" :label="item.formField.name" :required="item.required || isRequiredFn(item.formField)"
439
+ :disabled="disableds" v-if="item.formField.extInfo.options">
440
+ <template slot="label">
441
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
442
+ <span v-if="item.formField.remark && item.formField.remark.enable"
443
+ @click.stop="leftIcon(item.formField.remark)">
444
+ <i class="el-icon-warning-outline"></i>
445
+ </span>
446
+ <span
447
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
448
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
449
+ <i class="el-icon-warning-outline"></i>
450
+ </span>
451
+ </template>
452
+ <template #input style="display: flex;align-items: center">
453
+ <van-radio-group v-model=item.value direction="horizontal" :disabled="disableds">
454
+ <van-radio v-for="(items, index) in optionsLists(item)" :name=items.value :key="index"
455
+ @click="changeSelect(item)">{{ items.label }}</van-radio>
456
+ </van-radio-group>
457
+ </template>
458
+ </van-field>
459
+ </div>
460
+ <div v-else-if="item.formField.type === 'CHECKBOX'" class="form-field-item-other">
461
+ <van-field name="checkbox" :label=item.formField.name
462
+ :required="item.required || isRequiredFn(item.formField)" :disabled="disableds"
463
+ v-if="item.formField.extInfo.option">
464
+ <template slot="label">
465
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
466
+ <span v-if="item.formField.remark && item.formField.remark.enable"
467
+ @click.stop="leftIcon(item.formField.remark)">
468
+ <i class="el-icon-warning-outline"></i>
469
+ </span>
470
+ <span
471
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
472
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
473
+ <i class="el-icon-warning-outline"></i>
474
+ </span>
475
+ </template>
476
+ <template #input style="display: flex;align-items: center">
477
+ <van-checkbox-group v-model=item.value ref="checkboxGroup" direction="horizontal" :disabled="disableds">
478
+ <van-checkbox v-for="(items, index) in item.formField.extInfo.option" shape="square" :key="index"
479
+ :name=items.value>
480
+ {{ items.label }}
481
+ </van-checkbox>
482
+ </van-checkbox-group>
483
+ </template>
484
+ </van-field>
485
+ <van-field name="checkbox" :label=item.formField.name
486
+ :required="item.required || isRequiredFn(item.formField)" :disabled="disableds"
487
+ v-if="item.formField.extInfo.options">
488
+ <template slot="label">
489
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
490
+ <span v-if="item.formField.remark && item.formField.remark.enable"
491
+ @click.stop="leftIcon(item.formField.remark)">
492
+ <i class="el-icon-warning-outline"></i>
493
+ </span>
494
+ <span
495
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
496
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
497
+ <i class="el-icon-warning-outline"></i>
498
+ </span>
499
+ </template>
500
+ <template #input style="display: flex;align-items: center">
501
+ <van-checkbox-group v-model=item.value ref="checkboxGroup" direction="horizontal" :disabled="disableds">
502
+ <van-checkbox v-for="(items, index) in optionsLists(item)" shape="square" :key="index" :name=items.value>
503
+ {{ items.label }}
504
+ </van-checkbox>
505
+ </van-checkbox-group>
506
+ </template>
507
+ </van-field>
508
+ </div>
509
+ <div v-else-if="item.formField.type === 'SELECT' || item.formField.type === 'OPTION'" class="form-field-item-value">
510
+ <template
511
+ v-if="item.fieldId === 'workorder_clientId' || item.fieldId === 'workorder_statusId' || item.fieldId === 'workorder_priority'">
512
+ <van-field readonly clickable name="picker" :value=selectValues[item.fieldId]
513
+ :label="item.fieldId === 'workorder_clientId' ? '报单人' : item.formField.name"
514
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
515
+ @click="selectClick(item.fieldId, 'client', item)" :required="item.required || isRequiredFn(item.formField)"
516
+ :disabled="disableds" @click-right-icon.stop="SelectClear(item.fieldId)"
517
+ :right-icon="selectValues[item.fieldId] ? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'">
518
+ <template slot="label">
519
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
520
+ <span v-if="item.formField.remark && item.formField.remark.enable"
521
+ @click.stop="leftIcon(item.formField.remark)">
522
+ <i class="el-icon-warning-outline"></i>
523
+ </span>
524
+ <span
525
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
526
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
527
+ <i class="el-icon-warning-outline"></i>
528
+ </span>
529
+ </template>
530
+ </van-field>
531
+ <van-popup v-model="showPicker" position="bottom">
532
+ <van-picker show-toolbar :columns=selectValue @confirm="onConfirmSelect($event, item)"
533
+ @cancel="showPicker = false" :key="selectKey" />
534
+ </van-popup>
535
+ </template>
536
+ <template v-else>
537
+ <van-field readonly clickable name="picker"
538
+ :value="showSelectText(item.formField.extInfo ? (item.formField.extInfo.option || item.formField.extInfo.options) : [], item.value)"
539
+ :label=item.formField.name
540
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
541
+ @click="selectClick(item.fieldId, 'select', item)" :required="item.required || isRequiredFn(item.formField)"
542
+ :disabled="disableds" @click-right-icon.stop="SelectClear(item.fieldId)"
543
+ :right-icon="item.value && item.value.length ? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'">
544
+ <template slot="label">
545
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
546
+ <span v-if="item.formField.remark && item.formField.remark.enable"
547
+ @click.stop="leftIcon(item.formField.remark)">
548
+ <i class="el-icon-warning-outline"></i>
549
+ </span>
550
+ <span
551
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
552
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
553
+ <i class="el-icon-warning-outline"></i>
554
+ </span>
555
+ </template>
556
+ </van-field>
557
+ <!-- <van-field
661
558
  readonly
662
559
  clickable
663
560
  name="picker"
@@ -682,178 +579,141 @@
682
579
  </span>
683
580
  </template>
684
581
  </van-field> -->
685
- </template>
686
- </div>
687
- <div v-if="item.formField.type === 'REF_TEMPLATE' || item.formField.type === 'REF'" class="form-field-item-value">
688
- <van-field
689
- readonly
690
- clickable
691
- :value="Array.isArray(extInfoFieldValue[item.fieldId])?extInfoFieldValue[item.fieldId].map(v=>v.name).join(','):(extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].name?extInfoFieldValue[item.fieldId].name:'')"
692
- :label="item.formField.name"
693
- name="picker"
694
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
695
- @click="selectClick(item.fieldId,'ref',item)"
696
- @click-right-icon.stop="SelectClear(item.fieldId)"
697
- :required="item.required || isRequiredFn(item.formField)"
698
- :disabled="disableds"
699
- :right-icon="extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].length? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'"
700
- />
582
+ </template>
583
+ </div>
584
+ <div v-if="item.formField.type === 'REF_TEMPLATE' || item.formField.type === 'REF'"
585
+ class="form-field-item-value">
586
+ <van-field readonly clickable
587
+ :value="Array.isArray(extInfoFieldValue[item.fieldId]) ? extInfoFieldValue[item.fieldId].map(v => v.name).join(',') : (extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].name ? extInfoFieldValue[item.fieldId].name : '')"
588
+ :label="item.formField.name" name="picker"
589
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
590
+ @click="selectClick(item.fieldId, 'ref', item)" @click-right-icon.stop="SelectClear(item.fieldId)"
591
+ :required="item.required || isRequiredFn(item.formField)" :disabled="disableds"
592
+ :right-icon="extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].length ? 'close' : 'van-icon van-icon-arrow van-cell__right-icon'" />
701
593
  <van-popup v-model="refShowPicker" position="bottom" :style="{ height: '300px' }">
702
- <select-popup
703
- :options="refTemplateList[selectDetail.fieldId]"
704
- :defaultValue="refDefaultValue[selectDetail.fieldId]"
705
- @onConfim="confirmRefSelect"
706
- @onclose= "refShowPicker = false"
707
- :multiple="selectDetail.formField && selectDetail.formField.extInfo && selectDetail.formField.extInfo.selectType ==='多选'?true:false"
708
- ref="selectPopup"
709
- :props="{
710
- value:'id',
711
- label:'name'
712
- }"
713
- >
594
+ <select-popup :options="refTemplateList[selectDetail.fieldId]"
595
+ :defaultValue="refDefaultValue[selectDetail.fieldId]" @onConfim="confirmRefSelect"
596
+ @onclose="refShowPicker = false"
597
+ :multiple="selectDetail.formField && selectDetail.formField.extInfo && selectDetail.formField.extInfo.selectType === '多选' ? true : false"
598
+ ref="selectPopup" :props="{
599
+ value: 'id',
600
+ label: 'name'
601
+ }">
714
602
  <template slot="popup-footer" v-if="refNextPage[item.fieldId] && refNextPage[item.fieldId].hasNextPage">
715
603
  <span @click="lodeMore(item)">加载更多</span>
716
604
  </template>
717
605
  </select-popup>
718
606
  </van-popup>
719
607
  </div>
720
- <div v-else-if="item.formField.type==='CASCADER'" :key="JSON.stringify(item.formField)" class="form-field-item-value">
721
- <van-field
722
- readonly
723
- clickable
724
- name="area"
725
- :value="extInfoFieldValue[item.fieldId] && Array.isArray(extInfoFieldValue[item.fieldId])?extInfoFieldValue[item.fieldId].map(e=>e.label).join('/'):''"
608
+ <div v-else-if="item.formField.type === 'CASCADER'" :key="JSON.stringify(item.formField)"
609
+ class="form-field-item-value">
610
+ <van-field readonly clickable name="area"
611
+ :value="extInfoFieldValue[item.fieldId] && Array.isArray(extInfoFieldValue[item.fieldId]) ? extInfoFieldValue[item.fieldId].map(e => e.label).join('/') : ''"
726
612
  :label=item.formField.name
727
- :placeholder="item.formField.extInfo&&item.formField.extInfo.placeholder?item.formField.extInfo.placeholder:'请选择'"
728
- @click="openDrawer(item,'cascader')"
729
- :required="item.fieldId !== '0feca81fce97465da537248c066e4db8' && item.fieldId !=='1d8bd21485834773a6d18eae60013000' && (item.required || isRequiredFn(item.formField))"
730
- :disabled="disableds"
731
- right-icon="van-icon van-icon-arrow van-cell__right-icon"
732
- >
733
- <template slot="label">
734
- <span style="padding-right: 5px">{{item.formField.name}}</span>
735
- <span v-if="item.formField.remark && item.formField.remark.enable"
736
- @click.stop="leftIcon(item.formField.remark)">
737
- <i class="el-icon-warning-outline"></i>
738
- </span>
739
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
740
- @click.stop="leftIcon(item.formField.extInfo.remark)">
741
- <i class="el-icon-warning-outline"></i>
742
- </span>
743
- </template>
744
- </van-field>
745
- </div>
746
- <div v-else-if="item.formField.type === 'FILE' || item.formField.type === 'IMAGE' || item.formField.type === 'ATTACHMENT' || item.formField.type === 'VIDEO'" class="form-field-item-value">
747
- <div @click="checkUpload(item.fieldId,item.formField.extInfo)" class="form-field-item-file">
748
- <div class="fileName">
749
- <span style="color: red" v-if="item.required || isRequiredFn(item.formField)">*</span>
750
- <span style="padding-right: 5px">{{item.formField.name}}</span>
751
- <span v-if="item.formField.remark && item.formField.remark.enable"
752
- @click.stop="leftIcon(item.formField.remark)">
753
- <i class="el-icon-warning-outline"></i>
754
- </span>
755
- <span v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
756
- @click.stop="leftIcon(item.formField.extInfo.remark)">
757
- <i class="el-icon-warning-outline"></i>
758
- </span>
759
- </div>
760
- <van-uploader
761
- v-model="extInfoFieldValue[item.fieldId]"
762
- :before-read="(file=>{return beforeRead(file,item.formField.type)})"
763
- :max-count='item.formField.extInfo&&item.formField.extInfo.limitNum ? item.formField.extInfo.limitNum : (item.formField.extInfo.limit ? item.formField.extInfo.limit : 1)'
764
- :after-read="afterRead"
765
- :accept="acceptFieldType(item.formField.type)"
766
- :multiple="item.formField.extInfo&&item.formField.extInfo.limitNum&&item.formField.extInfo.limitNum>1?true:false"
767
- :preview-image="item.formField.type === 'IMAGE' || item.formField.type === 'FILE' ? true : false"
768
- >
769
- <div class="vant-upload--picture-card">
770
- <i class="el-icon-plus"></i>
613
+ :placeholder="item.formField.extInfo && item.formField.extInfo.placeholder ? item.formField.extInfo.placeholder : '请选择'"
614
+ @click="openDrawer(item, 'cascader')"
615
+ :required="item.fieldId !== '0feca81fce97465da537248c066e4db8' && item.fieldId !== '1d8bd21485834773a6d18eae60013000' && (item.required || isRequiredFn(item.formField))"
616
+ :disabled="disableds" right-icon="van-icon van-icon-arrow van-cell__right-icon">
617
+ <template slot="label">
618
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
619
+ <span v-if="item.formField.remark && item.formField.remark.enable"
620
+ @click.stop="leftIcon(item.formField.remark)">
621
+ <i class="el-icon-warning-outline"></i>
622
+ </span>
623
+ <span
624
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
625
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
626
+ <i class="el-icon-warning-outline"></i>
627
+ </span>
628
+ </template>
629
+ </van-field>
630
+ </div>
631
+ <div
632
+ v-else-if="item.formField.type === 'FILE' || item.formField.type === 'IMAGE' || item.formField.type === 'ATTACHMENT' || item.formField.type === 'VIDEO'"
633
+ class="form-field-item-value">
634
+ <div @click="checkUpload(item.fieldId, item.formField.extInfo)" class="form-field-item-file">
635
+ <div class="fileName">
636
+ <span style="color: red" v-if="item.required || isRequiredFn(item.formField)">*</span>
637
+ <span style="padding-right: 5px">{{ item.formField.name }}</span>
638
+ <span v-if="item.formField.remark && item.formField.remark.enable"
639
+ @click.stop="leftIcon(item.formField.remark)">
640
+ <i class="el-icon-warning-outline"></i>
641
+ </span>
642
+ <span
643
+ v-else-if="item.formField.extInfo && item.formField.extInfo.remark && item.formField.extInfo.remark.enable"
644
+ @click.stop="leftIcon(item.formField.extInfo.remark)">
645
+ <i class="el-icon-warning-outline"></i>
646
+ </span>
771
647
  </div>
772
- </van-uploader>
773
- <file-list-view :attachmentList="extInfoFieldValue[item.fieldId]" v-if="extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].length && item.formField.type !== 'IMAGE' && item.formField.type !== 'FILE'" @attachDeleteAttch="attachDeleteFile($event,item.fieldId)"></file-list-view>
648
+ <van-uploader v-model="extInfoFieldValue[item.fieldId]"
649
+ :before-read="(file => { return beforeRead(file, item.formField.type) })"
650
+ :max-count='item.formField.extInfo && item.formField.extInfo.limitNum ? item.formField.extInfo.limitNum : (item.formField.extInfo.limit ? item.formField.extInfo.limit : 1)'
651
+ :after-read="afterRead" :accept="acceptFieldType(item.formField.type)"
652
+ :multiple="item.formField.extInfo && item.formField.extInfo.limitNum && item.formField.extInfo.limitNum > 1 ? true : false"
653
+ :preview-image="item.formField.type === 'IMAGE' || item.formField.type === 'FILE' ? true : false">
654
+ <div class="vant-upload--picture-card">
655
+ <i class="el-icon-plus"></i>
656
+ </div>
657
+ </van-uploader>
658
+ <file-list-view :attachmentList="extInfoFieldValue[item.fieldId]"
659
+ v-if="extInfoFieldValue[item.fieldId] && extInfoFieldValue[item.fieldId].length && item.formField.type !== 'IMAGE' && item.formField.type !== 'FILE'"
660
+ @attachDeleteAttch="attachDeleteFile($event, item.fieldId)"></file-list-view>
661
+ </div>
774
662
  </div>
775
663
  </div>
776
- </div>
777
664
  <van-popup v-model="fileUpload" :close-on-click-overlay="false">
778
- <div style="background-color: black;height: 100px;width: 100px;display: flex;justify-content: center;align-items: center" >
779
- <van-loading type="spinner"/>
665
+ <div
666
+ style="background-color: black;height: 100px;width: 100px;display: flex;justify-content: center;align-items: center">
667
+ <van-loading type="spinner" />
780
668
  </div>
781
669
  </van-popup>
782
- </div>
670
+ </div>
783
671
  <div class="bottom-link"></div>
784
672
  <div class="form-submit-btn" v-if="isCompany">
785
- <el-button style="border-color: #366aff;color: white;background-color: #366aff" round class="submitClass" size="small" @click="submitClick" :disabled="disableds">
673
+ <el-button style="border-color: #366aff;color: white;background-color: #366aff" round class="submitClass"
674
+ size="small" @click="submitClick" :disabled="disableds">
786
675
  <i class="el-icon-check" v-if="!disableds"></i>
787
- {{submitValue}}
676
+ {{ submitValue }}
788
677
  </el-button>
789
678
  </div>
790
679
  <div class="form-submit-btn" v-else>
791
- <van-button round type="info" class="submitClass" @click="submitClick" :disabled="disableds">
680
+ <van-button round type="info" class="submitClass" @click="submitClick" :disabled="disableds">
792
681
  <i class="el-icon-check" v-if="!disableds"></i>
793
- {{submitValue}}
682
+ {{ submitValue }}
794
683
  </van-button>
795
684
  </div>
796
685
  </div>
797
686
  <el-dialog :visible.sync="dialogVisible">
798
687
  <img width="100%" :src="dialogImageUrl" alt="">
799
688
  </el-dialog>
800
- <el-drawer
801
- :withHeader="false"
802
- :visible.sync="drawer"
803
- size="400px"
804
- :model="false"
805
- :append-to-body="true"
806
- direction="btt">
689
+ <el-drawer :withHeader="false" :visible.sync="drawer" size="400px" :model="false" :append-to-body="true"
690
+ direction="btt">
807
691
  <div class="drawer-container">
808
- <tree ref="drawerTree"
809
- :dataOptions="detailField.formField"
810
- @saveData="saveData"
811
- @cancelBtn="drawer = false"
812
- :fieldValue="fieldValue"
813
- ></tree>
692
+ <tree ref="drawerTree" :dataOptions="detailField.formField" @saveData="saveData" @cancelBtn="drawer = false"
693
+ :fieldValue="fieldValue" :webHookCascader="webHookCascader"></tree>
814
694
  </div>
815
695
  </el-drawer>
816
- <el-drawer
817
- :withHeader="false"
818
- :visible.sync="selectPopUp"
819
- size="40%"
820
- :model="false"
821
- direction="btt"
822
- >
823
- <select-popup
824
- :options="options"
825
- :defaultValue="defaultValue"
826
- @onConfim="confirmSelect"
827
- @onclose= "selectPopUp = false"
828
- :multiple="detailField.formField.extInfo && detailField.formField.extInfo.selectType ==='多选'?true:false"
829
- ref="selectPopup"
830
- :props="{
831
- value:'label',
832
- label:'value'
833
- }"
834
- ></select-popup>
696
+ <el-drawer :withHeader="false" :visible.sync="selectPopUp" size="40%" :model="false" direction="btt">
697
+ <select-popup :options="options" :defaultValue="defaultValue" @onConfim="confirmSelect"
698
+ @onclose="selectPopUp = false"
699
+ :multiple="detailField.formField.extInfo && detailField.formField.extInfo.selectType === '多选' ? true : false"
700
+ ref="selectPopup" :props="{
701
+ value: 'label',
702
+ label: 'value'
703
+ }"></select-popup>
835
704
  </el-drawer>
836
705
  <van-popup v-model="showArea" position="bottom" :style="{ height: '400px' }" v-if="!isCompany">
837
- <tree ref="drawerTree"
838
- :dataOptions="detailField.formField"
839
- @saveData="saveData"
840
- @cancelBtn="showArea = false"
841
- :fieldValue="fieldValue"
842
- ></tree>
706
+ <tree ref="drawerTree" :dataOptions="detailField.formField" @saveData="saveData" @cancelBtn="showArea = false"
707
+ :fieldValue="fieldValue" :webHookCascader="webHookCascader"></tree>
843
708
  </van-popup>
844
709
  <van-popup v-model="selectPicker" position="bottom" :style="{ height: '300px' }" v-if="!isCompany">
845
- <select-popup
846
- :options="optionsList[selectDetail.fieldId]"
847
- :defaultValue="defaultValue"
848
- @onConfim="confirmSelect"
849
- @onclose= "selectPicker = false"
850
- :multiple="selectDetail.formField && selectDetail.formField.extInfo && selectDetail.formField.extInfo.selectType ==='多选'?true:false"
851
- ref="selectPopup"
852
- :props="{
853
- value:'value',
854
- label:'label'
855
- }"
856
- ></select-popup>
710
+ <select-popup :options="optionsList[selectDetail.fieldId]" :defaultValue="defaultValue" @onConfim="confirmSelect"
711
+ @onclose="selectPicker = false"
712
+ :multiple="selectDetail.formField && selectDetail.formField.extInfo && selectDetail.formField.extInfo.selectType === '多选' ? true : false"
713
+ ref="selectPopup" :props="{
714
+ value: 'value',
715
+ label: 'label'
716
+ }"></select-popup>
857
717
  </van-popup>
858
718
  </div>
859
719
  </template>
@@ -862,7 +722,7 @@
862
722
  /* eslint-disable */
863
723
  import { forMatTime } from "./utils/format_date";
864
724
  let that
865
- import {multipartUpload,ossFileUrl} from "./utils/AliyunIssUtil";
725
+ import { multipartUpload, ossFileUrl } from "./utils/AliyunIssUtil";
866
726
  import MyEditor from './MyEditor'
867
727
  import myPopup from "./myPopup.vue";
868
728
  import Tree from '../components/tree'
@@ -871,20 +731,20 @@ import fileListView from './fielListView.vue'
871
731
  import { uniqueData } from './utils/math_utils'
872
732
  export default {
873
733
  name: "formTemplate",
874
- data() {
734
+ data () {
875
735
  return {
876
736
  isPhone: false,
877
737
  isCompany: false,
878
738
  checkboxGroup: [],
879
739
  currentDate: new Date(),
880
- currentTime:"",
881
- timePicker:false,
740
+ currentTime: "",
741
+ timePicker: false,
882
742
  timeValue: [],
883
743
  dateValue: [],
884
744
  showPicker: false,
885
- selectPicker:false,
745
+ selectPicker: false,
886
746
  dateTimePicker: false,
887
- datePicker:false,
747
+ datePicker: false,
888
748
  showCalendar: false,
889
749
  radio: [],
890
750
  selectValue: [],
@@ -926,181 +786,180 @@ export default {
926
786
  clickPicker: '',
927
787
  columns: [],
928
788
  copyForm: [],
929
- cascaderId:0,
930
- formShow:[],
789
+ cascaderId: 0,
790
+ formShow: [],
931
791
  uploadAvatarParams: {
932
792
  token: "8c98087dfd2d48f856d8c95c09115def",
933
793
  },
934
- fileListList:[],
935
- keyValue:'',
936
- selectKey:'',
937
- filedId:'',
938
- disabled:false,
939
- dialogVisible:false,
940
- dialogImageUrl:'',
941
- fileUpload:false,
942
- videoFlag:false,
943
- videoUploadPercent:false,
944
- fileType:['PICTURE','VIDEO','AUDIO'],
945
- loading:'',
946
- ossConfig: {
947
- region: "oss-cn-zhangjiakou",
948
- //云账号AccessKey有所有API访问权限,建议遵循阿里云安全最佳实践,创建并使用STS方式来进行API访问
949
- accessKeyId: "LTAI4G3QtdEdwkEbihBngAsK",
950
- accessKeySecret: "OwgdVfc5PeCkIgqIdug660xmiSPchn",
951
- // stsToken: '<Your securityToken(STS)>',
952
- bucket: "guoranopen-zjk",
953
- },
954
- hideUploadEdit:false,
955
- limitNum:1,
956
- refShowPicker:false,
957
- refTemplateList:{},
958
- refList:{},
959
- dataQuery:{},
960
- refNextPage:{},
961
- drawer:false,
962
- detailField:{
963
- formField:{}
794
+ fileListList: [],
795
+ keyValue: '',
796
+ selectKey: '',
797
+ filedId: '',
798
+ disabled: false,
799
+ dialogVisible: false,
800
+ dialogImageUrl: '',
801
+ fileUpload: false,
802
+ videoFlag: false,
803
+ videoUploadPercent: false,
804
+ fileType: ['PICTURE', 'VIDEO', 'AUDIO'],
805
+ loading: '',
806
+ hideUploadEdit: false,
807
+ limitNum: 1,
808
+ refShowPicker: false,
809
+ refTemplateList: {},
810
+ refList: {},
811
+ dataQuery: {},
812
+ refNextPage: {},
813
+ drawer: false,
814
+ detailField: {
815
+ formField: {}
964
816
  },
965
- extInfoFieldValue:{},
966
- selectPopUp:false,
967
- options:[],
968
- defaultValue:[],
969
- timeDetailData:{},
970
- selectDetail:{},
971
- refDefaultValue:{},
972
- selectOptionWidth:null,
973
- fieldValue:{},
974
- optionsList:{},
975
- currentEditor:null,
976
- workOrderDes:"",
977
- workOrderDestail:null,
978
- associatedControlsCopy:[],
979
- attachments:[],
980
- attachmentList:[],
981
- uploadImgQueue:false,
982
- isBaiLi:false,
983
- listenTimer:null,
817
+ extInfoFieldValue: {},
818
+ selectPopUp: false,
819
+ options: [],
820
+ defaultValue: [],
821
+ timeDetailData: {},
822
+ selectDetail: {},
823
+ refDefaultValue: {},
824
+ selectOptionWidth: null,
825
+ fieldValue: {},
826
+ optionsList: {},
827
+ currentEditor: null,
828
+ workOrderDes: "",
829
+ workOrderDestail: null,
830
+ associatedControlsCopy: [],
831
+ attachments: [],
832
+ attachmentList: [],
833
+ uploadImgQueue: false,
834
+ isBaiLi: false,
835
+ listenTimer: null,
836
+ webHookCascader:false
984
837
  }
985
838
  },
986
839
  props: {
987
840
  formList: {
988
841
  type: Object,
989
- default() {
842
+ default () {
990
843
  return {}
991
844
  }
992
845
  },
993
- type:String,
994
- disable:Boolean,
995
- submit:Boolean,
996
- usePropStyleType:{
997
- type:Boolean,
998
- default() {
846
+ type: String,
847
+ disable: Boolean,
848
+ submit: Boolean,
849
+ usePropStyleType: {
850
+ type: Boolean,
851
+ default () {
999
852
  return false;
1000
853
  }
1001
854
  },
1002
855
  propIsPhone: {
1003
- type:Boolean,
1004
- default() {
856
+ type: Boolean,
857
+ default () {
1005
858
  return false;
1006
859
  }
1007
860
  },
1008
861
  propIsCompany: {
1009
- type:Boolean,
1010
- default() {
862
+ type: Boolean,
863
+ default () {
1011
864
  return false;
1012
865
  }
1013
866
  },
1014
867
  uploadUrl: {
1015
- type:String,
1016
- default(){
868
+ type: String,
869
+ default () {
1017
870
  return '/open/media/file/upload'
1018
871
  }
1019
872
  },
1020
- mainId:{
1021
- type:String,
1022
- default(){
873
+ mainId: {
874
+ type: String,
875
+ default () {
1023
876
  return ""
1024
877
  }
1025
- }
878
+ },
879
+ isCustomerService: {
880
+ type: Boolean,
881
+ default () {
882
+ return false;
883
+ }
884
+ },
1026
885
  },
1027
- computed:{
1028
- acceptType:function () {
886
+ computed: {
887
+ acceptType: function () {
1029
888
  return '.jpg,.jpeg,.png,.gif,.JPG,.JPEG,.PBG,.GIF'
1030
889
  },
1031
- formFieldRelation:function () {
890
+ formFieldRelation: function () {
1032
891
  let arr = [];
1033
892
  let formList = []
1034
893
  formList = this.formShow.form && this.formShow.form.formFieldRelation
1035
- formList.forEach(item=> {
1036
- if (item.fieldId !=='workorder_name' && item.display && item.formField.type!=='CHAT_RECORD' && item.formField.type!=='CHANNEL') {
894
+ formList.forEach(item => {
895
+ if (item.fieldId !== 'workorder_name' && item.display && item.formField.type !== 'CHAT_RECORD' && item.formField.type !== 'CHANNEL') {
1037
896
  arr.push(item);
1038
897
  }
1039
898
  })
1040
- arr.forEach(item=>{
1041
- if (item.value && item.value.length){
1042
- this.$set(this.fieldValue,item.fieldId,item.value)
899
+ arr.forEach(item => {
900
+ if (item.value && item.value.length) {
901
+ this.$set(this.fieldValue, item.fieldId, item.value)
1043
902
  }
1044
- if(item.formField.type === 'CHECKBOX'){
1045
- if(!item.value){
903
+ if (item.formField.type === 'CHECKBOX') {
904
+ if (!item.value) {
1046
905
  item.value = []
1047
906
  }
1048
- if(item.formField.defaultValue && (!item.value || !item.value.length)){
907
+ if (item.formField.defaultValue && (!item.value || !item.value.length)) {
1049
908
  item.value = item.formField.defaultValue
1050
909
  }
1051
910
  }
1052
- if (item.fieldId==='workorder_description'){
911
+ if (item.fieldId === 'workorder_description') {
1053
912
  this.workOrderDes = item.value;
1054
913
  this.workOrderDestail = item;
1055
- console.debug('workorder_description',item)
914
+ console.debug('workorder_description', item)
1056
915
  }
1057
916
  })
1058
- let newArr = arr.filter(item=>item.relationDisplay)
917
+ let newArr = arr.filter(item => item.relationDisplay)
1059
918
  return newArr;
1060
919
  },
1061
- acceptFieldType(){
1062
- return (type)=>{
1063
- if (type == 'FILE'){
920
+ acceptFieldType () {
921
+ return (type) => {
922
+ if (type == 'FILE') {
1064
923
  return 'image/*'
1065
- } else if( type == 'IMAGE') {
924
+ } else if (type == 'IMAGE') {
1066
925
  return 'image/*'
1067
- } else if(type == 'VIDEO') {
926
+ } else if (type == 'VIDEO') {
1068
927
  return 'video/*'
1069
928
  } else {
1070
929
  return '*'
1071
930
  }
1072
931
  }
1073
932
  },
1074
- isRequiredFn(){
1075
- return function(field) {
1076
- return this.relationSet(field,'requiredDependentFieldId')
933
+ isRequiredFn () {
934
+ return function (field) {
935
+ return this.relationSet(field, 'requiredDependentFieldId')
1077
936
  }
1078
937
  },
1079
- optionsLists() {
938
+ optionsLists () {
1080
939
  return function (field) {
1081
940
  let options = {}
1082
941
  let newOptions = {}
1083
942
  let flag = false;
1084
- if (!field.formField.extInfo){
943
+ if (!field.formField.extInfo) {
1085
944
  newOptions[field.fieldId] = []
1086
945
  }
1087
946
  else {
1088
- if (field.formField.extInfo.dependent&&JSON.stringify(field.formField.extInfo.dependent)!=='{}'){
1089
- for (let k in field.formField.extInfo.dependent){
1090
- if (Array.isArray(this.fieldValue[k]) && Array.isArray(this.fieldValue[k][0])){
1091
- this.fieldValue[k].forEach(item=>{
1092
- field.formField.extInfo.dependent[k].filterStruct.forEach(filter=>{
1093
- if (Array.isArray(item)){
1094
- if (filter.input === item[item.length - 1]){
1095
- if (!options[field.fieldId]){
947
+ if (field.formField.extInfo.dependent && JSON.stringify(field.formField.extInfo.dependent) !== '{}') {
948
+ for (let k in field.formField.extInfo.dependent) {
949
+ if (Array.isArray(this.fieldValue[k]) && Array.isArray(this.fieldValue[k][0])) {
950
+ this.fieldValue[k].forEach(item => {
951
+ field.formField.extInfo.dependent[k].filterStruct.forEach(filter => {
952
+ if (Array.isArray(item)) {
953
+ if (filter.input === item[item.length - 1]) {
954
+ if (!options[field.fieldId]) {
1096
955
  options[field.fieldId] = []
1097
956
  }
1098
957
  options[field.fieldId] = options[field.fieldId].concat(filter.output)
1099
958
  flag = true
1100
959
  }
1101
960
  } else {
1102
- if (filter.input === item){
1103
- if (!options[field.fieldId]){
961
+ if (filter.input === item) {
962
+ if (!options[field.fieldId]) {
1104
963
  options[field.fieldId] = []
1105
964
  }
1106
965
  options[field.fieldId] = options[field.fieldId].concat(filter.output)
@@ -1111,8 +970,8 @@ export default {
1111
970
  })
1112
971
  }
1113
972
  else {
1114
- field.formField.extInfo.dependent[k].filterStruct.forEach(filter=>{
1115
- if (this.fieldValue[k] && (filter.input === this.fieldValue[k] || this.fieldValue[k][this.fieldValue[k].length - 1] == filter.input)){
973
+ field.formField.extInfo.dependent[k].filterStruct.forEach(filter => {
974
+ if (this.fieldValue[k] && (filter.input === this.fieldValue[k] || this.fieldValue[k][this.fieldValue[k].length - 1] == filter.input)) {
1116
975
  options[field.fieldId] = filter.output;
1117
976
  flag = true
1118
977
  }
@@ -1120,22 +979,22 @@ export default {
1120
979
  }
1121
980
  }
1122
981
  }
1123
- if (field.formField.extInfo.selfDependent && JSON.stringify(field.formField.extInfo.selfDependent)!=='{}'){
1124
- if (flag){
1125
- for (let k in field.formField.extInfo.selfDependent){
1126
- if (Array.isArray(this.fieldValue[k]) && Array.isArray(this.fieldValue[k][0])){
1127
- this.fieldValue[k].forEach(item=>{
1128
- field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter=>{
1129
- if (Array.isArray(item)){
1130
- if (filter.input === item[item.length - 1]){
1131
- if (!options[field.fieldId]){
982
+ if (field.formField.extInfo.selfDependent && JSON.stringify(field.formField.extInfo.selfDependent) !== '{}') {
983
+ if (flag) {
984
+ for (let k in field.formField.extInfo.selfDependent) {
985
+ if (Array.isArray(this.fieldValue[k]) && Array.isArray(this.fieldValue[k][0])) {
986
+ this.fieldValue[k].forEach(item => {
987
+ field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter => {
988
+ if (Array.isArray(item)) {
989
+ if (filter.input === item[item.length - 1]) {
990
+ if (!options[field.fieldId]) {
1132
991
  options[field.fieldId] = []
1133
992
  }
1134
993
  options[field.fieldId] = options[field.fieldId].concat(filter.output)
1135
994
  }
1136
995
  } else {
1137
- if (filter.input === item){
1138
- if (!options[field.fieldId]){
996
+ if (filter.input === item) {
997
+ if (!options[field.fieldId]) {
1139
998
  options[field.fieldId] = []
1140
999
  }
1141
1000
  options[field.fieldId] = options[field.fieldId].concat(filter.output)
@@ -1145,8 +1004,8 @@ export default {
1145
1004
  })
1146
1005
  }
1147
1006
  else {
1148
- field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter=>{
1149
- if (this.fieldValue[k] && (filter.input === this.fieldValue[k] || this.fieldValue[k][this.fieldValue[k].length - 1] == filter.input)){
1007
+ field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter => {
1008
+ if (this.fieldValue[k] && (filter.input === this.fieldValue[k] || this.fieldValue[k][this.fieldValue[k].length - 1] == filter.input)) {
1150
1009
  options[field.fieldId] = options[field.fieldId].concat(filter.output);
1151
1010
  }
1152
1011
  })
@@ -1154,15 +1013,15 @@ export default {
1154
1013
  }
1155
1014
  }
1156
1015
  else {
1157
- for (let k in field.formField.extInfo.selfDependent){
1158
- if (!this.fieldValue[k]){
1016
+ for (let k in field.formField.extInfo.selfDependent) {
1017
+ if (!this.fieldValue[k]) {
1159
1018
  options[field.fieldId] = field.formField.extInfo.options
1160
1019
  }
1161
- else if (Array.isArray(this.fieldValue[k])){
1162
- this.fieldValue[k].forEach(item=>{
1163
- field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter=>{
1164
- if (filter.input === item){
1165
- if (!options[field.fieldId]){
1020
+ else if (Array.isArray(this.fieldValue[k])) {
1021
+ this.fieldValue[k].forEach(item => {
1022
+ field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter => {
1023
+ if (filter.input === item) {
1024
+ if (!options[field.fieldId]) {
1166
1025
  options[field.fieldId] = []
1167
1026
  }
1168
1027
  options[field.fieldId] = options[field.fieldId].concat(filter.output)
@@ -1171,8 +1030,8 @@ export default {
1171
1030
  })
1172
1031
  }
1173
1032
  else {
1174
- field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter=>{
1175
- if (filter.input === this.fieldValue[k]){
1033
+ field.formField.extInfo.selfDependent[k].filterStruct.forEach(filter => {
1034
+ if (filter.input === this.fieldValue[k]) {
1176
1035
  options[field.fieldId] = filter.output;
1177
1036
  }
1178
1037
  })
@@ -1181,7 +1040,7 @@ export default {
1181
1040
  }
1182
1041
 
1183
1042
  }
1184
- if (!field.formField.extInfo.dependent || (field.formField.extInfo.dependent && !Object.keys(field.formField.extInfo.dependent).length) || (field.formField.extInfo.selfDependent && !Object.keys(field.formField.extInfo.selfDependent).length)){
1043
+ if (!field.formField.extInfo.dependent || (field.formField.extInfo.dependent && !Object.keys(field.formField.extInfo.dependent).length) || (field.formField.extInfo.selfDependent && !Object.keys(field.formField.extInfo.selfDependent).length)) {
1185
1044
  options[field.fieldId] = field.formField.extInfo.options ? field.formField.extInfo.options : (field.formField.extInfo.option ? field.formField.extInfo.option : [])
1186
1045
  }
1187
1046
  }
@@ -1190,15 +1049,15 @@ export default {
1190
1049
  }
1191
1050
  },
1192
1051
  },
1193
- components:{
1052
+ components: {
1194
1053
  myPopup,
1195
1054
  Tree,
1196
1055
  selectPopup,
1197
1056
  fileListView,
1198
1057
  MyEditor
1199
1058
  },
1200
- mounted() {
1201
-
1059
+ mounted () {
1060
+
1202
1061
  // if (this.formList.form.formFieldRelation && this.formList.form.formFieldRelation.length > 0) {
1203
1062
  // this.formList.form.formFieldRelation.forEach(item => {
1204
1063
  // if (item.formField.type === "TIME_PICKER") {
@@ -1218,40 +1077,39 @@ export default {
1218
1077
  // this.ckeditor.editorConfig.toolbar = []
1219
1078
 
1220
1079
  // }
1221
- if (this.mainId == '90df4764122240de939331d372546c28'){
1080
+ this.$i18n.locale = sessionStorage.getItem("systemLanguage") || 'cn';
1081
+ if (this.mainId == '90df4764122240de939331d372546c28') {
1222
1082
  this.isBaiLi = true;
1223
1083
  }
1224
1084
  this.isMobile()
1225
1085
  /* 取值extInfo值的时候需要注意,extInfo有可能存在null的情况 */
1226
1086
  },
1227
- beforeCreate() {
1087
+ beforeCreate () {
1228
1088
  // 等待dom渲染完毕之后,再去显示 三级联动。
1229
- that=this
1089
+ that = this
1230
1090
  this.$nextTick(function () {
1231
1091
  this.pageShow = true;
1232
1092
  })
1233
1093
  },
1234
- created() {
1235
- if(this.disable)
1236
- {
1237
- this.disableds=true
1238
- } else
1239
- {
1240
- this.disableds=false
1094
+ created () {
1095
+ if (this.disable) {
1096
+ this.disableds = true
1097
+ } else {
1098
+ this.disableds = false
1241
1099
  }
1242
1100
  this.submitValue = this.submit ? '已提交' : "提交"
1243
1101
  },
1244
- beforeMount() {
1102
+ beforeMount () {
1245
1103
  that.defaultClick()
1246
1104
  },
1247
1105
  methods: {
1248
- showSelectText(option, itemValue){
1106
+ showSelectText (option, itemValue) {
1249
1107
  let text = "";
1250
- if(Array.isArray(itemValue)){
1108
+ if (Array.isArray(itemValue)) {
1251
1109
  itemValue.forEach((cell, cellIndex) => {
1252
1110
  option.forEach(item => {
1253
- if(item.value == cell) {
1254
- if(cellIndex !== 0){
1111
+ if (item.value == cell) {
1112
+ if (cellIndex !== 0) {
1255
1113
  text = text + ',' + item.label;
1256
1114
  } else {
1257
1115
  text = item.label;
@@ -1259,91 +1117,91 @@ export default {
1259
1117
  }
1260
1118
  })
1261
1119
  })
1262
-
1120
+
1263
1121
  } else {
1264
1122
  option.forEach(item => {
1265
- if(item.value == itemValue) {
1123
+ if (item.value == itemValue) {
1266
1124
  text = item.label;
1267
1125
  }
1268
1126
  })
1269
1127
  }
1270
1128
  return text;
1271
1129
  },
1272
- listenField(){
1130
+ listenField () {
1273
1131
  clearTimeout(this.listenTimer);
1274
1132
  this.listenTimer = null;
1275
1133
  this.listenTimer = setTimeout(() => {
1276
- this.$emit('listenField',this.formList.formActionId);
1277
- },500)
1134
+ this.$emit('listenField', this.formList.formActionId);
1135
+ }, 500)
1278
1136
  },
1279
- setFileDefault(option){
1280
- if (this.formShow.form.formFieldRelation){
1281
- this.formShow.form.formFieldRelation.forEach(item=>{
1137
+ setFileDefault (option) {
1138
+ if (this.formShow.form.formFieldRelation) {
1139
+ this.formShow.form.formFieldRelation.forEach(item => {
1282
1140
  for (const key in option.setDefaultFieldId) {
1283
- if (item.fieldId === key && item.relationDisplay){
1284
- if (option.setDefaultFieldId[key].fieldValue){
1285
- if (item.fieldId === 'workorder_description'){
1141
+ if (item.fieldId === key && item.relationDisplay) {
1142
+ if (option.setDefaultFieldId[key].fieldValue) {
1143
+ if (item.fieldId === 'workorder_description') {
1286
1144
  this.workOrderDestail.value = option.setDefaultFieldId[key].fieldValue
1287
1145
  } else {
1288
1146
  let val = option.setDefaultFieldId[key].fieldValue
1289
- this.$set(item,'value',val)
1290
- if(option.setDefaultFieldId[key].extInfoFieldValue) {
1291
- this.$set(this.extInfoFieldValue,key,option.setDefaultFieldId[key].extInfoFieldValue)
1147
+ this.$set(item, 'value', val)
1148
+ if (option.setDefaultFieldId[key].extInfoFieldValue) {
1149
+ this.$set(this.extInfoFieldValue, key, option.setDefaultFieldId[key].extInfoFieldValue)
1292
1150
  }
1293
- else if (!option.setDefaultFieldId[key].extInfoFieldValue){
1294
- this.$set(this.extInfoFieldValue,key,val)
1151
+ else if (!option.setDefaultFieldId[key].extInfoFieldValue) {
1152
+ this.$set(this.extInfoFieldValue, key, val)
1295
1153
  }
1296
1154
  }
1297
1155
 
1298
1156
  }
1299
1157
  }
1300
- if (item.fieldId === key && !item.relationDisplay){
1301
- let val = item.formField.type === 'CHECKBOX' ? [] :''
1302
- this.$set(item,'value',val)
1303
- this.$set(this.extInfoFieldValue,key,val)
1158
+ if (item.fieldId === key && !item.relationDisplay) {
1159
+ let val = item.formField.type === 'CHECKBOX' ? [] : ''
1160
+ this.$set(item, 'value', val)
1161
+ this.$set(this.extInfoFieldValue, key, val)
1304
1162
  }
1305
1163
  }
1306
1164
  })
1307
1165
  }
1308
1166
 
1309
1167
  },
1310
- fieldSetting(){
1311
- this.formShow.form.formFieldRelation.forEach(item=>{
1168
+ fieldSetting () {
1169
+ this.formShow.form.formFieldRelation.forEach(item => {
1312
1170
  let itemType = item.relationDisplay
1313
- this.$set(item,'relationDisplay',this.relationSet(item.formField,'dependentFieldId'))
1314
- if (item.relationDisplay && this.fieldValue[item.fieldId] && itemType !== item.relationDisplay){
1315
- item.value = JSON.parse(JSON.stringify(this.fieldValue[item.fieldId]));
1316
- if (item.formField.type === 'CASCADER'){
1317
- this.extInfoFieldValue[item.fieldId] = item.formField.extInfo.fieldValue?item.formField.extInfo.fieldValue:null
1171
+ this.$set(item, 'relationDisplay', this.relationSet(item.formField, 'dependentFieldId'))
1172
+ if (item.relationDisplay && this.fieldValue[item.fieldId] && itemType !== item.relationDisplay) {
1173
+ item.value = JSON.parse(JSON.stringify(this.fieldValue[item.fieldId]));
1174
+ if (item.formField.type === 'CASCADER' && !item.formField.extInfo.WebHookParameter) {
1175
+ this.extInfoFieldValue[item.fieldId] = item.formField.extInfo.fieldValue ? item.formField.extInfo.fieldValue : null
1318
1176
  }
1319
1177
  else {
1320
1178
  this.extInfoFieldValue[item.fieldId] = this.extInfoFieldValue[item.fieldId];
1321
1179
  }
1322
1180
  }
1323
- if (!item.relationDisplay){
1324
- if(item.formField.type === 'CHECKBOX'){
1181
+ if (!item.relationDisplay) {
1182
+ if (item.formField.type === 'CHECKBOX') {
1325
1183
  item.value = []
1326
1184
  }
1327
1185
  else {
1328
1186
  item.value = ""
1329
1187
  }
1330
- this.$set(this.extInfoFieldValue, item.fieldId , [])
1331
- this.$set(this.selectValues, item.fieldId , [])
1188
+ this.$set(this.extInfoFieldValue, item.fieldId, [])
1189
+ this.$set(this.selectValues, item.fieldId, [])
1332
1190
  // this.$set(this.extInfoFieldValue, item.fieldId , [])
1333
1191
  // this.extInfoFieldValue[item.fieldId] = []
1334
1192
  // this.selectValues[item.fieldId] = []
1335
1193
  // this.extInfoFieldValue[item.fieldId] = []
1336
- if (item.formField.extInfo.extInfoFieldValue){
1194
+ if (item.formField.extInfo.extInfoFieldValue) {
1337
1195
  item.formField.extInfo.extInfoFieldValue = ''
1338
- this.$set(item.formField.extInfo, 'extInfoFieldValue' , '')
1196
+ this.$set(item.formField.extInfo, 'extInfoFieldValue', '')
1339
1197
  }
1340
1198
  }
1341
- if(this.fieldValue[item.fieldId] && !this.associatedControlsCopy.includes(item.fieldId) && (item.formField.extInfo.selectType == '单选' || item.formField.type == 'RADIO')) {
1199
+ if (this.fieldValue[item.fieldId] && !this.associatedControlsCopy.includes(item.fieldId) && (item.formField.extInfo.selectType == '单选' || item.formField.type == 'RADIO')) {
1342
1200
  let option = null
1343
- if(item.formField.extInfo.options) {
1344
- option = item.formField.extInfo.options.find(ele => { return ele.value == this.fieldValue[item.fieldId]})
1201
+ if (item.formField.extInfo.options) {
1202
+ option = item.formField.extInfo.options.find(ele => { return ele.value == this.fieldValue[item.fieldId] })
1345
1203
  } else if (item.formField.extInfo.cascadeDown) {
1346
- option = this.serchCascaderOption(item.formField.extInfo.cascadeDown.options,item)
1204
+ option = this.serchCascaderOption(item.formField.extInfo.cascadeDown.options, item)
1347
1205
  /*item.formField.extInfo.cascadeDown.options.forEach(ele => {
1348
1206
  if(this.fieldValue[item.fieldId] && this.fieldValue[item.fieldId].length != 0 && ele.value == this.fieldValue[item.fieldId][this.fieldValue[item.fieldId].length - 1]) {
1349
1207
  option = ele
@@ -1362,47 +1220,47 @@ export default {
1362
1220
  } else {
1363
1221
  option = this.extInfoFieldValue[item.fieldId] && this.extInfoFieldValue[item.fieldId][0]
1364
1222
  }
1365
- console.debug('setFileDefault',option)
1366
- if(option && option.setDefaultFieldId) {
1367
- this.setFileDefault(option,item.formField)
1223
+ console.debug('setFileDefault', option)
1224
+ if (option && option.setDefaultFieldId) {
1225
+ this.setFileDefault(option, item.formField)
1368
1226
  }
1369
1227
  }
1370
1228
  })
1371
1229
  },
1372
1230
  // 查找当前节点下与之值符合的字段
1373
- serchCascaderOption(options, items) {
1231
+ serchCascaderOption (options, items) {
1374
1232
  let opt = null;
1375
1233
  for (let index = 0; index < options.length; index++) {
1376
1234
  const row = options[index];
1377
- if(this.fieldValue[items.fieldId] &&
1378
- this.fieldValue[items.fieldId].length != 0 &&
1379
- row.value == this.fieldValue[items.fieldId][this.fieldValue[items.fieldId].length - 1]
1235
+ if (this.fieldValue[items.fieldId] &&
1236
+ this.fieldValue[items.fieldId].length != 0 &&
1237
+ row.value == this.fieldValue[items.fieldId][this.fieldValue[items.fieldId].length - 1]
1380
1238
  ) {
1381
- console.debug('opt',row,options[index])
1239
+ console.debug('opt', row, options[index])
1382
1240
  opt = row
1383
1241
  }
1384
- if(!opt && row.children) {
1242
+ if (!opt && row.children) {
1385
1243
  opt = this.serchCascaderOption(row.children, items)
1386
1244
  }
1387
1245
  }
1388
1246
  return opt
1389
1247
  },
1390
1248
  // 清除当前节点关联的值
1391
- clearOptionStruct() {
1249
+ clearOptionStruct () {
1392
1250
  // this.fieldValue,this.cascadeDetail.field.id
1393
- console.log(this.detailField,'this.cascadeDetail',this.fieldValue[this.detailField.fieldId]);
1251
+ console.log(this.detailField, 'this.cascadeDetail', this.fieldValue[this.detailField.fieldId]);
1394
1252
  let options = [];
1395
- if (this.detailField.formField.extInfo.cascadeDown && this.detailField.formField.extInfo.cascadeDown.options){
1253
+ if (this.detailField.formField.extInfo.cascadeDown && this.detailField.formField.extInfo.cascadeDown.options) {
1396
1254
  options = this.detailField.formField.extInfo.cascadeDown.options
1397
- } else if (this.detailField.formField.extInfo.cascade){
1255
+ } else if (this.detailField.formField.extInfo.cascade) {
1398
1256
  options = this.detailField.formField.extInfo.cascade
1399
- } else if (this.detailField.formField.extInfo.cascadeDown && this.detailField.formField.extInfo.cascadeDown[0]){
1257
+ } else if (this.detailField.formField.extInfo.cascadeDown && this.detailField.formField.extInfo.cascadeDown[0]) {
1400
1258
  options = this.detailField.formField.extInfo.cascadeDown[0].options
1401
1259
  }
1402
1260
  let clear = (options, parent) => {
1403
1261
  for (let index = 0; index < options.length; index++) {
1404
1262
  const opt = options[index];
1405
- if (this.fieldValue[this.detailField.fieldId]){
1263
+ if (this.fieldValue[this.detailField.fieldId]) {
1406
1264
  for (let i = 0; i < this.fieldValue[this.detailField.fieldId].length; i++) {
1407
1265
  const value = this.fieldValue[this.detailField.fieldId][i];
1408
1266
  if (Array.isArray(value)) {
@@ -1430,31 +1288,31 @@ export default {
1430
1288
  }
1431
1289
  }
1432
1290
  }
1433
- if(opt.children && opt.children.length != 0) {
1291
+ if (opt.children && opt.children.length != 0) {
1434
1292
  clear(opt.children)
1435
1293
  }
1436
1294
  }
1437
1295
  }
1438
1296
  clear(options)
1439
1297
  },
1440
- changeSelect(field){
1441
- if ( field.formField.extInfo.selectType !== '多选'){
1442
- let arr = field.formField.extInfo.relationControlsId ? JSON.parse(JSON.stringify(field.formField.extInfo.relationControlsId)) : []
1298
+ changeSelect (field) {
1299
+ if (field.formField.extInfo.selectType !== '多选') {
1300
+ let arr = field.formField.extInfo.relationControlsId ? JSON.parse(JSON.stringify(field.formField.extInfo.relationControlsId)) : []
1443
1301
  this.associatedControlsCopy = [...this.associatedControlsCopy, ...arr];
1444
1302
  }
1445
1303
  this.$forceUpdate();
1446
- this.$set(this.fieldValue,field.fieldId,field.value);
1447
- this.formShow.form.formFieldRelation.forEach(item=>{
1304
+ this.$set(this.fieldValue, field.fieldId, field.value);
1305
+ this.formShow.form.formFieldRelation.forEach(item => {
1448
1306
  if (item.formField.type === 'CASCADER' ||
1449
- item.formField.type === 'SELECT' ||
1450
- item.formField.type === 'RADIO' ||
1451
- item.formField.type === 'CHECKBOX'){
1452
- if (item.formField.extInfo && item.formField.extInfo.dependent){
1453
- for (let k in item.formField.extInfo.dependent){
1454
- if (k === field.fieldId && field.value !== item.formField.extInfo.dependent[k].input){
1307
+ item.formField.type === 'SELECT' ||
1308
+ item.formField.type === 'RADIO' ||
1309
+ item.formField.type === 'CHECKBOX') {
1310
+ if (item.formField.extInfo && item.formField.extInfo.dependent) {
1311
+ for (let k in item.formField.extInfo.dependent) {
1312
+ if (k === field.fieldId && field.value !== item.formField.extInfo.dependent[k].input) {
1455
1313
  item.value = item.formField.type === 'CHECKBOX' || item.formField.type === 'CASCADER' ? [] : "";
1456
- if (this.extInfoFieldValue[item.fieldId]){
1457
- this.$set(this.extInfoFieldValue,item.fieldId,[])
1314
+ if (this.extInfoFieldValue[item.fieldId]) {
1315
+ this.$set(this.extInfoFieldValue, item.fieldId, [])
1458
1316
  }
1459
1317
  }
1460
1318
  }
@@ -1462,91 +1320,91 @@ export default {
1462
1320
  }
1463
1321
  })
1464
1322
  },
1465
- selectOptions(field){
1323
+ selectOptions (field) {
1466
1324
  let options = []
1467
- if (!field.extInfo){
1325
+ if (!field.extInfo) {
1468
1326
  return []
1469
1327
  }
1470
- if (field.extInfo.option){
1328
+ if (field.extInfo.option) {
1471
1329
  options = field.extInfo.option
1472
1330
  }
1473
- else if (field.extInfo.options){
1331
+ else if (field.extInfo.options) {
1474
1332
  options = field.extInfo.options
1475
1333
  }
1476
1334
  return options
1477
1335
  },
1478
- getMoldTime(){
1336
+ getMoldTime () {
1479
1337
  let otherTime = {}
1480
- this.formList.form && this.formList.form.formFieldRelation.forEach(item=>{
1481
- if ((item.formField.type==='TIME_PICKER' || item.formField.type==='TIME_PICKER_RANGE') && item.formField.extInfo.mold==='OTHER'){
1338
+ this.formList.form && this.formList.form.formFieldRelation.forEach(item => {
1339
+ if ((item.formField.type === 'TIME_PICKER' || item.formField.type === 'TIME_PICKER_RANGE') && item.formField.extInfo.mold === 'OTHER') {
1482
1340
  let pattern = item.formField.extInfo.pattern
1483
- let yearVal = pattern.indexOf('YEAR')!==-1
1484
- let monthVal = pattern.indexOf('MONTH')!==-1
1485
- let dayVal = pattern.indexOf('DAY')!==-1
1486
- let hourVal = pattern.indexOf('HOUR')!==-1
1487
- let minuteVal = pattern.indexOf('MINUTE')!==-1
1488
- let secondVal = pattern.indexOf('SECOND')!==-1
1489
- if ((yearVal||monthVal||dayVal)&&(!hourVal&&!minuteVal&&!secondVal)){
1490
- otherTime[item.fieldId]='DATE'
1341
+ let yearVal = pattern.indexOf('YEAR') !== -1
1342
+ let monthVal = pattern.indexOf('MONTH') !== -1
1343
+ let dayVal = pattern.indexOf('DAY') !== -1
1344
+ let hourVal = pattern.indexOf('HOUR') !== -1
1345
+ let minuteVal = pattern.indexOf('MINUTE') !== -1
1346
+ let secondVal = pattern.indexOf('SECOND') !== -1
1347
+ if ((yearVal || monthVal || dayVal) && (!hourVal && !minuteVal && !secondVal)) {
1348
+ otherTime[item.fieldId] = 'DATE'
1491
1349
  }
1492
- else if ((yearVal||monthVal||dayVal)&&(hourVal||minuteVal||secondVal)){
1493
- otherTime[item.fieldId]='DATE_TIME'
1350
+ else if ((yearVal || monthVal || dayVal) && (hourVal || minuteVal || secondVal)) {
1351
+ otherTime[item.fieldId] = 'DATE_TIME'
1494
1352
  }
1495
- else if ((hourVal||minuteVal||secondVal)&&(!yearVal&&!monthVal&&!dayVal)){
1496
- otherTime[item.fieldId]='TIME'
1353
+ else if ((hourVal || minuteVal || secondVal) && (!yearVal && !monthVal && !dayVal)) {
1354
+ otherTime[item.fieldId] = 'TIME'
1497
1355
  }
1498
1356
  }
1499
1357
  })
1500
1358
  return otherTime
1501
1359
  },
1502
- setOptions(extInfo){
1360
+ setOptions (extInfo) {
1503
1361
  let options = []
1504
- console.debug('cascadeDown',extInfo)
1505
- if (extInfo.cascadeDown && extInfo.cascadeDown.options){
1362
+ console.debug('cascadeDown', extInfo)
1363
+ if (extInfo.cascadeDown && extInfo.cascadeDown.options) {
1506
1364
  options = extInfo.cascadeDown.options
1507
1365
  return options
1508
- } else if (extInfo.cascade){
1366
+ } else if (extInfo.cascade) {
1509
1367
  options = extInfo.cascade
1510
- } else if (extInfo.cascadeDown && extInfo.cascadeDown[0]){
1368
+ } else if (extInfo.cascadeDown && extInfo.cascadeDown[0]) {
1511
1369
  options = extInfo.cascadeDown[0].options
1512
1370
  }
1513
- return options
1371
+ return options
1514
1372
  },
1515
- onReady(){
1373
+ onReady () {
1516
1374
 
1517
1375
 
1518
1376
  },
1519
- beforeRead(file,type){
1520
- console.debug('file',file)
1521
- console.debug('fileType',!Array.isArray(file))
1522
- if (!Array.isArray(file)){
1523
- if (type === 'IMAGE' || type === 'FILE'){
1377
+ beforeRead (file, type) {
1378
+ console.debug('file', file)
1379
+ console.debug('fileType', !Array.isArray(file))
1380
+ if (!Array.isArray(file)) {
1381
+ if (type === 'IMAGE' || type === 'FILE') {
1524
1382
  const isLte2M = file.size / 1024 / 1024 <= 8;
1525
- const isSupportedFormat = file.type.indexOf('image')!==-1
1526
- if (!isSupportedFormat){
1383
+ const isSupportedFormat = file.type.indexOf('image') !== -1
1384
+ if (!isSupportedFormat) {
1527
1385
  this.$message.error("只能上传图片格式");
1528
1386
  return false
1529
1387
  }
1530
- if (!isLte2M&&isSupportedFormat) {
1388
+ if (!isLte2M && isSupportedFormat) {
1531
1389
  this.$message.error("上传图片大小不能超过 8MB!");
1532
1390
  return false
1533
1391
  }
1534
1392
  return true
1535
1393
  }
1536
- else if (type === 'VIDEO'){
1394
+ else if (type === 'VIDEO') {
1537
1395
  const isLte2M = file.size / 1024 / 1024 <= 100;
1538
- const isSupportedFormat =file.type.indexOf('video')!==-1
1539
- if (!isSupportedFormat){
1396
+ const isSupportedFormat = file.type.indexOf('video') !== -1
1397
+ if (!isSupportedFormat) {
1540
1398
  this.$message.error("只能上传视频格式");
1541
1399
  return false
1542
1400
  }
1543
- if (!isLte2M&&isSupportedFormat) {
1401
+ if (!isLte2M && isSupportedFormat) {
1544
1402
  this.$message.error("上传视频大小不能超过100MB!");
1545
1403
  return false
1546
1404
  }
1547
1405
  return true
1548
1406
  }
1549
- else if (type === 'ATTACHMENT'){
1407
+ else if (type === 'ATTACHMENT') {
1550
1408
  const isLte2M = file.size / 1024 / 1024 <= 100;
1551
1409
  if (!isLte2M) {
1552
1410
  this.$message.error("上传附件大小不能超过100MB!");
@@ -1555,40 +1413,40 @@ export default {
1555
1413
  return true
1556
1414
  }
1557
1415
  }
1558
- else{
1416
+ else {
1559
1417
  let length = 0
1560
- if (this.extInfoFieldValue[this.filedId]){
1418
+ if (this.extInfoFieldValue[this.filedId]) {
1561
1419
  length = this.extInfoFieldValue[this.filedId].length
1562
1420
  }
1563
- if (file.length<=this.limitNum-length){
1564
- for (let i=0;i<file.length;i++){
1565
- if (type === 'IMAGE' || type === 'FILE'){
1421
+ if (file.length <= this.limitNum - length) {
1422
+ for (let i = 0; i < file.length; i++) {
1423
+ if (type === 'IMAGE' || type === 'FILE') {
1566
1424
  const isLte2M = file[i].size / 1024 / 1024 <= 8;
1567
- const isSupportedFormat =file[i].type.indexOf('image')!==-1
1568
- if (!isSupportedFormat){
1425
+ const isSupportedFormat = file[i].type.indexOf('image') !== -1
1426
+ if (!isSupportedFormat) {
1569
1427
  this.$message.error("只能上传图片格式");
1570
1428
  return false
1571
1429
  }
1572
- if (!isLte2M&&isSupportedFormat) {
1430
+ if (!isLte2M && isSupportedFormat) {
1573
1431
  this.$message.error("上传图片大小不能超过 8MB!");
1574
1432
  return false
1575
1433
  }
1576
1434
  return true
1577
1435
  }
1578
- else if (type === 'VIDEO'){
1436
+ else if (type === 'VIDEO') {
1579
1437
  const isLte2M = file[i].size / 1024 / 1024 <= 100;
1580
- const isSupportedFormat =file[i].type.indexOf('video')!==-1
1581
- if (!isSupportedFormat){
1438
+ const isSupportedFormat = file[i].type.indexOf('video') !== -1
1439
+ if (!isSupportedFormat) {
1582
1440
  this.$message.error("只能上传视频格式");
1583
1441
  return false
1584
1442
  }
1585
- if (!isLte2M&&isSupportedFormat) {
1443
+ if (!isLte2M && isSupportedFormat) {
1586
1444
  this.$message.error("上传视频大小不能超过100MB!");
1587
1445
  return false
1588
1446
  }
1589
1447
  return true
1590
1448
  }
1591
- else if (type === 'ATTACHMENT'){
1449
+ else if (type === 'ATTACHMENT') {
1592
1450
  const isLte2M = file[i].size / 1024 / 1024 <= 100;
1593
1451
  if (!isLte2M) {
1594
1452
  this.$message.error("上传附件大小不能超过100MB!");
@@ -1600,10 +1458,10 @@ export default {
1600
1458
  }
1601
1459
  else {
1602
1460
  let num = 1
1603
- if (this.limitNum){
1461
+ if (this.limitNum) {
1604
1462
  num = this.limitNum
1605
1463
  }
1606
- let messageText = '仅支持上传'+num+'个'
1464
+ let messageText = '仅支持上传' + num + '个'
1607
1465
  this.$message.error(messageText);
1608
1466
  return false
1609
1467
  }
@@ -1612,63 +1470,62 @@ export default {
1612
1470
 
1613
1471
  },
1614
1472
  //文件上传至服务器
1615
- afterRead(file){
1616
- this.fileUpload=true
1473
+ afterRead (file) {
1474
+ this.fileUpload = true
1617
1475
  console.debug(file)
1618
1476
  console.debug(!Array.isArray(file))
1619
- if (!Array.isArray(file)){
1620
- this.uploadImgFun(file.content,file.file.name,file,file.file);
1477
+ if (!Array.isArray(file)) {
1478
+ this.uploadImgFun(file.content, file.file.name, file, file.file);
1621
1479
  }
1622
1480
  else {
1623
1481
  let num = 1
1624
- if (this.limitNum){
1482
+ if (this.limitNum) {
1625
1483
  num = this.limitNum
1626
1484
  }
1627
- if (file.length >num){
1628
- this.$message.warning('仅支持上传'+num+'张图片')
1485
+ if (file.length > num) {
1486
+ this.$message.warning('仅支持上传' + num + '张图片')
1629
1487
  return false
1630
1488
  }
1631
1489
  else {
1632
- for (let i = 0; i < file.length; i++){
1633
- this.uploadImgFun(file[i].content,file[i].file.name,file[i],file[i].file);
1490
+ for (let i = 0; i < file.length; i++) {
1491
+ this.uploadImgFun(file[i].content, file[i].file.name, file[i], file[i].file);
1634
1492
  }
1635
1493
  }
1636
1494
  }
1637
1495
  },
1638
- uploadImgFun(content,name,fileCon,file){
1496
+ uploadImgFun (content, name, fileCon, file) {
1639
1497
  console.log(fileCon)
1640
1498
  let imageData = {
1641
- urls:[]
1499
+ urls: []
1642
1500
  }
1643
1501
  let imageInfo = {
1644
- name:"",
1645
- status:'',
1646
- url:''
1502
+ name: "",
1503
+ status: '',
1504
+ url: ''
1647
1505
  }
1648
1506
  let res = multipartUpload(
1649
- this.ossConfig,
1650
- file,
1651
- null,
1652
- imageInfo
1507
+ file,
1508
+ null,
1509
+ imageInfo
1653
1510
  );
1654
1511
  res.then((res) => {
1655
1512
  console.log("upload result:", res);
1656
1513
  // let filePath = res.name;
1657
1514
  imageData.urls.push({
1658
- name:file.name,
1659
- url:ossFileUrl(this.ossConfig, res.name),
1660
- status:'success'
1515
+ name: file.name,
1516
+ url: ossFileUrl(res.name),
1517
+ status: 'success'
1661
1518
  })
1662
- imageInfo.url = ossFileUrl(this.ossConfig, res.name)
1663
- imageInfo.status='success'
1664
- imageInfo.name=file.name
1665
- for (let j=0;j<this.extInfoFieldValue[this.filedId].length;j++){
1666
- if (this.extInfoFieldValue[this.filedId][j].content && this.extInfoFieldValue[this.filedId][j].content === content){
1667
- this.$set(this.extInfoFieldValue[this.filedId],j,imageInfo)
1519
+ imageInfo.url = ossFileUrl(res.name)
1520
+ imageInfo.status = 'success'
1521
+ imageInfo.name = file.name
1522
+ for (let j = 0; j < this.extInfoFieldValue[this.filedId].length; j++) {
1523
+ if (this.extInfoFieldValue[this.filedId][j].content && this.extInfoFieldValue[this.filedId][j].content === content) {
1524
+ this.$set(this.extInfoFieldValue[this.filedId], j, imageInfo)
1668
1525
  delete this.extInfoFieldValue[this.filedId][j].content
1669
1526
  }
1670
1527
  }
1671
- this.fileUpload=false
1528
+ this.fileUpload = false
1672
1529
  }).catch((err) => {
1673
1530
  console.debug("upload err", err);
1674
1531
  });
@@ -1687,62 +1544,29 @@ export default {
1687
1544
  return new File([u8arr], filename, { type: mime });
1688
1545
  },
1689
1546
  //初始化默认值
1690
- defaultClick() {
1547
+ defaultClick () {
1691
1548
  let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i);
1692
- for (let i = 0; i < this.formList.form.formFieldRelation.length; i++){
1549
+ for (let i = 0; i < this.formList.form.formFieldRelation.length; i++) {
1693
1550
  let type = this.formList.form.formFieldRelation[i].formField.type
1694
1551
  let extInfo = this.formList.form.formFieldRelation[i].formField.extInfo
1695
- if(type ==='SELECT' || type === 'CHECKBOX' || type === 'RADIO' || type === 'OPTION') {
1696
- if(extInfo && !extInfo.option){
1697
- if(extInfo.exinfo){
1698
- for (let j=0; j < extInfo.exinfo.length; j++){
1699
- this.$set(extInfo.exinfo[j],'label',extInfo.exinfo[j].value)
1700
- }
1701
- this.$set(extInfo,'option',extInfo.exinfo)
1702
- }
1703
- if (extInfo.option){
1704
- if (type === 'RADIO') {
1705
- for (let j = 0; j < extInfo.option.length; j++) {
1706
- if(!extInfo.option[j].value) {
1707
- extInfo.option[j].value=extInfo.option[j].label
1708
- }
1709
- }
1710
- if(!this.formList.form.formFieldRelation[i].value){
1711
- for (let j = 0; j < extInfo.option.length; j++) {
1712
- if (extInfo.option[j]._default === 'true') {
1713
- this.formList.form.formFieldRelation[i].value = extInfo.option[j].value
1714
- }
1715
- }
1716
- }
1717
- }
1718
- if (type === 'CHECKBOX') {
1719
- for (let j = 0; j < extInfo.option.length; j++) {
1720
- if (!extInfo.option[j].value) {
1721
- extInfo.option[j].value = extInfo.option[j].label
1722
- }
1723
- }
1724
- if (!this.formList.form.formFieldRelation[i].value || this.formList.form.formFieldRelation[i].value.length === 0){
1725
- this.formList.form.formFieldRelation[i].value = []
1726
- for (let j = 0; j < extInfo.option.length; j++) {
1727
- if (extInfo.option[j]._default === 'true') {
1728
- this.formList.form.formFieldRelation[i].value[0] = extInfo.option[j].value
1729
- }
1730
- }
1731
- }
1552
+ if (type === 'SELECT' || type === 'CHECKBOX' || type === 'RADIO' || type === 'OPTION') {
1553
+ if (extInfo && !extInfo.option) {
1554
+ if (extInfo.exinfo) {
1555
+ for (let j = 0; j < extInfo.exinfo.length; j++) {
1556
+ this.$set(extInfo.exinfo[j], 'label', extInfo.exinfo[j].value)
1732
1557
  }
1558
+ this.$set(extInfo, 'option', extInfo.exinfo)
1733
1559
  }
1734
1560
  }
1735
1561
  else {
1736
1562
  if (extInfo && extInfo.options) {
1737
1563
  if (type === 'RADIO') {
1738
1564
  for (let j = 0; j < extInfo.options.length; j++) {
1739
- if(!extInfo.options[j].value)
1740
- {
1741
- extInfo.options[j].value=extInfo.options[j].label
1565
+ if (!extInfo.options[j].value) {
1566
+ extInfo.options[j].value = extInfo.options[j].label
1742
1567
  }
1743
1568
  }
1744
- if(!this.formList.form.formFieldRelation[i].value)
1745
- {
1569
+ if (!this.formList.form.formFieldRelation[i].value) {
1746
1570
  for (let j = 0; j < extInfo.option.length; j++) {
1747
1571
  if (extInfo.options[j]._default === 'true') {
1748
1572
  this.formList.form.formFieldRelation[i].value = extInfo.options[j].value
@@ -1757,9 +1581,8 @@ export default {
1757
1581
  }
1758
1582
  }
1759
1583
 
1760
- if (!this.formList.form.formFieldRelation[i].value ||this.formList.form.formFieldRelation[i].value.length === 0)
1761
- {
1762
- this.formList.form.formFieldRelation[i].value=[]
1584
+ if (!this.formList.form.formFieldRelation[i].value || this.formList.form.formFieldRelation[i].value.length === 0) {
1585
+ this.formList.form.formFieldRelation[i].value = []
1763
1586
  for (let j = 0; j < extInfo.options.length; j++) {
1764
1587
  if (extInfo.options[j]._default === 'true') {
1765
1588
  this.formList.form.formFieldRelation[i].value[0] = extInfo.options[j].value
@@ -1770,55 +1593,55 @@ export default {
1770
1593
  }
1771
1594
  }
1772
1595
  let options = [];
1773
- if (extInfo){
1774
- options = extInfo.option?extInfo.option:extInfo.options;
1775
- options.forEach(opt=>{
1776
- if (!opt.value){
1596
+ if (extInfo) {
1597
+ options = extInfo.option ? extInfo.option : extInfo.options;
1598
+ options.forEach(opt => {
1599
+ if (!opt.value) {
1777
1600
  opt.value = opt.label
1778
1601
  }
1779
1602
  })
1780
1603
  }
1781
1604
  }
1782
- if (type ==='FILE' || type == 'ATTACHMENT' || type == 'IMAGE' || type == 'VIDEO'){
1783
- if (this.formList.form.formFieldRelation[i].value){
1784
- if (this.formList.form.formFieldRelation[i].value===null||this.formList.form.formFieldRelation[i].value===''){
1785
- this.formList.form.formFieldRelation[i].value=[]
1605
+ if (type === 'FILE' || type == 'ATTACHMENT' || type == 'IMAGE' || type == 'VIDEO') {
1606
+ if (this.formList.form.formFieldRelation[i].value) {
1607
+ if (this.formList.form.formFieldRelation[i].value === null || this.formList.form.formFieldRelation[i].value === '') {
1608
+ this.formList.form.formFieldRelation[i].value = []
1786
1609
  }
1787
1610
  else {
1788
- let valueList=[]
1789
- let bool=false
1611
+ let valueList = []
1612
+ let bool = false
1790
1613
 
1791
- if (!Array.isArray(this.formList.form.formFieldRelation[i].value)){
1614
+ if (!Array.isArray(this.formList.form.formFieldRelation[i].value)) {
1792
1615
  let obj = {
1793
- url:this.formList.form.formFieldRelation[i].value
1616
+ url: this.formList.form.formFieldRelation[i].value
1794
1617
  }
1795
1618
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = [obj]
1796
1619
  }
1797
- else if(this.formList.form.formFieldRelation[i].value.length > 0) {
1798
- for (let file=0;file<this.formList.form.formFieldRelation[i].value.length;file++) {
1799
- let type = typeof (this.formList.form.formFieldRelation[i].value[file])
1800
- if (type === "string") {
1801
- bool = true
1802
- valueList[file] = {}
1803
- valueList[file].url = this.formList.form.formFieldRelation[i].value[file]
1804
- }
1805
- if (type === 'object'&&JSON.stringify(this.formList.form.formFieldRelation[i].value[file])!=='{}') {
1806
- this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId]=this.formList.form.formFieldRelation[i].value
1807
- }
1808
- else {
1809
- this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId]=[]
1810
- }
1620
+ else if (this.formList.form.formFieldRelation[i].value.length > 0) {
1621
+ for (let file = 0; file < this.formList.form.formFieldRelation[i].value.length; file++) {
1622
+ let type = typeof (this.formList.form.formFieldRelation[i].value[file])
1623
+ if (type === "string") {
1624
+ bool = true
1625
+ valueList[file] = {}
1626
+ valueList[file].url = this.formList.form.formFieldRelation[i].value[file]
1811
1627
  }
1812
- if (bool){
1813
- this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId]=valueList
1628
+ if (type === 'object' && JSON.stringify(this.formList.form.formFieldRelation[i].value[file]) !== '{}') {
1629
+ this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = this.formList.form.formFieldRelation[i].value
1814
1630
  }
1631
+ else {
1632
+ this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = []
1633
+ }
1634
+ }
1635
+ if (bool) {
1636
+ this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = valueList
1637
+ }
1815
1638
  }
1816
1639
  }
1817
1640
  }
1818
1641
  }
1819
- if (type === 'REF' || type === 'REF_TEMPLATE'){
1820
- if (this.formList.form.formFieldRelation[i].formField.extInfo.extInfoFieldValue){
1821
- let name = this.formList.form.formFieldRelation[i].formField.extInfo.extInfoFieldValue.map(item=>{
1642
+ if (type === 'REF' || type === 'REF_TEMPLATE') {
1643
+ if (this.formList.form.formFieldRelation[i].formField.extInfo.extInfoFieldValue) {
1644
+ let name = this.formList.form.formFieldRelation[i].formField.extInfo.extInfoFieldValue.map(item => {
1822
1645
  return item.name
1823
1646
  })
1824
1647
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = name
@@ -1826,8 +1649,8 @@ export default {
1826
1649
  }
1827
1650
  /*如何工单描述中只有一个链接地址,则将链接地址替换成图片*/
1828
1651
  if (this.formList.form.formFieldRelation[i].fieldId === 'workorder_description' &&
1829
- this.formList.form.formFieldRelation[i].value.search(/<img /i) < 0 &&
1830
- this.formList.form.formFieldRelation[i].value.indexOf('https://guoranopen-zjk')!==-1){
1652
+ this.formList.form.formFieldRelation[i].value.search(/<img /i) < 0 &&
1653
+ this.formList.form.formFieldRelation[i].value.indexOf('https://guoranopen-zjk') !== -1) {
1831
1654
  let value = this.formList.form.formFieldRelation[i].value
1832
1655
  this.formList.form.formFieldRelation[i].value = ""
1833
1656
  let blob = null
@@ -1839,9 +1662,9 @@ export default {
1839
1662
  xhr.onload = (res) => {
1840
1663
  // 获取返回结果
1841
1664
  blob = xhr.response
1842
- file = new File([blob],'图片')
1665
+ file = new File([blob], '图片')
1843
1666
  let obj = {
1844
- file:[file]
1667
+ file: [file]
1845
1668
  }
1846
1669
  this.currentEditor.commands.get("imageUpload").execute(obj)
1847
1670
  }
@@ -1852,30 +1675,35 @@ export default {
1852
1675
  let type = this.formList.form.formFieldRelation[i].formField.type
1853
1676
  let extInfo = this.formList.form.formFieldRelation[i].formField.extInfo
1854
1677
  if (type === 'CASCADER') {
1855
- let fieldValue = this.formList.form.formFieldRelation[i].formField.extInfo.fieldValue ?
1856
- this.formList.form.formFieldRelation[i].formField.extInfo.fieldValue :[]
1857
- if (!this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId]){
1858
- this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = fieldValue
1859
- }
1678
+ // let fieldValue = this.formList.form.formFieldRelation[i].formField.extInfo.fieldValue ?
1679
+ // this.formList.form.formFieldRelation[i].formField.extInfo.fieldValue : []
1680
+ // if (!this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId]) {
1681
+ // this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = fieldValue
1682
+ // console.log(this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId], 'this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId]');
1683
+ // }
1684
+ let cascadeOptions = extInfo.WebHookParameter ? extInfo.cascade : extInfo.cascadeDown.options
1685
+ this.$set(this.extInfoFieldValue, this.formList.form.formFieldRelation[i].fieldId, [])
1686
+ this.loopCascaderSetDefalut(cascadeOptions, this.formList.form.formFieldRelation[i], extInfo.selectType)
1687
+ this.loopCascaderSetValue(cascadeOptions, this.formList.form.formFieldRelation[i], extInfo.selectType)
1688
+
1860
1689
  }
1861
1690
  if (type === 'DATE_PICKER') {
1862
- if(this.formList.form.formFieldRelation[i].value && this.formList.form.formFieldRelation[i].value!==null && this.formList.form.formFieldRelation[i].value!=='' ) {
1863
- this.dateValue[this.formList.form.formFieldRelation[i].fieldId]=this.formatDate(this.formList.form.formFieldRelation[i].value)
1691
+ if (this.formList.form.formFieldRelation[i].value && this.formList.form.formFieldRelation[i].value !== null && this.formList.form.formFieldRelation[i].value !== '') {
1692
+ this.dateValue[this.formList.form.formFieldRelation[i].fieldId] = this.formatDate(this.formList.form.formFieldRelation[i].value)
1864
1693
  }
1865
1694
  }
1866
1695
  if (type === 'TIME_PICKER') {
1867
- if(this.formList.form.formFieldRelation[i].value && this.formList.form.formFieldRelation[i].value!==''&& this.formList.form.formFieldRelation[i].value!==null)
1868
- {
1696
+ if (this.formList.form.formFieldRelation[i].value && this.formList.form.formFieldRelation[i].value !== '' && this.formList.form.formFieldRelation[i].value !== null) {
1869
1697
  // 判断是否是时间戳 时间戳为字符串转换为Number
1870
1698
  var regex = /^\d{13}$/;
1871
- if (regex.test(this.formList.form.formFieldRelation[i].value)){
1699
+ if (regex.test(this.formList.form.formFieldRelation[i].value)) {
1872
1700
  this.formList.form.formFieldRelation[i].value = Number(this.formList.form.formFieldRelation[i].value)
1873
1701
  }
1874
1702
  const dateTime = new Date(this.formList.form.formFieldRelation[i].value);
1875
1703
  if (!this.formList.form.formFieldRelation[i].formField.extInfo.mold ||
1876
- this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'TIME' ||
1877
- this.getMoldTime(this.formList.form.formFieldRelation[i].formField.formField) == 'TIME'){
1878
- if (!flag){
1704
+ this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'TIME' ||
1705
+ this.getMoldTime(this.formList.form.formFieldRelation[i].formField.formField) == 'TIME') {
1706
+ if (!flag) {
1879
1707
  if (this.formList.form.formFieldRelation[i].value.length === 5 && this.formList.form.formFieldRelation[i].value.split(":").length === 2) {
1880
1708
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = this.formList.form.formFieldRelation[i].value;
1881
1709
  this.formList.form.formFieldRelation[i].value = new Date().getFullYear() + "-" + (new Date().getMonth() + 1) + "-" + new Date().getDate() + " " + this.formList.form.formFieldRelation[i].value + ":00";
@@ -1884,14 +1712,14 @@ export default {
1884
1712
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = this.formList.form.formFieldRelation[i].value;
1885
1713
  this.formList.form.formFieldRelation[i].value = new Date().getFullYear() + "-" + (new Date().getMonth() + 1) + "-" + new Date().getDate() + " " + this.formList.form.formFieldRelation[i].value;
1886
1714
  } else {
1887
- if (regex.test(this.formList.form.formFieldRelation[i].value)){
1715
+ if (regex.test(this.formList.form.formFieldRelation[i].value)) {
1888
1716
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = dateTime
1889
1717
  } else {
1890
1718
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = this.formList.form.formFieldRelation[i].value
1891
1719
  }
1892
1720
  }
1893
1721
  } else {
1894
- if (regex.test(this.formList.form.formFieldRelation[i].value)){
1722
+ if (regex.test(this.formList.form.formFieldRelation[i].value)) {
1895
1723
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = dateTime.Format('hh:mm')
1896
1724
  } else {
1897
1725
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = this.formList.form.formFieldRelation[i].value
@@ -1899,25 +1727,25 @@ export default {
1899
1727
  }
1900
1728
  }
1901
1729
  else if (this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'DATA_TIME' ||
1902
- this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'DATE_TIME' ||
1903
- this.getMoldTime(this.formList.form.formFieldRelation[i].formField.formField) == 'DATE_TIME'){
1730
+ this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'DATE_TIME' ||
1731
+ this.getMoldTime(this.formList.form.formFieldRelation[i].formField.formField) == 'DATE_TIME') {
1904
1732
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = dateTime.Format('yyyy-MM-dd hh:mm')
1905
1733
  }
1906
1734
  else if (this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'DATA' ||
1907
- this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'DATE' ||
1908
- this.getMoldTime(this.formList.form.formFieldRelation[i].formField.formField) == 'DATE'){
1735
+ this.formList.form.formFieldRelation[i].formField.extInfo.mold == 'DATE' ||
1736
+ this.getMoldTime(this.formList.form.formFieldRelation[i].formField.formField) == 'DATE') {
1909
1737
  this.extInfoFieldValue[this.formList.form.formFieldRelation[i].fieldId] = dateTime.Format('yyyy-MM-dd')
1910
1738
  }
1911
1739
  }
1912
1740
  }
1913
1741
  if (type === 'SELECT' || type === 'OPTION') {
1914
- if (extInfo && extInfo.option){
1742
+ if (extInfo && extInfo.option) {
1915
1743
  for (let j = 0; j < extInfo.option.length; j++) {
1916
1744
  if (extInfo.option[j].value === '') {
1917
1745
  extInfo.option[j].value = extInfo.option[j].label
1918
1746
  }
1919
1747
  }
1920
- if(this.formList.form.formFieldRelation[i].value) {
1748
+ if (this.formList.form.formFieldRelation[i].value) {
1921
1749
  for (let j = 0; j < extInfo.option.length; j++) {
1922
1750
  if (this.formList.form.formFieldRelation[i].value === extInfo.option[j].value) {
1923
1751
  this.selectValues[this.formList.form.formFieldRelation[i].fieldId] = extInfo.option[j].label
@@ -1925,51 +1753,76 @@ export default {
1925
1753
  }
1926
1754
  } else {
1927
1755
  for (let j = 0; j < extInfo.option.length; j++) {
1928
- if (extInfo.option[j]._default === 'true') {
1929
- this.selectValues[this.formList.form.formFieldRelation[i].fieldId] = extInfo.option[j].label
1930
- this.formList.form.formFieldRelation[i].value=extInfo.option[j].value
1931
- }
1932
- }
1933
- }
1934
- } else {
1935
- if(extInfo && extInfo.option) {
1936
- for (let j = 0; j < extInfo.options.length; j++) {
1937
- if (extInfo.options[j].value === '') {
1938
- extInfo.options[j].value = extInfo.options[j].label
1939
- }
1940
- }
1941
- }
1942
- if(this.formList.form.formFieldRelation[i].value && extInfo && extInfo.option) {
1943
- for (let j=0;j<extInfo.options.length;j++) {
1944
- if (this.formList.form.formFieldRelation[i].value === extInfo.options[j].value) {
1945
- this.selectValues[this.formList.form.formFieldRelation[i].fieldId] =extInfo.options[j].label
1946
- }
1947
- }
1948
- } else {
1949
- if(extInfo && extInfo.option) {
1950
- for (let j = 0; j < extInfo.options.length; j++) {
1951
- if (extInfo.options[j]._default === 'true') {
1952
- this.selectValues[this.formList.form.formFieldRelation[i].fieldId] = extInfo.options[j].label
1953
- this.formList.form.formFieldRelation[i].value=extInfo.options[j].value
1756
+ if (extInfo.option[j]._default === 'true' || extInfo.option[j].checked) {
1757
+ // 新老数据兼容,webhook 表单字段部分,旧数据中没有定义单选多选,如果设置了默认值,并且 selectType 不是多选 都记为单选
1758
+ if(extInfo.selectType == '多选') {
1759
+ if(!this.selectValues[this.formList.form.formFieldRelation[i].fieldId]) {
1760
+ this.$set(this.selectValues, this.formList.form.formFieldRelation[i].fieldId, [])
1761
+ }
1762
+ if(!this.formList.form.formFieldRelation[i].value) {
1763
+ this.$set(this.formList.form.formFieldRelation[i], 'value', [])
1764
+ }
1765
+ this.selectValues[this.formList.form.formFieldRelation[i].fieldId].push(extInfo.option[j].label)
1766
+ this.formList.form.formFieldRelation[i].value.push(extInfo.option[j].value)
1767
+ } else {
1768
+ this.selectValues[this.formList.form.formFieldRelation[i].fieldId] = extInfo.option[j].label
1769
+ this.formList.form.formFieldRelation[i].value = extInfo.option[j].value
1954
1770
  }
1955
1771
  }
1956
1772
  }
1957
1773
  }
1774
+ } else {
1775
+
1958
1776
  }
1959
1777
  }
1960
1778
  }
1961
- if (this.formList.extInfo && this.formList.extInfo.extInfoFieldValue){
1779
+ if (this.formList.extInfo && this.formList.extInfo.extInfoFieldValue) {
1962
1780
  this.extInfoFieldValue = this.formList.extInfo.extInfoFieldValue
1963
1781
  }
1964
1782
  this.formShow = this.formList
1965
1783
  },
1966
- addZero(i) {
1784
+ // 给级联字段设置默认值
1785
+ loopCascaderSetDefalut(list, field, selectType) {
1786
+ // this.extInfoFieldValue[field.fieldId] = []
1787
+ console.log(field.fieldId, this.extInfoFieldValue[field.fieldId], 'this.extInfoFieldValuethis.extInfoFieldValue');
1788
+ list && list.forEach(item =>{
1789
+ if(item.checked) {
1790
+ if(selectType == '多选') {
1791
+ this.extInfoFieldValue[field.fieldId].push({
1792
+ label: item.label,
1793
+ value: item.value
1794
+ })
1795
+ } else {
1796
+ this.$set(this.extInfoFieldValue, field.fieldId, [{
1797
+ label: item.label,
1798
+ value: item.value
1799
+ }])
1800
+ }
1801
+ }
1802
+ this.loopCascaderSetDefalut(item.children, field, selectType)
1803
+ })
1804
+ },
1805
+ loopCascaderSetValue(list, field, selectType, pv) {
1806
+ list && list.forEach(item =>{
1807
+ let parentValue = pv ? pv: []
1808
+ if(item.checked) {
1809
+ if(selectType == '多选') {
1810
+ field.value.push([...parentValue, item.value])
1811
+ } else {
1812
+ field.value = [...parentValue, item.value]
1813
+ }
1814
+ } else {
1815
+ this.loopCascaderSetValue(item.children, field, selectType, [...parentValue, item.value])
1816
+ }
1817
+ })
1818
+ },
1819
+ addZero (i) {
1967
1820
  if (i < 10) {
1968
1821
  i = "0" + i;
1969
1822
  }
1970
1823
  return i;
1971
1824
  },
1972
- formatter(type, value) {
1825
+ formatter (type, value) {
1973
1826
  // 格式化选择器日期
1974
1827
  if (type === "year") {
1975
1828
  return `${value}年`;
@@ -1985,38 +1838,38 @@ export default {
1985
1838
  return value;
1986
1839
  },
1987
1840
 
1988
- isMobile() {
1989
- if (this.usePropStyleType === false){
1841
+ isMobile () {
1842
+ if (this.usePropStyleType === false) {
1990
1843
  let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i);
1991
1844
  if (flag) {
1992
- this.isPhone=true
1845
+ this.isPhone = true
1993
1846
  }
1994
1847
  else {
1995
- this.isCompany=true
1848
+ this.isCompany = true
1996
1849
  }
1997
- }else {
1998
- this.isPhone=this.propIsPhone;
1999
- this.isCompany=this.propIsCompany;
1850
+ } else {
1851
+ this.isPhone = this.propIsPhone;
1852
+ this.isCompany = this.propIsCompany;
2000
1853
  }
2001
1854
 
2002
1855
  },
2003
1856
  //时间的选择器
2004
- onConfirm(value, id,item,type) {
2005
- console.debug('value',value)
2006
- if (type == 'DATE'){
1857
+ onConfirm (value, id, item, type) {
1858
+ console.debug('value', value)
1859
+ if (type == 'DATE') {
2007
1860
  this.datePicker = false
2008
1861
  this.timeDetailData.value = value;
2009
- this.extInfoFieldValue[this.timeDetailData.fieldId] =this.formatDate(value);
1862
+ this.extInfoFieldValue[this.timeDetailData.fieldId] = this.formatDate(value);
2010
1863
  }
2011
- else if (type == 'TIME'){
1864
+ else if (type == 'TIME') {
2012
1865
  this.timePicker = false;
2013
1866
  this.extInfoFieldValue[this.timeDetailData.fieldId] = value;
2014
1867
  this.timeDetailData.value = value;
2015
1868
  }
2016
- else if (type == 'DATE_TIME'){
1869
+ else if (type == 'DATE_TIME') {
2017
1870
  this.dateTimePicker = false;
2018
1871
  this.timeDetailData.value = value
2019
- this.extInfoFieldValue[this.timeDetailData.fieldId] =this.formatDate(value) +" "+ this.addZero(value.getHours()) + ':' + this.addZero(value.getMinutes())
1872
+ this.extInfoFieldValue[this.timeDetailData.fieldId] = this.formatDate(value) + " " + this.addZero(value.getHours()) + ':' + this.addZero(value.getMinutes())
2020
1873
  }
2021
1874
  /*for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2022
1875
  if (this.formShow.form.formFieldRelation[i].fieldId=== id) {
@@ -2034,14 +1887,14 @@ export default {
2034
1887
  }*/
2035
1888
  },
2036
1889
  //转换日期的函数
2037
- formatDate(date) {
1890
+ formatDate (date) {
2038
1891
  const dateTime = new Date(date)
2039
1892
  return `${dateTime.getFullYear()}-${dateTime.getMonth() + 1}-${dateTime.getDate()}`;
2040
1893
  },
2041
1894
  //日期的选择器
2042
- onConfirmCalendar(date, item) {
1895
+ onConfirmCalendar (date, item) {
2043
1896
  this.dateValue[this.dateId] = this.formatDate(date);
2044
- for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
1897
+ for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2045
1898
  if (this.formShow.form.formFieldRelation[i].fieldId === this.dateId) {
2046
1899
  this.formShow.form.formFieldRelation[i].value = date
2047
1900
  break
@@ -2050,17 +1903,17 @@ export default {
2050
1903
  this.showCalendar = false;
2051
1904
  },
2052
1905
  //下拉的选择器
2053
- onConfirmSelect(value, item) {
2054
- console.log('value',value,this.selectDetail)
2055
- if (!value){
1906
+ onConfirmSelect (value, item) {
1907
+ console.log('value', value, this.selectDetail)
1908
+ if (!value) {
2056
1909
  return
2057
1910
  }
2058
1911
  this.selectValues[this.selectDetail.fieldId] = value;
2059
1912
  for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2060
1913
  if (this.formShow.form.formFieldRelation[i].fieldId === this.selectDetail.fieldId) {
2061
- let options = this.formShow.form.formFieldRelation[i].formField.extInfo.option?this.formShow.form.formFieldRelation[i].formField.extInfo.option:this.formShow.form.formFieldRelation[i].formField.extInfo.options;
2062
- for (let j=0;j<options.length;j++){
2063
- if (value == options[j].label){
1914
+ let options = this.formShow.form.formFieldRelation[i].formField.extInfo.option ? this.formShow.form.formFieldRelation[i].formField.extInfo.option : this.formShow.form.formFieldRelation[i].formField.extInfo.options;
1915
+ for (let j = 0; j < options.length; j++) {
1916
+ if (value == options[j].label) {
2064
1917
  this.selectDetail.value = options[j].value
2065
1918
  }
2066
1919
  }
@@ -2092,11 +1945,11 @@ export default {
2092
1945
  let imageOrAttachment = true
2093
1946
  let errorText = ''
2094
1947
  let checkDescription = {
2095
- checkImageOrAttachment:this.workOrderDestail.checkImageOrAttachment ? this.workOrderDestail.checkImageOrAttachment : false,
2096
- checkText:this.workOrderDestail.checkText ? this.workOrderDestail.checkText : false,
2097
- checkImage:this.workOrderDestail.checkImage ? this.workOrderDestail.checkImage : false,
2098
- checkAttachment:this.workOrderDestail.checkAttachment ? this.workOrderDestail.checkAttachment : false,
2099
- required:this.workOrderDestail.required ? this.workOrderDestail.required : false,
1948
+ checkImageOrAttachment: this.workOrderDestail.checkImageOrAttachment ? this.workOrderDestail.checkImageOrAttachment : false,
1949
+ checkText: this.workOrderDestail.checkText ? this.workOrderDestail.checkText : false,
1950
+ checkImage: this.workOrderDestail.checkImage ? this.workOrderDestail.checkImage : false,
1951
+ checkAttachment: this.workOrderDestail.checkAttachment ? this.workOrderDestail.checkAttachment : false,
1952
+ required: this.workOrderDestail.required ? this.workOrderDestail.required : false,
2100
1953
  }
2101
1954
  if (checkDescription.checkText) {
2102
1955
  if (!this.workOrderDestail.value) {
@@ -2110,8 +1963,8 @@ export default {
2110
1963
  d = null
2111
1964
  }
2112
1965
  }
2113
- if(checkDescription.checkImageOrAttachment) {
2114
- if(!this.workOrderDestail.value.includes('img') && this.attachmentList.length == 0) {
1966
+ if (checkDescription.checkImageOrAttachment) {
1967
+ if (!this.workOrderDestail.value.includes('img') && this.attachmentList.length == 0) {
2115
1968
  imageOrAttachment = false
2116
1969
  }
2117
1970
  }
@@ -2125,7 +1978,7 @@ export default {
2125
1978
  if (!textFlag) {
2126
1979
  errorText = text + '必须要有文字'
2127
1980
  }
2128
- if(!imageOrAttachment) {
1981
+ if (!imageOrAttachment) {
2129
1982
  errorText = text + '必须要有图片或附件'
2130
1983
  }
2131
1984
  if (!imageFlag) {
@@ -2158,36 +2011,38 @@ export default {
2158
2011
  }
2159
2012
  },
2160
2013
  //提交按钮事件
2161
- submitClick() {
2014
+ submitClick () {
2015
+ if(this.isCustomerService) {
2016
+ this.$message.warning('当前为人工客服模式,暂时无法提交')
2017
+ return
2018
+ }
2162
2019
  if (this.uploadImgQueue || this.attachmentList.some(arrach => { return !arrach.url })) {
2163
2020
  this.$message.warning('文件正在上传,请稍后')
2164
2021
  return
2165
2022
  }
2166
- if(this.workOrderDestail && !this.verificationDescription()) {
2023
+ if (this.workOrderDestail && !this.verificationDescription()) {
2167
2024
  return
2168
2025
  }
2169
- for (let i=0;i<this.formShow.form.formFieldRelation.length;i++)
2170
- {
2171
- if(this.formShow.form.formFieldRelation[i].formField.type==='CASCADER')
2172
- {
2026
+ for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2027
+ if (this.formShow.form.formFieldRelation[i].formField.type === 'CASCADER') {
2173
2028
  let cascader = []
2174
- if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascade){
2029
+ if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascade) {
2175
2030
  cascader = this.formShow.form.formFieldRelation[i].formField.extInfo.cascade
2176
2031
  }
2177
- else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options){
2032
+ else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options) {
2178
2033
  cascader = this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options
2179
2034
  }
2180
- else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0]){
2035
+ else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0]) {
2181
2036
  cascader = this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0].options
2182
2037
  }
2183
- cascader.forEach(item=>{
2184
- if(item.children!==undefined){
2185
- if(item.children.length===0) {
2038
+ cascader.forEach(item => {
2039
+ if (item.children !== undefined) {
2040
+ if (item.children.length === 0) {
2186
2041
  delete item.children
2187
2042
  } else {
2188
- item.children.forEach(items=>{
2189
- if(items.children){
2190
- if(items.children.length===0) {
2043
+ item.children.forEach(items => {
2044
+ if (items.children) {
2045
+ if (items.children.length === 0) {
2191
2046
  delete items.children
2192
2047
  }
2193
2048
  }
@@ -2197,90 +2052,105 @@ export default {
2197
2052
  })
2198
2053
  }
2199
2054
  if (this.extInfoFieldValue[this.formShow.form.formFieldRelation[i].fieldId] &&
2200
- (this.formShow.form.formFieldRelation[i].formField.type == 'FILE' ||
2055
+ (this.formShow.form.formFieldRelation[i].formField.type == 'FILE' ||
2201
2056
  this.formShow.form.formFieldRelation[i].formField.type == 'IMAGE' ||
2202
2057
  this.formShow.form.formFieldRelation[i].formField.type == 'VIDEO' ||
2203
2058
  this.formShow.form.formFieldRelation[i].formField.type == 'ATTACHMENT')) {
2204
- let value=[]
2205
- this.extInfoFieldValue[this.formShow.form.formFieldRelation[i].fieldId].forEach(item=>{
2059
+ let value = []
2060
+ this.extInfoFieldValue[this.formShow.form.formFieldRelation[i].fieldId].forEach(item => {
2206
2061
  let file = {}
2207
2062
  file.name = item.name
2208
2063
  file.url = item.url
2209
2064
  value.push(file)
2210
2065
  })
2211
- if (this.formShow.form.formFieldRelation[i].formField.type == 'FILE'){
2066
+ if (this.formShow.form.formFieldRelation[i].formField.type == 'FILE') {
2212
2067
  this.formShow.form.formFieldRelation[i].value = value
2213
2068
  }
2214
2069
  else {
2215
- this.formShow.form.formFieldRelation[i].value = value.map(item=>{
2070
+ this.formShow.form.formFieldRelation[i].value = value.map(item => {
2216
2071
  return item.name
2217
2072
  })
2218
2073
  }
2219
2074
 
2220
2075
  }
2221
2076
  let isRequired = true;
2222
- if (this.mainId == '3e83057a1bd74b79b86859ad619fdbbb' || this.mainId == 'ab0f90737c8b4f2d85ba2157e4473110' || this.mainId == '86dc09da570948d2b4841122d732f373'){
2077
+ if (this.mainId == '3e83057a1bd74b79b86859ad619fdbbb' ||
2078
+ this.mainId == 'ab0f90737c8b4f2d85ba2157e4473110' ||
2079
+ this.mainId == '86dc09da570948d2b4841122d732f373' ||
2080
+ this.mainId == 'e93c327548c94b15a4b2b71bc613ef38' // 银轮主体 id
2081
+ ) {
2223
2082
  isRequired = false
2224
2083
  }
2225
2084
  /*针对蒙牛企业在对话中系统名称字段暂时不做校验*/
2226
- if(this.formShow.form.formFieldRelation[i].display &&
2227
- (this.formShow.form.formFieldRelation[i].required || this.isRequiredFn(this.formShow.form.formFieldRelation[i].formField)) &&
2228
- this.formShow.form.formFieldRelation[i].fieldId!=='workorder_name'&&
2229
- ((!isRequired && this.formShow.form.formFieldRelation[i].fieldId !== '0feca81fce97465da537248c066e4db8' && this.formShow.form.formFieldRelation[i].fieldId !=='1d8bd21485834773a6d18eae60013000') || isRequired) &&
2230
- this.formShow.form.formFieldRelation[i].formField.type !== 'EXPLANATION') {
2085
+ /* 2025.0228 补充银轮主体相同逻辑 */
2086
+ if (this.formShow.form.formFieldRelation[i].display &&
2087
+ (this.formShow.form.formFieldRelation[i].required || this.isRequiredFn(this.formShow.form.formFieldRelation[i].formField)) &&
2088
+ this.formShow.form.formFieldRelation[i].fieldId !== 'workorder_name' &&
2089
+ (
2090
+ (!isRequired &&
2091
+ this.formShow.form.formFieldRelation[i].fieldId !== '0feca81fce97465da537248c066e4db8' &&
2092
+ this.formShow.form.formFieldRelation[i].fieldId !== '1d8bd21485834773a6d18eae60013000' &&
2093
+ this.formShow.form.formFieldRelation[i].fieldId !== '0ca7253561bb480cac9e57664e52158b'
2094
+ ) || isRequired) &&
2095
+ this.formShow.form.formFieldRelation[i].formField.type !== 'EXPLANATION') {
2231
2096
  let value = "";
2232
2097
  let bool = {}
2233
2098
  bool[this.formShow.form.formFieldRelation[i].fieldId] = false
2234
- if (this.formShow.form.formFieldRelation[i].formField.type === 'INPUT' || this.formShow.form.formFieldRelation[i].formField.type === 'TEXTAREA'){
2235
- value = this.formShow.form.formFieldRelation[i].value && this.formShow.form.formFieldRelation[i].value.includes('\n')?this.formShow.form.formFieldRelation[i].value:'';
2099
+ if (this.formShow.form.formFieldRelation[i].formField.type === 'INPUT' || this.formShow.form.formFieldRelation[i].formField.type === 'TEXTAREA') {
2100
+ value = this.formShow.form.formFieldRelation[i].value && this.formShow.form.formFieldRelation[i].value.includes('\n') ? this.formShow.form.formFieldRelation[i].value : '';
2236
2101
  let strVal = '';
2237
- if(value){
2238
- strVal = value.replace(/\n/g,'');
2102
+ if (value) {
2103
+ strVal = value.replace(/\n/g, '');
2239
2104
  }
2240
2105
  bool[this.formShow.form.formFieldRelation[i].fieldId] = this.formShow.form.formFieldRelation[i].value && this.formShow.form.formFieldRelation[i].value.includes('\n') && !strVal
2241
2106
  }
2242
2107
  if (this.formShow.form.formFieldRelation[i].relationDisplay && this.formShow.form.formFieldRelation[i].display && this.formShow.form.formFieldRelation[i].fieldId !== 'workorder_description') {
2243
- if(!this.formShow.form.formFieldRelation[i].value || bool[this.formShow.form.formFieldRelation[i].fieldId] || (Array.isArray(this.formShow.form.formFieldRelation[i].value) && !this.formShow.form.formFieldRelation[i].value.length)) {
2244
- this.$message.error('请完善'+ this.formShow.form.formFieldRelation[i].formField.name)
2108
+ if (!this.formShow.form.formFieldRelation[i].value || this.strIsNull(this.formShow.form.formFieldRelation[i].value) || bool[this.formShow.form.formFieldRelation[i].fieldId] || (Array.isArray(this.formShow.form.formFieldRelation[i].value) && !this.formShow.form.formFieldRelation[i].value.length)) {
2109
+ this.$message.error('请完善' + this.formShow.form.formFieldRelation[i].formField.name)
2245
2110
  return
2246
2111
  }
2247
2112
  }
2248
2113
  }
2249
2114
  }
2250
2115
  let extInfo = {
2251
- extInfoFieldValue:this.extInfoFieldValue,
2252
- attachmentList:this.attachmentList,
2253
- attachments: this.attachmentList.map(item =>{ return item.url})
2116
+ extInfoFieldValue: this.extInfoFieldValue,
2117
+ attachmentList: this.attachmentList,
2118
+ attachments: this.attachmentList.map(item => { return item.url })
2254
2119
  }
2255
- this.$set(this.formShow,'extInfo',extInfo)
2120
+ this.$set(this.formShow, 'extInfo', extInfo)
2256
2121
  let newForm = JSON.parse(JSON.stringify(this.formShow));
2257
- for (let i=0;i<newForm.form.formFieldRelation.length;i++){
2258
- if (newForm.form.formFieldRelation[i].fieldId === 'workorder_description'){
2259
- newForm.form.formFieldRelation[i].value = newForm.form.formFieldRelation[i].value.replace(/<img/g, "<img onclick='previewImage(this)' ")
2122
+ for (let i = 0; i < newForm.form.formFieldRelation.length; i++) {
2123
+ if (newForm.form.formFieldRelation[i].fieldId === 'workorder_description') {
2124
+ newForm.form.formFieldRelation[i].value = newForm.form.formFieldRelation[i].value.replace(/<img/g, "<img onclick='previewImage(this)' ")
2260
2125
  console.log(newForm.form.formFieldRelation[i]);
2261
2126
  }
2262
2127
  if (newForm.form.formFieldRelation[i].formField.type === "TIME_PICKER" &&
2263
- (!newForm.form.formFieldRelation[i].formField.extInfo.mold ||
2264
- newForm.form.formFieldRelation[i].formField.extInfo.mold == 'TIME' ||
2265
- this.getMoldTime(newForm.form.formFieldRelation[i].formField) == 'TIME') &&
2266
- newForm.form.formFieldRelation[i].value &&
2267
- !(newForm.form.formFieldRelation[i].value.length === 5 && newForm.form.formFieldRelation[i].value.split(":").length === 2) &&
2268
- !(newForm.form.formFieldRelation[i].value.length === 8 && newForm.form.formFieldRelation[i].value.split(":").length === 3)){
2128
+ (!newForm.form.formFieldRelation[i].formField.extInfo.mold ||
2129
+ newForm.form.formFieldRelation[i].formField.extInfo.mold == 'TIME' ||
2130
+ this.getMoldTime(newForm.form.formFieldRelation[i].formField) == 'TIME') &&
2131
+ newForm.form.formFieldRelation[i].value &&
2132
+ !(newForm.form.formFieldRelation[i].value.length === 5 && newForm.form.formFieldRelation[i].value.split(":").length === 2) &&
2133
+ !(newForm.form.formFieldRelation[i].value.length === 8 && newForm.form.formFieldRelation[i].value.split(":").length === 3)) {
2269
2134
  newForm.form.formFieldRelation[i].value = new Date(newForm.form.formFieldRelation[i].value).Format('hh:mm')
2270
2135
  }
2271
2136
  }
2272
- console.error('formShow',newForm)
2273
- this.$emit('submitClick',newForm)
2274
- this.disableds = true
2275
- this.submitValue = '已提交'
2137
+ console.error('formShow', newForm)
2138
+ this.$emit('submitClick', newForm)
2139
+ this.disableds = true
2140
+ this.submitValue = '已提交'
2141
+ },
2142
+ strIsNull (str) {
2143
+ if (str == "") return true;
2144
+ let regu = "^[ ]+$";
2145
+ let re = new RegExp(regu);
2146
+ return re.test(str);
2276
2147
  },
2277
2148
  //日期的点击事件
2278
- dateClick(id) {
2279
- if(this.disableds === false)
2280
- {
2149
+ dateClick (id) {
2150
+ if (this.disableds === false) {
2281
2151
  // for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2282
2152
  // if (this.formShow.form.formFieldRelation[i].fieldId === id) {
2283
-
2153
+
2284
2154
  // break
2285
2155
  // }
2286
2156
  // }
@@ -2290,40 +2160,39 @@ export default {
2290
2160
 
2291
2161
  },
2292
2162
  //时间的点击事件
2293
- timeClick(id,item,type) {
2294
- if (this.disableds){
2163
+ timeClick (id, item, type) {
2164
+ if (this.disableds) {
2295
2165
  return
2296
2166
  }
2297
- if (item.value === undefined || item.value === null){
2298
- this.$set(item,'value',"")
2167
+ if (item.value === undefined || item.value === null) {
2168
+ this.$set(item, 'value', "")
2299
2169
  }
2300
2170
  this.timeDetailData = item
2301
- if (type == 'DATE'){
2171
+ if (type == 'DATE') {
2302
2172
  this.datePicker = true
2303
2173
  }
2304
- else if (type == 'TIME'){
2174
+ else if (type == 'TIME') {
2305
2175
  this.timePicker = true
2306
2176
  }
2307
- else if (type == 'DATE_TIME'){
2177
+ else if (type == 'DATE_TIME') {
2308
2178
  this.dateTimePicker = true
2309
2179
  }
2310
2180
  },
2311
2181
  //下拉的点击事件
2312
- selectClick(id,type,item) {
2313
- if (this.disableds){
2182
+ selectClick (id, type, item) {
2183
+ if (this.disableds) {
2314
2184
  return
2315
2185
  }
2316
- if (item.value === undefined || item.value === null){
2317
- this.$set(item,'value',"")
2186
+ if (item.value === undefined || item.value === null) {
2187
+ this.$set(item, 'value', "")
2318
2188
  }
2319
2189
  this.selectDetail = item;
2320
2190
  this.defaultValue = []
2321
- if(type == 'client') {
2191
+ if (type == 'client') {
2322
2192
  let selectOption
2323
- this.selectValue=[]
2193
+ this.selectValue = []
2324
2194
  for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2325
- if(this.formShow.form.formFieldRelation[i].formField.type==='SELECT' || this.formShow.form.formFieldRelation[i].formField.type==='OPTION')
2326
- {
2195
+ if (this.formShow.form.formFieldRelation[i].formField.type === 'SELECT' || this.formShow.form.formFieldRelation[i].formField.type === 'OPTION') {
2327
2196
  if (this.formShow.form.formFieldRelation[i].fieldId === id) {
2328
2197
  console.debug('11')
2329
2198
  selectOption = this.selectOptions(this.formShow.form.formFieldRelation[i].formField)
@@ -2336,31 +2205,31 @@ export default {
2336
2205
  }
2337
2206
  this.selectId = id
2338
2207
  this.showPicker = true
2339
- } else if (type == 'ref'){
2208
+ } else if (type == 'ref') {
2340
2209
  this.refShowPicker = true;
2341
- this.refTemplateVisibleChange(true,item);
2342
- this.refDefaultValue[item.fieldId] = item.value?[item.value]:[]
2343
- } else if (type == 'select'){
2210
+ this.refTemplateVisibleChange(true, item);
2211
+ this.refDefaultValue[item.fieldId] = item.value ? [item.value] : []
2212
+ } else if (type == 'select') {
2344
2213
  this.selectPicker = true;
2345
- if (item.formField.extInfo){
2214
+ if (item.formField.extInfo) {
2346
2215
  this.optionsList[id] = this.optionsLists(item)
2347
2216
  }
2348
2217
  else {
2349
2218
  this.optionsList[id] = []
2350
2219
  }
2351
- if (Array.isArray(this.selectDetail.value)){
2220
+ if (Array.isArray(this.selectDetail.value)) {
2352
2221
  this.defaultValue = this.selectDetail.value
2353
2222
  }
2354
2223
  else {
2355
2224
  this.defaultValue = [this.selectDetail.value]
2356
2225
  }
2357
2226
  }
2358
- if (item){
2227
+ if (item) {
2359
2228
  this.detailField = item;
2360
2229
  }
2361
2230
  },
2362
- SelectClear(fieldId) {
2363
- if(this.disableds === false){
2231
+ SelectClear (fieldId) {
2232
+ if (this.disableds === false) {
2364
2233
  let i = this.formShow.form.formFieldRelation.findIndex(item => { console.log(item.fieldId); return item.fieldId == fieldId })
2365
2234
  this.selectValues[this.formShow.form.formFieldRelation[i].fieldId] = '';
2366
2235
  this.formShow.form.formFieldRelation[i].value = "";
@@ -2370,47 +2239,43 @@ export default {
2370
2239
  }
2371
2240
  },
2372
2241
  //级联的点击的事件
2373
- pickerClick(id) {
2374
- if(this.disableds === false)
2375
- {
2376
- if(this.pickerId!==id)
2377
- {
2242
+ pickerClick (id) {
2243
+ if (this.disableds === false) {
2244
+ if (this.pickerId !== id) {
2378
2245
  for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2379
2246
  if (this.formShow.form.formFieldRelation[i].fieldId === id) {
2380
- this.keyValue=''
2381
- if(this.formShow.form.formFieldRelation[i].value.length!==undefined)
2382
- {
2383
- for (let m=0;m<this.formShow.form.formFieldRelation[i].value.length;m++)
2384
- {
2385
- this.keyValue+=this.formShow.form.formFieldRelation[i].value[m]
2247
+ this.keyValue = ''
2248
+ if (this.formShow.form.formFieldRelation[i].value.length !== undefined) {
2249
+ for (let m = 0; m < this.formShow.form.formFieldRelation[i].value.length; m++) {
2250
+ this.keyValue += this.formShow.form.formFieldRelation[i].value[m]
2386
2251
  }
2387
2252
  }
2388
- this.data = []
2389
- if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascade){
2390
- this.data = this.formShow.form.formFieldRelation[i].formField.extInfo.cascade
2253
+ this.data = []
2254
+ if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascade) {
2255
+ this.data = this.formShow.form.formFieldRelation[i].formField.extInfo.cascade
2391
2256
  }
2392
- else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options){
2393
- this.data = this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options
2257
+ else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options) {
2258
+ this.data = this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown.options
2394
2259
  }
2395
- else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0]){
2396
- this.data = this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0].options
2260
+ else if (this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown && this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0]) {
2261
+ this.data = this.formShow.form.formFieldRelation[i].formField.extInfo.cascadeDown[0].options
2397
2262
  }
2398
2263
  this.column[0].values = Object.values(this.data).map(function (e) {
2399
- return {text: e.value, code: e.value}
2264
+ return { text: e.value, code: e.value }
2400
2265
  })
2401
2266
  if (this.data[0].children !== undefined) {
2402
2267
  this.column[1].values = Object.values(this.data[0].children).map(function (e) {
2403
- return {text: e.value, code: e.value}
2268
+ return { text: e.value, code: e.value }
2404
2269
  })
2405
2270
  if (this.data[0].children[0].children !== undefined) {
2406
2271
  this.column[2].values = Object.values(this.data[0].children[0].children).map(function (e) {
2407
- return {text: e.value, code: e.value}
2272
+ return { text: e.value, code: e.value }
2408
2273
  })
2409
2274
  }
2410
2275
  else {
2411
2276
  this.$set(this.data[0].children[0], 'children', [])
2412
- this.column[2].values=Object.values(this.data[0].children[0].children).map(function (res) {
2413
- return {text: res.value, code: res.value};
2277
+ this.column[2].values = Object.values(this.data[0].children[0].children).map(function (res) {
2278
+ return { text: res.value, code: res.value };
2414
2279
  })
2415
2280
  }
2416
2281
  }
@@ -2424,37 +2289,31 @@ export default {
2424
2289
 
2425
2290
 
2426
2291
  },
2427
- onChange(picker, values,index) {
2292
+ onChange (picker, values, index) {
2428
2293
  // 这里我有可能渲染的有问题,导致回调每次都修改了当前列,其他值没有修改,当前列??(当前列什么鬼呀,什么垃圾啊???) 解释一下 ↓↓
2429
2294
  // 因为vant的 van-picker 回调只会返回你修改的那一列,比如现在为 [北京,北京,东城区],你修改了省为[天津市,天津市,和平区],但是vant的change回调会得到[天津市,北京,东城区],后面两个在回调中没有修改,不知道我的渲染方法有问题还是什么问题。
2430
2295
  // 所以我在这里判断change事件触发后,如果你修改了省份的话,回调里面省份会改变,但是市和区还是上一个省份的 市和区,这时我们执行回调修改省,市,区的时候,因为回调只有省改变了,市和区DOM改变了,但是回调里面没改变的问题(不晓得什么问题),这时我们去找省下面的 市,我们取回调的市名称,如果在省下面没有找到这个市,默认展示第一个市,区也默认展示第一个市下面的区,如果遍历市能查到,就去展示对应的市。
2431
2296
  // 回调时修改第2列数据
2432
- if (index == 0){
2297
+ if (index == 0) {
2433
2298
  picker.setColumnValues(2, []); // 防止突然选中第一个,第二个是更新的,但第三个联级不更新,我暂时强制清空
2434
2299
  }
2435
- let ColumnIndexss=picker.getIndexes()
2436
- let testValue=''
2437
- this.$nextTick(()=>{
2438
- if(index == 0)
2439
- {
2440
- if(this.data[ColumnIndexss[0]].children.length > 0)
2441
- {
2442
- if(this.data[ColumnIndexss[0]].children[0]!==undefined)
2443
- {
2444
- testValue=this.data[ColumnIndexss[0]].children[0].value
2300
+ let ColumnIndexss = picker.getIndexes()
2301
+ let testValue = ''
2302
+ this.$nextTick(() => {
2303
+ if (index == 0) {
2304
+ if (this.data[ColumnIndexss[0]].children.length > 0) {
2305
+ if (this.data[ColumnIndexss[0]].children[0] !== undefined) {
2306
+ testValue = this.data[ColumnIndexss[0]].children[0].value
2445
2307
  picker.setColumnValues(2, this.county(this.data, testValue));
2446
2308
  }
2447
2309
  }
2448
2310
  else
2449
2311
  picker.setColumnValues(2, []);
2450
2312
  }
2451
- if(index == 1)
2452
- {
2453
- if(this.data[ColumnIndexss[0]].children.length > 0)
2454
- {
2455
- if(this.data[ColumnIndexss[0]].children[ColumnIndexss[1]]!==undefined)
2456
- {
2457
- testValue=this.data[ColumnIndexss[0]].children[ColumnIndexss[1]].value
2313
+ if (index == 1) {
2314
+ if (this.data[ColumnIndexss[0]].children.length > 0) {
2315
+ if (this.data[ColumnIndexss[0]].children[ColumnIndexss[1]] !== undefined) {
2316
+ testValue = this.data[ColumnIndexss[0]].children[ColumnIndexss[1]].value
2458
2317
  picker.setColumnValues(2, this.county(this.data, testValue));
2459
2318
  }
2460
2319
  }
@@ -2469,27 +2328,27 @@ export default {
2469
2328
 
2470
2329
  },
2471
2330
  // 修改级联第二级 这里不再多说什么了根据自己的数据格式来
2472
- cityDate(data, province) {
2331
+ cityDate (data, province) {
2473
2332
  var that = this;
2474
2333
  data.forEach(function (res) {
2475
2334
  if (res.value == province) {
2476
2335
  that.cityDates = res;
2477
2336
  }
2478
2337
  });
2479
- if (that.cityDates.children !== undefined&&that.cityDates.children.length > 0) {
2338
+ if (that.cityDates.children !== undefined && that.cityDates.children.length > 0) {
2480
2339
  return that.cityDates.children.map(function (res) {
2481
- return {text: res.value, code: res.value};
2340
+ return { text: res.value, code: res.value };
2482
2341
  })
2483
2342
  } else {
2484
2343
  this.$set(that.cityDates, 'children', [])
2485
2344
  return that.cityDates.children.map(function (res) {
2486
- return {text: res.value, code: res.value};
2345
+ return { text: res.value, code: res.value };
2487
2346
  })
2488
2347
  }
2489
2348
  // return 返回数据格式,因为我需要省市区code,所以我return的格式是对象,例:[{text:'北京市',code:'1'},{text:'河南省',code:'2'},...],如果你不需要code直接这样就可以 例['北京市','河南省',.....]
2490
2349
  },
2491
2350
  // 修改级联第三级 这里不再多说什么了根据自己的数据格式来
2492
- county(data, county) {
2351
+ county (data, county) {
2493
2352
  var that = this;
2494
2353
  var countyDate = '';
2495
2354
  // 因为vant的 van-picker 回调只会返回你修改的那一列,比如现在为 [北京,北京,东城区],你修改了省为[天津市,天津市,和平区],但是vant的change回调会得到[天津市,北京,东城区],后面两个在回调中没有修改,不知道我的渲染方法有问题还是什么问题。
@@ -2501,8 +2360,7 @@ export default {
2501
2360
  });
2502
2361
  // 这里如果没有找到对应的县
2503
2362
  if (countyDate == '') {
2504
- if(that.cityDates.children.length > 0)
2505
- {
2363
+ if (that.cityDates.children.length > 0) {
2506
2364
  countyDate = that.cityDates.children[0];
2507
2365
  }
2508
2366
 
@@ -2511,18 +2369,18 @@ export default {
2511
2369
  if (countyDate.children === undefined) {
2512
2370
  this.$set(countyDate, 'children', [])
2513
2371
  return countyDate.children.map(function (res) {
2514
- return {text: res.value, code: res.value};
2372
+ return { text: res.value, code: res.value };
2515
2373
  })
2516
2374
  } else {
2517
2375
  return countyDate.children.map(function (res) {
2518
- return {text: res.value, code: res.value};
2376
+ return { text: res.value, code: res.value };
2519
2377
  })
2520
2378
  }
2521
2379
 
2522
2380
  // return 返回数据格式,因为我需要省市区code,所以我return的格式是对象,例:[{text:'北京市',code:'1'},{text:'河南省',code:'2'},...],如果你不需要code直接这样就可以 例['北京市','河南省',.....]
2523
2381
  },
2524
2382
  //点击级联弹出框的确认按钮
2525
- onConfirms(val, id) {
2383
+ onConfirms (val, id) {
2526
2384
  let test = ''
2527
2385
  for (let i = 0; i < val.length; i++) {
2528
2386
  if (val[i] !== undefined) {
@@ -2531,7 +2389,7 @@ export default {
2531
2389
  }
2532
2390
  test = test.substr(0, test.length - 1)
2533
2391
  for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2534
- if (this.formShow.form.formFieldRelation[i].fieldId=== id) {
2392
+ if (this.formShow.form.formFieldRelation[i].fieldId === id) {
2535
2393
  this.cascadeValue[id] = test
2536
2394
  for (let j = 0; j < val.length; j++) {
2537
2395
  if (val[j] !== undefined) {
@@ -2542,12 +2400,12 @@ export default {
2542
2400
  }
2543
2401
  }
2544
2402
  this.showArea = false;
2545
- sessionStorage.setItem('cascader',test)
2403
+ sessionStorage.setItem('cascader', test)
2546
2404
  },
2547
- onCancel() {
2405
+ onCancel () {
2548
2406
  this.showArea = false;
2549
2407
  },
2550
- aliyunOssRequest(data){
2408
+ aliyunOssRequest (data) {
2551
2409
 
2552
2410
  this.loading = this.$loading({
2553
2411
  lock: true,
@@ -2558,9 +2416,9 @@ export default {
2558
2416
  let file = data.file;
2559
2417
  console.debug("upload file:", file);
2560
2418
  let imgInfo = {
2561
- status:'',
2562
- url:'',
2563
- name:''
2419
+ status: '',
2420
+ url: '',
2421
+ name: ''
2564
2422
  }
2565
2423
  /* let imageData = {
2566
2424
  id:cid,
@@ -2572,10 +2430,9 @@ export default {
2572
2430
  },
2573
2431
  };*/
2574
2432
  let res = multipartUpload(
2575
- this.ossConfig,
2576
- file,
2577
- null,
2578
- imgInfo
2433
+ file,
2434
+ null,
2435
+ imgInfo
2579
2436
  );
2580
2437
  res.then((res) => {
2581
2438
  console.debug("upload result:", res);
@@ -2585,14 +2442,14 @@ export default {
2585
2442
  ossFileUrl(this.ossConfig, res.name)
2586
2443
  );
2587
2444
  console.log('imageData',imageData)*/
2588
- imgInfo.url = ossFileUrl(this.ossConfig, res.name)
2589
- imgInfo.status='success'
2590
- if (data.file){
2445
+ imgInfo.url = ossFileUrl(res.name)
2446
+ imgInfo.status = 'success'
2447
+ if (data.file) {
2591
2448
  imgInfo.name = data.file.name
2592
2449
  imgInfo.uid = data.file.uid
2593
2450
  }
2594
- if (!this.extInfoFieldValue[this.filedId]){
2595
- this.$set(this.extInfoFieldValue,this.filedId,[])
2451
+ if (!this.extInfoFieldValue[this.filedId]) {
2452
+ this.$set(this.extInfoFieldValue, this.filedId, [])
2596
2453
  }
2597
2454
  this.extInfoFieldValue[this.filedId].push(imgInfo)
2598
2455
  this.loading.close()
@@ -2600,20 +2457,20 @@ export default {
2600
2457
  console.debug("upload err", err);
2601
2458
  });
2602
2459
  },
2603
- successUpload(response,file,fileList){
2604
- if (!this.extInfoFieldValue[this.filedId]){
2460
+ successUpload (response, file, fileList) {
2461
+ if (!this.extInfoFieldValue[this.filedId]) {
2605
2462
  this.extInfoFieldValue[this.filedId] = []
2606
2463
  }
2607
- for (let i=0;i<fileList.length;i++){
2608
- if (!this.extInfoFieldValue[this.filedId][i]){
2609
- this.extInfoFieldValue[this.filedId][i]={}
2464
+ for (let i = 0; i < fileList.length; i++) {
2465
+ if (!this.extInfoFieldValue[this.filedId][i]) {
2466
+ this.extInfoFieldValue[this.filedId][i] = {}
2610
2467
  }
2611
- this.extInfoFieldValue[this.filedId][i].url=fileList[i].url
2612
- this.extInfoFieldValue[this.filedId][i].name=fileList[i].name
2613
- this.extInfoFieldValue[this.filedId][i].status=fileList[i].status
2468
+ this.extInfoFieldValue[this.filedId][i].url = fileList[i].url
2469
+ this.extInfoFieldValue[this.filedId][i].name = fileList[i].name
2470
+ this.extInfoFieldValue[this.filedId][i].status = fileList[i].status
2614
2471
  }
2615
2472
  },
2616
- uploadProgress(){
2473
+ uploadProgress () {
2617
2474
  this.loading = this.$loading({
2618
2475
  lock: true,
2619
2476
  text: 'Loading',
@@ -2621,32 +2478,31 @@ export default {
2621
2478
  background: 'rgba(0, 0, 0, 0.7)'
2622
2479
  });
2623
2480
  },
2624
- handleRemove(file) {
2625
- if (this.extInfoFieldValue[this.filedId]){
2626
- for (let i=0;i<this.extInfoFieldValue[this.filedId].length;i++)
2627
- {
2628
- if (this.extInfoFieldValue[this.filedId][i].uid){
2629
- if (this.extInfoFieldValue[this.filedId][i].uid===file.uid){
2630
- this.extInfoFieldValue[this.filedId].splice(i,1)
2481
+ handleRemove (file) {
2482
+ if (this.extInfoFieldValue[this.filedId]) {
2483
+ for (let i = 0; i < this.extInfoFieldValue[this.filedId].length; i++) {
2484
+ if (this.extInfoFieldValue[this.filedId][i].uid) {
2485
+ if (this.extInfoFieldValue[this.filedId][i].uid === file.uid) {
2486
+ this.extInfoFieldValue[this.filedId].splice(i, 1)
2631
2487
  return
2632
2488
  }
2633
2489
  }
2634
- else if (this.extInfoFieldValue[this.filedId][i].url===file.url){
2635
- this.extInfoFieldValue[this.filedId].splice(i,1)
2490
+ else if (this.extInfoFieldValue[this.filedId][i].url === file.url) {
2491
+ this.extInfoFieldValue[this.filedId].splice(i, 1)
2636
2492
  return
2637
2493
  }
2638
2494
  }
2639
2495
 
2640
2496
  }
2641
2497
  },
2642
- handleEditChange(file,fileList){
2643
- this.hideUploadEdit=fileList.length >= this.limitNum
2498
+ handleEditChange (file, fileList) {
2499
+ this.hideUploadEdit = fileList.length >= this.limitNum
2644
2500
  },
2645
2501
  onUploadProgress: function (progress, point, file, videoData) {
2646
2502
  console.debug("upload video progress", progress, point);
2647
2503
  if (progress === 1) {
2648
2504
  // this.loadingIns.close();
2649
- videoData.content.url = ossFileUrl(this.ossConfig, point.name);
2505
+ videoData.content.url = ossFileUrl(point.name);
2650
2506
  // this.chooseVideo({data:url},file);
2651
2507
 
2652
2508
  } else {
@@ -2654,16 +2510,16 @@ export default {
2654
2510
 
2655
2511
  }
2656
2512
  },
2657
- checkUpload(id,extInfo){
2658
- this.filedId=id
2659
- this.limitNum = extInfo.limitNum?extInfo.limitNum:(extInfo.limit?extInfo.limit:1)
2513
+ checkUpload (id, extInfo) {
2514
+ this.filedId = id
2515
+ this.limitNum = extInfo.limitNum ? extInfo.limitNum : (extInfo.limit ? extInfo.limit : 1)
2660
2516
 
2661
2517
  },
2662
- beforeAvatarUpload(file,type){
2663
- if (type === 'IMAGE'){
2518
+ beforeAvatarUpload (file, type) {
2519
+ if (type === 'IMAGE') {
2664
2520
  const isLte2M = file.size / 1024 / 1024 <= 8;
2665
- const isSupportedFormat =file.type.indexOf('image')!==-1
2666
- if (!isSupportedFormat){
2521
+ const isSupportedFormat = file.type.indexOf('image') !== -1
2522
+ if (!isSupportedFormat) {
2667
2523
  this.$message.error("只能上传图片格式");
2668
2524
  return false
2669
2525
  }
@@ -2673,20 +2529,20 @@ export default {
2673
2529
  }
2674
2530
  return true
2675
2531
  }
2676
- else if (type === 'VIDEO'){
2532
+ else if (type === 'VIDEO') {
2677
2533
  const isLte2M = file.size / 1024 / 1024 <= 100;
2678
- const isSupportedFormat =file.type.indexOf('video')!==-1
2679
- if (!isSupportedFormat){
2534
+ const isSupportedFormat = file.type.indexOf('video') !== -1
2535
+ if (!isSupportedFormat) {
2680
2536
  this.$message.error("只能上传视频格式");
2681
2537
  return false
2682
2538
  }
2683
- if (!isLte2M&&isSupportedFormat) {
2539
+ if (!isLte2M && isSupportedFormat) {
2684
2540
  this.$message.error("上传视频大小不能超过100MB!");
2685
2541
  return false
2686
2542
  }
2687
2543
  return true
2688
2544
  }
2689
- else if (type === 'FILE' || type === 'ATTACHMENT'){
2545
+ else if (type === 'FILE' || type === 'ATTACHMENT') {
2690
2546
  const isLte2M = file.size / 1024 / 1024 <= 100;
2691
2547
  if (!isLte2M) {
2692
2548
  this.$message.error("上传附件大小不能超过100MB!");
@@ -2696,27 +2552,27 @@ export default {
2696
2552
  }
2697
2553
 
2698
2554
  },
2699
- exceedUpload(){
2555
+ exceedUpload () {
2700
2556
  this.$message({
2701
- message:"上传文件数量达到上限",
2702
- duration:2000,
2703
- type:'warning'
2557
+ message: "上传文件数量达到上限",
2558
+ duration: 2000,
2559
+ type: 'warning'
2704
2560
  })
2705
2561
  },
2706
2562
 
2707
- handlePictureCardPreview(file) {
2563
+ handlePictureCardPreview (file) {
2708
2564
  this.videoFlag = true;
2709
2565
  this.videoUploadPercent = file.percentage.toFixed(0);
2710
2566
  },
2711
- refTemplateVisibleChange(visible,field) {
2712
- console.debug('field1111',field)
2567
+ refTemplateVisibleChange (visible, field) {
2568
+ console.debug('field1111', field)
2713
2569
  let fields = field.formField.type === 'REF' ? field.formField.extInfo.ref.field : field.formField.extInfo.ref.vars
2714
2570
  if (visible) {
2715
2571
  if (
2716
2572
  !this.refNextPage[field.fieldId] || this.refNextPage[field.fieldId].hasNextPage
2717
2573
  ) {
2718
2574
  this.$set(this.refTemplateList, field.fieldId, [])
2719
- !this.dataQuery[field.fieldId] && this.$set(this.dataQuery,field.fieldId, {
2575
+ !this.dataQuery[field.fieldId] && this.$set(this.dataQuery, field.fieldId, {
2720
2576
  filterId: '',
2721
2577
  keywords: '',
2722
2578
  pageInfo: {
@@ -2727,24 +2583,24 @@ export default {
2727
2583
  templateId: ''
2728
2584
  })
2729
2585
  let param = {
2730
- templateId:field.formField.extInfo.ref.source,
2731
- fieldId:fields,
2732
- field:field,
2733
- dataQuery:this.dataQuery,
2734
- refNextPage:this.refNextPage
2586
+ templateId: field.formField.extInfo.ref.source,
2587
+ fieldId: fields,
2588
+ field: field,
2589
+ dataQuery: this.dataQuery,
2590
+ refNextPage: this.refNextPage
2735
2591
  }
2736
- this.$emit('getTemplateList',param)
2592
+ this.$emit('getTemplateList', param)
2737
2593
  }
2738
2594
  }
2739
2595
  },
2740
- changeRefData(value, item) {
2596
+ changeRefData (value, item) {
2741
2597
  console.log(value);
2742
2598
  console.debug('value', value, item, this.refTemplateList[item.fieldId])
2743
2599
  let arr = []
2744
2600
  if (this.refTemplateList[item.fieldId]) {
2745
2601
  this.refTemplateList[item.fieldId].forEach(data => {
2746
- if(typeof value == 'string' || typeof value == 'number') {
2747
- if(value == data.id) {
2602
+ if (typeof value == 'string' || typeof value == 'number') {
2603
+ if (value == data.id) {
2748
2604
  let obj = {
2749
2605
  name: data.name,
2750
2606
  id: data.id
@@ -2764,27 +2620,27 @@ export default {
2764
2620
  }
2765
2621
  this.extInfoFieldValue[item.fieldId] = arr
2766
2622
  },
2767
- setOptionWidth(){
2623
+ setOptionWidth () {
2768
2624
  this.selectOptionWidth = event.srcElement.offsetParent.offsetWidth + 40 + "px";
2769
2625
  },
2770
- lodeMore(item) {
2626
+ lodeMore (item) {
2771
2627
  this.dataQuery[item.fieldId].pageInfo.pageNo += 1
2772
- this.refTemplateVisibleChange(true,item)
2628
+ this.refTemplateVisibleChange(true, item)
2773
2629
  },
2774
2630
  //点击左侧备注图标提示
2775
- leftIcon(remark){
2631
+ leftIcon (remark) {
2776
2632
  this.$toast({
2777
- message:remark.text,
2778
- duration:2000,
2633
+ message: remark.text,
2634
+ duration: 2000,
2779
2635
  })
2780
2636
  },
2781
2637
  //校验输入框
2782
- typeCheck(field,item){
2783
- if (!item.value){
2638
+ typeCheck (field, item) {
2639
+ if (!item.value) {
2784
2640
  return
2785
2641
  }
2786
- console.debug('typeCheck',field)
2787
- if (field.extInfo.inputType==='MOBILE'){
2642
+ console.debug('typeCheck', field)
2643
+ if (field.extInfo.inputType === 'MOBILE') {
2788
2644
  const phone = /^[1][3,4,5,7,8][0-9]{9}$/
2789
2645
  if (!phone.test(item.value)) {
2790
2646
  this.$message({
@@ -2796,9 +2652,9 @@ export default {
2796
2652
  return
2797
2653
  }
2798
2654
  }
2799
- else if (field.extInfo.inputType ==='MAIL'){
2655
+ else if (field.extInfo.inputType === 'MAIL') {
2800
2656
  const reg =
2801
- /^([a-z0-9A-Z]+[-|_|\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\.)+[a-zA-Z]{2,4}$/;
2657
+ /^([a-z0-9A-Z]+[-|_|\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\.)+[a-zA-Z]{2,4}$/;
2802
2658
  if (!reg.test(item.value)) {
2803
2659
  this.$message({
2804
2660
  message: "请输入有效的邮箱",
@@ -2810,7 +2666,7 @@ export default {
2810
2666
  }
2811
2667
 
2812
2668
  }
2813
- else if (field.extInfo.inputType === 'ID_CARD'){
2669
+ else if (field.extInfo.inputType === 'ID_CARD') {
2814
2670
  const reg = /^(([1-9][0-9]{5}(19|20)[0-9]{2}((0[1-9])|(1[0-2]))([0-2][1-9]|10|20|30|31)[0-9]{3}([0-9]|X|x))|([1-9][0-9]{5}[0-9]{2}((0[1-9])|(1[0-2]))([0-2][1-9]|10|20|30|31)[0-9]{3}))$/
2815
2671
  if (!reg.test(item.value)) {
2816
2672
  this.$message({
@@ -2822,7 +2678,7 @@ export default {
2822
2678
  return
2823
2679
  }
2824
2680
  }
2825
- else if (field.extInfo.inputType ==='LINK'){
2681
+ else if (field.extInfo.inputType === 'LINK') {
2826
2682
  const reg = /^([hH][tT]{2}[pP]:\/\/|[hH][tT]{2}[pP][sS]:\/\/)(([A-Za-z0-9-~]+)\.)+([A-Za-z0-9-~\/])/;
2827
2683
  if (!reg.test(item.value)) {
2828
2684
  this.$message({
@@ -2834,27 +2690,30 @@ export default {
2834
2690
  return
2835
2691
  }
2836
2692
  }
2837
- else if (field.extInfo.inputType ==='NUMBER'||field.extInfo.inputType ==='RATE'){
2838
- if ( item.value < Number(field.extInfo.range.start)){
2693
+ else if (field.extInfo.inputType === 'NUMBER' || field.extInfo.inputType === 'RATE') {
2694
+ if (item.value < Number(field.extInfo.range.start)) {
2839
2695
  item.value = Number(field.extInfo.range.start)
2840
2696
  }
2841
- else if (item.value > Number(field.extInfo.range.end)){
2697
+ else if (item.value > Number(field.extInfo.range.end)) {
2842
2698
  item.value = Number(field.extInfo.range.end)
2843
2699
  }
2844
2700
  }
2845
2701
  },
2846
2702
  //打开级联/下拉抽屉选择
2847
- openDrawer(field,type){
2703
+ openDrawer (field, type) {
2848
2704
  this.detailField = field;
2849
- if (type == 'cascader' || type === 'pc_cascader'){
2850
- if (type == 'cascader'){
2705
+ if (type == 'cascader' || type === 'pc_cascader') {
2706
+ console.log(field.formField.extInfo, 'fieldfield');
2707
+ if (type == 'cascader') {
2851
2708
  this.showArea = true;
2852
2709
  }
2853
2710
  else {
2854
2711
  this.drawer = true;
2855
2712
  }
2856
- this.$nextTick(()=>{
2857
- let arr = this.extInfoFieldValue[field.fieldId]?this.extInfoFieldValue[field.fieldId]:[]
2713
+ // 判断来源是否是 webhook 打开对应弹窗,webhook 的级联字段只能选择到最后一级的选项
2714
+ this.webHookCascader = Boolean(field.formField.extInfo && field.formField.extInfo.WebHookParameter)
2715
+ this.$nextTick(() => {
2716
+ let arr = this.extInfoFieldValue[field.fieldId] ? this.extInfoFieldValue[field.fieldId] : []
2858
2717
  let drawerTree = this.$refs.drawerTree
2859
2718
  if (drawerTree) {
2860
2719
  if (Array.isArray(drawerTree)) {
@@ -2869,37 +2728,37 @@ export default {
2869
2728
  }
2870
2729
  })
2871
2730
  }
2872
- else if (type === 'select'){
2873
- this.options = field.formField.extInfo.option?field.formField.extInfo.option:field.formField.extInfo.options;
2731
+ else if (type === 'select') {
2732
+ this.options = field.formField.extInfo.option ? field.formField.extInfo.option : field.formField.extInfo.options;
2874
2733
  this.selectPopUp = true;
2875
- if (!this.detailField.value){
2734
+ if (!this.detailField.value) {
2876
2735
  return
2877
2736
  }
2878
- if (Array.isArray(this.detailField.value)){
2737
+ if (Array.isArray(this.detailField.value)) {
2879
2738
  this.defaultValue = this.detailField.value
2880
2739
  }
2881
2740
  else {
2882
2741
  this.defaultValue = [this.detailField.value]
2883
2742
  }
2884
- console.debug('selectPopUp',this.selectPopUp,this.options)
2743
+ console.debug('selectPopUp', this.selectPopUp, this.options)
2885
2744
  }
2886
2745
  },
2887
2746
  //保存级联数据
2888
- saveData(checkList,checkDatas){
2747
+ saveData (checkList, checkDatas) {
2889
2748
  this.clearOptionStruct();
2890
- this.$set(this.detailField,'value',checkList);
2749
+ this.$set(this.detailField, 'value', checkList);
2891
2750
  this.extInfoFieldValue[this.detailField.fieldId] = checkDatas;
2892
- this.$set(this.detailField.formField.extInfo,'extInfoFieldValue',checkDatas);
2893
- console.debug('checkDatas',this.detailField.formField.extInfo,checkList);
2751
+ this.$set(this.detailField.formField.extInfo, 'extInfoFieldValue', checkDatas);
2752
+ console.debug('checkDatas', this.detailField.formField.extInfo, checkList);
2894
2753
  this.changeSelect(this.detailField);
2895
2754
  this.$forceUpdate();
2896
2755
  this.showArea = false;
2897
2756
  this.drawer = false;
2898
2757
  },
2899
2758
  //保存所选下拉值
2900
- confirmSelect(option, list){
2901
- console.debug('option',option,list)
2902
- if (!option || !list){
2759
+ confirmSelect (option, list) {
2760
+ console.debug('option', option, list)
2761
+ if (!option || !list) {
2903
2762
  this.selectPopUp = false
2904
2763
  this.selectPicker = false
2905
2764
  return
@@ -2907,22 +2766,22 @@ export default {
2907
2766
  this.detailField.value = list;
2908
2767
  this.selectPopUp = false
2909
2768
  this.selectPicker = false;
2910
- if (this.detailField.formField.type === 'SELECT' && this.detailField.formField.extInfo.selectType !== '多选'){
2769
+ if (this.detailField.formField.type === 'SELECT' && this.detailField.formField.extInfo.selectType !== '多选') {
2911
2770
  this.changeSelect(this.detailField);
2912
2771
  }
2913
2772
  this.$forceUpdate();
2914
2773
  },
2915
2774
  //保存ref类型值
2916
- confirmRefSelect(option, list){
2917
- console.debug('options',option,list,this.selectDetail)
2918
- if (!option || !list){
2775
+ confirmRefSelect (option, list) {
2776
+ console.debug('options', option, list, this.selectDetail)
2777
+ if (!option || !list) {
2919
2778
  this.refShowPicker = false;
2920
2779
  return
2921
2780
  }
2922
2781
  this.selectDetail.value = list;
2923
2782
  let val = ''
2924
- if (Array.isArray(option)){
2925
- val = option.map(item=>{
2783
+ if (Array.isArray(option)) {
2784
+ val = option.map(item => {
2926
2785
  return item.id
2927
2786
  })
2928
2787
  this.extInfoFieldValue[this.selectDetail.fieldId] = option
@@ -2934,59 +2793,57 @@ export default {
2934
2793
  this.refShowPicker = false;
2935
2794
  },
2936
2795
  // 一个重复的方法 兼容 状态优先级 的关联控件,
2937
- relationSet(field,list) {
2796
+ relationSet (field, list) {
2938
2797
  let flag = false
2939
2798
  // 如果在extInfo下有该字段,表示已被关联,否则根据 类型去判断 retrun true 或者false
2940
- if(field.extInfo && field.extInfo[list] && Object.keys(field.extInfo[list]).length !== 0) {
2799
+ if (field.extInfo && field.extInfo[list] && Object.keys(field.extInfo[list]).length !== 0) {
2941
2800
  for (const key in field.extInfo[list]) {
2942
2801
  const element = field.extInfo[list][key];
2943
2802
  let orderFieldValue = ""
2944
- for (let i=0;i<this.formShow.form.formFieldRelation.length;i++){
2945
- if (key === this.formShow.form.formFieldRelation[i].fieldId || key === this.formShow.form.formFieldRelation[i].formField.workOrderFieldId){
2803
+ for (let i = 0; i < this.formShow.form.formFieldRelation.length; i++) {
2804
+ if (key === this.formShow.form.formFieldRelation[i].fieldId || key === this.formShow.form.formFieldRelation[i].formField.workOrderFieldId) {
2946
2805
  orderFieldValue = this.formShow.form.formFieldRelation[i].value
2947
2806
  break
2948
2807
  }
2949
2808
  }
2950
- console.debug('orderFieldValue',orderFieldValue)
2951
- if(orderFieldValue) {
2952
- if(Array.isArray(orderFieldValue)) {
2953
- if(Array.isArray(element)) {
2809
+ if (orderFieldValue) {
2810
+ if (Array.isArray(orderFieldValue)) {
2811
+ if (Array.isArray(element)) {
2954
2812
  for (let index = 0; index < element.length; index++) {
2955
- flag = orderFieldValue.some(item =>{ return item == element[index] })
2956
- if(flag) {
2813
+ flag = orderFieldValue.some(item => { return item == element[index] })
2814
+ if (flag) {
2957
2815
  return flag
2958
2816
  }
2959
2817
  }
2960
2818
  } else {
2961
- flag = orderFieldValue.some(item =>{ return item == element })
2962
- if(flag) {
2819
+ flag = orderFieldValue.some(item => { return item == element })
2820
+ if (flag) {
2963
2821
  return flag
2964
2822
  }
2965
2823
  }
2966
2824
  } else {
2967
- if(Array.isArray(element)) {
2825
+ if (Array.isArray(element)) {
2968
2826
  for (let index = 0; index < element.length; index++) {
2969
- flag = element[index] == orderFieldValue
2970
- if(flag) {
2827
+ flag = element[index] == orderFieldValue
2828
+ if (flag) {
2971
2829
  return flag
2972
2830
  }
2973
2831
  }
2974
2832
  } else {
2975
- flag = element == orderFieldValue
2976
- if(flag) {
2833
+ flag = element == orderFieldValue
2834
+ if (flag) {
2977
2835
  return flag
2978
2836
  }
2979
2837
  }
2980
2838
 
2981
2839
  }
2982
- }
2983
- else if(list == 'dependentFieldId') {
2984
- return flag = false
2840
+ } else if (list == 'dependentFieldId') {
2841
+ flag = false
2985
2842
  }
2986
2843
  }
2987
- } else if(list == 'dependentFieldId') {
2844
+ } else if (list == 'dependentFieldId') {
2988
2845
  return flag = true
2989
- } else if(list == 'requiredDependentFieldId') {
2846
+ } else if (list == 'requiredDependentFieldId') {
2990
2847
  return flag = false
2991
2848
  }
2992
2849
  return flag
@@ -2995,40 +2852,40 @@ export default {
2995
2852
  // this.attachments.splice(index, 1)
2996
2853
  this.attachmentList.splice(index, 1)
2997
2854
  },
2998
- attachDeleteFile(index,fieldId){
2999
- this.extInfoFieldValue[fieldId].splice(index,1)
2855
+ attachDeleteFile (index, fieldId) {
2856
+ this.extInfoFieldValue[fieldId].splice(index, 1)
3000
2857
  },
3001
- desUploadImageAndFile({type, param}) {
3002
- if(param.type == 'pending') {
3003
- this.attachmentList.push({
3004
- url: '',
3005
- name: param.name,
3006
- id: param.uid
3007
- })
3008
- } else {
3009
- this.attachmentList.forEach(item =>{
3010
- if(item.id == param.uid) {
3011
- item.url = param.url
3012
- delete item.uid
3013
- }
3014
- })
3015
- }
2858
+ desUploadImageAndFile ({ type, param }) {
2859
+ if (param.type == 'pending') {
2860
+ this.attachmentList.push({
2861
+ url: '',
2862
+ name: param.name,
2863
+ id: param.uid
2864
+ })
2865
+ } else {
2866
+ this.attachmentList.forEach(item => {
2867
+ if (item.id == param.uid) {
2868
+ item.url = param.url
2869
+ delete item.uid
2870
+ }
2871
+ })
2872
+ }
3016
2873
  },
3017
2874
  },
3018
- watch:{
3019
- formFieldValus:{
3020
- handler(value){
2875
+ watch: {
2876
+ formFieldValus: {
2877
+ handler (value) {
3021
2878
  console.log(value);
3022
2879
  },
3023
- deep:true
2880
+ deep: true
3024
2881
  },
3025
- workOrderDes:{
3026
- handler(val){
2882
+ workOrderDes: {
2883
+ handler (val) {
3027
2884
  let newVal = ''
3028
2885
  newVal = val.replace(/ style=".*?"/g, '');
3029
- if (this.currentEditor){
3030
- if (this.workOrderDestail){
3031
- this.$nextTick(() =>{
2886
+ if (this.currentEditor) {
2887
+ if (this.workOrderDestail) {
2888
+ this.$nextTick(() => {
3032
2889
  this.workOrderDestail.value = newVal;
3033
2890
  })
3034
2891
  }
@@ -3036,21 +2893,21 @@ export default {
3036
2893
  writer.setSelection( writer.createPositionAt( this.currentEditor.model.document.getRoot(), 'end' ) );
3037
2894
  });*/
3038
2895
  }
3039
- console.debug('workOrderDes',this.workOrderDestail)
2896
+ console.debug('workOrderDes', this.workOrderDestail)
3040
2897
  },
3041
- deep:true,
3042
- immediate:true
2898
+ deep: true,
2899
+ immediate: true
3043
2900
  },
3044
- fieldValue:{
3045
- handler(val){
3046
- console.debug('val',val)
3047
- setTimeout(()=>{
2901
+ fieldValue: {
2902
+ handler (val) {
2903
+ console.debug('val', val)
2904
+ setTimeout(() => {
3048
2905
  this.fieldSetting()
3049
- },0)
2906
+ }, 0)
3050
2907
  this.listenField();
3051
2908
  },
3052
- deep:true,
3053
- immediate:true
2909
+ deep: true,
2910
+ immediate: true
3054
2911
  }
3055
2912
  }
3056
2913
 
@@ -3063,131 +2920,155 @@ export default {
3063
2920
  .notClick {
3064
2921
  pointer-events: none;
3065
2922
  }
3066
- .formClass{
2923
+
2924
+ .formClass {
3067
2925
  /* border: 1px solid #ebebeb;*/
3068
2926
  font-family: "Avenir", Helvetica, Arial, sans-serif;
3069
2927
  border-radius: 15px;
3070
- .explanation{
2928
+
2929
+ .explanation {
3071
2930
  display: flex;
3072
2931
  padding: 4px;
3073
- .explanation-p{
2932
+
2933
+ .explanation-p {
3074
2934
  color: #366aff;
3075
2935
  font-size: 14px;
3076
2936
  margin: 10px 4px;
3077
- .el-icon-info{
2937
+
2938
+ .el-icon-info {
3078
2939
  margin-right: 8px;
3079
2940
  }
3080
2941
  }
3081
2942
  }
3082
- .explain-url{
3083
- a{
3084
- color:#366aff ;
2943
+
2944
+ .explain-url {
2945
+ a {
2946
+ color: #366aff;
3085
2947
  }
3086
2948
  }
3087
- .titleName{
2949
+
2950
+ .titleName {
3088
2951
  font-size: 1em;
3089
2952
  text-align: center;
3090
2953
  padding-bottom: 10px;
3091
2954
  display: flex;
3092
2955
  align-items: center;
3093
2956
  justify-content: center;
3094
- /* border-bottom: 1px solid #EEEEEE;*/
2957
+ /* border-bottom: 1px solid #EEEEEE;*/
3095
2958
  }
3096
- .title-link{
2959
+
2960
+ .title-link {
3097
2961
  height: 1px;
3098
2962
  background-color: #EEEEEE;
3099
2963
  }
3100
- .bottom-link{
2964
+
2965
+ .bottom-link {
3101
2966
  margin-top: 14px;
3102
2967
  height: 1px;
3103
2968
  background-color: #EEEEEE;
3104
2969
  }
3105
- .form-submit-btn{
2970
+
2971
+ .form-submit-btn {
3106
2972
  padding: 14px 16px 0 16px;
3107
2973
  text-align: center;
3108
2974
  }
3109
- /deep/.ck.ck-editor{
3110
- padding: 0 8px;
2975
+
2976
+ /deep/.ck.ck-editor {
2977
+ padding: 0 8px;
3111
2978
  }
3112
- /deep/.ck.ck-toolbar{
3113
- border-color:#E0E6F7;
3114
- border-top-left-radius: 9px!important;
3115
- border-top-right-radius: 9px!important;
2979
+
2980
+ /deep/.ck.ck-toolbar {
2981
+ border-color: #E0E6F7;
2982
+ border-top-left-radius: 9px !important;
2983
+ border-top-right-radius: 9px !important;
2984
+
3116
2985
  .ck-toolbar__items {
3117
2986
  .ck-button {
3118
2987
  color: #366AFF;
2988
+
3119
2989
  svg {
3120
2990
  fill: #366AFF;
3121
2991
  width: 12px !important;
3122
- height: 12px !important;
2992
+ height: 12px !important;
3123
2993
  margin-bottom: 2px;
3124
2994
  }
3125
2995
  }
3126
2996
  }
3127
2997
  }
3128
- /deep/.ck.ck-editor__editable_inline{
3129
- border-color:#E0E6F7;
3130
- min-height: 150px!important;
3131
- border-bottom-left-radius: 9px!important;
3132
- border-bottom-right-radius: 9px!important;
2998
+
2999
+ /deep/.ck.ck-editor__editable_inline {
3000
+ border-color: #E0E6F7;
3001
+ min-height: 150px !important;
3002
+ border-bottom-left-radius: 9px !important;
3003
+ border-bottom-right-radius: 9px !important;
3133
3004
  }
3134
- /deep/.ck-editor__editable{
3135
- img{
3005
+
3006
+ /deep/.ck-editor__editable {
3007
+ img {
3136
3008
  height: 140px;
3137
3009
  // width: 80%;
3138
3010
  object-fit: contain;
3139
3011
  }
3012
+
3140
3013
  .ck-widget_selected {
3141
- .ck-widget__type-around {
3142
- display: none;
3143
- }
3014
+ .ck-widget__type-around {
3015
+ display: none;
3016
+ }
3144
3017
  }
3018
+
3145
3019
  .ck-widget:hover {
3146
- outline-color:#366aff;
3020
+ outline-color: #366aff;
3021
+
3147
3022
  .ck-widget__type-around {
3148
3023
  display: none;
3149
3024
  }
3150
3025
  }
3026
+
3151
3027
  .ask-component-img-box {
3152
- width: auto;
3153
- height: auto;
3154
- display: inline-block;
3028
+ width: auto;
3029
+ height: auto;
3030
+ display: inline-block;
3155
3031
  }
3032
+
3156
3033
  .ask-component-placeholder-span[type=upload] {
3157
- background-color: rgba(0, 89, 255, 0.2);
3158
- display: inline-block;
3159
- padding: 2px 5px;
3160
- border-radius: 3px;
3161
- padding-left: 20px;
3162
- position: relative;
3034
+ background-color: rgba(0, 89, 255, 0.2);
3035
+ display: inline-block;
3036
+ padding: 2px 5px;
3037
+ border-radius: 3px;
3038
+ padding-left: 20px;
3039
+ position: relative;
3163
3040
  }
3041
+
3164
3042
  .ask-component-placeholder-span[type=upload]::after {
3165
- content: '';
3166
- background-image: url('../assets/image/building.png');
3167
- background-size: 100%;
3168
- width: 15px;
3169
- height: 15px;
3170
- position: absolute;
3171
- top: 5px;
3172
- left: 2px;
3173
- color: #366AFF;
3174
- animation: rotate 1.5s linear infinite;
3043
+ content: '';
3044
+ background-image: url('../assets/image/building.png');
3045
+ background-size: 100%;
3046
+ width: 15px;
3047
+ height: 15px;
3048
+ position: absolute;
3049
+ top: 5px;
3050
+ left: 2px;
3051
+ color: #366AFF;
3052
+ animation: rotate 1.5s linear infinite;
3175
3053
  }
3054
+
3176
3055
  @keyframes rotate {
3177
- from {
3178
- transform: rotate(0deg);
3179
- }
3180
- to {
3181
- transform: rotate(360deg);
3182
- }
3056
+ from {
3057
+ transform: rotate(0deg);
3058
+ }
3059
+
3060
+ to {
3061
+ transform: rotate(360deg);
3062
+ }
3183
3063
  }
3184
3064
 
3185
3065
  }
3186
3066
 
3187
- .cascader-class{
3067
+ .cascader-class {
3188
3068
  padding: 10px 16px;
3189
3069
  }
3190
- .cascader-input{
3070
+
3071
+ .cascader-input {
3191
3072
  -webkit-appearance: none;
3192
3073
  background-image: none;
3193
3074
  border: 1px solid #E0E6F7;
@@ -3199,50 +3080,58 @@ export default {
3199
3080
  line-height: 40px;
3200
3081
  outline: 0;
3201
3082
  padding: 0 15px;
3202
- -webkit-transition: border-color .2s cubic-bezier(.645,.045,.355,1);
3203
- transition: border-color .2s cubic-bezier(.645,.045,.355,1);
3083
+ -webkit-transition: border-color .2s cubic-bezier(.645, .045, .355, 1);
3084
+ transition: border-color .2s cubic-bezier(.645, .045, .355, 1);
3204
3085
  width: 100%;
3205
- background-color: transparent!important;
3206
- border-radius: 9px!important;
3086
+ background-color: transparent !important;
3087
+ border-radius: 9px !important;
3207
3088
  cursor: pointer;
3208
3089
  font-size: 14px;
3209
3090
  }
3210
- .cascader-name{
3091
+
3092
+ .cascader-name {
3211
3093
  color: #A9B3C6;
3212
3094
  font-size: 1em;
3213
3095
  padding-bottom: 8px;
3214
3096
  }
3215
- .form-field-file{
3216
- #attachment-upload{
3217
- /deep/.image-list{
3097
+
3098
+ .form-field-file {
3099
+ #attachment-upload {
3100
+ /deep/.image-list {
3218
3101
  padding: 0;
3219
3102
  }
3220
3103
  }
3221
3104
  }
3222
3105
  }
3223
- .pcFormClass{
3106
+
3107
+ .pcFormClass {
3224
3108
  width: 400px;
3225
3109
  margin: 0 auto;
3226
- .field-item{
3110
+
3111
+ .field-item {
3227
3112
  padding: 8px 0;
3228
- .field-item-name{
3113
+
3114
+ .field-item-name {
3229
3115
  padding-bottom: 8px;
3230
3116
  color: #A9B3C6;
3231
- /* color: #000000;*/
3117
+ /* color: #000000;*/
3232
3118
  }
3233
3119
  }
3234
- /deep/.el-input__inner{
3235
- border-color: #E0E6F7!important;
3236
- background-color: transparent!important;
3237
- border-radius: 9px!important;
3120
+
3121
+ /deep/.el-input__inner {
3122
+ border-color: #E0E6F7 !important;
3123
+ background-color: transparent !important;
3124
+ border-radius: 9px !important;
3238
3125
  }
3239
- /deep/.el-textarea__inner{
3240
- border-color: #E0E6F7!important;
3241
- background-color: transparent!important;
3242
- border-radius: 9px!important;
3243
- padding: 9px 15px!important;
3126
+
3127
+ /deep/.el-textarea__inner {
3128
+ border-color: #E0E6F7 !important;
3129
+ background-color: transparent !important;
3130
+ border-radius: 9px !important;
3131
+ padding: 9px 15px !important;
3244
3132
  }
3245
- .upload-demo{
3133
+
3134
+ .upload-demo {
3246
3135
  background-color: #FFFFFF;
3247
3136
  border: 1px solid #E0E6F7;
3248
3137
  border-radius: 10px;
@@ -3251,15 +3140,17 @@ export default {
3251
3140
  vertical-align: top;
3252
3141
  cursor: pointer;
3253
3142
  text-align: center;
3254
- font-size:28px;
3255
- color:#366AFF;
3143
+ font-size: 28px;
3144
+ color: #366AFF;
3256
3145
  display: flex;
3257
3146
  align-items: center;
3258
3147
  justify-content: center;
3259
- i{
3148
+
3149
+ i {
3260
3150
  color: #366AFF;
3261
3151
  }
3262
- /deep/.el-upload{
3152
+
3153
+ /deep/.el-upload {
3263
3154
  height: 100%;
3264
3155
  width: 100%;
3265
3156
  display: flex;
@@ -3267,7 +3158,8 @@ export default {
3267
3158
  justify-content: center;
3268
3159
  }
3269
3160
  }
3270
- /deep/.el-upload--picture-card{
3161
+
3162
+ /deep/.el-upload--picture-card {
3271
3163
  background-color: #FFFFFF;
3272
3164
  border: 1px solid #E0E6F7;
3273
3165
  border-radius: 10px;
@@ -3276,41 +3168,49 @@ export default {
3276
3168
  vertical-align: top;
3277
3169
  cursor: pointer;
3278
3170
  text-align: center;
3279
- font-size:28px;
3280
- color:#366AFF;
3171
+ font-size: 28px;
3172
+ color: #366AFF;
3281
3173
  display: flex;
3282
3174
  align-items: center;
3283
3175
  justify-content: center;
3284
- i{
3176
+
3177
+ i {
3285
3178
  color: #366AFF;
3286
3179
  }
3287
3180
  }
3288
- /deep/.el-select-dropdown__item.selected{
3181
+
3182
+ /deep/.el-select-dropdown__item.selected {
3289
3183
  color: #366aff;
3290
3184
  }
3291
- /deep/.el-upload-list--picture-card{
3292
- .el-upload-list__item{
3185
+
3186
+ /deep/.el-upload-list--picture-card {
3187
+ .el-upload-list__item {
3293
3188
  width: 74px;
3294
3189
  height: 74px;
3295
3190
  border-radius: 10px;
3296
3191
  }
3297
3192
  }
3298
- /deep/.el-upload-list__item-name{
3193
+
3194
+ /deep/.el-upload-list__item-name {
3299
3195
  max-width: 180px;
3300
3196
  }
3197
+
3301
3198
  .hide .el-upload--picture-card {
3302
- display: none!important;
3199
+ display: none !important;
3303
3200
  }
3304
3201
  }
3305
- /deep/.van-radio__icon--checked .van-icon{
3306
- background-color: #366aff!important;
3307
- border-color: #366aff!important;
3202
+
3203
+ /deep/.van-radio__icon--checked .van-icon {
3204
+ background-color: #366aff !important;
3205
+ border-color: #366aff !important;
3308
3206
  }
3309
- /deep/.van-checkbox__icon--checked .van-icon{
3310
- background-color: #366aff!important;
3311
- border-color: #366aff!important;
3207
+
3208
+ /deep/.van-checkbox__icon--checked .van-icon {
3209
+ background-color: #366aff !important;
3210
+ border-color: #366aff !important;
3312
3211
  }
3313
- /deep/.vant-upload--picture-card{
3212
+
3213
+ /deep/.vant-upload--picture-card {
3314
3214
  background-color: #ffffff;
3315
3215
  border: 1px solid #E0E6F7;
3316
3216
  border-radius: 10px;
@@ -3319,92 +3219,111 @@ export default {
3319
3219
  vertical-align: top;
3320
3220
  cursor: pointer;
3321
3221
  text-align: center;
3322
- font-size:28px;
3323
- color:#8c939d;
3222
+ font-size: 28px;
3223
+ color: #8c939d;
3324
3224
  display: flex;
3325
3225
  align-items: center;
3326
3226
  justify-content: center;
3327
- i{
3227
+
3228
+ i {
3328
3229
  color: #366aff;
3329
3230
  }
3330
3231
  }
3331
- /deep/.van-popup{
3232
+
3233
+ /deep/.van-popup {
3332
3234
  border-radius: 5px;
3333
3235
  }
3334
- .remPhoneClassForm{
3335
- .mobileFormClass{
3236
+
3237
+ .remPhoneClassForm {
3238
+ .mobileFormClass {
3336
3239
  width: calc(100vw - 110px);
3337
3240
  background-color: white;
3338
- .form-field-item{
3339
- .form-field-item-value{
3340
- /deep/.van-cell{
3241
+
3242
+ .form-field-item {
3243
+ .form-field-item-value {
3244
+ /deep/.van-cell {
3341
3245
  flex-direction: column;
3342
3246
  padding: 8px 16px;
3343
3247
  }
3344
- /deep/.van-cell__value{
3248
+
3249
+ /deep/.van-cell__value {
3345
3250
  border: 1px solid #E0E6F7;
3346
3251
  border-radius: 9px;
3347
3252
  min-height: 40px;
3348
3253
  padding: 0 10px;
3349
3254
  }
3350
- /deep/.van-cell__right-icon{
3351
- color: #999999!important;
3255
+
3256
+ /deep/.van-cell__right-icon {
3257
+ color: #999999 !important;
3352
3258
  }
3353
- .form-field-item-file{
3259
+
3260
+ .form-field-item-file {
3354
3261
  padding: 10px 16px;
3355
- .fileName{
3262
+
3263
+ .fileName {
3356
3264
  padding-bottom: 8px;
3357
3265
  color: #A9B3C6;
3358
- /* color: #000000;*/
3266
+ /* color: #000000;*/
3359
3267
  }
3360
- #attachment-upload{
3361
- /deep/.image-list{
3268
+
3269
+ #attachment-upload {
3270
+ /deep/.image-list {
3362
3271
  padding: 0;
3363
3272
  }
3364
3273
  }
3365
3274
  }
3366
- .workorder_description{
3367
- /* padding: 8px 16px;*/
3275
+
3276
+ .workorder_description {
3277
+ /* padding: 8px 16px;*/
3368
3278
  padding: 8px 0;
3279
+
3369
3280
  /*font-size: 14px;*/
3370
- .field-name{
3281
+ .field-name {
3371
3282
  width: 100%;
3372
3283
  text-align: left;
3373
3284
  color: #A9B3C6;
3374
- /* color: #000000;*/
3285
+ /* color: #000000;*/
3375
3286
  line-height: 1;
3376
3287
  padding-bottom: 8px;
3377
3288
  }
3289
+
3378
3290
  /*.required-name{
3379
3291
  margin-left: -6px;
3380
3292
  }*/
3381
3293
 
3382
- /* /deep/.ck-content .image img{
3294
+ /* /deep/.ck-content .image img{
3383
3295
  max-width: 200px!important;
3384
3296
  }*/
3385
3297
  }
3386
3298
  }
3387
- .form-field-item-other{
3388
- /deep/.van-cell{
3299
+
3300
+ .form-field-item-other {
3301
+ /deep/.van-cell {
3389
3302
  flex-direction: column;
3390
3303
  }
3391
- /deep/.van-cell__value{
3304
+
3305
+ /deep/.van-cell__value {
3392
3306
  min-height: 40px;
3393
3307
  }
3394
3308
  }
3395
- .explan-ation{
3396
- .explan-ation-div{
3309
+
3310
+ .explan-ation {
3311
+ .explan-ation-div {
3397
3312
  display: flex;
3398
- /* padding: 4px 16px;*/
3313
+ /* padding: 4px 16px;*/
3399
3314
  padding: 4px;
3400
3315
  }
3401
- .explan-ation-p{
3402
- color: #366aff;font-size: 14px;margin: 16px 4px;
3316
+
3317
+ .explan-ation-p {
3318
+ color: #366aff;
3319
+ font-size: 14px;
3320
+ margin: 16px 4px;
3403
3321
  }
3404
3322
  }
3405
3323
  }
3406
- .upload-phone-demo{
3407
- /deep/.el-upload--picture-card{
3324
+
3325
+ .upload-phone-demo {
3326
+ /deep/.el-upload--picture-card {
3408
3327
  background-color: #fbfdff;
3409
3328
  border: 1px dashed #c0ccda;
3410
3329
  border-radius: 6px;
@@ -3413,61 +3332,71 @@ export default {
3413
3332
  vertical-align: top;
3414
3333
  cursor: pointer;
3415
3334
  text-align: center;
3416
- font-size:28px;
3417
- color:#8c939d;
3335
+ font-size: 28px;
3336
+ color: #8c939d;
3418
3337
  display: flex;
3419
3338
  align-items: center;
3420
3339
  justify-content: center;
3421
3340
  }
3422
- /deep/.el-upload-list--picture-card .el-upload-list__item{
3341
+
3342
+ /deep/.el-upload-list--picture-card .el-upload-list__item {
3423
3343
  height: 76px;
3424
3344
  width: 76px;
3425
3345
  }
3426
3346
  }
3427
- /deep/.van-image__img{
3347
+
3348
+ /deep/.van-image__img {
3428
3349
  border-radius: 10px;
3429
3350
  }
3430
3351
  }
3431
- .submitClass{
3352
+
3353
+ .submitClass {
3432
3354
  min-width: 100px;
3433
3355
  background-color: #366aff;
3434
- color: white!important;
3356
+ color: white !important;
3435
3357
  height: 32px;
3436
- i{
3358
+
3359
+ i {
3437
3360
  padding-right: 8px;
3438
3361
  font-weight: 600;
3439
3362
  }
3440
3363
  }
3441
- /deep/.van-radio-group--horizontal{
3442
- .van-radio{
3364
+
3365
+ /deep/.van-radio-group--horizontal {
3366
+ .van-radio {
3443
3367
  min-width: 100px;
3444
3368
  max-width: 260px;
3445
3369
  flex: none;
3446
3370
  }
3447
- .van-radio--horizontal{
3371
+
3372
+ .van-radio--horizontal {
3448
3373
  padding: 0.3rem 0;
3449
3374
  margin-right: 6px;
3450
3375
  }
3451
3376
  }
3452
- /deep/.van-checkbox-group--horizontal{
3453
- .van-checkbox{
3377
+
3378
+ /deep/.van-checkbox-group--horizontal {
3379
+ .van-checkbox {
3454
3380
  min-width: 100px;
3455
3381
  max-width: 260px;
3456
3382
  flex: none;
3457
3383
  }
3458
- .van-checkbox--horizontal{
3384
+
3385
+ .van-checkbox--horizontal {
3459
3386
  padding: 0.3rem 0;
3460
3387
  margin-right: 6px;
3461
3388
  }
3462
3389
  }
3463
- /deep/.van-button--info{
3464
- border:1px solid #366aff;
3390
+
3391
+ /deep/.van-button--info {
3392
+ border: 1px solid #366aff;
3465
3393
  }
3466
- /deep/.van-field__label{
3394
+
3395
+ /deep/.van-field__label {
3467
3396
  width: 100%;
3468
3397
  text-align: left;
3469
- color: #A9B3C6!important;
3470
- /* color: #000000!important;*/
3398
+ color: #A9B3C6 !important;
3399
+ /* color: #000000!important;*/
3471
3400
  display: flex;
3472
3401
  align-items: center;
3473
3402
  line-height: 1;
@@ -3475,49 +3404,57 @@ export default {
3475
3404
  font-size: 1em;
3476
3405
  }
3477
3406
 
3478
- /deep/.van-field__control{
3407
+ /deep/.van-field__control {
3479
3408
  min-height: 40px;
3480
3409
  }
3481
- /deep/textarea{
3410
+
3411
+ /deep/textarea {
3482
3412
  padding: 7px 0;
3483
3413
  }
3484
- /deep/.van-dropdown-menu__bar{
3485
- box-shadow: none!important;
3414
+
3415
+ /deep/.van-dropdown-menu__bar {
3416
+ box-shadow: none !important;
3486
3417
  }
3487
- /deep/.van-overlay{
3488
- background-color: rgba(0,0,0,.4);
3418
+
3419
+ /deep/.van-overlay {
3420
+ background-color: rgba(0, 0, 0, .4);
3489
3421
  }
3490
3422
  }
3491
3423
 
3492
- .remCompanyClassForm{
3424
+ .remCompanyClassForm {
3493
3425
  width: 100%;
3494
3426
  font-size: 1em;
3495
- .submitClass{
3427
+
3428
+ .submitClass {
3496
3429
  min-width: 100px;
3497
- color: white!important;
3498
- background-color:#366aff;
3430
+ color: white !important;
3431
+ background-color: #366aff;
3499
3432
  border-color: #366aff;
3500
- i{
3433
+
3434
+ i {
3501
3435
  padding-right: 8px;
3502
3436
  font-weight: 600;
3503
3437
  }
3504
3438
  }
3505
- /deep/.el-checkbox-group{
3439
+
3440
+ /deep/.el-checkbox-group {
3506
3441
  display: flex;
3507
3442
  align-items: center;
3508
3443
  flex-wrap: wrap;
3509
- .el-checkbox{
3444
+
3445
+ .el-checkbox {
3510
3446
  padding: 8px 0;
3511
- min-width:150px;
3447
+ min-width: 150px;
3512
3448
  max-width: 280px;
3513
3449
  flex: none;
3514
3450
  display: flex;
3515
3451
  overflow: hidden;
3516
3452
  margin-right: 0;
3517
3453
  display: flex;
3518
- align-items:center;
3454
+ align-items: center;
3519
3455
  }
3520
- .el-checkbox__label{
3456
+
3457
+ .el-checkbox__label {
3521
3458
  font-size: 1em;
3522
3459
  overflow: hidden;
3523
3460
  text-overflow: ellipsis;
@@ -3525,20 +3462,22 @@ export default {
3525
3462
  }
3526
3463
  }
3527
3464
 
3528
- /deep/.el-radio-group{
3465
+ /deep/.el-radio-group {
3529
3466
  display: flex;
3530
3467
  align-items: center;
3531
3468
  flex-wrap: wrap;
3532
- .el-radio{
3469
+
3470
+ .el-radio {
3533
3471
  padding: 8px 0;
3534
- min-width:150px;
3472
+ min-width: 150px;
3535
3473
  max-width: 280px;
3536
3474
  flex: none;
3537
3475
  display: flex;
3538
3476
  overflow: hidden;
3539
3477
  margin-right: 0;
3540
3478
  }
3541
- .el-radio__label{
3479
+
3480
+ .el-radio__label {
3542
3481
  overflow: hidden;
3543
3482
  text-overflow: ellipsis;
3544
3483
  white-space: nowrap;
@@ -3546,27 +3485,33 @@ export default {
3546
3485
  }
3547
3486
  }
3548
3487
 
3549
- /deep/.el-radio__input.is-checked+.el-radio__label{
3550
- color: #366aff!important;
3488
+ /deep/.el-radio__input.is-checked+.el-radio__label {
3489
+ color: #366aff !important;
3551
3490
  }
3552
- /deep/.el-radio__input.is-checked .el-radio__inner{
3553
- color: #366aff!important;
3554
- border-color: #366aff!important;
3555
- background: #366aff!important;
3491
+
3492
+ /deep/.el-radio__input.is-checked .el-radio__inner {
3493
+ color: #366aff !important;
3494
+ border-color: #366aff !important;
3495
+ background: #366aff !important;
3556
3496
  }
3557
- /deep/.el-checkbox__input.is-checked+.el-checkbox__label{
3558
- color: #366aff!important;
3497
+
3498
+ /deep/.el-checkbox__input.is-checked+.el-checkbox__label {
3499
+ color: #366aff !important;
3559
3500
  }
3560
- /deep/.el-checkbox__input.is-checked .el-checkbox__inner, .el-checkbox__input.is-indeterminate .el-checkbox__inner{
3561
- background-color: #366aff!important;
3562
- border-color: #366aff!important;
3501
+
3502
+ /deep/.el-checkbox__input.is-checked .el-checkbox__inner,
3503
+ .el-checkbox__input.is-indeterminate .el-checkbox__inner {
3504
+ background-color: #366aff !important;
3505
+ border-color: #366aff !important;
3563
3506
  }
3507
+
3564
3508
  /deep/.ck .ck-icon {
3565
3509
  width: 14px !important;
3566
3510
  height: 14px !important;
3567
3511
  }
3568
3512
  }
3569
- .drawer-container{
3513
+
3514
+ .drawer-container {
3570
3515
  height: 100%;
3571
3516
  overflow: hidden;
3572
3517
  }