cnhis-design-vue 2.2.3 → 2.2.5

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 (750) hide show
  1. package/CHANGELOG.md +32 -10
  2. package/es/affix/index.js +8 -8
  3. package/es/age/index.js +10 -10
  4. package/es/alert/index.js +8 -8
  5. package/es/anchor/index.js +8 -8
  6. package/es/auto-complete/index.js +8 -8
  7. package/es/avatar/index.js +8 -8
  8. package/es/back-top/index.js +8 -8
  9. package/es/badge/index.js +8 -8
  10. package/es/base/index.js +8 -8
  11. package/es/big-table/index.js +102 -102
  12. package/es/big-table/style.css +1 -1
  13. package/es/breadcrumb/index.js +8 -8
  14. package/es/button/index.js +33 -33
  15. package/es/calendar/index.js +8 -8
  16. package/es/captcha/index.js +3 -3
  17. package/es/card/index.js +8 -8
  18. package/es/card-reader-sdk/index.js +1 -1
  19. package/es/carousel/index.js +8 -8
  20. package/es/cascader/index.js +8 -8
  21. package/es/checkbox/index.js +9 -9
  22. package/es/col/index.js +8 -8
  23. package/es/collapse/index.js +8 -8
  24. package/es/color-picker/index.js +1 -1
  25. package/es/comment/index.js +8 -8
  26. package/es/config-provider/index.js +8 -8
  27. package/es/date-picker/index.js +8 -8
  28. package/es/descriptions/index.js +8 -8
  29. package/es/direct/index.js +16 -16
  30. package/es/divider/index.js +8 -8
  31. package/es/drag-layout/index.js +3 -3
  32. package/es/drawer/index.js +8 -8
  33. package/es/dropdown/index.js +8 -8
  34. package/es/editor/index.js +1 -1
  35. package/es/ellipsis/index.js +1 -1
  36. package/es/empty/index.js +8 -8
  37. package/es/fabric-chart/index.js +262 -183
  38. package/es/form/index.js +8 -8
  39. package/es/form-model/index.js +8 -8
  40. package/es/form-table/index.js +74 -74
  41. package/es/full-calendar/index.js +4 -4
  42. package/es/index/index.js +778 -689
  43. package/es/index/style.css +1 -1
  44. package/es/input/index.js +9 -9
  45. package/es/input-number/index.js +8 -8
  46. package/es/layout/index.js +8 -8
  47. package/es/list/index.js +8 -8
  48. package/es/locale-provider/index.js +8 -8
  49. package/es/map/index.js +9 -9
  50. package/es/mentions/index.js +8 -8
  51. package/es/menu/index.js +8 -8
  52. package/es/message/index.js +8 -8
  53. package/es/multi-chat/index.js +76 -76
  54. package/es/multi-chat-client/index.js +70 -70
  55. package/es/multi-chat-history/index.js +4 -4
  56. package/es/multi-chat-record/index.js +14 -14
  57. package/es/multi-chat-setting/index.js +22 -22
  58. package/es/multi-chat-sip/index.js +1 -1
  59. package/es/notification/index.js +8 -8
  60. package/es/page-header/index.js +8 -8
  61. package/es/pagination/index.js +8 -8
  62. package/es/popconfirm/index.js +8 -8
  63. package/es/popover/index.js +8 -8
  64. package/es/progress/index.js +8 -8
  65. package/es/radio/index.js +9 -9
  66. package/es/rate/index.js +8 -8
  67. package/es/result/index.js +8 -8
  68. package/es/row/index.js +8 -8
  69. package/es/scale-container/index.js +9 -9
  70. package/es/scale-view/index.js +27 -27
  71. package/es/select/index.js +36 -21
  72. package/es/select-label/index.js +11 -11
  73. package/es/select-person/index.js +2 -2
  74. package/es/select-tag/index.js +4 -4
  75. package/es/shortcut-setter/index.js +10 -10
  76. package/es/skeleton/index.js +8 -8
  77. package/es/slider/index.js +8 -8
  78. package/es/slider-tree/index.js +9 -9
  79. package/es/space/index.js +8 -8
  80. package/es/spin/index.js +8 -8
  81. package/es/statistic/index.js +8 -8
  82. package/es/steps/index.js +8 -8
  83. package/es/switch/index.js +8 -8
  84. package/es/table-filter/index.js +112 -117
  85. package/es/table-filter/style.css +1 -1
  86. package/es/tabs/index.js +8 -8
  87. package/es/tag/index.js +9 -9
  88. package/es/time-picker/index.js +8 -8
  89. package/es/timeline/index.js +8 -8
  90. package/es/tooltip/index.js +8 -8
  91. package/es/transfer/index.js +8 -8
  92. package/es/tree/index.js +8 -8
  93. package/es/tree-select/index.js +8 -8
  94. package/es/upload/index.js +8 -8
  95. package/es/verification-code/index.js +2 -2
  96. package/lib/cui.common.js +719 -632
  97. package/lib/cui.umd.js +719 -632
  98. package/lib/cui.umd.min.js +18 -18
  99. package/package.json +1 -1
  100. package/.prettierrc.js +0 -27
  101. package/packages/affix/index.js +0 -12
  102. package/packages/affix/src/Affix.jsx +0 -12
  103. package/packages/age/index.js +0 -27
  104. package/packages/age/src/age/index.vue +0 -140
  105. package/packages/age/src/age-com/index.vue +0 -210
  106. package/packages/alert/index.js +0 -12
  107. package/packages/alert/src/Alert.jsx +0 -11
  108. package/packages/anchor/index.js +0 -18
  109. package/packages/anchor/src/Anchor.jsx +0 -11
  110. package/packages/anchor/src/Link.jsx +0 -11
  111. package/packages/auto-complete/index.js +0 -12
  112. package/packages/auto-complete/src/AutoComplete.jsx +0 -12
  113. package/packages/avatar/index.js +0 -12
  114. package/packages/avatar/src/Avatar.jsx +0 -11
  115. package/packages/back-top/index.js +0 -12
  116. package/packages/back-top/src/BackTop.jsx +0 -11
  117. package/packages/badge/index.js +0 -12
  118. package/packages/badge/src/Badge.jsx +0 -11
  119. package/packages/base/index.js +0 -3
  120. package/packages/big-table/index.js +0 -20
  121. package/packages/big-table/src/BigTable.vue +0 -2977
  122. package/packages/big-table/src/Fieldset.vue +0 -2067
  123. package/packages/big-table/src/assets/iconfont/iconfont.css +0 -25
  124. package/packages/big-table/src/assets/iconfont/iconfont.ttf +0 -0
  125. package/packages/big-table/src/assets/img/failure.png +0 -0
  126. package/packages/big-table/src/assets/img/icon-asc.png +0 -0
  127. package/packages/big-table/src/assets/img/icon-desc.png +0 -0
  128. package/packages/big-table/src/assets/img/no-permission.png +0 -0
  129. package/packages/big-table/src/assets/img/nodata.png +0 -0
  130. package/packages/big-table/src/assets/img/notfound.png +0 -0
  131. package/packages/big-table/src/assets/img/qr.png +0 -0
  132. package/packages/big-table/src/assets/img/video_default_cover.png +0 -0
  133. package/packages/big-table/src/assets/img/xb_big.png +0 -0
  134. package/packages/big-table/src/assets/img/xb_small.png +0 -0
  135. package/packages/big-table/src/assets/style/table-base.less +0 -425
  136. package/packages/big-table/src/assets/style/table-global.less +0 -20
  137. package/packages/big-table/src/components/AutoLayoutButton.vue +0 -285
  138. package/packages/big-table/src/components/HeaderFilter.vue +0 -371
  139. package/packages/big-table/src/components/NoData.vue +0 -81
  140. package/packages/big-table/src/components/TextOverTooltip.vue +0 -120
  141. package/packages/big-table/src/components/edit-form/EditForm.vue +0 -518
  142. package/packages/big-table/src/components/edit-form/edit-component/config-data/index.js +0 -68
  143. package/packages/big-table/src/components/edit-form/edit-component/edit-date-picker/edit-date-picker.vue +0 -60
  144. package/packages/big-table/src/components/edit-form/edit-component/edit-digital/edit-digital.vue +0 -54
  145. package/packages/big-table/src/components/edit-form/edit-component/edit-input/edit-input.vue +0 -39
  146. package/packages/big-table/src/components/edit-form/edit-component/edit-input-password/edit-input-password.vue +0 -79
  147. package/packages/big-table/src/components/edit-form/edit-component/edit-month-picker/edit-month-picker.vue +0 -37
  148. package/packages/big-table/src/components/edit-form/edit-component/edit-search/edit-search.vue +0 -156
  149. package/packages/big-table/src/components/edit-form/edit-component/edit-search-more/edit-search-more.vue +0 -151
  150. package/packages/big-table/src/components/edit-form/edit-component/edit-select/edit-select.vue +0 -40
  151. package/packages/big-table/src/components/edit-form/edit-component/edit-select-multiple/edit-select-multiple.vue +0 -55
  152. package/packages/big-table/src/components/edit-form/edit-component/edit-switch/edit-switch.vue +0 -43
  153. package/packages/big-table/src/components/edit-form/edit-component/edit-textarea/edit-textarea.vue +0 -41
  154. package/packages/big-table/src/components/edit-form/edit-component/edit-time-picker/edit-time-picker.vue +0 -40
  155. package/packages/big-table/src/components/edit-form/edit-component/mixins/bound-date.js +0 -3
  156. package/packages/big-table/src/components/edit-form/edit-component/mixins/dateType.js +0 -217
  157. package/packages/big-table/src/components/edit-form/edit-component/mixins/item-default.js +0 -639
  158. package/packages/big-table/src/components/edit-form/edit-component/mixins/search.js +0 -1223
  159. package/packages/big-table/src/components/edit-form/edit-component/register-com.js +0 -26
  160. package/packages/big-table/src/components/edit-form/edit-item/form-event.js +0 -80
  161. package/packages/big-table/src/components/edit-form/edit-item/global-props.js +0 -33
  162. package/packages/big-table/src/components/edit-form/edit-item/index.js +0 -4
  163. package/packages/big-table/src/components/edit-form/edit-item/render-methods.js +0 -28
  164. package/packages/big-table/src/components/edit-form/edit-item/validate-rules.js +0 -463
  165. package/packages/big-table/src/components/edit-form/edit-mixins/form-commom.js +0 -673
  166. package/packages/big-table/src/components/edit-form/edit-mixins/index.js +0 -3
  167. package/packages/big-table/src/components/edit-form/edit-utils/index.js +0 -112
  168. package/packages/big-table/src/components/password-com.vue +0 -58
  169. package/packages/big-table/src/components/player-vod/index.vue +0 -57
  170. package/packages/big-table/src/components/player-vod/player.vue +0 -193
  171. package/packages/big-table/src/components/player-vod/video-list.vue +0 -265
  172. package/packages/big-table/src/components/player-vod/video-modal.vue +0 -131
  173. package/packages/big-table/src/utils/CustomPagination.vue +0 -86
  174. package/packages/big-table/src/utils/batchEditing.js +0 -613
  175. package/packages/big-table/src/utils/bigTableProps.js +0 -112
  176. package/packages/big-table/src/utils/checkStrictly.js +0 -58
  177. package/packages/big-table/src/utils/eventBroadcast.js +0 -24
  178. package/packages/big-table/src/utils/format.js +0 -577
  179. package/packages/big-table/src/utils/headerFilter.js +0 -691
  180. package/packages/big-table/src/utils/nestTable.js +0 -109
  181. package/packages/big-table/src/utils/tableParse.js +0 -234
  182. package/packages/breadcrumb/index.js +0 -21
  183. package/packages/breadcrumb/src/Breadcrumb.jsx +0 -11
  184. package/packages/breadcrumb/src/BreadcrumbItem.jsx +0 -11
  185. package/packages/breadcrumb/src/BreadcrumbSeparator.jsx +0 -11
  186. package/packages/button/index.js +0 -21
  187. package/packages/button/src/Button.jsx +0 -11
  188. package/packages/button/src/ButtonGroup.jsx +0 -11
  189. package/packages/button/src/ButtonPrint/components/IdentityVerification.vue +0 -181
  190. package/packages/button/src/ButtonPrint/index.vue +0 -165
  191. package/packages/button/src/ButtonPrint/js/print.es.min.js +0 -1
  192. package/packages/button/src/ButtonPrint/js/print.es.min1.js +0 -1
  193. package/packages/button/src/ButtonPrint/mixin/his-print.js +0 -95
  194. package/packages/button/src/ButtonPrint/new.vue +0 -1476
  195. package/packages/button/src/ButtonPrint/old.vue +0 -870
  196. package/packages/calendar/index.js +0 -12
  197. package/packages/calendar/src/Calendar.jsx +0 -11
  198. package/packages/captcha/index.js +0 -10
  199. package/packages/captcha/src/Captcha.vue +0 -164
  200. package/packages/captcha/src/Index.vue +0 -47
  201. package/packages/captcha/src/SlideVerify.vue +0 -285
  202. package/packages/card/index.js +0 -21
  203. package/packages/card/src/Card.jsx +0 -12
  204. package/packages/card/src/CardGrid.js +0 -7
  205. package/packages/card/src/CardMeta.js +0 -7
  206. package/packages/card-reader-sdk/index.js +0 -4
  207. package/packages/card-reader-sdk/src/cardReaderSDK.js +0 -149
  208. package/packages/card-reader-sdk/src/components/readCardDialog.vue +0 -48
  209. package/packages/card-reader-sdk/src/constants/index.js +0 -76
  210. package/packages/card-reader-sdk/src/insuranceSDK.js +0 -111
  211. package/packages/card-reader-sdk/src/utils/index.js +0 -84
  212. package/packages/card-reader-sdk/src/utils/readHealthCard.jsx +0 -57
  213. package/packages/carousel/index.js +0 -12
  214. package/packages/carousel/src/Carousel.jsx +0 -12
  215. package/packages/cascader/index.js +0 -12
  216. package/packages/cascader/src/Cascader.jsx +0 -11
  217. package/packages/checkbox/index.js +0 -30
  218. package/packages/checkbox/src/Checkbox.jsx +0 -11
  219. package/packages/checkbox/src/CheckboxImg/index.vue +0 -142
  220. package/packages/checkbox/src/Group.jsx +0 -11
  221. package/packages/col/index.js +0 -13
  222. package/packages/col/src/Col.jsx +0 -11
  223. package/packages/collapse/index.js +0 -18
  224. package/packages/collapse/src/Collapse.jsx +0 -11
  225. package/packages/collapse/src/Panel.jsx +0 -11
  226. package/packages/color-picker/index.js +0 -10
  227. package/packages/color-picker/src/color-picker.vue +0 -191
  228. package/packages/color-picker/src/style.less +0 -109
  229. package/packages/comment/index.js +0 -12
  230. package/packages/comment/src/Comment.jsx +0 -11
  231. package/packages/config-provider/index.js +0 -12
  232. package/packages/config-provider/src/ConfigProvider.jsx +0 -11
  233. package/packages/date-picker/index.js +0 -26
  234. package/packages/date-picker/src/DatePicker.jsx +0 -12
  235. package/packages/date-picker/src/MonthPicker.jsx +0 -11
  236. package/packages/date-picker/src/RangePicker.jsx +0 -11
  237. package/packages/date-picker/src/WeekPicker.jsx +0 -11
  238. package/packages/date-picker/src/utils/index.js +0 -374
  239. package/packages/descriptions/index.js +0 -18
  240. package/packages/descriptions/src/Descriptions.jsx +0 -11
  241. package/packages/descriptions/src/Item.jsx +0 -11
  242. package/packages/direct/index.js +0 -3
  243. package/packages/divider/index.js +0 -12
  244. package/packages/divider/src/Divider.jsx +0 -11
  245. package/packages/drag-layout/DragFormLeftItem.vue +0 -173
  246. package/packages/drag-layout/DragFormRightItem.vue +0 -284
  247. package/packages/drag-layout/I18n-mixins.js +0 -10
  248. package/packages/drag-layout/drag-layout.vue +0 -778
  249. package/packages/drag-layout/index.js +0 -12
  250. package/packages/drawer/index.js +0 -12
  251. package/packages/drawer/src/Drawer.jsx +0 -11
  252. package/packages/dropdown/index.js +0 -12
  253. package/packages/dropdown/src/Dropdown.jsx +0 -11
  254. package/packages/editor/index.js +0 -10
  255. package/packages/editor/src/Editor.vue +0 -201
  256. package/packages/editor/src/utils.js +0 -65
  257. package/packages/ellipsis/index.js +0 -9
  258. package/packages/ellipsis/src/Ellipsis.vue +0 -65
  259. package/packages/empty/index.js +0 -12
  260. package/packages/empty/src/Empty.jsx +0 -11
  261. package/packages/fabric-chart/index.js +0 -10
  262. package/packages/fabric-chart/src/FabricChart.vue +0 -153
  263. package/packages/fabric-chart/src/FabricGrid.vue +0 -67
  264. package/packages/fabric-chart/src/components/DropPopup.vue +0 -90
  265. package/packages/fabric-chart/src/components/MouseRightClick.vue +0 -168
  266. package/packages/fabric-chart/src/components/TimeScaleValue.vue +0 -125
  267. package/packages/fabric-chart/src/const/defaultVaule.js +0 -61
  268. package/packages/fabric-chart/src/fabric-chart/FabricCanvas.vue +0 -396
  269. package/packages/fabric-chart/src/fabric-chart/FabricLines.vue +0 -641
  270. package/packages/fabric-chart/src/fabric-chart/FabricPolylines.vue +0 -1447
  271. package/packages/fabric-chart/src/fabric-chart/FabricScaleValue.vue +0 -142
  272. package/packages/fabric-chart/src/fabric-chart/FabricTextGroup.vue +0 -928
  273. package/packages/fabric-chart/src/mixins/draw.js +0 -444
  274. package/packages/fabric-chart/src/mixins/drawExtracorporealCirculation.js +0 -222
  275. package/packages/fabric-chart/src/mixins/eventCommon.js +0 -107
  276. package/packages/fabric-chart/src/mixins/fabricCommon.js +0 -77
  277. package/packages/fabric-chart/src/mixins/fabricObject.js +0 -193
  278. package/packages/fabric-chart/src/utils/bus.js +0 -2
  279. package/packages/fabric-chart/src/utils/index.js +0 -104
  280. package/packages/form/index.js +0 -16
  281. package/packages/form/src/Form.jsx +0 -11
  282. package/packages/form/src/Item.jsx +0 -11
  283. package/packages/form-model/index.js +0 -14
  284. package/packages/form-model/src/FormModel.jsx +0 -11
  285. package/packages/form-model/src/Item.jsx +0 -11
  286. package/packages/form-table/index.js +0 -16
  287. package/packages/form-table/src/FormTable.vue +0 -1110
  288. package/packages/form-table/src/components/table-component/config-data/index.js +0 -80
  289. package/packages/form-table/src/components/table-component/global-props.js +0 -22
  290. package/packages/form-table/src/components/table-component/index.js +0 -8
  291. package/packages/form-table/src/components/table-component/mixins/bound-date.js +0 -455
  292. package/packages/form-table/src/components/table-component/mixins/dateType.js +0 -217
  293. package/packages/form-table/src/components/table-component/mixins/item-default.js +0 -257
  294. package/packages/form-table/src/components/table-component/mixins/search.js +0 -1242
  295. package/packages/form-table/src/components/table-component/register-com.js +0 -30
  296. package/packages/form-table/src/components/table-component/table-age/table-age.vue +0 -175
  297. package/packages/form-table/src/components/table-component/table-date-picker/table-date-picker.vue +0 -87
  298. package/packages/form-table/src/components/table-component/table-digital/table-digital.vue +0 -93
  299. package/packages/form-table/src/components/table-component/table-input/table-input.vue +0 -81
  300. package/packages/form-table/src/components/table-component/table-input-password/table-input-password.vue +0 -126
  301. package/packages/form-table/src/components/table-component/table-month-picker/table-month-picker.vue +0 -55
  302. package/packages/form-table/src/components/table-component/table-search/table-search.vue +0 -174
  303. package/packages/form-table/src/components/table-component/table-search-more/table-search-more.vue +0 -191
  304. package/packages/form-table/src/components/table-component/table-select/table-select.vue +0 -64
  305. package/packages/form-table/src/components/table-component/table-select-multiple/table-select-multiple.vue +0 -81
  306. package/packages/form-table/src/components/table-component/table-textarea/table-textarea.vue +0 -76
  307. package/packages/form-table/src/components/table-component/table-time-picker/table-time-picker.vue +0 -55
  308. package/packages/form-table/src/components/table-component/table-tree-select/table-tree-select.vue +0 -135
  309. package/packages/form-table/src/components/table-component/text-over-tooltip/TextOverTooltip.vue +0 -97
  310. package/packages/form-table/src/components/table-item/form-event.js +0 -81
  311. package/packages/form-table/src/components/table-item/global-props.js +0 -27
  312. package/packages/form-table/src/components/table-item/index.js +0 -4
  313. package/packages/form-table/src/components/table-item/render-methods.js +0 -28
  314. package/packages/form-table/src/components/table-item/validate-rules.js +0 -520
  315. package/packages/form-table/src/components/table-mixins/form-commom.js +0 -98
  316. package/packages/form-table/src/components/table-mixins/index.js +0 -3
  317. package/packages/form-table/src/components/table-utils/index.js +0 -112
  318. package/packages/form-table/src/disabledDetail.less +0 -46
  319. package/packages/full-calendar/index.js +0 -10
  320. package/packages/full-calendar/src/FullCalendar.vue +0 -775
  321. package/packages/full-calendar/src/api/index.js +0 -71
  322. package/packages/full-calendar/src/components/ListTag.vue +0 -184
  323. package/packages/full-calendar/src/components/Tag.vue +0 -300
  324. package/packages/full-calendar/src/components/TagDetail.vue +0 -288
  325. package/packages/full-calendar/src/utils/index.js +0 -217
  326. package/packages/grid/index.js +0 -10
  327. package/packages/grid/src/grid.js +0 -27
  328. package/packages/icon/index.js +0 -10
  329. package/packages/icon/src/icon.js +0 -13
  330. package/packages/index.js +0 -325
  331. package/packages/input/index.js +0 -30
  332. package/packages/input/src/Group.jsx +0 -11
  333. package/packages/input/src/Input.jsx +0 -11
  334. package/packages/input/src/Password.jsx +0 -11
  335. package/packages/input/src/Search.jsx +0 -11
  336. package/packages/input/src/TextArea.jsx +0 -11
  337. package/packages/input/src/input-quick/components/quick-item.vue +0 -284
  338. package/packages/input/src/input-quick/components/quick-popover.vue +0 -596
  339. package/packages/input/src/input-quick/index.vue +0 -137
  340. package/packages/input-number/index.js +0 -12
  341. package/packages/input-number/src/InputNumber.jsx +0 -11
  342. package/packages/keep-cache/KeepCache.js +0 -236
  343. package/packages/keep-cache/index.css +0 -3
  344. package/packages/keep-cache/index.js +0 -8
  345. package/packages/layout/index.js +0 -27
  346. package/packages/layout/src/Content.jsx +0 -11
  347. package/packages/layout/src/Footer.jsx +0 -11
  348. package/packages/layout/src/Header.jsx +0 -11
  349. package/packages/layout/src/Layout.jsx +0 -11
  350. package/packages/layout/src/Sider.jsx +0 -11
  351. package/packages/list/index.js +0 -21
  352. package/packages/list/src/Item.jsx +0 -11
  353. package/packages/list/src/ItemMeta.jsx +0 -11
  354. package/packages/list/src/List.jsx +0 -11
  355. package/packages/locale-provider/index.js +0 -12
  356. package/packages/locale-provider/src/LocaleProvider.jsx +0 -11
  357. package/packages/map/index.js +0 -10
  358. package/packages/map/src/Map.vue +0 -484
  359. package/packages/map/src/popup-map.vue +0 -53
  360. package/packages/mentions/index.js +0 -18
  361. package/packages/mentions/src/Mentions.jsx +0 -11
  362. package/packages/mentions/src/Option.jsx +0 -11
  363. package/packages/menu/index.js +0 -27
  364. package/packages/menu/src/Divider.jsx +0 -11
  365. package/packages/menu/src/Item.jsx +0 -11
  366. package/packages/menu/src/ItemGroup.jsx +0 -11
  367. package/packages/menu/src/Menu.jsx +0 -11
  368. package/packages/menu/src/SubMenu.jsx +0 -11
  369. package/packages/message/index.js +0 -8
  370. package/packages/modal/index.js +0 -10
  371. package/packages/modal/src/Modal.js +0 -7
  372. package/packages/multi-chat/chat/addConference.vue +0 -200
  373. package/packages/multi-chat/chat/addMembers.vue +0 -411
  374. package/packages/multi-chat/chat/advancedFilter.vue +0 -372
  375. package/packages/multi-chat/chat/audio.vue +0 -599
  376. package/packages/multi-chat/chat/calling.vue +0 -246
  377. package/packages/multi-chat/chat/chatFooter.vue +0 -1647
  378. package/packages/multi-chat/chat/chatHeader.vue +0 -493
  379. package/packages/multi-chat/chat/chatHistory.vue +0 -605
  380. package/packages/multi-chat/chat/chatMain.vue +0 -1490
  381. package/packages/multi-chat/chat/client/clientChat.vue +0 -731
  382. package/packages/multi-chat/chat/client/index.vue +0 -149
  383. package/packages/multi-chat/chat/delay.vue +0 -177
  384. package/packages/multi-chat/chat/evaluate.vue +0 -343
  385. package/packages/multi-chat/chat/index.vue +0 -2419
  386. package/packages/multi-chat/chat/messageRecord.vue +0 -324
  387. package/packages/multi-chat/chat/mixins/NoData.js +0 -20
  388. package/packages/multi-chat/chat/mixins/base.js +0 -97
  389. package/packages/multi-chat/chat/mixins/uniRTCAPI.js +0 -80
  390. package/packages/multi-chat/chat/mixins/viewerOptions.js +0 -67
  391. package/packages/multi-chat/chat/multiVideo.vue +0 -1426
  392. package/packages/multi-chat/chat/quickReply.vue +0 -439
  393. package/packages/multi-chat/chat/robot/index.vue +0 -312
  394. package/packages/multi-chat/chat/scrollList.vue +0 -1259
  395. package/packages/multi-chat/chat/video.vue +0 -404
  396. package/packages/multi-chat/chat/videoVoiceList.vue +0 -348
  397. package/packages/multi-chat/chat/voice.vue +0 -431
  398. package/packages/multi-chat/components/avatar.vue +0 -113
  399. package/packages/multi-chat/components/chat-tabs-header.vue +0 -251
  400. package/packages/multi-chat/components/classify-tabs.vue +0 -185
  401. package/packages/multi-chat/components/empty.vue +0 -24
  402. package/packages/multi-chat/components/modal-refuse-reason.vue +0 -112
  403. package/packages/multi-chat/components/modal-sip.vue +0 -160
  404. package/packages/multi-chat/components/modal-user-transfer.vue +0 -98
  405. package/packages/multi-chat/components/msg-describe.vue +0 -138
  406. package/packages/multi-chat/components/msg-picture.vue +0 -68
  407. package/packages/multi-chat/components/msg-prescription.vue +0 -205
  408. package/packages/multi-chat/components/read-record.vue +0 -133
  409. package/packages/multi-chat/components/read-status.vue +0 -34
  410. package/packages/multi-chat/components/user-status.vue +0 -198
  411. package/packages/multi-chat/components/vuecmf-dialog.vue +0 -323
  412. package/packages/multi-chat/img/OFF-LINE.png +0 -0
  413. package/packages/multi-chat/img/ON-LINE.png +0 -0
  414. package/packages/multi-chat/img/accept.png +0 -0
  415. package/packages/multi-chat/img/add-person.png +0 -0
  416. package/packages/multi-chat/img/add_prescription.png +0 -0
  417. package/packages/multi-chat/img/all-voice.png +0 -0
  418. package/packages/multi-chat/img/audio-new.png +0 -0
  419. package/packages/multi-chat/img/audio-play.gif +0 -0
  420. package/packages/multi-chat/img/audio.png +0 -0
  421. package/packages/multi-chat/img/base-info-active.png +0 -0
  422. package/packages/multi-chat/img/base-info.png +0 -0
  423. package/packages/multi-chat/img/busy_line.png +0 -0
  424. package/packages/multi-chat/img/call.png +0 -0
  425. package/packages/multi-chat/img/callin.png +0 -0
  426. package/packages/multi-chat/img/callin_cancel.png +0 -0
  427. package/packages/multi-chat/img/calling.png +0 -0
  428. package/packages/multi-chat/img/callout.png +0 -0
  429. package/packages/multi-chat/img/callout_cancel.png +0 -0
  430. package/packages/multi-chat/img/close.png +0 -0
  431. package/packages/multi-chat/img/close_video.png +0 -0
  432. package/packages/multi-chat/img/customer-service-active.png +0 -0
  433. package/packages/multi-chat/img/customer-service.png +0 -0
  434. package/packages/multi-chat/img/customer.png +0 -0
  435. package/packages/multi-chat/img/customer_staff.png +0 -0
  436. package/packages/multi-chat/img/default.png +0 -0
  437. package/packages/multi-chat/img/ellipsis.png +0 -0
  438. package/packages/multi-chat/img/end-voice.png +0 -0
  439. package/packages/multi-chat/img/event-active.png +0 -0
  440. package/packages/multi-chat/img/event.png +0 -0
  441. package/packages/multi-chat/img/exp.png +0 -0
  442. package/packages/multi-chat/img/full-sceen-close.png +0 -0
  443. package/packages/multi-chat/img/full-sceen.png +0 -0
  444. package/packages/multi-chat/img/icon_list.png +0 -0
  445. package/packages/multi-chat/img/icon_list_active.png +0 -0
  446. package/packages/multi-chat/img/icon_table.png +0 -0
  447. package/packages/multi-chat/img/icon_table_active.png +0 -0
  448. package/packages/multi-chat/img/join-video.png +0 -0
  449. package/packages/multi-chat/img/large.png +0 -0
  450. package/packages/multi-chat/img/left-wrapper.png +0 -0
  451. package/packages/multi-chat/img/left.png +0 -0
  452. package/packages/multi-chat/img/medical_record.png +0 -0
  453. package/packages/multi-chat/img/middle.png +0 -0
  454. package/packages/multi-chat/img/msgTip.mp3 +0 -0
  455. package/packages/multi-chat/img/multi-video.png +0 -0
  456. package/packages/multi-chat/img/multi-voice.png +0 -0
  457. package/packages/multi-chat/img/mute-audio.png +0 -0
  458. package/packages/multi-chat/img/muted-audio.png +0 -0
  459. package/packages/multi-chat/img/muted-screen.png +0 -0
  460. package/packages/multi-chat/img/muted-video.png +0 -0
  461. package/packages/multi-chat/img/no-all-voice.png +0 -0
  462. package/packages/multi-chat/img/no-data.png +0 -0
  463. package/packages/multi-chat/img/no-data2.png +0 -0
  464. package/packages/multi-chat/img/no-screen.png +0 -0
  465. package/packages/multi-chat/img/no-video.png +0 -0
  466. package/packages/multi-chat/img/no-voice.png +0 -0
  467. package/packages/multi-chat/img/no-voiced.png +0 -0
  468. package/packages/multi-chat/img/normal-screen.png +0 -0
  469. package/packages/multi-chat/img/normal-video.png +0 -0
  470. package/packages/multi-chat/img/over.png +0 -0
  471. package/packages/multi-chat/img/portrait.png +0 -0
  472. package/packages/multi-chat/img/prescription.png +0 -0
  473. package/packages/multi-chat/img/receive.png +0 -0
  474. package/packages/multi-chat/img/reject.png +0 -0
  475. package/packages/multi-chat/img/remove.png +0 -0
  476. package/packages/multi-chat/img/replay.png +0 -0
  477. package/packages/multi-chat/img/required.png +0 -0
  478. package/packages/multi-chat/img/screen.png +0 -0
  479. package/packages/multi-chat/img/send_prescription.png +0 -0
  480. package/packages/multi-chat/img/setting.png +0 -0
  481. package/packages/multi-chat/img/small.png +0 -0
  482. package/packages/multi-chat/img/sound.png +0 -0
  483. package/packages/multi-chat/img/sound_forbid.png +0 -0
  484. package/packages/multi-chat/img/start_video.png +0 -0
  485. package/packages/multi-chat/img/system_message.png +0 -0
  486. package/packages/multi-chat/img/to-session.png +0 -0
  487. package/packages/multi-chat/img/transfer.png +0 -0
  488. package/packages/multi-chat/img/transfer2.png +0 -0
  489. package/packages/multi-chat/img/video-accept.png +0 -0
  490. package/packages/multi-chat/img/video.png +0 -0
  491. package/packages/multi-chat/img/video_consult.png +0 -0
  492. package/packages/multi-chat/img/voice.png +0 -0
  493. package/packages/multi-chat/img/worktime-active.png +0 -0
  494. package/packages/multi-chat/img/worktime.png +0 -0
  495. package/packages/multi-chat/index.js +0 -7
  496. package/packages/multi-chat/setting/authority/index.vue +0 -156
  497. package/packages/multi-chat/setting/authority/roleSetting.vue +0 -204
  498. package/packages/multi-chat/setting/baseInfo/index.vue +0 -1343
  499. package/packages/multi-chat/setting/configuration/index.vue +0 -334
  500. package/packages/multi-chat/setting/customerService/batchSelect.vue +0 -403
  501. package/packages/multi-chat/setting/customerService/index.vue +0 -273
  502. package/packages/multi-chat/setting/event/edit/condition.vue +0 -128
  503. package/packages/multi-chat/setting/event/edit/index.vue +0 -437
  504. package/packages/multi-chat/setting/event/edit/notice.vue +0 -129
  505. package/packages/multi-chat/setting/event/edit/strategy.vue +0 -98
  506. package/packages/multi-chat/setting/event/index.vue +0 -249
  507. package/packages/multi-chat/setting/index.vue +0 -281
  508. package/packages/multi-chat/setting/page.vue +0 -14
  509. package/packages/multi-chat/setting/sessionList/index.vue +0 -412
  510. package/packages/multi-chat/setting/sessionList/messageRecord.vue +0 -372
  511. package/packages/multi-chat/setting/userConfig/index.vue +0 -124
  512. package/packages/multi-chat/setting/worktime/index.vue +0 -274
  513. package/packages/multi-chat/store/actions.js +0 -452
  514. package/packages/multi-chat/store/getters.js +0 -380
  515. package/packages/multi-chat/store/helper.js +0 -66
  516. package/packages/multi-chat/store/index.js +0 -50
  517. package/packages/multi-chat/store/mutation.js +0 -305
  518. package/packages/multi-chat/store/state.js +0 -120
  519. package/packages/multi-chat/style/emoji.css +0 -315
  520. package/packages/multi-chat/style/message.mixin.less +0 -38
  521. package/packages/multi-chat/utils/chatSock.js +0 -93
  522. package/packages/multi-chat/utils/compressImage.js +0 -115
  523. package/packages/multi-chat/utils/emoji.json +0 -68
  524. package/packages/multi-chat/utils/index.js +0 -259
  525. package/packages/multi-chat/utils/observer-scroll.js +0 -49
  526. package/packages/multi-chat/utils/panelsetting.js +0 -48
  527. package/packages/multi-chat/utils/rtc-client-multi.js +0 -397
  528. package/packages/multi-chat/utils/rtc-client.js +0 -469
  529. package/packages/multi-chat-client/index.js +0 -7
  530. package/packages/multi-chat-history/index.js +0 -7
  531. package/packages/multi-chat-record/index.js +0 -7
  532. package/packages/multi-chat-setting/index.js +0 -7
  533. package/packages/multi-chat-sip/index.js +0 -6
  534. package/packages/notification/index.js +0 -8
  535. package/packages/page-header/index.js +0 -12
  536. package/packages/page-header/src/PageHeader.jsx +0 -11
  537. package/packages/pagination/index.js +0 -12
  538. package/packages/pagination/src/Pagination.jsx +0 -11
  539. package/packages/popconfirm/index.js +0 -12
  540. package/packages/popconfirm/src/Popconfirm.jsx +0 -11
  541. package/packages/popover/index.js +0 -12
  542. package/packages/popover/src/Popover.jsx +0 -11
  543. package/packages/progress/index.js +0 -12
  544. package/packages/progress/src/Progress.jsx +0 -11
  545. package/packages/radio/index.js +0 -33
  546. package/packages/radio/src/Group.jsx +0 -11
  547. package/packages/radio/src/Radio.jsx +0 -11
  548. package/packages/radio/src/RadioButton.jsx +0 -11
  549. package/packages/radio/src/RadioImg/index.vue +0 -125
  550. package/packages/rate/index.js +0 -12
  551. package/packages/rate/src/Rate.jsx +0 -11
  552. package/packages/result/index.js +0 -12
  553. package/packages/result/src/Result.jsx +0 -11
  554. package/packages/row/index.js +0 -12
  555. package/packages/row/src/Row.jsx +0 -11
  556. package/packages/scale-container/index.js +0 -9
  557. package/packages/scale-container/src/ScaleContainer.vue +0 -202
  558. package/packages/scale-container/src/scale.png +0 -0
  559. package/packages/scale-view/NoData.vue +0 -81
  560. package/packages/scale-view/answerParse.vue +0 -133
  561. package/packages/scale-view/assets/img/failure.png +0 -0
  562. package/packages/scale-view/assets/img/no-permission.png +0 -0
  563. package/packages/scale-view/assets/img/nodata.png +0 -0
  564. package/packages/scale-view/assets/img/notfound.png +0 -0
  565. package/packages/scale-view/customList.vue +0 -801
  566. package/packages/scale-view/data.js +0 -80
  567. package/packages/scale-view/directive/drag-move.js +0 -132
  568. package/packages/scale-view/evaluateCountdown.vue +0 -157
  569. package/packages/scale-view/evaluatePage.vue +0 -203
  570. package/packages/scale-view/formitem/data.js +0 -3991
  571. package/packages/scale-view/formitem/index.js +0 -7
  572. package/packages/scale-view/formitem/r-address.vue +0 -245
  573. package/packages/scale-view/formitem/r-choice.vue +0 -755
  574. package/packages/scale-view/formitem/r-input.vue +0 -93
  575. package/packages/scale-view/formitem/r-prompt.vue +0 -52
  576. package/packages/scale-view/formitem/r-sign.vue +0 -218
  577. package/packages/scale-view/formitem/r-time.vue +0 -285
  578. package/packages/scale-view/formitem/r-upload-custom-list.vue +0 -242
  579. package/packages/scale-view/formitem/r-upload.vue +0 -321
  580. package/packages/scale-view/formitem/sign-com.vue +0 -316
  581. package/packages/scale-view/formitem/text-over-tooltip/TextOverTooltip.vue +0 -98
  582. package/packages/scale-view/index.js +0 -17
  583. package/packages/scale-view/mixin/NoData.js +0 -38
  584. package/packages/scale-view/mixin/addressVal.js +0 -156
  585. package/packages/scale-view/mixin/evaluate.js +0 -146
  586. package/packages/scale-view/mixin/index.js +0 -337
  587. package/packages/scale-view/mixin/judgeTypes.js +0 -267
  588. package/packages/scale-view/scaleView.vue +0 -2086
  589. package/packages/select/index.js +0 -30
  590. package/packages/select/src/CustomSelect/index.vue +0 -130
  591. package/packages/select/src/OptGroup.jsx +0 -11
  592. package/packages/select/src/Option.jsx +0 -11
  593. package/packages/select/src/PagerSelect/index.vue +0 -92
  594. package/packages/select/src/Select/Select.vue +0 -231
  595. package/packages/select/src/Select/index.js +0 -12
  596. package/packages/select/src/TableSelect/index.vue +0 -514
  597. package/packages/select-label/index.js +0 -14
  598. package/packages/select-label/label-classify.vue +0 -129
  599. package/packages/select-label/labelFormContent.vue +0 -787
  600. package/packages/select-label/select-label.vue +0 -597
  601. package/packages/select-person/index.js +0 -10
  602. package/packages/select-person/search-tree.vue +0 -373
  603. package/packages/select-person/select-person.vue +0 -1736
  604. package/packages/select-tag/index.js +0 -14
  605. package/packages/select-tag/label-classify.vue +0 -133
  606. package/packages/select-tag/labelFormContent.vue +0 -295
  607. package/packages/select-tag/select-label.vue +0 -274
  608. package/packages/shortcut-provider/index.js +0 -10
  609. package/packages/shortcut-provider/src/ShortcutProvider.vue +0 -33
  610. package/packages/shortcut-provider/src/constants/index.js +0 -4
  611. package/packages/shortcut-provider/src/hooks/index.js +0 -1
  612. package/packages/shortcut-provider/src/hooks/useShortcuts.js +0 -129
  613. package/packages/shortcut-provider/src/utils/index.js +0 -107
  614. package/packages/shortcut-setter/index.js +0 -12
  615. package/packages/shortcut-setter/src/ShortcutSetter.vue +0 -55
  616. package/packages/shortcut-setter/src/ShortcutSetterItem.vue +0 -97
  617. package/packages/shortcut-setter/src/utils/index.js +0 -63
  618. package/packages/skeleton/index.js +0 -12
  619. package/packages/skeleton/src/Skeleton.jsx +0 -11
  620. package/packages/slider/index.js +0 -12
  621. package/packages/slider/src/Slider.jsx +0 -11
  622. package/packages/slider-tree/hooks/useAsyncData.js +0 -53
  623. package/packages/slider-tree/index.js +0 -7
  624. package/packages/slider-tree/index.vue +0 -391
  625. package/packages/slider-tree/utils/index.js +0 -10
  626. package/packages/space/index.js +0 -12
  627. package/packages/space/src/Space.jsx +0 -11
  628. package/packages/spin/index.js +0 -12
  629. package/packages/spin/src/Spin.jsx +0 -11
  630. package/packages/statistic/index.js +0 -18
  631. package/packages/statistic/src/Countdown.jsx +0 -11
  632. package/packages/statistic/src/Statistic.jsx +0 -11
  633. package/packages/steps/index.js +0 -18
  634. package/packages/steps/src/Step.jsx +0 -11
  635. package/packages/steps/src/Steps.jsx +0 -11
  636. package/packages/switch/index.js +0 -12
  637. package/packages/switch/src/Switch.jsx +0 -11
  638. package/packages/table-filter/index.js +0 -27
  639. package/packages/table-filter/src/base-search-com/BaseSearch.vue +0 -2690
  640. package/packages/table-filter/src/classification/Classification-com.vue +0 -1765
  641. package/packages/table-filter/src/classification/search-class-name.vue +0 -266
  642. package/packages/table-filter/src/classification/search-professional-model.vue +0 -680
  643. package/packages/table-filter/src/components/TextOverTooltip.vue +0 -120
  644. package/packages/table-filter/src/components/age-com/index.vue +0 -205
  645. package/packages/table-filter/src/components/button-group/ButtonGroup.vue +0 -162
  646. package/packages/table-filter/src/components/button-icon/button-icon.js +0 -33
  647. package/packages/table-filter/src/components/button-icon/getBtnIcon.js +0 -34
  648. package/packages/table-filter/src/components/c-tree-select/tree-select.vue +0 -336
  649. package/packages/table-filter/src/components/checkbox-group/CheckboxGroup.vue +0 -53
  650. package/packages/table-filter/src/components/drop-button/drop-button.vue +0 -224
  651. package/packages/table-filter/src/components/drop-button/head-btn-icon.js +0 -33
  652. package/packages/table-filter/src/components/drop-view/drop-view.vue +0 -89
  653. package/packages/table-filter/src/components/multi-select/multi-select.vue +0 -242
  654. package/packages/table-filter/src/components/out-quick-search/out-quick-search.vue +0 -232
  655. package/packages/table-filter/src/components/range-age/index.vue +0 -171
  656. package/packages/table-filter/src/components/render-widget/components/CheckboxGroup.vue +0 -68
  657. package/packages/table-filter/src/components/render-widget/components/DateRangeQuick.vue +0 -216
  658. package/packages/table-filter/src/components/render-widget/components/Label.vue +0 -209
  659. package/packages/table-filter/src/components/render-widget/components/NumberRange.vue +0 -157
  660. package/packages/table-filter/src/components/render-widget/components/Select.vue +0 -62
  661. package/packages/table-filter/src/components/render-widget/components/SelectDynamic.vue +0 -287
  662. package/packages/table-filter/src/components/render-widget/components/SelectLabel.vue +0 -80
  663. package/packages/table-filter/src/components/render-widget/components/SelectTree.vue +0 -145
  664. package/packages/table-filter/src/components/render-widget/components/Text.vue +0 -58
  665. package/packages/table-filter/src/components/render-widget/components/index.js +0 -11
  666. package/packages/table-filter/src/components/render-widget/enums.js +0 -60
  667. package/packages/table-filter/src/components/render-widget/helpers/presetValToTimestamp.js +0 -282
  668. package/packages/table-filter/src/components/render-widget/index.vue +0 -150
  669. package/packages/table-filter/src/components/render-widget/mixins/dynamic-method.js +0 -185
  670. package/packages/table-filter/src/components/render-widget/mixins/label-method.js +0 -23
  671. package/packages/table-filter/src/components/render-widget/widgetCfgMaps.js +0 -354
  672. package/packages/table-filter/src/components/search-condition/SearchCondition.vue +0 -2016
  673. package/packages/table-filter/src/components/search-condition/fieldTypeList.js +0 -169
  674. package/packages/table-filter/src/components/search-filter/SearchFilter.vue +0 -280
  675. package/packages/table-filter/src/components/search-modal/set-classification.vue +0 -340
  676. package/packages/table-filter/src/components/table-modal/TableModal.vue +0 -477
  677. package/packages/table-filter/src/const/dataOptions.js +0 -43
  678. package/packages/table-filter/src/const/index.js +0 -1
  679. package/packages/table-filter/src/index.vue +0 -584
  680. package/packages/table-filter/src/mixins/mixins.js +0 -870
  681. package/packages/table-filter/src/mixins/out-quick-method.js +0 -123
  682. package/packages/table-filter/src/mixins/printNew.js +0 -190
  683. package/packages/table-filter/src/mixins/renderWidget.js +0 -122
  684. package/packages/table-filter/src/mixins/tableSearchCon.js +0 -128
  685. package/packages/table-filter/src/mixins/wordBookutils.js +0 -130
  686. package/packages/table-filter/src/quick-search/QuickSearch.vue +0 -2272
  687. package/packages/tabs/index.js +0 -18
  688. package/packages/tabs/src/TabPane.jsx +0 -11
  689. package/packages/tabs/src/Tabs.jsx +0 -11
  690. package/packages/tag/index.js +0 -21
  691. package/packages/tag/src/CheckableTag.jsx +0 -11
  692. package/packages/tag/src/Tag.jsx +0 -11
  693. package/packages/tag/src/TagGroup.vue +0 -622
  694. package/packages/time-picker/index.js +0 -12
  695. package/packages/time-picker/src/TimePicker.jsx +0 -11
  696. package/packages/timeline/index.js +0 -14
  697. package/packages/timeline/src/Item.jsx +0 -11
  698. package/packages/timeline/src/Timeline.jsx +0 -11
  699. package/packages/tooltip/index.js +0 -12
  700. package/packages/tooltip/src/Tooltip.jsx +0 -11
  701. package/packages/transfer/index.js +0 -12
  702. package/packages/transfer/src/Transfer.jsx +0 -11
  703. package/packages/tree/index.js +0 -18
  704. package/packages/tree/src/Tree.jsx +0 -11
  705. package/packages/tree/src/TreeNode.jsx +0 -11
  706. package/packages/tree-select/index.js +0 -18
  707. package/packages/tree-select/src/TreeNode.jsx +0 -11
  708. package/packages/tree-select/src/TreeSelect.jsx +0 -11
  709. package/packages/upload/chunk-upload/chunk-upload-new.vue +0 -1006
  710. package/packages/upload/chunk-upload/vod-chunk-upload.vue +0 -757
  711. package/packages/upload/chunk-upload/vod-upload-modal.vue +0 -100
  712. package/packages/upload/index.js +0 -12
  713. package/packages/upload/src/Upload.jsx +0 -11
  714. package/packages/verification-code/SlideVerify.vue +0 -306
  715. package/packages/verification-code/index.js +0 -17
  716. package/packages/verification-code/verification-code.vue +0 -147
  717. package/src/assets/img/nodata.png +0 -0
  718. package/src/assets/img/success.png +0 -0
  719. package/src/assets/img/video.png +0 -0
  720. package/src/assets/img/video_default_cover.png +0 -0
  721. package/src/assets/img/video_hover.png +0 -0
  722. package/src/assets/img/video_play_hover.png +0 -0
  723. package/src/component/player-vod/index.vue +0 -57
  724. package/src/component/player-vod/player.vue +0 -192
  725. package/src/component/player-vod/video-list.vue +0 -262
  726. package/src/component/player-vod/video-modal.vue +0 -128
  727. package/src/component/select-options/index.vue +0 -430
  728. package/src/component/select-pages/index.vue +0 -95
  729. package/src/component/svg/index.vue +0 -59
  730. package/src/core/create.js +0 -6
  731. package/src/core/event.js +0 -23
  732. package/src/core/table-methods.js +0 -447
  733. package/src/directive/flexibleResize.js +0 -162
  734. package/src/directive/preventReClick.js +0 -12
  735. package/src/directive/scroll.js +0 -230
  736. package/src/global/variable.js +0 -2
  737. package/src/style/normalize.css +0 -424
  738. package/src/style/style.less +0 -49
  739. package/src/utils/UniRTCv2.js +0 -627
  740. package/src/utils/chatFetch.js +0 -61
  741. package/src/utils/clickoutside.js +0 -75
  742. package/src/utils/crypto.js +0 -25
  743. package/src/utils/index.js +0 -103
  744. package/src/utils/kty-sdk.js +0 -582
  745. package/src/utils/kty.min-1.0.0.js +0 -14378
  746. package/src/utils/sip-device.js +0 -79
  747. package/src/utils/time-domain.js +0 -270
  748. package/src/utils/trtc.js +0 -1
  749. package/src/utils/utils-map.js +0 -485
  750. package/src/utils/vexutils.js +0 -836
