eoss-ui 0.3.97

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 (378) hide show
  1. package/CHANGELOG.md +929 -0
  2. package/README.md +30 -0
  3. package/lib/button-group.js +2857 -0
  4. package/lib/button.js +2884 -0
  5. package/lib/card.js +603 -0
  6. package/lib/cascader.js +373 -0
  7. package/lib/checkbox-group.js +3099 -0
  8. package/lib/clients.js +375 -0
  9. package/lib/config/api.js +205 -0
  10. package/lib/data-table-form.js +3848 -0
  11. package/lib/data-table.js +6315 -0
  12. package/lib/date-picker.js +2821 -0
  13. package/lib/dialog.js +3730 -0
  14. package/lib/enterprise.js +372 -0
  15. package/lib/eoss-ui.common.js +65365 -0
  16. package/lib/error-page.js +293 -0
  17. package/lib/flow-group.js +4200 -0
  18. package/lib/flow-list.js +4350 -0
  19. package/lib/flow.js +12893 -0
  20. package/lib/form.js +15635 -0
  21. package/lib/handle-user.js +2900 -0
  22. package/lib/handler.js +3118 -0
  23. package/lib/index.js +1 -0
  24. package/lib/input-number.js +2743 -0
  25. package/lib/input.js +2935 -0
  26. package/lib/label.js +411 -0
  27. package/lib/login.js +5048 -0
  28. package/lib/main.js +5816 -0
  29. package/lib/mainComp.js +6530 -0
  30. package/lib/menu.js +529 -0
  31. package/lib/nav.js +3048 -0
  32. package/lib/notify.js +1079 -0
  33. package/lib/page.js +3036 -0
  34. package/lib/pagination.js +354 -0
  35. package/lib/player.js +2904 -0
  36. package/lib/qr-code.js +2860 -0
  37. package/lib/radio-group.js +3091 -0
  38. package/lib/select-ganged.js +3242 -0
  39. package/lib/select.js +3295 -0
  40. package/lib/selector-panel.js +4425 -0
  41. package/lib/selector.js +3722 -0
  42. package/lib/sizer.js +3067 -0
  43. package/lib/steps.js +2943 -0
  44. package/lib/switch.js +2784 -0
  45. package/lib/table-form.js +6211 -0
  46. package/lib/tabs-panel.js +274 -0
  47. package/lib/tabs.js +4988 -0
  48. package/lib/theme-chalk/base.css +1 -0
  49. package/lib/theme-chalk/button-group.css +1 -0
  50. package/lib/theme-chalk/button.css +0 -0
  51. package/lib/theme-chalk/card.css +1 -0
  52. package/lib/theme-chalk/cascader.css +0 -0
  53. package/lib/theme-chalk/checkbox-group.css +1 -0
  54. package/lib/theme-chalk/clients.css +1 -0
  55. package/lib/theme-chalk/data-table-form.css +1 -0
  56. package/lib/theme-chalk/data-table.css +1 -0
  57. package/lib/theme-chalk/date-picker.css +1 -0
  58. package/lib/theme-chalk/dialog.css +1 -0
  59. package/lib/theme-chalk/enterprise.css +1 -0
  60. package/lib/theme-chalk/error-page.css +1 -0
  61. package/lib/theme-chalk/flow-chart.css +0 -0
  62. package/lib/theme-chalk/flow-group.css +1 -0
  63. package/lib/theme-chalk/flow-list.css +1 -0
  64. package/lib/theme-chalk/flow.css +1 -0
  65. package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
  66. package/lib/theme-chalk/fonts/iconfont.woff +0 -0
  67. package/lib/theme-chalk/form.css +1 -0
  68. package/lib/theme-chalk/handle-user.css +1 -0
  69. package/lib/theme-chalk/handler.css +1 -0
  70. package/lib/theme-chalk/icon.css +1 -0
  71. package/lib/theme-chalk/index.css +1 -0
  72. package/lib/theme-chalk/input-number.css +0 -0
  73. package/lib/theme-chalk/input.css +1 -0
  74. package/lib/theme-chalk/label.css +1 -0
  75. package/lib/theme-chalk/login.css +1 -0
  76. package/lib/theme-chalk/main.css +1 -0
  77. package/lib/theme-chalk/mainComp.css +0 -0
  78. package/lib/theme-chalk/menu.css +1 -0
  79. package/lib/theme-chalk/nav.css +1 -0
  80. package/lib/theme-chalk/notify.css +0 -0
  81. package/lib/theme-chalk/page.css +1 -0
  82. package/lib/theme-chalk/pagination.css +1 -0
  83. package/lib/theme-chalk/player.css +1 -0
  84. package/lib/theme-chalk/qr-code.css +1 -0
  85. package/lib/theme-chalk/radio-group.css +1 -0
  86. package/lib/theme-chalk/radio.css +1 -0
  87. package/lib/theme-chalk/select-ganged.css +1 -0
  88. package/lib/theme-chalk/select.css +0 -0
  89. package/lib/theme-chalk/selector-panel.css +1 -0
  90. package/lib/theme-chalk/selector.css +1 -0
  91. package/lib/theme-chalk/sizer.css +1 -0
  92. package/lib/theme-chalk/steps.css +1 -0
  93. package/lib/theme-chalk/switch.css +1 -0
  94. package/lib/theme-chalk/table-form.css +0 -0
  95. package/lib/theme-chalk/tabs-panel.css +0 -0
  96. package/lib/theme-chalk/tabs.css +1 -0
  97. package/lib/theme-chalk/tips.css +1 -0
  98. package/lib/theme-chalk/toolbar.css +1 -0
  99. package/lib/theme-chalk/tree-group.css +1 -0
  100. package/lib/theme-chalk/tree.css +1 -0
  101. package/lib/theme-chalk/upload.css +1 -0
  102. package/lib/theme-chalk/wujie.css +0 -0
  103. package/lib/theme-chalk/wxlogin.css +1 -0
  104. package/lib/tips.js +2830 -0
  105. package/lib/toolbar.js +531 -0
  106. package/lib/tree-group.js +3373 -0
  107. package/lib/tree.js +3482 -0
  108. package/lib/upload.js +3913 -0
  109. package/lib/utils/bus.js +9 -0
  110. package/lib/utils/date-util.js +318 -0
  111. package/lib/utils/http.js +58 -0
  112. package/lib/utils/rules.js +19 -0
  113. package/lib/utils/store.js +22 -0
  114. package/lib/utils/util.js +2056 -0
  115. package/lib/wujie.js +2845 -0
  116. package/lib/wxlogin.js +2799 -0
  117. package/package.json +151 -0
  118. package/packages/button/index.js +5 -0
  119. package/packages/button/src/main.vue +264 -0
  120. package/packages/button-group/index.js +5 -0
  121. package/packages/button-group/src/main.vue +130 -0
  122. package/packages/card/index.js +5 -0
  123. package/packages/card/src/main.vue +144 -0
  124. package/packages/cascader/index.js +5 -0
  125. package/packages/cascader/src/main.vue +144 -0
  126. package/packages/checkbox-group/index.js +5 -0
  127. package/packages/checkbox-group/src/main.vue +285 -0
  128. package/packages/clients/index.js +5 -0
  129. package/packages/clients/src/main.vue +50 -0
  130. package/packages/data-table/index.js +5 -0
  131. package/packages/data-table/src/children.vue +40 -0
  132. package/packages/data-table/src/column.vue +796 -0
  133. package/packages/data-table/src/main copy.vue +1383 -0
  134. package/packages/data-table/src/main.vue +1229 -0
  135. package/packages/data-table/src/mixins/table.js +12 -0
  136. package/packages/data-table/src/sizer.vue +160 -0
  137. package/packages/data-table-form/index.js +5 -0
  138. package/packages/data-table-form/src/colgroup.vue +17 -0
  139. package/packages/data-table-form/src/main.vue +167 -0
  140. package/packages/data-table-form/src/table.vue +192 -0
  141. package/packages/data-table-form/src/tbody.vue +219 -0
  142. package/packages/data-table-form/src/thead.vue +68 -0
  143. package/packages/date-picker/index.js +5 -0
  144. package/packages/date-picker/src/main.vue +185 -0
  145. package/packages/dialog/index.js +5 -0
  146. package/packages/dialog/src/main.vue +442 -0
  147. package/packages/enterprise/index.js +5 -0
  148. package/packages/enterprise/src/main.vue +66 -0
  149. package/packages/error-page/index.js +5 -0
  150. package/packages/error-page/src/main.vue +44 -0
  151. package/packages/flow/index.js +5 -0
  152. package/packages/flow/src/component/CommonOpinions.vue +290 -0
  153. package/packages/flow/src/component/CustomPreset.vue +311 -0
  154. package/packages/flow/src/component/FileList.vue +97 -0
  155. package/packages/flow/src/component/Preset.vue +253 -0
  156. package/packages/flow/src/component/SendMsg.vue +221 -0
  157. package/packages/flow/src/component/TimeLimit.vue +190 -0
  158. package/packages/flow/src/component/taskUnionExamine.vue +507 -0
  159. package/packages/flow/src/form.vue +120 -0
  160. package/packages/flow/src/main.vue +2107 -0
  161. package/packages/flow/src/processForm.vue +866 -0
  162. package/packages/flow/src/processReject.vue +262 -0
  163. package/packages/flow/src/selectUser.vue +425 -0
  164. package/packages/flow/src/startTaskRead.vue +556 -0
  165. package/packages/flow/src/table.vue +51 -0
  166. package/packages/flow-group/index.js +5 -0
  167. package/packages/flow-group/src/main.vue +540 -0
  168. package/packages/flow-list/index.js +5 -0
  169. package/packages/flow-list/src/flow-table.vue +445 -0
  170. package/packages/flow-list/src/main.vue +456 -0
  171. package/packages/form/index.js +5 -0
  172. package/packages/form/src/main.vue +4429 -0
  173. package/packages/form/src/table.vue +1196 -0
  174. package/packages/handle-user/index.js +5 -0
  175. package/packages/handle-user/src/main.vue +122 -0
  176. package/packages/handler/index.js +5 -0
  177. package/packages/handler/src/main.vue +306 -0
  178. package/packages/input/index.js +5 -0
  179. package/packages/input/src/main.vue +307 -0
  180. package/packages/input-number/index.js +5 -0
  181. package/packages/input-number/src/main.vue +106 -0
  182. package/packages/label/index.js +5 -0
  183. package/packages/label/src/main.vue +208 -0
  184. package/packages/login/index.js +5 -0
  185. package/packages/login/src/main.vue +1193 -0
  186. package/packages/login/src/resetPassword.vue +332 -0
  187. package/packages/main/index.js +5 -0
  188. package/packages/main/src/main.vue +1496 -0
  189. package/packages/main/src/message.vue +239 -0
  190. package/packages/main/src/notice.vue +145 -0
  191. package/packages/main/src/settings.vue +105 -0
  192. package/packages/main/src/userinfo.vue +430 -0
  193. package/packages/mainComp/index.js +5 -0
  194. package/packages/mainComp/src/async-component/index.vue +85 -0
  195. package/packages/mainComp/src/main.vue +1934 -0
  196. package/packages/mainComp/src/message.vue +239 -0
  197. package/packages/mainComp/src/notice.vue +152 -0
  198. package/packages/mainComp/src/settings.vue +105 -0
  199. package/packages/mainComp/src/userinfo.vue +423 -0
  200. package/packages/menu/index.js +5 -0
  201. package/packages/menu/src/main.vue +401 -0
  202. package/packages/nav/index.js +5 -0
  203. package/packages/nav/src/main.vue +250 -0
  204. package/packages/notify/index.js +5 -0
  205. package/packages/notify/src/main.vue +538 -0
  206. package/packages/page/index.js +5 -0
  207. package/packages/page/src/main.vue +167 -0
  208. package/packages/pagination/index.js +5 -0
  209. package/packages/pagination/src/main.vue +77 -0
  210. package/packages/player/index.js +5 -0
  211. package/packages/player/src/main.vue +194 -0
  212. package/packages/qr-code/index.js +5 -0
  213. package/packages/qr-code/src/main.vue +154 -0
  214. package/packages/radio/index.js +5 -0
  215. package/packages/radio/src/main.vue +259 -0
  216. package/packages/radio-group/index.js +6 -0
  217. package/packages/radio-group/src/main.vue +267 -0
  218. package/packages/select/index.js +5 -0
  219. package/packages/select/src/main.vue +683 -0
  220. package/packages/select-ganged/index.js +5 -0
  221. package/packages/select-ganged/src/main.vue +686 -0
  222. package/packages/selector/index.js +5 -0
  223. package/packages/selector/src/main.vue +588 -0
  224. package/packages/selector-panel/index.js +5 -0
  225. package/packages/selector-panel/src/main.vue +968 -0
  226. package/packages/selector-panel/src/selection.vue +142 -0
  227. package/packages/selector-panel/src/tree.vue +129 -0
  228. package/packages/sizer/index.js +5 -0
  229. package/packages/sizer/src/main.vue +254 -0
  230. package/packages/steps/index.js +5 -0
  231. package/packages/steps/src/main.vue +175 -0
  232. package/packages/switch/index.js +5 -0
  233. package/packages/switch/src/main.vue +154 -0
  234. package/packages/table-form/index.js +5 -0
  235. package/packages/tabs/index.js +5 -0
  236. package/packages/tabs/src/main.vue +749 -0
  237. package/packages/tabs-panel/index.js +5 -0
  238. package/packages/tabs-panel/src/main.vue +18 -0
  239. package/packages/theme-chalk/README.md +33 -0
  240. package/packages/theme-chalk/lib/base.css +1 -0
  241. package/packages/theme-chalk/lib/button-group.css +1 -0
  242. package/packages/theme-chalk/lib/button.css +0 -0
  243. package/packages/theme-chalk/lib/card.css +1 -0
  244. package/packages/theme-chalk/lib/cascader.css +0 -0
  245. package/packages/theme-chalk/lib/checkbox-group.css +1 -0
  246. package/packages/theme-chalk/lib/clients.css +1 -0
  247. package/packages/theme-chalk/lib/data-table-form.css +1 -0
  248. package/packages/theme-chalk/lib/data-table.css +1 -0
  249. package/packages/theme-chalk/lib/date-picker.css +1 -0
  250. package/packages/theme-chalk/lib/dialog.css +1 -0
  251. package/packages/theme-chalk/lib/enterprise.css +1 -0
  252. package/packages/theme-chalk/lib/error-page.css +1 -0
  253. package/packages/theme-chalk/lib/flow-chart.css +0 -0
  254. package/packages/theme-chalk/lib/flow-group.css +1 -0
  255. package/packages/theme-chalk/lib/flow-list.css +1 -0
  256. package/packages/theme-chalk/lib/flow.css +1 -0
  257. package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
  258. package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
  259. package/packages/theme-chalk/lib/form.css +1 -0
  260. package/packages/theme-chalk/lib/handle-user.css +1 -0
  261. package/packages/theme-chalk/lib/handler.css +1 -0
  262. package/packages/theme-chalk/lib/icon.css +1 -0
  263. package/packages/theme-chalk/lib/index.css +1 -0
  264. package/packages/theme-chalk/lib/input-number.css +0 -0
  265. package/packages/theme-chalk/lib/input.css +1 -0
  266. package/packages/theme-chalk/lib/label.css +1 -0
  267. package/packages/theme-chalk/lib/login.css +1 -0
  268. package/packages/theme-chalk/lib/main.css +1 -0
  269. package/packages/theme-chalk/lib/mainComp.css +0 -0
  270. package/packages/theme-chalk/lib/menu.css +1 -0
  271. package/packages/theme-chalk/lib/nav.css +1 -0
  272. package/packages/theme-chalk/lib/notify.css +0 -0
  273. package/packages/theme-chalk/lib/page.css +1 -0
  274. package/packages/theme-chalk/lib/pagination.css +1 -0
  275. package/packages/theme-chalk/lib/player.css +1 -0
  276. package/packages/theme-chalk/lib/qr-code.css +1 -0
  277. package/packages/theme-chalk/lib/radio-group.css +1 -0
  278. package/packages/theme-chalk/lib/radio.css +1 -0
  279. package/packages/theme-chalk/lib/select-ganged.css +1 -0
  280. package/packages/theme-chalk/lib/select.css +0 -0
  281. package/packages/theme-chalk/lib/selector-panel.css +1 -0
  282. package/packages/theme-chalk/lib/selector.css +1 -0
  283. package/packages/theme-chalk/lib/sizer.css +1 -0
  284. package/packages/theme-chalk/lib/steps.css +1 -0
  285. package/packages/theme-chalk/lib/switch.css +1 -0
  286. package/packages/theme-chalk/lib/table-form.css +0 -0
  287. package/packages/theme-chalk/lib/tabs-panel.css +0 -0
  288. package/packages/theme-chalk/lib/tabs.css +1 -0
  289. package/packages/theme-chalk/lib/tips.css +1 -0
  290. package/packages/theme-chalk/lib/toolbar.css +1 -0
  291. package/packages/theme-chalk/lib/tree-group.css +1 -0
  292. package/packages/theme-chalk/lib/tree.css +1 -0
  293. package/packages/theme-chalk/lib/upload.css +1 -0
  294. package/packages/theme-chalk/lib/wujie.css +0 -0
  295. package/packages/theme-chalk/lib/wxlogin.css +1 -0
  296. package/packages/theme-chalk/package.json +35 -0
  297. package/packages/theme-chalk/src/base.scss +165 -0
  298. package/packages/theme-chalk/src/button-group.scss +9 -0
  299. package/packages/theme-chalk/src/button.scss +0 -0
  300. package/packages/theme-chalk/src/card.scss +55 -0
  301. package/packages/theme-chalk/src/cascader.scss +0 -0
  302. package/packages/theme-chalk/src/checkbox-group.scss +8 -0
  303. package/packages/theme-chalk/src/clients.scss +72 -0
  304. package/packages/theme-chalk/src/common/var.scss +1516 -0
  305. package/packages/theme-chalk/src/data-table-form.scss +55 -0
  306. package/packages/theme-chalk/src/data-table.scss +202 -0
  307. package/packages/theme-chalk/src/date-picker.scss +8 -0
  308. package/packages/theme-chalk/src/dialog.scss +52 -0
  309. package/packages/theme-chalk/src/enterprise.scss +5 -0
  310. package/packages/theme-chalk/src/error-page.scss +18 -0
  311. package/packages/theme-chalk/src/flow-chart.scss +0 -0
  312. package/packages/theme-chalk/src/flow-group.scss +101 -0
  313. package/packages/theme-chalk/src/flow-list.scss +41 -0
  314. package/packages/theme-chalk/src/flow.scss +285 -0
  315. package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
  316. package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
  317. package/packages/theme-chalk/src/form.scss +451 -0
  318. package/packages/theme-chalk/src/handle-user.scss +40 -0
  319. package/packages/theme-chalk/src/handler.scss +131 -0
  320. package/packages/theme-chalk/src/icon.scss +1714 -0
  321. package/packages/theme-chalk/src/index.scss +50 -0
  322. package/packages/theme-chalk/src/input-number.scss +0 -0
  323. package/packages/theme-chalk/src/input.scss +3 -0
  324. package/packages/theme-chalk/src/label.scss +24 -0
  325. package/packages/theme-chalk/src/login.scss +490 -0
  326. package/packages/theme-chalk/src/main.scss +483 -0
  327. package/packages/theme-chalk/src/mainComp.scss +0 -0
  328. package/packages/theme-chalk/src/menu.scss +201 -0
  329. package/packages/theme-chalk/src/mixins/color.scss +117 -0
  330. package/packages/theme-chalk/src/mixins/mixins.scss +25 -0
  331. package/packages/theme-chalk/src/nav.scss +73 -0
  332. package/packages/theme-chalk/src/notify.scss +0 -0
  333. package/packages/theme-chalk/src/page.scss +3 -0
  334. package/packages/theme-chalk/src/pagination.scss +14 -0
  335. package/packages/theme-chalk/src/player.scss +9 -0
  336. package/packages/theme-chalk/src/qr-code.scss +17 -0
  337. package/packages/theme-chalk/src/radio-group.scss +9 -0
  338. package/packages/theme-chalk/src/radio.scss +3 -0
  339. package/packages/theme-chalk/src/select-ganged.scss +9 -0
  340. package/packages/theme-chalk/src/select.scss +0 -0
  341. package/packages/theme-chalk/src/selector-panel.scss +203 -0
  342. package/packages/theme-chalk/src/selector.scss +85 -0
  343. package/packages/theme-chalk/src/sizer.scss +36 -0
  344. package/packages/theme-chalk/src/steps.scss +88 -0
  345. package/packages/theme-chalk/src/switch.scss +3 -0
  346. package/packages/theme-chalk/src/table-form.scss +1 -0
  347. package/packages/theme-chalk/src/tabs-panel.scss +0 -0
  348. package/packages/theme-chalk/src/tabs.scss +91 -0
  349. package/packages/theme-chalk/src/tips.scss +7 -0
  350. package/packages/theme-chalk/src/toolbar.scss +121 -0
  351. package/packages/theme-chalk/src/tree-group.scss +64 -0
  352. package/packages/theme-chalk/src/tree.scss +140 -0
  353. package/packages/theme-chalk/src/upload.scss +131 -0
  354. package/packages/theme-chalk/src/wujie.scss +0 -0
  355. package/packages/theme-chalk/src/wxlogin.scss +3 -0
  356. package/packages/tips/index.js +5 -0
  357. package/packages/tips/src/main.vue +126 -0
  358. package/packages/toolbar/index.js +5 -0
  359. package/packages/toolbar/src/main.vue +377 -0
  360. package/packages/tree/index.js +5 -0
  361. package/packages/tree/src/main.vue +636 -0
  362. package/packages/tree-group/index.js +5 -0
  363. package/packages/tree-group/src/main.vue +435 -0
  364. package/packages/upload/index.js +5 -0
  365. package/packages/upload/src/main.vue +1033 -0
  366. package/packages/upload/src/picture.js +15 -0
  367. package/packages/wujie/index.js +5 -0
  368. package/packages/wujie/src/main.vue +137 -0
  369. package/packages/wxlogin/index.js +5 -0
  370. package/packages/wxlogin/src/main.vue +110 -0
  371. package/src/config/api.js +211 -0
  372. package/src/index.js +167 -0
  373. package/src/utils/bus.js +3 -0
  374. package/src/utils/date-util.js +312 -0
  375. package/src/utils/http.js +50 -0
  376. package/src/utils/rules.js +18 -0
  377. package/src/utils/store.js +21 -0
  378. package/src/utils/util.js +2105 -0