@@ -1,1736 +0,0 @@
1
- <template>
2
- <div class="personnel">
3
- <a-spin :spinning="spinning">
4
- <div class="people-tree">
5
- <!-- 树主体与检索 -->
6
- <div class="people-tree-item people-tree-left">
7
- <!-- $t('1.1.1.5.1') -->
8
- <a-input-search style="margin-bottom: 12px" :placeholder="searchPlaceholder" :enter-button="searchButtonText" :allowClear="true" @search="searchClick" v-model="title" class="person-search">
9
- <!-- <a-icon slot="prefix" type="search" class="search-input-icon" /> -->
10
- <!-- <svg-icon
11
- slot="prefix"
12
- class="search-input-icon"
13
- iconClass="xitongtubiaosousuo"
14
- ></svg-icon> -->
15
- </a-input-search>
16
- <div class="type-wrap" v-if="selectType === 'multiple'">
17
- <div class="type-btn" :class="{ 'type-active': typeActiveIndex === 0 }" @click="onTypeClick(0)">选人员</div>
18
- <div class="type-btn" :class="{ 'type-active': typeActiveIndex === 1 }" @click="onTypeClick(1)">选科室</div>
19
- <div class="type-btn" :class="{ 'type-active': typeActiveIndex === 2 }" @click="onTypeClick(2)">选角色</div>
20
- </div>
21
- <div class="tree-wrap">
22
- <template v-if="!isSingleCheck">
23
- <a-checkbox v-if="searchTreeVisable" v-model="searchChecked" :indeterminate="searchIndeterminate" @change="radioChange">
24
- <!-- {{ $t("1.10.139") }} -->
25
- 全选
26
- </a-checkbox>
27
-
28
- <a-checkbox v-else v-model="singleChecked" :indeterminate="indeterminate" @change="radioChange">
29
- <!-- {{ $t("1.10.139") }} -->
30
- 全选
31
- </a-checkbox>
32
- </template>
33
-
34
- <div v-show="search.status == 3 || (search.status == 0 && treeData.temp && treeData.temp.length == 0)" class="no-data-tips">
35
- 查无结果
36
- </div>
37
- <!-- main tree -->
38
- <a-tree
39
- class="main-tree-container"
40
- v-show="search.status == 0"
41
- ref="antTree"
42
- v-model="checkedKeys.temp"
43
- @expand="onExpand"
44
- @check="onTreeCheck"
45
- checkable
46
- :expandedKeys="expandedKeys"
47
- :autoExpandParent="autoExpandParent"
48
- :checkStrictly="checkStrictly"
49
- :selectable="false"
50
- :treeData="treeData.temp"
51
- :load-data="getLoadChildData"
52
- :disabled="isDetail"
53
- >
54
- <template slot="custom" slot-scope="scope">
55
- <span v-if="scope.isLeaf">
56
- <a-tooltip :title="`${scope.title} ${scope.sub_title}`" :mouseEnterDelay="0.3">
57
- <span class="c-title">{{ scope.title || scope.key }}&thinsp; </span>
58
- <span class="c-sub-title">{{ scope.sub_title }}</span>
59
- </a-tooltip>
60
- </span>
61
- <span v-else class="p-title">
62
- <span v-if="scope.title">{{ scope.title }}</span>
63
- <span v-else>{{ scope.key }}</span>
64
- {{ treeCount(scope.count) }}
65
- </span>
66
- </template>
67
- </a-tree>
68
- <!-- search tree -->
69
- <searchTree
70
- v-on="$listeners"
71
- ref="searchTree"
72
- :visable="searchTreeVisable"
73
- :formatTreeData="treeData.search"
74
- :searchValue="searchValue"
75
- :allCheckedKeys="checkedKeys"
76
- :defaultExpandedKeys="search.defaultExpandedKeys"
77
- :dataListKeys="search.dataListKeys"
78
- :searchNoMore="searchNoMore"
79
- :loadMorenLoadinng="loadMorenLoadinng"
80
- @addCheckedkeysMain="addCheckedkeysMain"
81
- @removeCheckedkeysMain="removeCheckedkeysMain"
82
- @addCheckedkeysOther="addCheckedkeysOther"
83
- @removeCheckedkeysOther="removeCheckedkeysOther"
84
- @searchOnloadMore="searchOnloadMore"
85
- ></searchTree>
86
- </div>
87
- </div>
88
- <!-- 树已选的数据 -->
89
- <div class="select-wrap">
90
- <div class="select-header" v-if="(defaultShowList && defaultShowList.length) || checkedTreeItem.length">
91
- <div class="select-count" v-if="showCount">已选择:{{ defaultShowList.length + checkedTreeItem.length }}</div>
92
- <div class="clear-btn" @click="onClearSelect" v-if="showClear">清空</div>
93
- </div>
94
- <div class="select-content">
95
- <slot v-if="defaultShowList && defaultShowList.length">
96
- <div class="tag-item def-item" v-for="(tag, i) in defaultShowList" :key="i">
97
- <span class="tag-text" :title="tag.title || tag[wordbookChild.user_name_obj]">{{ tag.title || tag[wordbookChild.user_name_obj] }}</span>
98
- <a-icon v-if="!isDetail" class="tag-close" type="close-circle" theme="filled" @click="closeDefaultTag(tag, i)" />
99
- <!-- <svg-icon
100
- v-if="!isDetail"
101
- class="tag-close"
102
- :icon-class="'xitongtubiaodaohangtubiaoguanbishixin'"
103
- @click="closeDefaultTag(tag, i)"
104
- ></svg-icon> -->
105
- </div>
106
- </slot>
107
-
108
- <div class="tag-item" :class="{ isRoot: !tag.isLeaf }" v-for="tag in checkedTreeItem" :key="tag.key">
109
- <span class="tag-text" :title="tag.title || tag.key">{{ tag.title || tag.key }} {{ treeCount(tag.count) }}</span>
110
- <!-- <svg-icon
111
- v-if="!isDetail"
112
- class="tag-close"
113
- :icon-class="'xitongtubiaodaohangtubiaoguanbishixin'"
114
- @click="closeTag(tag)"
115
- ></svg-icon> -->
116
- <a-icon v-if="!isDetail" class="tag-close" type="close-circle" theme="filled" @click="closeTag(tag)" />
117
- </div>
118
- </div>
119
- </div>
120
- </div>
121
- </a-spin>
122
- </div>
123
- </template>
124
- <script>
125
- /* eslint-disable no-async-promise-executor */
126
-
127
- import { Icon, Checkbox, Tree, Tooltip, Input, Spin } from 'ant-design-vue';
128
- import searchTree from './search-tree';
129
- import create from '@/core/create';
130
- import vexutils from '@/utils/vexutils';
131
- import { filterTree, deepTraversalFirst, getAllParentId, matchWdAndPy } from '@/utils';
132
-
133
- /**
134
- * 查询没有部门的分类时,parent_id_obj 为 undefined a-tree 展示异常。
135
- * 前端 赋上固定key 标识 该分类 无部门,该key 不能提交接口。
136
- * */
137
-
138
- /**
139
- * key 唯一key
140
- * title 展示标题
141
- * sub_title 副标题
142
- * count 数量
143
- */
144
-
145
- const FIXEDKEY = '8982eeb4-0439-4100-9805-8cdd12b2256c-front-end-fixed-key';
146
- export default create({
147
- name: 'select-person',
148
- components: {
149
- searchTree,
150
- [Icon.name]: Icon,
151
- [Spin.name]: Spin,
152
- [Tree.name]: Tree,
153
- [Input.Search.name]: Input.Search,
154
- [Checkbox.name]: Checkbox,
155
- [Tooltip.name]: Tooltip
156
- },
157
- props: {
158
- isDetail: { type: Boolean, isDetail: false },
159
- defaultList: { type: Array, default: () => [] },
160
- data: { type: Array, default: () => [] },
161
- roleData: { type: Array, default: () => [] },
162
- roleFields: {
163
- type: Object,
164
- default: () => ({ title: 'name', key: 'id', children: 'children' })
165
- },
166
- searchPlaceholder: {
167
- type: String,
168
- default: '输入关键字搜索'
169
- },
170
- searchButtonText: {
171
- type: String,
172
- default: '搜索'
173
- },
174
- // 父级配置
175
- wordbook: {
176
- type: Object,
177
- default: () => ({
178
- // parent_id_obj: "dept_id", // 父级 id
179
- // parent_id_obj_key: "dept_id", // 提交的 id 的映射 key
180
- // parent_name_obj: "dept_name", // 名称
181
- // parent_name_obj_key: "dept_name", // 名称 的映射key
182
- // user_count_obj: "count" // 统计 key
183
- })
184
- },
185
-
186
- // 子集配置
187
- wordbookChild: {
188
- type: Object,
189
- default: () => ({})
190
- },
191
-
192
- // 检索加载更多
193
- SearchLoadMore: {
194
- type: Boolean,
195
- default: false
196
- },
197
-
198
- showClear: {
199
- type: Boolean,
200
- default: true
201
- },
202
- showCount: {
203
- type: Boolean,
204
- default: true
205
- },
206
- selectType: {
207
- type: String,
208
- default: 'person' // person dept role multiple
209
- },
210
- isSingleCheck: {
211
- type: Boolean,
212
- default: false
213
- },
214
- checkStrictly: {
215
- type: Boolean,
216
- default: false
217
- },
218
- needFilterParentDept: {
219
- type: Boolean,
220
- default: true
221
- },
222
- filterChildren: {
223
- type: Boolean,
224
- default: false
225
- },
226
- titleAddCode: {
227
- type: Boolean,
228
- default: true // 标题是否加上code
229
- },
230
- queryMainTreeData: Function, // 主树请求
231
- queryLoadChildData: Function, // 懒加载请求
232
- queryTreeSearch: Function // 检索请求
233
- },
234
- data() {
235
- return {
236
- treeData: {
237
- main: [],
238
- search: [],
239
- dept: [],
240
- role: [],
241
- temp: []
242
- },
243
- // 展开的keys
244
- expandedKeys: [],
245
- // 展开的部门keys
246
- expandedDeptKeys: [],
247
- autoExpandParent: true,
248
- // 扁平化tree的options Object{Array[Object]}
249
- dataList: {
250
- main: [],
251
- other: [],
252
- dept: [],
253
- role: []
254
- },
255
- // 当前tree选中的keys Object{Array[Number]}
256
- checkedKeys: {
257
- main: [],
258
- other: [],
259
- dept: [],
260
- role: [],
261
- temp: []
262
- },
263
- search: {
264
- defaultExpandedKeys: [],
265
- // 0: 未查询,1:查询中,2:有查询结果,3无查询结果
266
- status: 0,
267
- dataListKeys: {
268
- main: [],
269
- other: []
270
- },
271
- records: 0
272
- },
273
- searchValue: '',
274
- searchPage: 1,
275
- searchNoMore: false,
276
- title: '',
277
- // 选中的所有叶节点(Leaf)keys <Array[Number]>,最终提交接口所需格式
278
- checkedLeafKeys: [],
279
- spinning: false,
280
- loadMorenLoadinng: false,
281
-
282
- errorMsg: '',
283
-
284
- defaultShowList: [], // 默认选中项
285
- checkedKeysMain: [],
286
-
287
- cacheParentIdObj: {},
288
- singleChecked: false,
289
- indeterminate: false,
290
-
291
- searchIndeterminate: false,
292
- searchChecked: false,
293
- typeActiveIndex: 0,
294
- useData: []
295
- };
296
- },
297
- computed: {
298
- searchTreeVisable() {
299
- return this.search.status == 2;
300
- },
301
- dataListMainKeys() {
302
- if (!this.dataList.main.length) return [];
303
-
304
- return this.dataList.main.map(i => {
305
- return i.key;
306
- });
307
- },
308
- dataListDeptKeys() {
309
- if (!this.dataList.dept.length) return [];
310
-
311
- return this.dataList.dept.map(i => {
312
- return i.key;
313
- });
314
- },
315
- dataListRoleKeys() {
316
- if (!this.dataList.role.length) return [];
317
-
318
- return this.dataList.role.map(i => {
319
- return i.key;
320
- });
321
- },
322
- dataListOtherKeys() {
323
- if (!this.dataList.other.length) return [];
324
-
325
- return this.dataList.other.map(i => {
326
- return i.key;
327
- });
328
- },
329
- // 右侧展示tabs <Array[Object]>
330
- checkedTreeItem() {
331
- let otherItems = this.dataList.other.filter(item => {
332
- return this.checkedKeys.other.includes(item.key);
333
- });
334
- let mainItems = this.dataList.main.filter(item => {
335
- // let f = this.currentKey === 'main';
336
- // if(!f) return f;
337
- let { isLeaf, key } = item;
338
- let parentId = this.getParentId(item);
339
- let showKeys = [...this.checkedKeys.main, ...otherItems];
340
- let checked = showKeys.includes(key);
341
- // 父级全选,子级不展示
342
- /** String(parentId) 类型不相等 */
343
- // if (isLeaf && parentId && this.checkedKeys.temp.some(v => v == parentId)) {
344
- // checked = false;
345
- // }
346
- item.itemType = 'person';
347
- return checked && item.type == 2;
348
- });
349
- let deptItems = this.dataList.dept.filter(item => {
350
- let { key } = item;
351
- let showKeys = [...this.checkedKeys.dept, ...otherItems];
352
- let checked = showKeys.includes(key);
353
- item.itemType = 'dept';
354
- if (item.canCheck === false) {
355
- return;
356
- }
357
- // 只展示最后一级的科室
358
- if (this.needFilterParentDept) {
359
- return checked && item.type == 1 && (!item.children || (item.children && !item.children.length));
360
- } else {
361
- // 不过滤
362
- return checked && item.type == 1;
363
- }
364
- });
365
- let roleItems = this.dataList.role.filter(item => {
366
- let showKeys = [...this.checkedKeys.role, ...otherItems];
367
- let checked = showKeys.includes(item.key);
368
- item.itemType = 'role';
369
- return checked && item.roleId;
370
- });
371
- if (this.selectType === 'multiple') {
372
- deptItems.forEach(item => {
373
- if (item.title) {
374
- item.title = item.title.includes('(科室)') ? item.title : `${item.title}(科室)`;
375
- }
376
- });
377
- roleItems.map(item => {
378
- if (item.title) {
379
- item.title = item.title.includes('(角色)') ? item.title : `${item.title}(角色)`;
380
- }
381
- return item;
382
- });
383
- }
384
-
385
- let list = this.uniqArrObj([...mainItems, ...deptItems, ...roleItems, ...otherItems], 'key');
386
- return list;
387
- },
388
-
389
- wordbookConfig() {
390
- const { parent_id_obj, parent_name_obj } = this.wordbook || {};
391
- const { user_id_obj, user_name_obj } = this.wordbookChild || {};
392
- return {
393
- parent_id_obj,
394
- parent_name_obj,
395
- user_id_obj,
396
- user_name_obj
397
- };
398
- },
399
-
400
- getLoadChildData() {
401
- if (typeof this.queryLoadChildData == 'function') {
402
- return this.onLoadData;
403
- }
404
- return null;
405
- },
406
-
407
- currentKey() {
408
- return { person: 'main', dept: 'dept', role: 'role', multiple: 'main' }[this.selectType];
409
- }
410
- },
411
- watch: {
412
- // defaultList: {
413
- // immediate: true,
414
- // handler(val) {
415
- // if (!val) return;
416
- // this.initDefault();
417
- // }
418
- // },
419
- selectType: {
420
- immediate: true,
421
- handler(val) {
422
- if (val === 'dept' || val === 'role' || val === 'multiple') {
423
- this.typeActiveIndex = { multiple: 0, dept: 1, role: 2 }[val];
424
- }
425
- }
426
- },
427
- data: {
428
- immediate: true,
429
- handler() {
430
- this.$set(this.treeData, 'main', []);
431
- this.$set(this.treeData, 'dept', []);
432
- this.$set(this.treeData, 'temp', []);
433
- this.$set(this.dataList, 'main', []);
434
- this.$set(this.dataList, 'dept', []);
435
- this.$set(this.checkedKeys, 'main', []);
436
- this.$set(this.checkedKeys, 'dept', []);
437
- this.$set(this.checkedKeys, 'temp', []);
438
- this.singleChecked = false;
439
- this.indeterminate = false;
440
- this.handleData();
441
- this.staticDataInit();
442
- this.staticDeptAndRoleDataInit();
443
- const key = { person: 'main', dept: 'dept', role: 'role', multiple: 'main' }[this.selectType];
444
- this.treeData.temp = this.treeData[key];
445
- }
446
- },
447
- roleData: {
448
- immediate: true,
449
- handler() {
450
- this.staticDeptAndRoleDataInit();
451
- const key = { person: 'main', dept: 'dept', role: 'role', multiple: 'main' }[this.selectType];
452
- this.treeData.temp = this.treeData[key];
453
- }
454
- }
455
- },
456
- created() {},
457
- mounted() {
458
- this.getUsers();
459
- this.initDefault();
460
- },
461
- methods: {
462
- initDefault() {
463
- if (this.getLoadChildData) {
464
- this.getDefaultList();
465
- } else {
466
- setTimeout(() => {
467
- const userIds = this.defaultList.filter(item => item.itemType === 'person').map(item => item.id);
468
- const deptIds = this.defaultList.filter(item => item.itemType === 'dept').map(item => item.id);
469
- const roleIds = this.defaultList.filter(item => item.itemType === 'role').map(item => item.id);
470
- const key = ['main', 'dept', 'role'][this.typeActiveIndex];
471
- this.checkedKeys.main = userIds;
472
- this.checkedKeys.dept = deptIds;
473
- this.checkedKeys.role = roleIds;
474
- this.checkedKeys.temp = this.checkedKeys[key];
475
- }, 300);
476
- }
477
- },
478
-
479
- staticDataInit() {
480
- if (!Array.isArray(this.useData) || this.useData.length == 0) return;
481
- this.treeData.main = this.useData;
482
- this.generateDataList(this.treeData.main, this.dataList.main);
483
- },
484
- staticDeptAndRoleDataInit() {
485
- this.treeData.dept = this.getDeptData(this.useData);
486
- this.generateDataList(this.treeData.dept, this.dataList.dept);
487
- this.treeData.role = this.handleRoleData(this.roleData);
488
- this.generateDataList(this.treeData.role, this.dataList.role);
489
- },
490
- getDeptData(data) {
491
- // 把data里面的人员过滤掉
492
- let copyData = JSON.parse(JSON.stringify(data));
493
- copyData = copyData.filter(item => item.type === 1);
494
- vexutils.searchTree(copyData, item => {
495
- if (item.type === 1 && item.children && item.children.length) {
496
- item.children = item.children.filter(child => child.type === 1);
497
- }
498
- });
499
- return copyData;
500
- },
501
- handleRoleData(data) {
502
- const copyData = JSON.parse(JSON.stringify(data));
503
- vexutils.searchTree(copyData, item => {
504
- const { title, key, children } = this.roleFields;
505
- item.title = item[title];
506
- item.children = item[children] ? item[children] : [];
507
- item.key = item[key];
508
- });
509
- return copyData;
510
- },
511
- /** --- 默认值 --- */
512
- getDefaultList() {
513
- const { defaultList } = this;
514
- let copy = JSON.parse(JSON.stringify(defaultList));
515
- if (Array.isArray(copy)) {
516
- // this.defaultShowObj = {};
517
-
518
- const { user_id_obj } = this.wordbookChild || {};
519
- copy.forEach(v => {
520
- this.handleDefMapping(v);
521
- let key = this.getuniqKey(v);
522
- let pId = this.getParentId(v);
523
- this.cacheParentIdObj[pId] = pId;
524
- // this.defaultShowObj[key] = v[user_id_obj];
525
- });
526
- this.defaultShowList = copy;
527
- }
528
- },
529
-
530
- getcheckedKeys() {
531
- const { defaultList } = this;
532
- let checkedKeysMain = [],
533
- checkedKeysOther = [];
534
- let copy = JSON.parse(JSON.stringify(defaultList));
535
- if (Array.isArray(copy)) {
536
- copy.forEach(v => {
537
- this.handleDefMapping(v);
538
- let key = this.getuniqKey(v);
539
- checkedKeysMain.push(key);
540
- // 回填到 检索的选择,防止回填马上检索
541
- if (String(key).includes(FIXEDKEY)) {
542
- checkedKeysOther.push(key);
543
- }
544
- });
545
- }
546
- return {
547
- checkedKeysMain,
548
- checkedKeysOther
549
- };
550
- },
551
-
552
- /**
553
- * 根据配置映射默认值
554
- */
555
- handleDefMapping(v) {
556
- const { parent_id_obj, parent_name_obj, user_id_obj, user_name_obj } = this.wordbookConfig || {};
557
- // 自定义 key 值
558
- const { parent_id_obj_key, parent_name_obj_key } = this.wordbook;
559
- const { user_id_obj_key, user_name_obj_key } = this.wordbookChild;
560
- v[parent_id_obj] = v[parent_id_obj_key] || v.parent_id;
561
- v[parent_name_obj] = v[parent_name_obj_key] || v.parent_name;
562
- v[user_id_obj] = v[user_id_obj_key] || v.user_id;
563
- v[user_name_obj] = v[user_name_obj_key] || v.user_name;
564
- },
565
-
566
- /**
567
- * 初始化 请求已选的数据
568
- */
569
- async loadSelected() {
570
- try {
571
- let list = await Promise.all(
572
- this.treeData.main.map(async v => {
573
- const { parent_id_obj } = this.wordbook || {};
574
- if ([v.key, v[parent_id_obj], String(v[parent_id_obj])].includes(this.cacheParentIdObj[v[parent_id_obj]])) {
575
- await this.onLoadData({ dataRef: v });
576
- return v;
577
- }
578
- })
579
- );
580
- return list;
581
- } catch (error) {
582
- return Promise.resolve();
583
- }
584
- },
585
-
586
- /**
587
- * 过滤默认值的右边展示
588
- */
589
- hanldeFilterDefaultShowList(list) {
590
- this.defaultShowList = this.defaultShowList.filter(d => list.findIndex(l => this.getuniqKey(d) == this.getuniqKey(l)) == -1);
591
- // this.updateDefaultShowObj(this.defaultShowList);
592
- },
593
-
594
- updateDefaultShowObj(list) {
595
- const { user_id_obj } = this.wordbookConfig || {};
596
- this.defaultShowObj = {};
597
- list.forEach(v => {
598
- this.defaultShowObj[this.getuniqKey(v)] = v[user_id_obj];
599
- });
600
- },
601
-
602
- /**
603
- * 拼接key
604
- */
605
- getuniqKey(v) {
606
- const { user_id_obj } = this.wordbookConfig || {};
607
- return `${this.getParentId(v)}_${v[user_id_obj]}`;
608
- // return v.key;
609
- },
610
-
611
- getParentId(v) {
612
- const { parent_id_obj } = this.wordbookConfig || {};
613
- // return `${v[parent_id_obj] || FIXEDKEY}`;
614
- return `${v[parent_id_obj]}`;
615
- },
616
-
617
- // 查询树结构数据(一级父类)
618
- async getUsers() {
619
- try {
620
- if (typeof this.queryMainTreeData !== 'function') {
621
- return;
622
- }
623
- this.spinning = true;
624
- const { parent_id_obj } = this.wordbookConfig || {};
625
- let rows = await this.queryMainTreeData();
626
- let list = this.uniqArrObj(rows, parent_id_obj);
627
- this.treeData.main = list;
628
- this.generateDataList(this.treeData.main, this.dataList.main);
629
- // TODO:这里的回填
630
- await this.loadSelected();
631
- let { checkedKeysMain, checkedKeysOther } = this.getcheckedKeys();
632
- this.checkedKeys.main.push(...checkedKeysMain);
633
- this.checkedKeys.other = [...checkedKeysOther];
634
-
635
- this.treeData.main.forEach(f => {
636
- if (f && f.children && f.children.length) {
637
- let flag = f.children.every(c => checkedKeysMain.includes(c.key));
638
- if (flag && f.key) {
639
- this.checkedKeys.main.push(f.key);
640
- }
641
- }
642
- });
643
- if (this.currentKey === 'main') {
644
- this.checkedKeys.temp = this.checkedKeys.main;
645
- this.treeData.temp = this.treeData.main;
646
- }
647
- this.spinning = false;
648
- } catch (error) {
649
- this.spinning = false;
650
- this.$message.error('查询异常');
651
- console.log(error);
652
- }
653
- },
654
-
655
- // 动态获取子节点
656
- onLoadData(treeNode) {
657
- return new Promise(async resolve => {
658
- if (treeNode.dataRef.children) {
659
- resolve();
660
- return;
661
- }
662
- treeNode.dataRef.children = await this.handleLoadChildData(treeNode.dataRef.key, treeNode.dataRef);
663
-
664
- this.hanldeFilterDefaultShowList(treeNode.dataRef.children);
665
-
666
- this.$nextTick(() => {
667
- this.treeData.main = [...this.treeData.main];
668
- this.treeData.temp = [...this.treeData.main];
669
- });
670
-
671
- this.addCheckedKeysChildrenMain(treeNode.dataRef);
672
-
673
- this.generateDataList(treeNode.dataRef.children, this.dataList.main);
674
- resolve();
675
- });
676
- },
677
-
678
- async handleLoadChildData(key, treeNode) {
679
- let rows = await this.queryLoadChildData(key, treeNode);
680
- let list = rows;
681
- return list;
682
- },
683
-
684
- loadMainChildData(searchResultTreeData) {
685
- return new Promise(async resolve => {
686
- let promises = searchResultTreeData.map(async item => {
687
- if (item.users) {
688
- let mainTreeItem = this.treeData.main.find(mainItem => mainItem.key == item.key);
689
- if (!mainTreeItem || (mainTreeItem && !mainTreeItem.children)) {
690
- if (!mainTreeItem) {
691
- mainTreeItem = { ...item };
692
- }
693
- mainTreeItem.children = await this.handleLoadChildData(item.key, mainTreeItem);
694
- this.generateDataList(mainTreeItem.children, this.dataList.main);
695
- this.addCheckedKeysChildrenMain(mainTreeItem);
696
- }
697
- }
698
- });
699
-
700
- await Promise.all(promises);
701
-
702
- resolve();
703
- });
704
- },
705
-
706
- /**
707
- * 检索
708
- */
709
- async searchFetch(data = {}, config = {}) {
710
- if (typeof this.queryTreeSearch !== 'function') {
711
- this.staticDataSearch();
712
- this.spinning = false;
713
- this.isSearchAllCheck();
714
- return;
715
- }
716
- if (!this.searchValue) {
717
- this.search.status = 0;
718
- this.search.defaultExpandedKeys = [];
719
- this.expandedKeys = [];
720
- this.spinning = false;
721
- this.searchNoMore = false;
722
- return false;
723
- }
724
- if (!config.loadMoren) {
725
- this.search.status = 1;
726
- } else {
727
- this.loadMorenLoadinng = true;
728
- }
729
-
730
- let rows = await this.queryTreeSearch(this.searchValue, data);
731
- let searchResultTreeData = rows;
732
- this.loadMorenLoadinng = false;
733
- if (!searchResultTreeData || !searchResultTreeData.length) {
734
- if (this.searchPage == 1) {
735
- this.search.defaultExpandedKeys = [];
736
- this.search.status = 3;
737
- } else {
738
- this.search.status = 2;
739
- this.searchNoMore = true;
740
- }
741
-
742
- this.spinning = false;
743
- this.isSearchAllCheck();
744
- return false;
745
- }
746
-
747
- const { parent_id_obj, parent_name_obj, user_count_obj } = this.wordbook || {};
748
- const { user_name_obj } = this.wordbookChild || {};
749
- let pObj = {};
750
- searchResultTreeData.forEach(item => {
751
- item[parent_id_obj] &&
752
- (pObj[item[parent_id_obj]] = {
753
- key: item[parent_id_obj],
754
- users: []
755
- });
756
-
757
- if (item.users) {
758
- this.insertSearchTreeData(item);
759
- } else {
760
- this.insertSearchTreeDataOther(item);
761
- }
762
- });
763
- let pList = [];
764
- Object.keys(pObj || {}).forEach(v => {
765
- if (v) {
766
- pList.push({ ...pObj[v] });
767
- }
768
- });
769
- let len = this.treeData.search.length || 0;
770
- // TODO:加载更多
771
- if (this.SearchLoadMore) {
772
- this.searchNoMore = false;
773
- } else {
774
- this.searchNoMore = true;
775
- }
776
- // 防止searchTree选中后切换回mainTree,mainTree checkedKeys状态丢失
777
- await this.loadMainChildData(pList);
778
- this.generateSearchDataListKeys(searchResultTreeData);
779
-
780
- this.hanldeFilterDefaultShowList(searchResultTreeData);
781
- this.refreshSearchTree();
782
- this.search.status = 2;
783
- this.spinning = false;
784
-
785
- this.isSearchAllCheck();
786
- },
787
-
788
- insertSearchTreeData(item) {
789
- const { user_count_obj } = this.wordbook || {};
790
- this.search.defaultExpandedKeys.push(item.key);
791
-
792
- // 默认值处理
793
- this.hanldeFilterDefaultShowList(item.children || []);
794
-
795
- if (item[user_count_obj] == item.children.length) {
796
- item.disableCheckbox = false;
797
- }
798
- this.treeData.search.push(item);
799
- },
800
-
801
- insertSearchTreeDataOther(item) {
802
- let formatItem = Object.assign({}, item, { isLeaf: true });
803
-
804
- this.treeData.search.push(formatItem);
805
-
806
- if (this.dataListOtherKeys.includes(formatItem.key)) return false;
807
- this.generateDataList([formatItem], this.dataList.other);
808
- },
809
-
810
- generateSearchDataListKeys(searchResultTreeData) {
811
- // this.search.dataListKeys = {
812
- // main: [],
813
- // other: []
814
- // };
815
- searchResultTreeData.forEach(item => {
816
- if (!this.dataListMainKeys.includes(item.key)) {
817
- this.search.dataListKeys.other.push(item.key);
818
- item.children &&
819
- item.children.forEach(childItem => {
820
- this.search.dataListKeys.other.push(childItem.key);
821
- });
822
- return;
823
- }
824
-
825
- this.search.dataListKeys.main.push(item.key);
826
- item.children &&
827
- item.children.forEach(childItem => {
828
- this.search.dataListKeys.main.push(childItem.key);
829
- });
830
- });
831
- },
832
-
833
- searchOnloadMore() {
834
- this.searchPage = this.searchPage + 1;
835
- this.searchFetch({ page: this.searchPage }, { loadMoren: true });
836
- },
837
-
838
- addCheckedKeysChildrenMain(item) {
839
- if (!item.key) return;
840
- if (!this.checkedKeys.main.includes(String(item.key))) return false;
841
- // 新查询到插入已选中的main treeData 的child key,需要手动push到checkedKeys中
842
- if (!Array.isArray(item.children)) return false;
843
- item.children.forEach(({ key }) => {
844
- // 防止重复添加(已处理,不会重复添加,保留代码以防逻辑缺漏)
845
- if (this.checkedKeys.main.includes(key) || !key) return false;
846
- this.checkedKeys.main.push(key);
847
- });
848
- },
849
-
850
- // 暂存实际可选节点arr
851
- generateDataList(data, dataList) {
852
- vexutils.eachTree(data, node => {
853
- dataList.push({
854
- parentId: this.getParentId(node),
855
- ...node
856
- });
857
- });
858
- // for (let i = 0; i < data.length; i++) {
859
- // const node = data[i];
860
- // dataList.push({
861
- // parentId: this.getParentId(node),
862
- // ...node
863
- // });
864
- // if (node.children) {
865
- // this.generateDataList(node.children, dataList);
866
- // }
867
- // }
868
- },
869
-
870
- // 获取匹配搜索节点arr
871
- getParentKey(key, tree) {
872
- let parentKey;
873
- for (let i = 0; i < tree.length; i++) {
874
- const node = tree[i];
875
- if (node.key == key) {
876
- parentKey = node.key;
877
- return parentKey;
878
- }
879
-
880
- if (node.children) {
881
- if (node.children.some(item => item.key == key)) {
882
- parentKey = node.key;
883
- } else if (this.getParentKey(key, node.children)) {
884
- parentKey = this.getParentKey(key, node.children);
885
- }
886
- }
887
- }
888
- return parentKey;
889
- },
890
- radioChange(e) {
891
- let { checked } = e.target || {};
892
- if (this.searchTreeVisable) {
893
- this.singleChecked = checked;
894
- } else {
895
- this.searchChecked = checked;
896
- }
897
- this.checkAll(checked ? 1 : 2);
898
- this.handleOk();
899
- },
900
- // type 1 全选 2 反选(清空)
901
- checkAll(type) {
902
- if (this.checkAllSearchTree(type)) return false;
903
- const key = ['main', 'dept', 'role'][this.typeActiveIndex];
904
- if (type == 1) {
905
- this.expandedKeys = [];
906
- this.checkedKeys[key] = this[`dataList${key.slice(0, 1).toUpperCase()}${key.slice(1)}Keys`]; // dataListMainKeys dataListDeptKeys dataListRoleKeys;
907
- this.checkedKeys.temp = this.checkedKeys[key];
908
- } else if (type == 2) {
909
- this.checkedKeys[key] = [];
910
- this.checkedKeys.temp = [];
911
- this.autoExpandParent = true;
912
- }
913
- this.indeterminate = false;
914
- },
915
-
916
- checkAllSearchTree(type) {
917
- if (!this.searchTreeVisable) return false;
918
-
919
- if (type == 1) {
920
- // 全选默认不选中父级
921
- let allSearchkeysMain = this.search.dataListKeys.main.filter(key => {
922
- return !this.search.defaultExpandedKeys.includes(key);
923
- });
924
-
925
- let allSearchkeysOther = this.search.dataListKeys.other;
926
-
927
- this.checkedKeys.main = vexutils.uniq([...this.checkedKeys.main, ...allSearchkeysMain]);
928
- this.checkedKeys.other = vexutils.uniq([...this.checkedKeys.other, ...allSearchkeysOther]);
929
-
930
- // 如果子级全选,父级也需要选中
931
- this.search.dataListKeys.main.forEach(key => {
932
- let getParentKey = this.getParentKey(key, this.treeData.main);
933
- let parent = this.treeData.main.filter(item => {
934
- return item.key == getParentKey;
935
- });
936
-
937
- let allCheck = parent[0].children.every(item => {
938
- return this.checkedKeys.main.includes(item.key);
939
- });
940
- allCheck && this.checkedKeys.main.push(getParentKey);
941
- });
942
- this.refreshSearchTree();
943
- } else if (type == 2) {
944
- this.$refs['searchTree'].emptyCheckedKeys();
945
- this.autoExpandParent = true;
946
- }
947
- this.isSearchAllCheck();
948
- return true;
949
- },
950
-
951
- refreshSearchTree() {
952
- if (!this.searchTreeVisable) return false;
953
- this.$refs['searchTree'].setDefaultCheckedKeys();
954
- this.$nextTick(() => {
955
- this.isSearchAllCheck();
956
- });
957
- },
958
-
959
- // 展开数节点
960
- onExpand(expandedKeys) {
961
- // const latestOpenKey = expandedKeys.find(key => this.expandedKeys.indexOf(key) == -1);
962
- // this.expandedKeys = latestOpenKey ? [latestOpenKey] : [];
963
- // this.autoExpandParent = false;
964
- this.expandedKeys = expandedKeys;
965
- this.autoExpandParent = false;
966
- // this.$emit('expand', expandedKeys, ...arg)
967
- },
968
- onExpandDept(expandedKeys) {
969
- this.expandedDeptKeys = expandedKeys;
970
- },
971
-
972
- searchClick() {
973
- this.searchValue = this.title;
974
-
975
- this.treeData.search = [];
976
- this.search.dataListKeys.other = [];
977
- this.search.dataListKeys.main = [];
978
- this.search.defaultExpandedKeys = [];
979
-
980
- this.spinning = true;
981
- this.searchPage = 1;
982
- this.searchFetch();
983
- },
984
-
985
- isAllCheck(checkedKeys = []) {
986
- const key = ['main', 'dept', 'role'][this.typeActiveIndex];
987
- if (!checkedKeys || checkedKeys.length == 0) {
988
- this.indeterminate = false;
989
- this.singleChecked = false;
990
- } else {
991
- let keyArr = this.treeData[key].map(item => item.key);
992
- let keyArrTemp = keyArr.filter(item => checkedKeys.indexOf(item) !== -1);
993
- this.indeterminate = !(keyArr.length == keyArrTemp.length);
994
- this.singleChecked = keyArr.length == keyArrTemp.length;
995
- }
996
- },
997
-
998
- isSearchAllCheck() {
999
- this.$nextTick(() => {
1000
- let skeyArr = this.treeData.search.map(item => item.key);
1001
- let serchCheckedKeys = this.$refs['searchTree'].checkedKeys;
1002
- this.searchIndeterminate = !!serchCheckedKeys.length && serchCheckedKeys.length < skeyArr.length;
1003
- this.searchChecked = serchCheckedKeys.length === skeyArr.length;
1004
- });
1005
- },
1006
-
1007
- /* 子组件emit方法 */
1008
- addCheckedkeysMain(keys) {
1009
- let checkedKeys = this.checkedKeys.main;
1010
- let filterKey = (keys || {}).filter(Boolean);
1011
- filterKey.forEach(key => {
1012
- //
1013
- checkedKeys.push(key);
1014
- // 如果子级全选,父级也需要选中
1015
- let getParentKey = this.getParentKey(key, this.treeData.main);
1016
- if (!getParentKey) return;
1017
- let parent = this.treeData.main.filter(item => {
1018
- return item.key == getParentKey;
1019
- });
1020
- let allCheck = (parent[0]?.children || []).every(item => {
1021
- return checkedKeys.includes(item.key);
1022
- });
1023
- allCheck && checkedKeys.push(getParentKey);
1024
- });
1025
- },
1026
-
1027
- removeCheckedkeysMain(keys) {
1028
- let checkedKeysMain = vexutils.clone(this.checkedKeys.main, true);
1029
- keys.forEach(key => {
1030
- //
1031
- let index = checkedKeysMain.findIndex(mainKey => mainKey == key);
1032
- if (index !== -1) {
1033
- checkedKeysMain.splice(index, 1);
1034
- this.checkedKeys.main = [...checkedKeysMain];
1035
- }
1036
- // 删除父级选中
1037
- let getParentKey = this.getParentKey(key, this.treeData.main);
1038
- let parentIndex = checkedKeysMain.findIndex(mainKey => mainKey == getParentKey);
1039
- if (parentIndex !== -1) {
1040
- checkedKeysMain.splice(parentIndex, 1);
1041
- }
1042
- });
1043
-
1044
- this.checkedKeys.main = [...checkedKeysMain];
1045
- },
1046
-
1047
- addCheckedkeysOther(keys) {
1048
- this.checkedKeys.other.push(...keys);
1049
- // this.checkedKeys.main.push(...keys);
1050
- },
1051
-
1052
- removeCheckedkeysOther(keys) {
1053
- let checkedKeys = this.checkedKeys.other;
1054
- // let mainCheckedKeys = this.checkedKeys.main;
1055
- keys.forEach(key => {
1056
- let index = checkedKeys.findIndex(otherKey => otherKey == key);
1057
- checkedKeys.splice(index, 1);
1058
- this.handleDeldefaultShowList(key);
1059
-
1060
- // let mindex = mainCheckedKeys.findIndex(otherKey => otherKey == key);
1061
- // mainCheckedKeys.splice(mindex, 1);
1062
- });
1063
- this.removeCheckedkeysMain(keys);
1064
- },
1065
-
1066
- handleDeldefaultShowList(key) {
1067
- let len = this?.defaultShowList?.length || 0;
1068
- if (len > 0) {
1069
- for (let i = len - 1; i >= 0; i--) {
1070
- let d = this.defaultShowList[i];
1071
- if (`${d.parent_id}_${d.user_id}` == key) {
1072
- this.closeDefaultTag(d, i);
1073
- }
1074
- }
1075
- }
1076
- },
1077
-
1078
- closeDefaultTag(tag, i) {
1079
- this.defaultShowList.splice(i, 1);
1080
- this.closeTag({ parentId: this.getParentId(tag), ...tag });
1081
- },
1082
-
1083
- /* 右侧点击item[x]按钮 相关 */
1084
- closeTag(removedTag) {
1085
- // let { parentId } = removedTag;
1086
-
1087
- this.removedCheckedkeysMain(removedTag);
1088
- this.removedCheckedkeysDept(removedTag);
1089
- this.removedCheckedkeysRole(removedTag);
1090
- this.removedCheckedkeysOther(removedTag);
1091
- const propStr = ['person', 'dept', 'role'][this.typeActiveIndex];
1092
- const checkedKeys = this.checkedTreeItem.filter(item => item.itemType === propStr).map(item => item.key);
1093
- this.checkedKeys.temp = checkedKeys;
1094
- this.handleEmitValue();
1095
- this.refreshSearchTree();
1096
- this.isAllCheck(checkedKeys);
1097
- },
1098
-
1099
- removeCheckedkeysIncludeChildren(parentKey) {
1100
- let needRemoveChildKeys = this.dataList.main
1101
- .filter(i => {
1102
- let parentId = this.getParentId(i);
1103
- return parentId == parentKey || i.key == parentKey;
1104
- })
1105
- .map(i => {
1106
- return i.key;
1107
- });
1108
- const checkedKeys = this.checkedKeys.main.filter(i => {
1109
- return !needRemoveChildKeys.includes(i);
1110
- });
1111
- this.checkedKeys.main = checkedKeys;
1112
- },
1113
-
1114
- removedCheckedkeysMain(tag) {
1115
- let checkedKeys = this.checkedKeys.main;
1116
- let parentId = this.getParentId(tag);
1117
- for (let i = 0; i < checkedKeys.length; i++) {
1118
- if (tag.key == checkedKeys[i] && tag.key == parentId) {
1119
- this.removeCheckedkeysIncludeChildren(tag.key);
1120
- return false;
1121
- } else if (tag.key == checkedKeys[i]) {
1122
- checkedKeys.splice(i, 1);
1123
- return false;
1124
- }
1125
- }
1126
- },
1127
- removeCheckedkeysIncludeChildrenDept(parentKey) {
1128
- let needRemoveChildKeys = this.dataList.dept
1129
- .filter(i => {
1130
- let parentId = this.getParentId(i);
1131
- return parentId == parentKey || i.key == parentKey;
1132
- })
1133
- .map(i => {
1134
- return i.key;
1135
- });
1136
- const checkedKeys = this.checkedKeys.dept.filter(i => {
1137
- return !needRemoveChildKeys.includes(i);
1138
- });
1139
- this.checkedKeys.dept = checkedKeys;
1140
- },
1141
- removedCheckedkeysDept(tag) {
1142
- let checkedKeys = this.checkedKeys.dept;
1143
- let parentId = this.getParentId(tag);
1144
- for (let i = 0; i < checkedKeys.length; i++) {
1145
- if (tag.key == checkedKeys[i] && tag.key == parentId) {
1146
- this.removeCheckedkeysIncludeChildrenDept(tag.key);
1147
- return false;
1148
- } else if (tag.key == checkedKeys[i]) {
1149
- checkedKeys.splice(i, 1);
1150
- return false;
1151
- }
1152
- }
1153
- },
1154
- removedCheckedkeysRole(tag) {
1155
- let checkedKeys = this.checkedKeys.role;
1156
- let parentId = '';
1157
- for (let i = 0; i < checkedKeys.length; i++) {
1158
- if (tag.key == checkedKeys[i] && tag.key == parentId) {
1159
- // this.removeCheckedkeysIncludeChildren(tag.key);
1160
- return false;
1161
- } else if (tag.key == checkedKeys[i]) {
1162
- checkedKeys.splice(i, 1);
1163
- return false;
1164
- }
1165
- }
1166
- },
1167
-
1168
- removedCheckedkeysOther(tag) {
1169
- let checkedKeys = this.checkedKeys.other;
1170
- if (checkedKeys.includes(tag.key)) {
1171
- for (let i = 0; i < checkedKeys.length; i++) {
1172
- if (tag.key == checkedKeys[i]) {
1173
- checkedKeys.splice(i, 1);
1174
- return false;
1175
- }
1176
- }
1177
- } else {
1178
- // 删除科室,删除
1179
- this.OtherRemoveCheckedkeysIncludeChildren(tag.key);
1180
- }
1181
- },
1182
-
1183
- OtherRemoveCheckedkeysIncludeChildren(parentKey) {
1184
- let needRemoveChildKeys = this.dataList.main
1185
- .filter(i => {
1186
- let parentId = this.getParentId(i);
1187
- return parentId == parentKey || i.key == parentKey;
1188
- })
1189
- .map(i => {
1190
- return i.key;
1191
- });
1192
-
1193
- this.checkedKeys.other = this.checkedKeys.other.filter(i => {
1194
- return !needRemoveChildKeys.includes(i);
1195
- });
1196
- },
1197
-
1198
- /* submit 相关 */
1199
- getCheckedMainChildKeys() {
1200
- return new Promise(async resolve => {
1201
- let promises = this.treeData.main.map(async item => {
1202
- // 获取勾选了父类tree, 但未获取children
1203
- // 接口传参,需要的是叶节点的keys
1204
- if (this.checkedKeys.main.includes(item.key) && !item.children) {
1205
- item.children = await this.handleLoadChildData(item.key, item);
1206
- this.addCheckedKeysChildrenMain(item);
1207
-
1208
- this.generateDataList(item.children, this.dataList.main);
1209
- }
1210
- });
1211
-
1212
- await Promise.all(promises);
1213
-
1214
- resolve();
1215
- });
1216
- },
1217
-
1218
- getCheckedLeafKeys() {
1219
- let mainLeafKeys = [];
1220
- let mainLeafDataListKeys = this.dataList.main.filter(item => item.isLeaf).map(item => item.key);
1221
-
1222
- this.checkedKeys.main.forEach(key => {
1223
- if (mainLeafDataListKeys.includes(key)) {
1224
- mainLeafKeys.push(key);
1225
- }
1226
- });
1227
-
1228
- let keyList = [...mainLeafKeys, ...this.checkedKeys.other];
1229
- let res = [...new Set(keyList)];
1230
- return [...res];
1231
- },
1232
-
1233
- async handleOk(isShowLoading = false) {
1234
- isShowLoading && (this.spinning = true);
1235
- this.queryLoadChildData && (await this.getCheckedMainChildKeys());
1236
-
1237
- this.checkedLeafKeys = this.getCheckedLeafKeys();
1238
-
1239
- const submitData = this.handleGetSumitData(this.checkedLeafKeys);
1240
-
1241
- // let subList = [...submitData, ...this.defaultShowList];
1242
-
1243
- this.$emit('pubCheckedTreeItem', [...this.checkedTreeItem, ...this.defaultShowList]);
1244
- this.$emit('check', [...this.checkedTreeItem, ...this.defaultShowList]);
1245
- this.$emit('handleOk', this.checkedLeafKeys);
1246
- this.$emit('change', this.checkedLeafKeys, [...submitData, ...this.defaultShowList]);
1247
- this.$emit('submitData', [...submitData, ...this.defaultShowList]);
1248
-
1249
- isShowLoading && (this.spinning = false);
1250
- },
1251
-
1252
- handleEmitValue() {
1253
- clearTimeout(this.emitTimeout);
1254
- this.emitTimeout = setTimeout(() => {
1255
- this.handleOk();
1256
- }, 100);
1257
- },
1258
-
1259
- hanldeGetValue(...arg) {
1260
- this.handleOk(...arg);
1261
- },
1262
-
1263
- // 获取表单提交的数据
1264
- handleGetSumitData(list = []) {
1265
- if (!Array.isArray(list)) return [];
1266
- let resList = [];
1267
- const { parent_id_obj, parent_name_obj, user_id_obj, user_name_obj } = this.wordbookConfig || {};
1268
- list.forEach(v => {
1269
- // d.key
1270
- let f = this.dataList.main.find(d => this.getuniqKey(d) == v);
1271
- if (!f) {
1272
- f = this.dataList.other.find(o => this.getuniqKey(o) == v);
1273
- }
1274
- // [parent_id_obj]: f[parent_id_obj],
1275
- // [parent_name_obj]: f[parent_name_obj],
1276
- // [user_id_obj]: f[user_id_obj],
1277
- // [user_name_obj]: f[user_name_obj]
1278
- if (f) {
1279
- /** 提交映射 */
1280
- // 自定义 key 值
1281
- const { parent_id_obj_key, parent_name_obj_key } = this.wordbook;
1282
- const { user_id_obj_key, user_name_obj_key } = this.wordbookChild;
1283
- resList.push({
1284
- [user_id_obj_key || 'user_id']: f[user_id_obj],
1285
- [user_name_obj_key || 'user_name']: f[user_name_obj],
1286
- [parent_id_obj_key || 'parent_id']: f[parent_id_obj],
1287
- [parent_name_obj_key || 'parent_name']: f[parent_name_obj]
1288
- });
1289
- }
1290
- });
1291
- return resList;
1292
- },
1293
-
1294
- cancel() {
1295
- this.$emit('update:visible', false);
1296
- this.spinning = false;
1297
- },
1298
- /* */
1299
- treeCount(count) {
1300
- if (!count) return '';
1301
- return `(${count})`;
1302
- },
1303
-
1304
- staticDataSearch() {
1305
- // let expandedKeys = new Set();
1306
- // this.getStaticSearchParentKey(this.treeData.main, expandedKeys);
1307
- // this.expandedKeys = Array.from(expandedKeys);
1308
- // this.autoExpandParent = true;
1309
- const key = ['main', 'dept', 'role'][this.typeActiveIndex];
1310
- if (!this.title) {
1311
- // 如果为空恢复默认数据
1312
- this.$set(this.treeData, 'temp', this.treeData[key]);
1313
- return;
1314
- }
1315
- let copyData = JSON.parse(JSON.stringify(this.treeData[key]));
1316
- // 增加visible属性 true展示 false不展示
1317
- filterTree({ value: this.title, data: copyData, prop: 'title', filterChildren: this.filterChildren });
1318
- // 过滤visible属性 为true的数据
1319
- copyData = copyData.filter(item => item.visible);
1320
- const expandedKeys = [];
1321
- vexutils.searchTree(copyData, item => {
1322
- if (item.visible && (item.title.indexOf(this.title) !== -1 || matchWdAndPy(this.title, item))) {
1323
- const allParentIds = getAllParentId(copyData, item.key).filter(Boolean);
1324
- expandedKeys.push(...allParentIds);
1325
- }
1326
- if (item.children && item.children.length) {
1327
- item.children = item.children.filter(child => child.visible);
1328
- }
1329
- });
1330
- this.$set(this.treeData, 'temp', copyData);
1331
- this.expandedKeys = [...new Set(expandedKeys)];
1332
- },
1333
- getStaticSearchParentKey(treeData, expandedKeys, orgId) {
1334
- const keyword = this.title;
1335
- for (let i = 0; i < treeData.length; i++) {
1336
- const user = treeData[i];
1337
- let { title = '', key, children } = user;
1338
- if (keyword.length > 0 && (String(title).indexOf(keyword) !== -1 || String(key).indexOf(keyword) !== -1)) {
1339
- expandedKeys.add(key);
1340
- if (orgId) {
1341
- expandedKeys.add(orgId);
1342
- }
1343
- break;
1344
- }
1345
- if (children) {
1346
- this.getStaticSearchParentKey(children, expandedKeys, user.key || orgId);
1347
- }
1348
- }
1349
- },
1350
-
1351
- // 数组对象去重
1352
- uniqArrObj(arr, name) {
1353
- let obj = {};
1354
- return arr.reduce((cur, next) => {
1355
- obj[next[name]] ? '' : (obj[next[name]] = true && cur.push(next));
1356
- return cur;
1357
- }, []);
1358
- },
1359
- onTypeClick(index) {
1360
- const key = ['main', 'dept', 'role'][index];
1361
- const checkedKeys = this.checkedKeys[key];
1362
- this.treeData.temp = this.treeData[key];
1363
- this.checkedKeys.temp = checkedKeys;
1364
- this.typeActiveIndex = index;
1365
- // 处理全选框
1366
- this.isAllCheck(checkedKeys);
1367
- },
1368
- onTreeCheck(checkedKeys, { checked, node }) {
1369
- if (this.checkStrictly) {
1370
- checkedKeys = checkedKeys.checked;
1371
- }
1372
- // 断掉了父子关系 要不然当存在一二级科室的时候 搜索二级科室 再选中会把一级也选中 ; 后续与产品沟通 不需要断 只取最后一级科室
1373
- const propStr = ['main', 'dept', 'role'][this.typeActiveIndex];
1374
- let totalCheckedKeys = [];
1375
- // const keyData = this.dataList[propStr].find(item => item.key === node.eventKey);
1376
- // let keyData = {};
1377
- // vexutils.searchTree(this.treeData[propStr], item => {
1378
- // if (item.key === node.eventKey) {
1379
- // keyData = item;
1380
- // }
1381
- // });
1382
- // vexutils.searchTree(keyData.children, item => {
1383
- // childKeys.push(item.key);
1384
- // });
1385
- // if (checked) {
1386
- // const singleCheckedKeys = this.getSingleCheckedKeys(propStr, this.treeData[propStr], keyData);
1387
- // totalCheckedKeys = this.isSingleCheck ? singleCheckedKeys : [...new Set(checkedKeys.concat(childKeys))];
1388
- // } else {
1389
- // // totalCheckedKeys = checkedKeys;
1390
- // totalCheckedKeys = this.isSingleCheck ? [] : checkedKeys.filter(key => !childKeys.includes(key));
1391
- // }
1392
- // 如果是选中就把之前选中和现在选中的合并做为temp值(兼容搜索的情况),
1393
- if (checked) {
1394
- const preChecked = this.checkedKeys[propStr];
1395
- // 搜索时选中上级也要把它所有下级给选中 如果是选中一个下级但是也把其上级选中了要把上级选中给去掉
1396
- const childKeys = [];
1397
- let keyData = {};
1398
- vexutils.searchTree(this.treeData[propStr], item => {
1399
- if (item.key === node.eventKey) {
1400
- keyData = item;
1401
- }
1402
- });
1403
- vexutils.searchTree(keyData.children, item => {
1404
- childKeys.push(item.key);
1405
- });
1406
- const allParentIds = getAllParentId(this.treeData[propStr], node.eventKey)?.filter(Boolean) || [];
1407
- totalCheckedKeys = [...new Set(preChecked.concat(checkedKeys, childKeys))];
1408
- if (!this.checkStrictly) {
1409
- totalCheckedKeys = totalCheckedKeys.filter(id => !allParentIds.includes(id));
1410
- }
1411
- } else {
1412
- // 如果是取消从之前的选择中把当前点击的及其子级去除选中作为temp值(兼容搜索的情况)
1413
- let keyData = {};
1414
- const needCancelKeys = [node.eventKey];
1415
- const preChecked = this.checkedKeys[propStr];
1416
- vexutils.searchTree(this.treeData[propStr], item => {
1417
- if (item.key === node.eventKey) {
1418
- keyData = item;
1419
- }
1420
- });
1421
- vexutils.searchTree(keyData.children, item => {
1422
- needCancelKeys.push(item.key);
1423
- });
1424
- const allParentIds = getAllParentId(this.treeData[propStr], node.eventKey)?.filter(Boolean) || [];
1425
- totalCheckedKeys = [...new Set(preChecked.filter(key => !needCancelKeys.includes(key)))];
1426
- if (!this.checkStrictly) {
1427
- totalCheckedKeys = totalCheckedKeys.filter(id => !allParentIds.includes(id));
1428
- }
1429
- }
1430
- this.checkedKeys.temp = totalCheckedKeys;
1431
- this.checkedKeys[propStr] = totalCheckedKeys;
1432
- this.isAllCheck(totalCheckedKeys);
1433
- this.isSearchAllCheck(totalCheckedKeys);
1434
- this.$emit('pubCheckedTreeItem', [...this.checkedTreeItem, ...this.defaultShowList]);
1435
- this.$emit('check', [...this.checkedTreeItem, ...this.defaultShowList]);
1436
- },
1437
- getSingleCheckedKeys(propStr, treeData, keyData) {
1438
- const firstTreeData = deepTraversalFirst(keyData) || [];
1439
- let checkedKeys = [];
1440
- if (propStr === 'main') {
1441
- checkedKeys = firstTreeData.map(item => item.key);
1442
- } else if (propStr === 'dept') {
1443
- // 如果是dept 找到层级为科室的第一个数据
1444
- const index = firstTreeData.findIndex(item => item.type === 1);
1445
- if (index > -1) {
1446
- checkedKeys = firstTreeData.slice(0, index + 1).map(item => item.key);
1447
- } else {
1448
- checkedKeys = firstTreeData.map(item => item.key);
1449
- }
1450
- } else if (propStr === 'role') {
1451
- // 如果是dept 找到层级为角色的第一个数据
1452
- const index = firstTreeData.findIndex(item => item.roleId);
1453
- if (index > -1) {
1454
- checkedKeys = firstTreeData.slice(0, index + 1).map(item => item.key);
1455
- } else {
1456
- checkedKeys = firstTreeData.map(item => item.key);
1457
- }
1458
- }
1459
- return checkedKeys;
1460
- },
1461
-
1462
- onClearSelect() {
1463
- this.checkedKeys.temp = [];
1464
- this.checkedKeys.main = [];
1465
- this.checkedKeys.dept = [];
1466
- this.checkedKeys.role = [];
1467
- this.defaultShowList = [];
1468
- this.indeterminate = false;
1469
- this.singleChecked = false;
1470
- },
1471
- filterTreeData({ value, data, prop, filter, filterXor, children, visible, filterChildren = true, callback }) {
1472
- // 默认赋值
1473
- visible = visible || 'visible';
1474
- children = children || 'children';
1475
- prop = prop || 'text';
1476
-
1477
- const filterNodeMethod = function(value, data) {
1478
- if (!value) {
1479
- return true;
1480
- }
1481
- let flag = (data[prop] || '').indexOf(value) !== -1;
1482
- return filterXor ? !flag : flag;
1483
- };
1484
-
1485
- const traverse = function(node) {
1486
- const childNodes = node[children] || [];
1487
-
1488
- childNodes.forEach(child => {
1489
- callback && callback(child);
1490
- child[visible] = (!node.root && !filterChildren && node[visible]) || filterNodeMethod.call(child, value, child, prop);
1491
-
1492
- traverse(child);
1493
- });
1494
-
1495
- if (!node[visible] && childNodes.length) {
1496
- let allHidden = true;
1497
- allHidden = !childNodes.some(child => child[visible]);
1498
-
1499
- node[visible] = allHidden === false;
1500
- }
1501
- };
1502
- let totalData = {
1503
- root: true
1504
- };
1505
- totalData[children] = data;
1506
- traverse(totalData);
1507
-
1508
- if (filter) {
1509
- let copyData = data.slice();
1510
- let filterHandle = filterData => {
1511
- return filterData.filter((item, index) => {
1512
- if (item[visible]) {
1513
- if (item[children]) {
1514
- item[children] = filterHandle(item[children]);
1515
- }
1516
- return true;
1517
- }
1518
- return false;
1519
- });
1520
- };
1521
- return filterHandle(copyData);
1522
- }
1523
- },
1524
- handleData() {
1525
- this.useData = vexutils.clone(this.data, true);
1526
- vexutils.searchTree(this.useData, item => {
1527
- if (this.titleAddCode && item.code) {
1528
- item.title = `${item.title}(${item.code})`;
1529
- }
1530
- });
1531
- }
1532
- }
1533
- });
1534
- </script>
1535
- <style lang="less" scoped>
1536
- @primary-color: #2563f4;
1537
- /deep/.people-tree {
1538
- display: flex;
1539
- .people-tree-item {
1540
- flex-shrink: 0;
1541
- width: 300px;
1542
- padding: 22px 12px 0;
1543
- max-height: 376px;
1544
- height: 376px;
1545
- &.people-tree-left {
1546
- display: flex;
1547
- flex-direction: column;
1548
- }
1549
- .ant-checkbox-indeterminate .ant-checkbox-inner {
1550
- background-color: #fff !important;
1551
- border-color: #d9d9d9 !important;
1552
- }
1553
- /deep/ .person-search {
1554
- // .ant-input-affix-wrapper .ant-input:not(:last-child),
1555
- // .ant-input-affix-wrapper .ant-input:not(:first-child) {
1556
- // padding-left: 34px;
1557
- // }
1558
- .ant-input-group-addon {
1559
- padding: 0;
1560
- border: 0px !important;
1561
- }
1562
- .ant-input-search-button {
1563
- border-top-left-radius: 0;
1564
- border-bottom-left-radius: 0;
1565
- }
1566
- }
1567
- .tree-wrap {
1568
- flex: 1;
1569
- overflow-y: auto;
1570
- }
1571
- /deep/ .main-tree-container {
1572
- > li {
1573
- width: 100%;
1574
- overflow: hidden;
1575
- }
1576
- .ant-tree-switcher {
1577
- flex-shrink: 0;
1578
- }
1579
- .ant-tree-node-content-wrapper {
1580
- width: calc(100% - 48px);
1581
- text-overflow: ellipsis;
1582
- overflow: hidden;
1583
- white-space: nowrap;
1584
- }
1585
- }
1586
- /deep/.ant-tree-title {
1587
- // width: 250px;
1588
- width: 100%;
1589
- text-overflow: ellipsis;
1590
- overflow: hidden;
1591
- white-space: nowrap;
1592
- display: inline-block;
1593
- }
1594
- &:first-child {
1595
- border-right: 1px solid #e8e8e8;
1596
- }
1597
-
1598
- .no-data-tips {
1599
- height: 200px;
1600
- width: 100%;
1601
- display: flex;
1602
- justify-content: center;
1603
- align-items: center;
1604
- font-size: 16px;
1605
- font-weight: 700;
1606
- }
1607
-
1608
- .c-title {
1609
- font-size: 14px;
1610
- font-family: PingFangSC-Regular, PingFang SC;
1611
- font-weight: 400;
1612
- color: #212121;
1613
- }
1614
- .c-sub-title {
1615
- font-size: 12px;
1616
- font-family: PingFangSC-Regular, PingFang SC;
1617
- // font-weight: 400;
1618
- color: #4e4e4e;
1619
- }
1620
- .p-title {
1621
- font-size: 14px;
1622
- font-family: PingFangSC-Medium, PingFang SC;
1623
- font-weight: 500;
1624
- color: #212121;
1625
- }
1626
- }
1627
- /deep/.ant-tree {
1628
- overflow-y: auto;
1629
- // height: 450px;
1630
- flex: 1;
1631
- position: relative;
1632
- &::-webkit-scrollbar {
1633
- width: 6px;
1634
- height: 6px;
1635
- background-color: #f5f5f5;
1636
- }
1637
- }
1638
- .select-wrap {
1639
- flex: 1;
1640
- padding: 22px 12px 0;
1641
- height: 376px;
1642
- display: flex;
1643
- flex-direction: column;
1644
- .select-header {
1645
- display: flex;
1646
- justify-content: space-between;
1647
- margin-bottom: 20px;
1648
- .clear-btn {
1649
- color: @primary-color;
1650
- cursor: pointer;
1651
- }
1652
- }
1653
- .select-content {
1654
- flex: 1;
1655
- overflow-y: auto;
1656
- .tag-item {
1657
- .tag-text {
1658
- overflow: hidden;
1659
- white-space: nowrap;
1660
- text-overflow: ellipsis;
1661
- max-width: 300px;
1662
- }
1663
- &.isRoot {
1664
- background: rgba(@primary-color, 0.08);
1665
- border: 1px solid rgba(@primary-color, 0.5);
1666
- color: @primary-color;
1667
- .tag-close {
1668
- color: @primary-color;
1669
- &:hover {
1670
- color: rgba(@primary-color, 0.6);
1671
- }
1672
- }
1673
- }
1674
-
1675
- box-sizing: border-box;
1676
- color: #212121;
1677
- font-size: 14px;
1678
- list-style: none;
1679
- display: inline-flex;
1680
- align-items: center;
1681
- height: 24px;
1682
- line-height: 24px;
1683
- margin-right: 8px;
1684
- margin-bottom: 4px;
1685
- padding: 0 6px;
1686
- // white-space: nowrap;
1687
- background: rgba(#d5d5d5, 0.2);
1688
- border: 1px solid rgba(#000000, 0.14);
1689
- border-radius: 4px;
1690
- transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
1691
- .tag-close {
1692
- font-size: 12px;
1693
- &:hover {
1694
- color: rgba(@primary-color, 0.6);
1695
- }
1696
- &:active {
1697
- color: #fff;
1698
- }
1699
- display: inline-block;
1700
- font-size: 14px;
1701
- margin-left: 3px;
1702
- color: #969696;
1703
- font-weight: 700;
1704
- cursor: pointer;
1705
- transition: all 0.3s;
1706
- }
1707
- }
1708
- }
1709
- }
1710
- }
1711
- .df {
1712
- display: flex;
1713
- }
1714
- .search-input-icon {
1715
- color: rgba(0, 0, 0, 0.4);
1716
- margin-bottom: -2px;
1717
- }
1718
- .type-wrap {
1719
- display: flex;
1720
- margin-bottom: 10px;
1721
- .type-btn {
1722
- margin-right: 10px;
1723
- padding: 2px 10px;
1724
- background: #f2f2f2;
1725
- border-radius: 8px;
1726
- cursor: pointer;
1727
- &:last-child {
1728
- margin-right: 0;
1729
- }
1730
- }
1731
- .type-active {
1732
- background: @primary-color;
1733
- color: #ffffff;
1734
- }
1735
- }
1736
- </style>