@@ -0,0 +1,540 @@
1
+ <template>
2
+ <div class="es-flow-group" :class="{ 'is-hide-flow': !isShow }">
3
+ <el-tabs
4
+ class="es-flow-tabs es-tabs"
5
+ type="border-card"
6
+ v-model="activeName"
7
+ ref="tabs"
8
+ :before-leave="handleBefore"
9
+ >
10
+ <template v-for="(items, indexs) in tabs">
11
+ <el-tab-pane
12
+ v-if="handleHide(items.hide)"
13
+ :key="indexs"
14
+ :immediate="items.label == '流程图' ? false : items.immediate"
15
+ :label="items.label"
16
+ :name="String(indexs)"
17
+ :class="{ 'es-flex-vertical': items.average }"
18
+ >
19
+ <span slot="label" v-if="items.title">
20
+ <template v-if="typeof items.title === 'object'">
21
+ <i v-if="items.title.icon" :class="items.title.icon"></i>
22
+ <el-badge
23
+ v-if="
24
+ Object.prototype.hasOwnProperty.call(items.title, 'count')
25
+ "
26
+ type="primary"
27
+ :value="items.title.count"
28
+ :max="99"
29
+ >
30
+ </el-badge>
31
+ {{ items.title.text }}
32
+ </template>
33
+ <template v-else>{{ items.title }}</template>
34
+ </span>
35
+ <template v-if="items.contents">
36
+ <template v-if="Array.isArray(items.contents)">
37
+ <template v-for="(item, index) in items.contents">
38
+ <div class="es-tab-pane-list" :key="index" v-if="items.average">
39
+ <div class="es-tab-pane-main">
40
+ <es-data-table
41
+ v-if="
42
+ item.type === 'data-table' ||
43
+ item.type === 'dataTable' ||
44
+ item.type === 'flow-list' ||
45
+ item.type === 'flowList'
46
+ "
47
+ :appId="taskExamineAppId"
48
+ v-bind="
49
+ handleExclAttribute({
50
+ data: item,
51
+ attrs: ['events', 'visible', 'type']
52
+ })
53
+ "
54
+ :class="{
55
+ 'es-flow-group-data-table':
56
+ item.type === 'data-table' ||
57
+ item.type === 'dataTable',
58
+ 'es-flow-list':
59
+ item.type === 'flow-list' || item.type === 'flowList'
60
+ }"
61
+ :display="activeName === String(indexs)"
62
+ v-on="item.events"
63
+ >
64
+ <template v-if="item.dialog" slot="dialog">
65
+ <template v-if="Array.isArray(item.dialog)">
66
+ <es-dialog
67
+ v-for="(ele, ids) in item.dialog"
68
+ :isReload="true"
69
+ v-bind="ele"
70
+ :key="ids"
71
+ :visible.sync="ele.visible"
72
+ v-on="{ ...ele.events }"
73
+ >
74
+ </es-dialog>
75
+ </template>
76
+ <es-dialog
77
+ v-else
78
+ :isReload="true"
79
+ v-bind="item.dialog"
80
+ :visible.sync="item.dialog.visible"
81
+ v-on="{ ...item.dialog.events }"
82
+ >
83
+ </es-dialog>
84
+ </template>
85
+ </es-data-table>
86
+ <es-tree-group
87
+ v-if="
88
+ item.type === 'tree-group' || item.type === 'treeGroup'
89
+ "
90
+ :appId="taskExamineAppId"
91
+ v-bind="
92
+ handleExclAttribute({
93
+ data: item,
94
+ attrs: ['events', 'visible', 'type']
95
+ })
96
+ "
97
+ :display="activeName === String(indexs)"
98
+ v-on="{ ...item.events }"
99
+ ></es-tree-group>
100
+ <iframe
101
+ v-if="item.type === 'iframe' && !item.blank"
102
+ :id="item.id || item.name"
103
+ :name="item.name"
104
+ frameborder="0"
105
+ width="100%"
106
+ height="100%"
107
+ :src="handleUrlJoinParams(item)"
108
+ ></iframe>
109
+ <es-upload
110
+ v-if="item.type === 'attachment'"
111
+ :file-count.sync="items.title.count"
112
+ height="auto"
113
+ class="es-attachment"
114
+ :ownId="businessId"
115
+ v-bind="
116
+ handleExclAttribute({
117
+ data: item,
118
+ attrs: ['events', 'type']
119
+ })
120
+ "
121
+ :display="activeName === String(indexs)"
122
+ v-on="{ ...item.events }"
123
+ ></es-upload>
124
+ </div>
125
+ </div>
126
+ <template v-else>
127
+ <es-form
128
+ v-if="item.type === 'form'"
129
+ ref="esFlowForm"
130
+ v-bind="
131
+ handleExclAttribute({
132
+ data: item,
133
+ attrs: ['events', 'visible', 'type', 'model', 'ref']
134
+ })
135
+ "
136
+ full
137
+ :key="index"
138
+ :autoId="true"
139
+ :show-button="false"
140
+ :closeDialog="false"
141
+ :display="activeName === String(indexs)"
142
+ :model="item.model"
143
+ :businessId.sync="businessId"
144
+ v-on="{ ...item.events }"
145
+ ></es-form>
146
+ <es-data-table
147
+ v-if="
148
+ item.type === 'data-table' ||
149
+ item.type === 'dataTable' ||
150
+ item.type === 'flow-list' ||
151
+ item.type === 'flowList'
152
+ "
153
+ :appId="taskExamineAppId"
154
+ v-bind="
155
+ handleExclAttribute({
156
+ data: item,
157
+ attrs: ['events', 'visible', 'type']
158
+ })
159
+ "
160
+ :key="index"
161
+ :class="{
162
+ 'es-flow-group-data-table':
163
+ item.type === 'data-table' || item.type === 'dataTable',
164
+ 'es-flow-list':
165
+ item.type === 'flow-list' || item.type === 'flowList'
166
+ }"
167
+ :display="activeName === String(indexs)"
168
+ v-on="item.events"
169
+ >
170
+ <template v-if="item.dialog" slot="dialog">
171
+ <template v-if="Array.isArray(item.dialog)">
172
+ <es-dialog
173
+ v-for="(ele, ids) in item.dialog"
174
+ :isReload="true"
175
+ v-bind="ele"
176
+ :key="ids"
177
+ :visible.sync="ele.visible"
178
+ v-on="{ ...ele.events }"
179
+ >
180
+ </es-dialog>
181
+ </template>
182
+ <es-dialog
183
+ v-else
184
+ :isReload="true"
185
+ v-bind="item.dialog"
186
+ :visible.sync="item.dialog.visible"
187
+ v-on="{ ...item.dialog.events }"
188
+ >
189
+ </es-dialog>
190
+ </template>
191
+ </es-data-table>
192
+ <es-tree-group
193
+ v-if="
194
+ item.type === 'tree-group' || item.type === 'treeGroup'
195
+ "
196
+ :appId="taskExamineAppId"
197
+ v-bind="
198
+ handleExclAttribute({
199
+ data: item,
200
+ attrs: ['events', 'visible', 'type']
201
+ })
202
+ "
203
+ :key="index"
204
+ :display="activeName === String(indexs)"
205
+ v-on="{ ...item.events }"
206
+ ></es-tree-group>
207
+ <iframe
208
+ v-if="item.type === 'iframe' && !item.blank"
209
+ frameborder="0"
210
+ width="100%"
211
+ height="100%"
212
+ :key="index"
213
+ :id="item.id || item.name"
214
+ :name="item.name"
215
+ :src="handleUrlJoinParams(item)"
216
+ ></iframe>
217
+ <es-upload
218
+ v-if="item.type === 'attachment'"
219
+ height="auto"
220
+ class="es-attachment"
221
+ :ownId="businessId"
222
+ v-bind="
223
+ handleExclAttribute({
224
+ data: item,
225
+ attrs: ['events', 'type']
226
+ })
227
+ "
228
+ :key="index"
229
+ :file-count.sync="items.title.count"
230
+ :display="activeName === String(indexs)"
231
+ v-on="{ ...item.events }"
232
+ ></es-upload>
233
+ <es-dialog
234
+ v-if="
235
+ item.type === 'dialog' && activeName === String(indexs)
236
+ "
237
+ :isReload="true"
238
+ v-bind="item"
239
+ :key="index"
240
+ :visible.sync="item.visible"
241
+ v-on="{ ...item.events }"
242
+ >
243
+ </es-dialog>
244
+ </template>
245
+ </template>
246
+ </template>
247
+ <template v-else>
248
+ <es-form
249
+ v-if="items.contents.type === 'form'"
250
+ :show-button="false"
251
+ ref="esFlowForm"
252
+ v-bind="
253
+ handleExclAttribute({
254
+ data: items.contents,
255
+ attrs: ['events', 'visible', 'type', 'model', 'ref']
256
+ })
257
+ "
258
+ full
259
+ :autoId="true"
260
+ :businessId.sync="businessId"
261
+ :closeDialog="false"
262
+ :display="activeName === String(indexs)"
263
+ :model="items.contents.model"
264
+ v-on="{ ...items.contents.events }"
265
+ ></es-form>
266
+ <es-data-table
267
+ v-if="
268
+ items.contents.type === 'data-table' ||
269
+ items.contents.type === 'dataTable' ||
270
+ items.contents.type === 'flow-list' ||
271
+ items.contents.type === 'flowList'
272
+ "
273
+ :appId="taskExamineAppId"
274
+ v-bind="
275
+ handleExclAttribute({
276
+ data: items.contents,
277
+ attrs: ['events', 'visible', 'type']
278
+ })
279
+ "
280
+ :class="{
281
+ 'es-flow-group-data-table':
282
+ items.contents.type === 'data-table' ||
283
+ items.contents.type === 'dataTable',
284
+ 'es-flow-list':
285
+ items.contents.type === 'flow-list' ||
286
+ items.contents.type === 'flowList'
287
+ }"
288
+ :display="activeName === String(indexs)"
289
+ v-on="items.contents.events"
290
+ >
291
+ <template v-if="items.contents.dialog" slot="dialog">
292
+ <template v-if="Array.isArray(items.contents.dialog)">
293
+ <es-dialog
294
+ v-for="(ele, ids) in items.contents.dialog"
295
+ :isReload="true"
296
+ v-bind="ele"
297
+ :key="ids"
298
+ :visible.sync="ele.visible"
299
+ v-on="{ ...ele.events }"
300
+ >
301
+ </es-dialog>
302
+ </template>
303
+ <es-dialog
304
+ v-else
305
+ :isReload="true"
306
+ v-bind="items.contents.dialog"
307
+ :visible.sync="items.contents.dialog.visible"
308
+ v-on="{ ...items.contents.dialog.events }"
309
+ >
310
+ </es-dialog>
311
+ </template>
312
+ </es-data-table>
313
+ <es-tree-group
314
+ v-if="
315
+ items.contents.type === 'tree-group' ||
316
+ items.contents.type === 'treeGroup'
317
+ "
318
+ :appId="taskExamineAppId"
319
+ v-bind="
320
+ handleExclAttribute({
321
+ data: items.contents,
322
+ attrs: ['events', 'visible', 'type']
323
+ })
324
+ "
325
+ :display="activeName === String(indexs)"
326
+ v-on="{ ...items.contents.events }"
327
+ ></es-tree-group>
328
+ <iframe
329
+ v-if="items.contents.type === 'iframe' && !items.contents.blank"
330
+ :id="items.contents.id || items.contents.name"
331
+ :name="items.contents.name"
332
+ frameborder="0"
333
+ width="100%"
334
+ height="100%"
335
+ :src="handleUrlJoinParams(items.contents)"
336
+ ></iframe>
337
+ <es-upload
338
+ v-if="items.contents.type === 'attachment'"
339
+ :ownId="businessId"
340
+ v-bind="
341
+ handleExclAttribute({
342
+ data: items.contents,
343
+ attrs: ['events', 'type']
344
+ })
345
+ "
346
+ :file-count.sync="items.title.count"
347
+ :display="activeName === String(indexs)"
348
+ height="auto"
349
+ class="es-attachment"
350
+ v-on="{ ...items.contents.events }"
351
+ ></es-upload>
352
+ </template>
353
+ </template>
354
+ </el-tab-pane>
355
+ </template>
356
+ </el-tabs>
357
+ <es-flow
358
+ v-if="isShow"
359
+ class="es-group-flow"
360
+ v-bind="flow"
361
+ :before-submit="handleSubmit"
362
+ :businessId="businessId"
363
+ @startTaskRead="handleTaskRead"
364
+ @success="handleSuccess"
365
+ @save="handleSave"
366
+ ></es-flow>
367
+ </div>
368
+ </template>
369
+ <script>
370
+ import util from 'eoss-ui/src/utils/util';
371
+ export default {
372
+ name: 'EsFlowGroup',
373
+ inject: {
374
+ esDialog: {
375
+ default: ''
376
+ },
377
+ injector: {
378
+ default: ''
379
+ }
380
+ },
381
+ props: {
382
+ // autoId: {
383
+ // type: Boolean,
384
+ // default: true
385
+ // },
386
+ active: {
387
+ type: String,
388
+ default: '0'
389
+ },
390
+ contents: Array,
391
+ closeDialog: {
392
+ type: Boolean,
393
+ default: true
394
+ },
395
+ flow: Object,
396
+ events: Object,
397
+ recordid: String,
398
+ pendingId: String,
399
+ arcurl: String,
400
+ itemname: String,
401
+ show: {
402
+ type: Boolean,
403
+ default: true
404
+ },
405
+ appId: String
406
+ },
407
+ data() {
408
+ return {
409
+ activeName: this.active,
410
+ businessId: undefined,
411
+ taskExamineAppId: this.appId
412
+ };
413
+ },
414
+ computed: {
415
+ tabs() {
416
+ return this.contents ? this.contents : [];
417
+ },
418
+ isShow() {
419
+ if (
420
+ this.flow &&
421
+ Object.prototype.hasOwnProperty.call(this.flow, 'show')
422
+ ) {
423
+ return this.flow.show;
424
+ }
425
+ let flow = util.getParams({ name: 'flow' });
426
+ if (flow == 0) {
427
+ return false;
428
+ }
429
+ return this.show;
430
+ }
431
+ },
432
+ watch: {
433
+ activeName(val) {
434
+ this.$emit('update:active', val);
435
+ },
436
+ businessId(val) {
437
+ this.handleChangeData({ businessId: val });
438
+ }
439
+ },
440
+ mounted() {
441
+ if (this.flow.businessId) {
442
+ this.businessId = this.flow.businessId;
443
+ }
444
+ },
445
+ methods: {
446
+ handleHide(res) {
447
+ return typeof res === 'boolean'
448
+ ? !res
449
+ : typeof res === 'string'
450
+ ? this[res]
451
+ : true;
452
+ },
453
+ handleExclAttribute({ data, attrs }) {
454
+ return util.exclAttribute({
455
+ data: data,
456
+ attrs: attrs
457
+ });
458
+ },
459
+ handleUrlJoinParams(res) {
460
+ let url = res.url;
461
+ let param = util.extend(
462
+ {},
463
+ { id: this.businessId, appId: this.taskExamineAppId },
464
+ res.param || {}
465
+ );
466
+ return util.urlJoinParams({ url, param });
467
+ },
468
+ handleBefore(active, old) {
469
+ return new Promise((resolve, reject) => {
470
+ let n = parseInt(active, 10);
471
+ let item = this.tabs[n];
472
+ let url = null;
473
+ let name = item.name;
474
+ let width = util.win.top.screen.availWidth - 10;
475
+ let height = util.win.top.screen.availHeight - 60;
476
+ if (item.url) {
477
+ url = this.handleUrlJoinParams(item);
478
+ }
479
+ if (
480
+ item.contents &&
481
+ item.contents.type === 'iframe' &&
482
+ item.contents.blank
483
+ ) {
484
+ item.contents.name && (name = item.contents.name);
485
+ url = this.handleUrlJoinParams(item.contents);
486
+ }
487
+ if (url) {
488
+ reject();
489
+ util.win.top.open(
490
+ url,
491
+ name,
492
+ `width=${width}px,height=${height}px,resizable=yes,status=yes,menubar=no,scrollbars=yes`
493
+ );
494
+ } else {
495
+ resolve();
496
+ }
497
+ });
498
+ },
499
+ handleSubmit() {
500
+ let esFlowForm = this.$refs.esFlowForm;
501
+ if (Array.isArray(esFlowForm)) {
502
+ esFlowForm = esFlowForm[0];
503
+ }
504
+ return esFlowForm.submitData(undefined, false);
505
+ },
506
+ handleTaskRead(res) {
507
+ if (res.data.taskExamine && res.data.taskExamine.appId) {
508
+ this.taskExamineAppId = res.data.taskExamine.appId;
509
+ this.injector &&
510
+ this.injector.handleChangeData({ appId: this.taskExamineAppId });
511
+ }
512
+ },
513
+ handleSuccess() {
514
+ if (this.closeDialog && this.esDialog) {
515
+ this.esDialog.handleClose();
516
+ }
517
+ if (util.win.top.opener) {
518
+ util.win.top.close();
519
+ }
520
+ if (this.events && this.events.success) {
521
+ this.events.success();
522
+ }
523
+ this.$emit('success');
524
+ },
525
+ handleSave(id, event) {
526
+ if (this.closeDialog && this.esDialog) {
527
+ this.esDialog.handleClose();
528
+ }
529
+ this.events && this.events.save(id, event);
530
+ this.$emit('save', id, event);
531
+ },
532
+ handleChangeId(id) {
533
+ this.businessId = id;
534
+ },
535
+ handleChangeData(res) {
536
+ this.$emit('changeData', res);
537
+ }
538
+ }
539
+ };
540
+ </script>
@@ -0,0 +1,5 @@
1
+ import EsFlowList from './src/main';
2
+
3
+ EsFlowList.install = Vue => Vue.component(EsFlowList.name, EsFlowList);
4
+
5
+ export default EsFlowList;