cnhis-design-vue 2.1.78 → 2.1.79

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 (588) hide show
  1. package/.prettierrc.js +27 -27
  2. package/CHANGELOG.md +2924 -2903
  3. package/README.md +90 -90
  4. package/commitlint.config.js +1 -1
  5. package/es/affix/index.js +8 -8
  6. package/es/age/index.js +18 -18
  7. package/es/alert/index.js +8 -8
  8. package/es/anchor/index.js +8 -8
  9. package/es/auto-complete/index.js +8 -8
  10. package/es/avatar/index.js +8 -8
  11. package/es/back-top/index.js +8 -8
  12. package/es/badge/index.js +8 -8
  13. package/es/base/index.js +8 -8
  14. package/es/big-table/index.js +311 -311
  15. package/es/breadcrumb/index.js +8 -8
  16. package/es/button/index.js +31 -31
  17. package/es/calendar/index.js +8 -8
  18. package/es/captcha/index.js +7 -7
  19. package/es/card/index.js +8 -8
  20. package/es/carousel/index.js +8 -8
  21. package/es/cascader/index.js +8 -8
  22. package/es/checkbox/index.js +17 -17
  23. package/es/col/index.js +8 -8
  24. package/es/collapse/index.js +8 -8
  25. package/es/color-picker/index.js +5 -5
  26. package/es/comment/index.js +8 -8
  27. package/es/config-provider/index.js +8 -8
  28. package/es/date-picker/index.js +30 -30
  29. package/es/descriptions/index.js +8 -8
  30. package/es/divider/index.js +8 -8
  31. package/es/drag-layout/index.js +5 -5
  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 +45 -45
  38. package/es/form/index.js +8 -8
  39. package/es/form-model/index.js +8 -8
  40. package/es/form-table/index.js +144 -144
  41. package/es/grid/index.js +4 -4
  42. package/es/index/index.js +1260 -1256
  43. package/es/index/style.css +1 -1
  44. package/es/input/index.js +11 -11
  45. package/es/input-number/index.js +8 -8
  46. package/es/keep-cache/index.js +9 -9
  47. package/es/layout/index.js +8 -8
  48. package/es/list/index.js +8 -8
  49. package/es/locale-provider/index.js +8 -8
  50. package/es/map/index.js +13 -13
  51. package/es/mentions/index.js +8 -8
  52. package/es/menu/index.js +8 -8
  53. package/es/message/index.js +8 -8
  54. package/es/multi-chat/index.js +117 -117
  55. package/es/multi-chat-client/index.js +111 -111
  56. package/es/multi-chat-history/index.js +6 -6
  57. package/es/multi-chat-record/index.js +27 -27
  58. package/es/multi-chat-setting/index.js +43 -43
  59. package/es/multi-chat-sip/index.js +1 -1
  60. package/es/notification/index.js +8 -8
  61. package/es/page-header/index.js +8 -8
  62. package/es/pagination/index.js +8 -8
  63. package/es/popconfirm/index.js +8 -8
  64. package/es/popover/index.js +8 -8
  65. package/es/progress/index.js +8 -8
  66. package/es/radio/index.js +17 -17
  67. package/es/rate/index.js +8 -8
  68. package/es/result/index.js +8 -8
  69. package/es/row/index.js +8 -8
  70. package/es/scale-container/index.js +1 -1
  71. package/es/scale-view/index.js +175 -175
  72. package/es/select/index.js +44 -44
  73. package/es/select-label/index.js +50 -50
  74. package/es/select-person/index.js +45 -41
  75. package/es/select-person/style.css +1 -1
  76. package/es/shortcut-setter/index.js +10 -10
  77. package/es/skeleton/index.js +8 -8
  78. package/es/slider/index.js +8 -8
  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 +214 -214
  85. package/es/tabs/index.js +8 -8
  86. package/es/tag/index.js +9 -9
  87. package/es/time-picker/index.js +8 -8
  88. package/es/timeline/index.js +8 -8
  89. package/es/tooltip/index.js +8 -8
  90. package/es/transfer/index.js +8 -8
  91. package/es/tree/index.js +8 -8
  92. package/es/tree-select/index.js +8 -8
  93. package/es/upload/index.js +8 -8
  94. package/es/utils/clickoutside.js +7 -7
  95. package/es/utils/kty.min-1.0.0.js +5 -5
  96. package/es/utils/time-domain.js +16 -16
  97. package/es/utils/utils-map.js +32 -32
  98. package/es/utils/vexutils.js +27 -27
  99. package/es/verification-code/index.js +2 -2
  100. package/lib/cui.common.js +21239 -21236
  101. package/lib/cui.umd.js +21239 -21236
  102. package/lib/cui.umd.min.js +29 -29
  103. package/package.json +110 -110
  104. package/packages/affix/index.js +12 -12
  105. package/packages/affix/src/Affix.jsx +12 -12
  106. package/packages/age/index.js +27 -27
  107. package/packages/age/src/age/index.vue +139 -139
  108. package/packages/age/src/age-com/index.vue +209 -209
  109. package/packages/alert/index.js +12 -12
  110. package/packages/alert/src/Alert.jsx +11 -11
  111. package/packages/anchor/index.js +18 -18
  112. package/packages/anchor/src/Anchor.jsx +11 -11
  113. package/packages/anchor/src/Link.jsx +11 -11
  114. package/packages/auto-complete/index.js +12 -12
  115. package/packages/auto-complete/src/AutoComplete.jsx +12 -12
  116. package/packages/avatar/index.js +12 -12
  117. package/packages/avatar/src/Avatar.jsx +11 -11
  118. package/packages/back-top/index.js +12 -12
  119. package/packages/back-top/src/BackTop.jsx +11 -11
  120. package/packages/badge/index.js +12 -12
  121. package/packages/badge/src/Badge.jsx +11 -11
  122. package/packages/base/index.js +3 -3
  123. package/packages/big-table/index.js +16 -16
  124. package/packages/big-table/src/BigTable.vue +3193 -3193
  125. package/packages/big-table/src/Fieldset.vue +2067 -2067
  126. package/packages/big-table/src/assets/iconfont/iconfont.css +21 -21
  127. package/packages/big-table/src/assets/style/table-base.less +387 -387
  128. package/packages/big-table/src/assets/style/table-global.less +175 -175
  129. package/packages/big-table/src/components/AutoLayoutButton.vue +307 -307
  130. package/packages/big-table/src/components/NoData.vue +81 -81
  131. package/packages/big-table/src/components/TextOverTooltip.vue +120 -120
  132. package/packages/big-table/src/components/edit-form/EditForm.vue +509 -509
  133. package/packages/big-table/src/components/edit-form/edit-component/config-data/index.js +68 -68
  134. package/packages/big-table/src/components/edit-form/edit-component/edit-date-picker/edit-date-picker.vue +60 -60
  135. package/packages/big-table/src/components/edit-form/edit-component/edit-digital/edit-digital.vue +54 -54
  136. package/packages/big-table/src/components/edit-form/edit-component/edit-input/edit-input.vue +39 -39
  137. package/packages/big-table/src/components/edit-form/edit-component/edit-input-password/edit-input-password.vue +79 -79
  138. package/packages/big-table/src/components/edit-form/edit-component/edit-month-picker/edit-month-picker.vue +37 -37
  139. package/packages/big-table/src/components/edit-form/edit-component/edit-search/edit-search.vue +82 -82
  140. package/packages/big-table/src/components/edit-form/edit-component/edit-search-more/edit-search-more.vue +95 -95
  141. package/packages/big-table/src/components/edit-form/edit-component/edit-select/edit-select.vue +40 -40
  142. package/packages/big-table/src/components/edit-form/edit-component/edit-select-multiple/edit-select-multiple.vue +55 -55
  143. package/packages/big-table/src/components/edit-form/edit-component/edit-switch/edit-switch.vue +43 -43
  144. package/packages/big-table/src/components/edit-form/edit-component/edit-textarea/edit-textarea.vue +41 -41
  145. package/packages/big-table/src/components/edit-form/edit-component/edit-time-picker/edit-time-picker.vue +40 -40
  146. package/packages/big-table/src/components/edit-form/edit-component/mixins/bound-date.js +3 -3
  147. package/packages/big-table/src/components/edit-form/edit-component/mixins/dateType.js +217 -217
  148. package/packages/big-table/src/components/edit-form/edit-component/mixins/item-default.js +639 -639
  149. package/packages/big-table/src/components/edit-form/edit-component/mixins/search.js +1247 -1247
  150. package/packages/big-table/src/components/edit-form/edit-component/register-com.js +26 -26
  151. package/packages/big-table/src/components/edit-form/edit-item/form-event.js +80 -80
  152. package/packages/big-table/src/components/edit-form/edit-item/global-props.js +33 -33
  153. package/packages/big-table/src/components/edit-form/edit-item/index.js +4 -4
  154. package/packages/big-table/src/components/edit-form/edit-item/render-methods.js +28 -28
  155. package/packages/big-table/src/components/edit-form/edit-item/validate-rules.js +463 -463
  156. package/packages/big-table/src/components/edit-form/edit-mixins/form-commom.js +673 -673
  157. package/packages/big-table/src/components/edit-form/edit-mixins/index.js +3 -3
  158. package/packages/big-table/src/components/edit-form/edit-utils/index.js +112 -112
  159. package/packages/big-table/src/components/password-com.vue +58 -58
  160. package/packages/big-table/src/components/player-vod/index.vue +57 -57
  161. package/packages/big-table/src/components/player-vod/player.vue +193 -193
  162. package/packages/big-table/src/components/player-vod/video-list.vue +265 -265
  163. package/packages/big-table/src/components/player-vod/video-modal.vue +126 -126
  164. package/packages/big-table/src/utils/CustomPagination.vue +86 -86
  165. package/packages/big-table/src/utils/batchEditing.js +610 -610
  166. package/packages/big-table/src/utils/bigTableProps.js +108 -108
  167. package/packages/big-table/src/utils/eventBroadcast.js +24 -24
  168. package/packages/big-table/src/utils/format.js +557 -557
  169. package/packages/big-table/src/utils/nestTable.js +109 -109
  170. package/packages/big-table/src/utils/tableParse.js +234 -234
  171. package/packages/breadcrumb/index.js +21 -21
  172. package/packages/breadcrumb/src/Breadcrumb.jsx +11 -11
  173. package/packages/breadcrumb/src/BreadcrumbItem.jsx +11 -11
  174. package/packages/breadcrumb/src/BreadcrumbSeparator.jsx +11 -11
  175. package/packages/button/index.js +21 -21
  176. package/packages/button/src/Button.jsx +11 -11
  177. package/packages/button/src/ButtonGroup.jsx +11 -11
  178. package/packages/button/src/ButtonPrint/components/IdentityVerification.vue +181 -181
  179. package/packages/button/src/ButtonPrint/index.vue +766 -766
  180. package/packages/button/src/ButtonPrint/mixin/his-print.js +95 -95
  181. package/packages/calendar/index.js +12 -12
  182. package/packages/calendar/src/Calendar.jsx +11 -11
  183. package/packages/captcha/index.js +9 -9
  184. package/packages/captcha/src/Captcha.vue +164 -164
  185. package/packages/captcha/src/Index.vue +47 -47
  186. package/packages/captcha/src/SlideVerify.vue +285 -285
  187. package/packages/card/index.js +21 -21
  188. package/packages/card/src/Card.jsx +12 -12
  189. package/packages/card/src/CardGrid.js +7 -7
  190. package/packages/card/src/CardMeta.js +7 -7
  191. package/packages/carousel/index.js +12 -12
  192. package/packages/carousel/src/Carousel.jsx +12 -12
  193. package/packages/cascader/index.js +12 -12
  194. package/packages/cascader/src/Cascader.jsx +11 -11
  195. package/packages/checkbox/index.js +30 -30
  196. package/packages/checkbox/src/Checkbox.jsx +11 -11
  197. package/packages/checkbox/src/CheckboxImg/index.vue +141 -141
  198. package/packages/checkbox/src/Group.jsx +11 -11
  199. package/packages/col/index.js +13 -13
  200. package/packages/col/src/Col.jsx +11 -11
  201. package/packages/collapse/index.js +18 -18
  202. package/packages/collapse/src/Collapse.jsx +11 -11
  203. package/packages/collapse/src/Panel.jsx +11 -11
  204. package/packages/color-picker/index.js +10 -10
  205. package/packages/color-picker/src/color-picker.vue +191 -191
  206. package/packages/color-picker/src/style.less +109 -109
  207. package/packages/comment/index.js +12 -12
  208. package/packages/comment/src/Comment.jsx +11 -11
  209. package/packages/config-provider/index.js +12 -12
  210. package/packages/config-provider/src/ConfigProvider.jsx +11 -11
  211. package/packages/date-picker/index.js +26 -26
  212. package/packages/date-picker/src/DatePicker.jsx +12 -12
  213. package/packages/date-picker/src/MonthPicker.jsx +11 -11
  214. package/packages/date-picker/src/RangePicker.jsx +11 -11
  215. package/packages/date-picker/src/WeekPicker.jsx +11 -11
  216. package/packages/date-picker/src/utils/index.js +374 -374
  217. package/packages/descriptions/index.js +18 -18
  218. package/packages/descriptions/src/Descriptions.jsx +11 -11
  219. package/packages/descriptions/src/Item.jsx +11 -11
  220. package/packages/divider/index.js +12 -12
  221. package/packages/divider/src/Divider.jsx +11 -11
  222. package/packages/drag-layout/DragFormLeftItem.vue +173 -173
  223. package/packages/drag-layout/DragFormRightItem.vue +284 -284
  224. package/packages/drag-layout/I18n-mixins.js +10 -10
  225. package/packages/drag-layout/drag-layout.vue +778 -778
  226. package/packages/drag-layout/index.js +12 -12
  227. package/packages/drawer/index.js +12 -12
  228. package/packages/drawer/src/Drawer.jsx +11 -11
  229. package/packages/dropdown/index.js +12 -12
  230. package/packages/dropdown/src/Dropdown.jsx +11 -11
  231. package/packages/editor/index.js +9 -9
  232. package/packages/ellipsis/index.js +8 -8
  233. package/packages/ellipsis/src/Ellipsis.vue +65 -65
  234. package/packages/empty/index.js +12 -12
  235. package/packages/empty/src/Empty.jsx +11 -11
  236. package/packages/fabric-chart/index.js +9 -9
  237. package/packages/fabric-chart/src/FabricGrid.vue +67 -67
  238. package/packages/fabric-chart/src/components/DropPopup.vue +90 -90
  239. package/packages/fabric-chart/src/components/MouseRightClick.vue +168 -168
  240. package/packages/fabric-chart/src/components/TimeScaleValue.vue +125 -125
  241. package/packages/fabric-chart/src/const/defaultVaule.js +60 -60
  242. package/packages/fabric-chart/src/fabric-chart/FabricLines.vue +617 -617
  243. package/packages/fabric-chart/src/fabric-chart/FabricPolylines.vue +1191 -1191
  244. package/packages/fabric-chart/src/fabric-chart/FabricScaleValue.vue +139 -139
  245. package/packages/fabric-chart/src/fabric-chart/FabricTextGroup.vue +651 -651
  246. package/packages/fabric-chart/src/mixins/fabricCommon.js +81 -81
  247. package/packages/fabric-chart/src/mixins/fabricObject.js +193 -193
  248. package/packages/fabric-chart/src/mixins/type.js +5 -5
  249. package/packages/fabric-chart/src/utils/bus.js +2 -2
  250. package/packages/form/index.js +16 -16
  251. package/packages/form/src/Form.jsx +11 -11
  252. package/packages/form/src/Item.jsx +11 -11
  253. package/packages/form-model/index.js +14 -14
  254. package/packages/form-model/src/FormModel.jsx +11 -11
  255. package/packages/form-model/src/Item.jsx +11 -11
  256. package/packages/form-table/index.js +16 -16
  257. package/packages/form-table/src/FormTable.vue +1110 -1110
  258. package/packages/form-table/src/components/table-component/config-data/index.js +80 -80
  259. package/packages/form-table/src/components/table-component/global-props.js +22 -22
  260. package/packages/form-table/src/components/table-component/index.js +8 -8
  261. package/packages/form-table/src/components/table-component/mixins/bound-date.js +455 -455
  262. package/packages/form-table/src/components/table-component/mixins/dateType.js +217 -217
  263. package/packages/form-table/src/components/table-component/mixins/item-default.js +257 -257
  264. package/packages/form-table/src/components/table-component/mixins/search.js +1242 -1242
  265. package/packages/form-table/src/components/table-component/register-com.js +30 -30
  266. package/packages/form-table/src/components/table-component/table-age/table-age.vue +175 -175
  267. package/packages/form-table/src/components/table-component/table-date-picker/table-date-picker.vue +87 -87
  268. package/packages/form-table/src/components/table-component/table-digital/table-digital.vue +93 -93
  269. package/packages/form-table/src/components/table-component/table-input/table-input.vue +81 -81
  270. package/packages/form-table/src/components/table-component/table-input-password/table-input-password.vue +126 -126
  271. package/packages/form-table/src/components/table-component/table-month-picker/table-month-picker.vue +55 -55
  272. package/packages/form-table/src/components/table-component/table-search/table-search.vue +174 -174
  273. package/packages/form-table/src/components/table-component/table-search-more/table-search-more.vue +191 -191
  274. package/packages/form-table/src/components/table-component/table-select/table-select.vue +64 -64
  275. package/packages/form-table/src/components/table-component/table-select-multiple/table-select-multiple.vue +81 -81
  276. package/packages/form-table/src/components/table-component/table-textarea/table-textarea.vue +76 -76
  277. package/packages/form-table/src/components/table-component/table-time-picker/table-time-picker.vue +55 -55
  278. package/packages/form-table/src/components/table-component/table-tree-select/table-tree-select.vue +135 -135
  279. package/packages/form-table/src/components/table-component/text-over-tooltip/TextOverTooltip.vue +97 -97
  280. package/packages/form-table/src/components/table-item/form-event.js +81 -81
  281. package/packages/form-table/src/components/table-item/global-props.js +27 -27
  282. package/packages/form-table/src/components/table-item/index.js +4 -4
  283. package/packages/form-table/src/components/table-item/render-methods.js +28 -28
  284. package/packages/form-table/src/components/table-item/validate-rules.js +520 -520
  285. package/packages/form-table/src/components/table-mixins/form-commom.js +98 -98
  286. package/packages/form-table/src/components/table-mixins/index.js +3 -3
  287. package/packages/form-table/src/components/table-utils/index.js +112 -112
  288. package/packages/form-table/src/disabledDetail.less +46 -46
  289. package/packages/grid/index.js +10 -10
  290. package/packages/grid/src/grid.js +28 -28
  291. package/packages/icon/index.js +10 -10
  292. package/packages/icon/src/icon.js +13 -13
  293. package/packages/index.js +313 -313
  294. package/packages/input/index.js +30 -30
  295. package/packages/input/src/Group.jsx +11 -11
  296. package/packages/input/src/Input.jsx +11 -11
  297. package/packages/input/src/Password.jsx +11 -11
  298. package/packages/input/src/Search.jsx +11 -11
  299. package/packages/input/src/TextArea.jsx +11 -11
  300. package/packages/input/src/input-quick/components/quick-item.vue +284 -284
  301. package/packages/input/src/input-quick/components/quick-popover.vue +596 -596
  302. package/packages/input/src/input-quick/index.vue +137 -137
  303. package/packages/input-number/index.js +12 -12
  304. package/packages/input-number/src/InputNumber.jsx +11 -11
  305. package/packages/keep-cache/KeepCache.js +236 -236
  306. package/packages/keep-cache/index.css +2 -2
  307. package/packages/keep-cache/index.js +8 -8
  308. package/packages/layout/index.js +27 -27
  309. package/packages/layout/src/Content.jsx +11 -11
  310. package/packages/layout/src/Footer.jsx +11 -11
  311. package/packages/layout/src/Header.jsx +11 -11
  312. package/packages/layout/src/Layout.jsx +11 -11
  313. package/packages/layout/src/Sider.jsx +11 -11
  314. package/packages/list/index.js +21 -21
  315. package/packages/list/src/Item.jsx +11 -11
  316. package/packages/list/src/ItemMeta.jsx +11 -11
  317. package/packages/list/src/List.jsx +11 -11
  318. package/packages/locale-provider/index.js +12 -12
  319. package/packages/locale-provider/src/LocaleProvider.jsx +11 -11
  320. package/packages/map/index.js +9 -9
  321. package/packages/map/src/Map.vue +484 -484
  322. package/packages/map/src/popup-map.vue +53 -53
  323. package/packages/mentions/index.js +18 -18
  324. package/packages/mentions/src/Mentions.jsx +11 -11
  325. package/packages/mentions/src/Option.jsx +11 -11
  326. package/packages/menu/index.js +27 -27
  327. package/packages/menu/src/Divider.jsx +11 -11
  328. package/packages/menu/src/Item.jsx +11 -11
  329. package/packages/menu/src/ItemGroup.jsx +11 -11
  330. package/packages/menu/src/Menu.jsx +11 -11
  331. package/packages/menu/src/SubMenu.jsx +11 -11
  332. package/packages/message/index.js +8 -8
  333. package/packages/modal/index.js +10 -10
  334. package/packages/modal/src/Modal.js +7 -7
  335. package/packages/multi-chat/chat/addConference.vue +200 -200
  336. package/packages/multi-chat/chat/addMembers.vue +411 -411
  337. package/packages/multi-chat/chat/advancedFilter.vue +372 -372
  338. package/packages/multi-chat/chat/calling.vue +246 -246
  339. package/packages/multi-chat/chat/chatFooter.vue +1647 -1647
  340. package/packages/multi-chat/chat/chatHistory.vue +605 -605
  341. package/packages/multi-chat/chat/chatMain.vue +1490 -1490
  342. package/packages/multi-chat/chat/client/index.vue +149 -149
  343. package/packages/multi-chat/chat/delay.vue +177 -177
  344. package/packages/multi-chat/chat/evaluate.vue +343 -343
  345. package/packages/multi-chat/chat/messageRecord.vue +324 -324
  346. package/packages/multi-chat/chat/mixins/NoData.js +20 -20
  347. package/packages/multi-chat/chat/mixins/base.js +97 -97
  348. package/packages/multi-chat/chat/mixins/uniRTCAPI.js +80 -80
  349. package/packages/multi-chat/chat/mixins/viewerOptions.js +67 -67
  350. package/packages/multi-chat/chat/quickReply.vue +439 -439
  351. package/packages/multi-chat/chat/robot/index.vue +312 -312
  352. package/packages/multi-chat/chat/scrollList.vue +1259 -1259
  353. package/packages/multi-chat/chat/videoVoiceList.vue +348 -348
  354. package/packages/multi-chat/chat/voice.vue +431 -431
  355. package/packages/multi-chat/components/avatar.vue +113 -113
  356. package/packages/multi-chat/components/chat-tabs-header.vue +251 -251
  357. package/packages/multi-chat/components/classify-tabs.vue +185 -185
  358. package/packages/multi-chat/components/empty.vue +24 -24
  359. package/packages/multi-chat/components/modal-refuse-reason.vue +112 -112
  360. package/packages/multi-chat/components/modal-sip.vue +160 -160
  361. package/packages/multi-chat/components/modal-user-transfer.vue +98 -98
  362. package/packages/multi-chat/components/msg-describe.vue +138 -138
  363. package/packages/multi-chat/components/msg-picture.vue +68 -68
  364. package/packages/multi-chat/components/msg-prescription.vue +205 -205
  365. package/packages/multi-chat/components/read-record.vue +133 -133
  366. package/packages/multi-chat/components/read-status.vue +34 -34
  367. package/packages/multi-chat/components/user-status.vue +198 -198
  368. package/packages/multi-chat/components/vuecmf-dialog.vue +322 -322
  369. package/packages/multi-chat/index.js +7 -7
  370. package/packages/multi-chat/setting/authority/index.vue +156 -156
  371. package/packages/multi-chat/setting/authority/roleSetting.vue +204 -204
  372. package/packages/multi-chat/setting/baseInfo/index.vue +1343 -1343
  373. package/packages/multi-chat/setting/customerService/batchSelect.vue +403 -403
  374. package/packages/multi-chat/setting/customerService/index.vue +273 -273
  375. package/packages/multi-chat/setting/event/edit/condition.vue +128 -128
  376. package/packages/multi-chat/setting/event/edit/index.vue +437 -437
  377. package/packages/multi-chat/setting/event/edit/notice.vue +129 -129
  378. package/packages/multi-chat/setting/event/edit/strategy.vue +98 -98
  379. package/packages/multi-chat/setting/event/index.vue +249 -249
  380. package/packages/multi-chat/setting/index.vue +269 -269
  381. package/packages/multi-chat/setting/page.vue +14 -14
  382. package/packages/multi-chat/setting/sessionList/index.vue +412 -412
  383. package/packages/multi-chat/setting/sessionList/messageRecord.vue +372 -372
  384. package/packages/multi-chat/setting/userConfig/index.vue +124 -124
  385. package/packages/multi-chat/setting/worktime/index.vue +274 -274
  386. package/packages/multi-chat/store/actions.js +452 -452
  387. package/packages/multi-chat/store/getters.js +380 -380
  388. package/packages/multi-chat/store/helper.js +66 -66
  389. package/packages/multi-chat/store/index.js +50 -50
  390. package/packages/multi-chat/store/mutation.js +305 -305
  391. package/packages/multi-chat/store/state.js +120 -120
  392. package/packages/multi-chat/style/emoji.css +315 -315
  393. package/packages/multi-chat/style/message.mixin.less +38 -38
  394. package/packages/multi-chat/utils/chatSock.js +93 -93
  395. package/packages/multi-chat/utils/compressImage.js +115 -115
  396. package/packages/multi-chat/utils/emoji.json +68 -68
  397. package/packages/multi-chat/utils/index.js +259 -259
  398. package/packages/multi-chat/utils/observer-scroll.js +49 -49
  399. package/packages/multi-chat/utils/panelsetting.js +48 -48
  400. package/packages/multi-chat-client/index.js +7 -7
  401. package/packages/multi-chat-history/index.js +7 -7
  402. package/packages/multi-chat-record/index.js +7 -7
  403. package/packages/multi-chat-setting/index.js +7 -7
  404. package/packages/multi-chat-sip/index.js +6 -6
  405. package/packages/notification/index.js +8 -8
  406. package/packages/page-header/index.js +12 -12
  407. package/packages/page-header/src/PageHeader.jsx +11 -11
  408. package/packages/pagination/index.js +12 -12
  409. package/packages/pagination/src/Pagination.jsx +11 -11
  410. package/packages/popconfirm/index.js +12 -12
  411. package/packages/popconfirm/src/Popconfirm.jsx +11 -11
  412. package/packages/popover/index.js +12 -12
  413. package/packages/popover/src/Popover.jsx +11 -11
  414. package/packages/progress/index.js +12 -12
  415. package/packages/progress/src/Progress.jsx +11 -11
  416. package/packages/radio/index.js +33 -33
  417. package/packages/radio/src/Group.jsx +11 -11
  418. package/packages/radio/src/Radio.jsx +11 -11
  419. package/packages/radio/src/RadioButton.jsx +11 -11
  420. package/packages/radio/src/RadioImg/index.vue +124 -124
  421. package/packages/rate/index.js +12 -12
  422. package/packages/rate/src/Rate.jsx +11 -11
  423. package/packages/result/index.js +12 -12
  424. package/packages/result/src/Result.jsx +11 -11
  425. package/packages/row/index.js +12 -12
  426. package/packages/row/src/Row.jsx +11 -11
  427. package/packages/scale-container/index.js +8 -8
  428. package/packages/scale-container/src/ScaleContainer.vue +197 -197
  429. package/packages/scale-view/NoData.vue +81 -81
  430. package/packages/scale-view/answerParse.vue +133 -133
  431. package/packages/scale-view/customList.vue +801 -801
  432. package/packages/scale-view/data.js +80 -80
  433. package/packages/scale-view/evaluateCountdown.vue +155 -155
  434. package/packages/scale-view/evaluatePage.vue +202 -202
  435. package/packages/scale-view/formitem/data.js +3991 -3991
  436. package/packages/scale-view/formitem/index.js +7 -7
  437. package/packages/scale-view/formitem/r-address.vue +245 -245
  438. package/packages/scale-view/formitem/r-choice.vue +746 -746
  439. package/packages/scale-view/formitem/r-input.vue +93 -93
  440. package/packages/scale-view/formitem/r-prompt.vue +52 -52
  441. package/packages/scale-view/formitem/r-sign.vue +218 -218
  442. package/packages/scale-view/formitem/r-time.vue +285 -285
  443. package/packages/scale-view/formitem/r-upload-custom-list.vue +242 -242
  444. package/packages/scale-view/formitem/r-upload.vue +287 -287
  445. package/packages/scale-view/formitem/sign-com.vue +316 -316
  446. package/packages/scale-view/formitem/text-over-tooltip/TextOverTooltip.vue +98 -98
  447. package/packages/scale-view/index.js +17 -17
  448. package/packages/scale-view/mixin/NoData.js +38 -38
  449. package/packages/scale-view/mixin/addressVal.js +156 -156
  450. package/packages/scale-view/mixin/evaluate.js +146 -146
  451. package/packages/scale-view/mixin/index.js +337 -337
  452. package/packages/scale-view/mixin/judgeTypes.js +267 -267
  453. package/packages/scale-view/scaleView.vue +2017 -2017
  454. package/packages/select/index.js +27 -27
  455. package/packages/select/src/CustomSelect/index.vue +130 -130
  456. package/packages/select/src/OptGroup.jsx +11 -11
  457. package/packages/select/src/Option.jsx +11 -11
  458. package/packages/select/src/Select/Select.vue +231 -231
  459. package/packages/select/src/Select/index.js +12 -12
  460. package/packages/select/src/TableSelect/index.vue +514 -514
  461. package/packages/select-label/index.js +14 -14
  462. package/packages/select-label/label-classify.vue +129 -129
  463. package/packages/select-label/labelFormContent.vue +787 -787
  464. package/packages/select-label/select-label.vue +581 -581
  465. package/packages/select-person/index.js +10 -10
  466. package/packages/select-person/search-tree.vue +373 -373
  467. package/packages/select-person/select-person.vue +1703 -1696
  468. package/packages/shortcut-setter/index.js +12 -12
  469. package/packages/shortcut-setter/src/ShortcutSetter.vue +55 -55
  470. package/packages/shortcut-setter/src/ShortcutSetterItem.vue +85 -85
  471. package/packages/shortcut-setter/src/utils/index.js +63 -63
  472. package/packages/skeleton/index.js +12 -12
  473. package/packages/skeleton/src/Skeleton.jsx +11 -11
  474. package/packages/slider/index.js +12 -12
  475. package/packages/slider/src/Slider.jsx +11 -11
  476. package/packages/space/index.js +12 -12
  477. package/packages/space/src/Space.jsx +11 -11
  478. package/packages/spin/index.js +12 -12
  479. package/packages/spin/src/Spin.jsx +11 -11
  480. package/packages/statistic/index.js +18 -18
  481. package/packages/statistic/src/Countdown.jsx +11 -11
  482. package/packages/statistic/src/Statistic.jsx +11 -11
  483. package/packages/steps/index.js +18 -18
  484. package/packages/steps/src/Step.jsx +11 -11
  485. package/packages/steps/src/Steps.jsx +11 -11
  486. package/packages/switch/index.js +12 -12
  487. package/packages/switch/src/Switch.jsx +11 -11
  488. package/packages/table-filter/index.js +27 -27
  489. package/packages/table-filter/src/base-search-com/BaseSearch.vue +2630 -2630
  490. package/packages/table-filter/src/classification/Classification-com.vue +1760 -1760
  491. package/packages/table-filter/src/classification/search-class-name.vue +266 -266
  492. package/packages/table-filter/src/classification/search-professional-model.vue +680 -680
  493. package/packages/table-filter/src/components/TextOverTooltip.vue +107 -107
  494. package/packages/table-filter/src/components/age-com/index.vue +205 -205
  495. package/packages/table-filter/src/components/button-group/ButtonGroup.vue +162 -162
  496. package/packages/table-filter/src/components/button-icon/button-icon.js +33 -33
  497. package/packages/table-filter/src/components/button-icon/getBtnIcon.js +34 -34
  498. package/packages/table-filter/src/components/c-tree-select/tree-select.vue +336 -336
  499. package/packages/table-filter/src/components/drop-button/drop-button.vue +224 -224
  500. package/packages/table-filter/src/components/drop-button/head-btn-icon.js +33 -33
  501. package/packages/table-filter/src/components/drop-view/drop-view.vue +89 -89
  502. package/packages/table-filter/src/components/multi-select/multi-select.vue +236 -236
  503. package/packages/table-filter/src/components/out-quick-search/out-quick-search.vue +346 -346
  504. package/packages/table-filter/src/components/range-age/index.vue +172 -172
  505. package/packages/table-filter/src/components/render-widget/components/CheckboxGroup.vue +51 -51
  506. package/packages/table-filter/src/components/render-widget/components/Select.vue +50 -50
  507. package/packages/table-filter/src/components/render-widget/components/index.js +7 -7
  508. package/packages/table-filter/src/components/render-widget/enums.js +28 -28
  509. package/packages/table-filter/src/components/render-widget/index.vue +91 -91
  510. package/packages/table-filter/src/components/render-widget/widgetCfgMaps.js +139 -139
  511. package/packages/table-filter/src/components/search-condition/SearchCondition.vue +1907 -1907
  512. package/packages/table-filter/src/components/search-condition/fieldTypeList.js +169 -169
  513. package/packages/table-filter/src/components/search-filter/SearchFilter.vue +278 -278
  514. package/packages/table-filter/src/components/search-modal/set-classification.vue +336 -336
  515. package/packages/table-filter/src/components/table-modal/TableModal.vue +477 -477
  516. package/packages/table-filter/src/const/dataOptions.js +43 -43
  517. package/packages/table-filter/src/const/index.js +1 -1
  518. package/packages/table-filter/src/index.vue +584 -584
  519. package/packages/table-filter/src/mixins/mixins.js +714 -714
  520. package/packages/table-filter/src/mixins/renderWidget.js +88 -88
  521. package/packages/table-filter/src/mixins/tableSearchCon.js +128 -128
  522. package/packages/table-filter/src/mixins/wordBookutils.js +113 -113
  523. package/packages/table-filter/src/quick-search/QuickSearch.vue +2167 -2167
  524. package/packages/tabs/index.js +18 -18
  525. package/packages/tabs/src/TabPane.jsx +11 -11
  526. package/packages/tabs/src/Tabs.jsx +11 -11
  527. package/packages/tag/index.js +21 -21
  528. package/packages/tag/src/CheckableTag.jsx +11 -11
  529. package/packages/tag/src/Tag.jsx +11 -11
  530. package/packages/tag/src/TagGroup.vue +621 -621
  531. package/packages/time-picker/index.js +12 -12
  532. package/packages/time-picker/src/TimePicker.jsx +11 -11
  533. package/packages/timeline/index.js +14 -14
  534. package/packages/timeline/src/Item.jsx +11 -11
  535. package/packages/timeline/src/Timeline.jsx +11 -11
  536. package/packages/tooltip/index.js +12 -12
  537. package/packages/tooltip/src/Tooltip.jsx +11 -11
  538. package/packages/transfer/index.js +12 -12
  539. package/packages/transfer/src/Transfer.jsx +11 -11
  540. package/packages/tree/index.js +18 -18
  541. package/packages/tree/src/Tree.jsx +11 -11
  542. package/packages/tree/src/TreeNode.jsx +11 -11
  543. package/packages/tree-select/index.js +18 -18
  544. package/packages/tree-select/src/TreeNode.jsx +11 -11
  545. package/packages/tree-select/src/TreeSelect.jsx +11 -11
  546. package/packages/upload/chunk-upload/chunk-upload-new.vue +1001 -1001
  547. package/packages/upload/chunk-upload/vod-chunk-upload.vue +749 -749
  548. package/packages/upload/chunk-upload/vod-upload-modal.vue +100 -100
  549. package/packages/upload/index.js +12 -12
  550. package/packages/upload/src/Upload.jsx +11 -11
  551. package/packages/verification-code/SlideVerify.vue +306 -306
  552. package/packages/verification-code/index.js +17 -17
  553. package/packages/verification-code/verification-code.vue +147 -147
  554. package/src/component/player-vod/index.vue +57 -57
  555. package/src/component/player-vod/player.vue +192 -192
  556. package/src/component/player-vod/video-list.vue +262 -262
  557. package/src/component/player-vod/video-modal.vue +128 -128
  558. package/src/component/select-options/index.vue +430 -430
  559. package/src/component/select-pages/index.vue +95 -95
  560. package/src/component/svg/index.vue +59 -59
  561. package/src/core/create.js +6 -6
  562. package/src/core/event.js +23 -23
  563. package/src/core/table-methods.js +444 -444
  564. package/src/directive/flexibleResize.js +151 -151
  565. package/src/directive/preventReClick.js +12 -12
  566. package/src/directive/scroll.js +230 -230
  567. package/src/global/variable.js +2 -2
  568. package/src/style/normalize.css +424 -424
  569. package/src/style/style.less +49 -49
  570. package/src/utils/UniRTCv2.js +626 -626
  571. package/src/utils/chatFetch.js +61 -61
  572. package/src/utils/clickoutside.js +75 -75
  573. package/src/utils/crypto.js +25 -25
  574. package/src/utils/index.js +81 -81
  575. package/src/utils/kty-sdk.js +582 -582
  576. package/src/utils/kty.min-1.0.0.js +14378 -14378
  577. package/src/utils/sip-device.js +79 -79
  578. package/src/utils/time-domain.js +249 -249
  579. package/src/utils/trtc.js +1 -1
  580. package/src/utils/utils-map.js +485 -485
  581. package/src/utils/vexutils.js +836 -836
  582. package/.idea/cnhis-design-vue.iml +0 -12
  583. package/.idea/codeStyles/Project.xml +0 -57
  584. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  585. package/.idea/git_toolbox_prj.xml +0 -15
  586. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  587. package/.idea/modules.xml +0 -8
  588. package/.idea/vcs.xml +0 -6
@@ -1,836 +1,836 @@
1
- import XEUtils from 'xe-utils';
2
- import moment from 'moment';
3
- // com内容来源于老项目
4
- const com = {
5
- parseCondition: function(conList, data, fieldList) {
6
- if (conList && conList.length > 0 && data && data.table) {
7
- for (let i = 0; i < conList.length; i++) {
8
- let conObj = conList[i];
9
- if (conObj && conObj.field_key && conObj.con) {
10
- let value = data.table[conObj.field_key];
11
- let fieldObj = XEUtils.getFieldByKey(conObj.field_key, fieldList);
12
- // 缺少fieldObj 或 value 则条件不成立 2020.09.09。
13
- if (!fieldObj || (!value && String(value) !== '0')) return false;
14
- if (!XEUtils.getConnection(conObj, value, fieldObj)) {
15
- return false;
16
- }
17
- }
18
- }
19
- }
20
- return true;
21
- },
22
- getFieldByKey: function(fieldKey, fieldList) {
23
- if (fieldList && fieldList.length > 0) {
24
- for (let i = 0; i < fieldList.length; i++) {
25
- let fobj = fieldList[i];
26
- if (fobj.columnName == fieldKey) {
27
- return fobj;
28
- }
29
- }
30
- }
31
- },
32
- getConnection: function(cObj, fVal, field) {
33
- let con = cObj.con;
34
- let value = cObj.value;
35
- // 修改 #['NULL','NOT_NULL'] 的判断: value => fval 2020-09-15.
36
- if ('NULL' == con) {
37
- if (fVal) {
38
- return false;
39
- }
40
- } else if ('NOT_NULL' == con) {
41
- if (!fVal) {
42
- return false;
43
- }
44
- }
45
-
46
- if ('TEXT' == field.fieldType) {
47
- if ('CL' == con) {
48
- if (fVal.indexOf(value) == -1) {
49
- return false;
50
- }
51
- } else if ('NC' == con) {
52
- if (fVal.indexOf(value) != -1) {
53
- return false;
54
- }
55
- } else if ('EQ' == con || 'QUOTE' == con) {
56
- if (value.indexOf('|#|') != -1) {
57
- for (let kw in value.split('|#|')) {
58
- if (fVal.indexOf(kw) == -1) {
59
- return false;
60
- }
61
- }
62
- } else {
63
- if (fVal != value) {
64
- return false;
65
- }
66
- }
67
- } else if ('NEQ' == con) {
68
- if (fVal == value) {
69
- return false;
70
- }
71
- }
72
- } else {
73
- if ('NUMBER' == field.fieldType) {
74
- if (!XEUtils.isNumber(fVal)) {
75
- return false;
76
- }
77
- if ('EQ' == con || 'QUOTE' == con) {
78
- if (XEUtils.isNumber(value)) {
79
- if (fVal * 1 != value * 1) {
80
- return false;
81
- }
82
- } else {
83
- if (!XEUtils.getBetween(value, 'number', fVal)) {
84
- return false;
85
- }
86
- }
87
- } else if ('NEQ' == con) {
88
- if (XEUtils.isNumber(value)) {
89
- if (fVal * 1 == value * 1) {
90
- return false;
91
- }
92
- }
93
- } else if ('BIG' == con) {
94
- if (XEUtils.isNumber(value)) {
95
- if (fVal * 1 <= value * 1) {
96
- return false;
97
- }
98
- }
99
- } else if ('LESS' == con) {
100
- if (XEUtils.isNumber(value)) {
101
- if (fVal * 1 >= value * 1) {
102
- return false;
103
- }
104
- }
105
- }
106
- } else {
107
- if (
108
- 'TODAY' == con ||
109
- 'TOMORROW' == con ||
110
- 'YESTERDAY' == con ||
111
- 'THIS_WEEK' == con ||
112
- 'NEXT_WEEK' == con ||
113
- 'UP_WEEK' == con ||
114
- 'THIS_MONTH' == con ||
115
- 'NEXT_MONTH' == con ||
116
- 'UP_MONTH' == con ||
117
- 'THIS_SEASON' == con ||
118
- 'NEXT_SEASON' == con ||
119
- 'UP_SEASON' == con ||
120
- 'THIS_YEAR' == con ||
121
- 'NEXT_YEAR' == con ||
122
- 'UP_YEAR' == con
123
- ) {
124
- if (XEUtils.isDate(fVal)) {
125
- let curDate = new Date();
126
- let startDate;
127
- let endDate;
128
- let oneDayTime = 24 * 60 * 60 * 1000;
129
- let fDate = XEUtils.convertDate(fVal);
130
- let curDateStr = XEUtils.toDateString(curDate, 'yyyy-MM-dd');
131
- if ('TODAY' == con) {
132
- startDate = XEUtils.convertDate(curDateStr + ' 00:00:00');
133
- endDate = XEUtils.convertDate(curDateStr + ' 23:59:59');
134
- } else if ('TOMORROW' == con) {
135
- let tomorrowDate = XEUtils.addDate(curDate, 1, 'D');
136
- let dateStr = tomorrowDate.format('yyyy-MM-dd');
137
- startDate = XEUtils.convertDate(dateStr + ' 00:00:00');
138
- endDate = XEUtils.convertDate(dateStr + ' 23:59:59');
139
- } else if ('YESTERDAY' == con) {
140
- let tomorrowDate = XEUtils.addDate(curDate, -1, 'D');
141
- let dateStr = tomorrowDate.format('yyyy-MM-dd');
142
- startDate = XEUtils.convertDate(dateStr + ' 00:00:00');
143
- endDate = XEUtils.convertDate(dateStr + ' 23:59:59');
144
- } else if ('THIS_WEEK' == con) {
145
- let day = curDate.getDay() || 7;
146
- let mondayTime = curDate.getTime() - (day - 1) * oneDayTime;
147
- let mundayTime = curDate.getTime() + (7 - day) * oneDayTime;
148
- startDate = new Date(mondayTime);
149
- endDate = new Date(mundayTime);
150
- } else if ('NEXT_WEEK' == con) {
151
- let sevenDays = XEUtils.addDate(curDate, 1, 'W');
152
- let day = sevenDays.getDay() || 7;
153
- let mondayTime = sevenDays.getTime() - (day - 1) * oneDayTime;
154
- let mundayTime = sevenDays.getTime() + (7 - day) * oneDayTime;
155
- startDate = new Date(mondayTime);
156
- endDate = new Date(mundayTime);
157
- } else if ('UP_WEEK' == con) {
158
- let sevenDays = XEUtils.addDate(curDate, -1, 'W');
159
- let day = sevenDays.getDay() || 7;
160
- let mondayTime = sevenDays.getTime() - (day - 1) * oneDayTime;
161
- let mundayTime = sevenDays.getTime() + (7 - day) * oneDayTime;
162
- startDate = new Date(mondayTime);
163
- endDate = new Date(mundayTime);
164
- } else if ('THIS_MONTH' == con) {
165
- let date = new Date();
166
- date.setDate(1);
167
- startDate = date;
168
- endDate = XEUtils.addDate(date, 1, 'M');
169
- } else if ('NEXT_MONTH' == con) {
170
- let date = new Date();
171
- date.setDate(1);
172
- startDate = XEUtils.addDate(date, 1, 'M');
173
- endDate = XEUtils.addDate(date, 2, 'M');
174
- } else if ('UP_MONTH' == con) {
175
- let date = new Date();
176
- date.setDate(1);
177
- startDate = XEUtils.addDate(date, -1, 'M');
178
- endDate = date;
179
- } else if ('THIS_SEASON' == con) {
180
- startDate = XEUtils.getCurSeasonFirstDay();
181
- endDate = XEUtils.addDate(startDate, 3, 'M');
182
- } else if ('NEXT_SEASON' == con) {
183
- startDate = XEUtils.addDate(XEUtils.getCurSeasonFirstDay(), 3, 'M');
184
- endDate = XEUtils.addDate(startDate, 3, 'M');
185
- } else if ('UP_SEASON' == con) {
186
- endDate = XEUtils.getCurSeasonFirstDay();
187
- startDate = XEUtils.addDate(endDate, -3, 'M');
188
- } else if ('THIS_YEAR' == con) {
189
- let date = new Date();
190
- startDate = new Date(date.getFullYear() + '/01/01');
191
- endDate = XEUtils.addDate(startDate, 1, 'Y');
192
- } else if ('NEXT_YEAR' == con) {
193
- let date = new Date();
194
- startDate = XEUtils.addDate(new Date(date.getFullYear() + '/01/01'), 1, 'Y');
195
- endDate = XEUtils.addDate(startDate, 1, 'Y');
196
- } else if ('UP_YEAR' == con) {
197
- let date = new Date();
198
- endDate = new Date(date.getFullYear() + '/01/01');
199
- startDate = XEUtils.addDate(endDate, -1, 'Y');
200
- }
201
- if (startDate && endDate) {
202
- if (!(startDate.getTime() <= fDate.getTime() && fDate.getTime() < endDate.getTime())) {
203
- return false;
204
- }
205
- }
206
- } else {
207
- return false;
208
- }
209
- } else if ('L_' == con || 'N_' == con || 'IN_THE_PAST' == con || 'IN_THE_FUTURE' == con || 'IN_THE_PAST_DI' == con || 'IN_THE_FUTURE_DI' == con) {
210
- if (cObj['unit'] && XEUtils.isNumber(value)) {
211
- if (XEUtils.isDate(fVal)) {
212
- let fDate = XEUtils.convertDate(fVal);
213
- let curDate = new Date();
214
- let unit = cObj['unit'];
215
- if ('DAY' == unit || 'WEEK' == unit || 'MONTH' == unit || 'QUARTER' == unit || 'YEAR' == unit || 'HOUR' == unit) {
216
- let type = 'D';
217
- if ('WEEK' == unit) {
218
- type = 'W';
219
- } else if ('MONTH' == unit) {
220
- type = 'M';
221
- } else if ('QUARTER' == unit) {
222
- type = 'Q';
223
- } else if ('YEAR' == unit) {
224
- type = 'Y';
225
- } else if ('HOUR' == unit) {
226
- type = 'H';
227
- }
228
- let count = value * 1;
229
- if ('L_' == con) {
230
- let targetDate = XEUtils.addDate(new Date(), count * -1, type);
231
- if (fDate.getTime() < targetDate.getTime()) {
232
- return false;
233
- }
234
- } else if ('N_' == con) {
235
- let targetDate = XEUtils.addDate(new Date(), count, type);
236
- if (fDate.getTime() > targetDate.getTime()) {
237
- return false;
238
- }
239
- } else if ('IN_THE_PAST' == con) {
240
- let curTime = fDate.getTime();
241
- let endTime = curDate.getTime();
242
- let startTime = XEUtils.addDate(curDate, count * -1, type).getTime();
243
- if (curTime < startTime || curTime > endTime) {
244
- return false;
245
- }
246
- } else if ('IN_THE_FUTURE' == con) {
247
- let curTime = fDate.getTime();
248
- let startTime = curDate.getTime();
249
- let endTime = XEUtils.addDate(curDate, count, type).getTime();
250
- if (curTime < startTime || curTime > endTime) {
251
- return false;
252
- }
253
- } else if ('IN_THE_PAST_DI' == con || 'IN_THE_FUTURE_DI' == con) {
254
- let curTime = fDate.getTime();
255
- let useType = con == 'IN_THE_FUTURE_DI' ? 'add' : 'subtract';
256
- let { startTime, endTime } = XEUtils.addDiDate(curDate, count, unit, useType);
257
- if (curTime < startTime || curTime > endTime) {
258
- return false;
259
- }
260
- }
261
- }
262
- } else {
263
- return false;
264
- }
265
- }
266
- } else if ('IN' == con) {
267
- if (XEUtils.isDate(fVal)) {
268
- let fDate = XEUtils.convertDate(fVal);
269
- if (!value) {
270
- if (cObj['start_val'] && cObj['end_val']) {
271
- let start_val = cObj['start_val'];
272
- let end_val = cObj['end_val'];
273
- if (start_val && end_val && XEUtils.isDate(start_val) && XEUtils.isDate(end_val)) {
274
- let startDate = XEUtils.convertDate(start_val);
275
- let endDate = XEUtils.convertDate(end_val);
276
- if (!(startDate.getTime() <= fDate.getTime() && fDate.getTime() < endDate.getTime())) {
277
- return false;
278
- }
279
- } else {
280
- return false;
281
- }
282
- } else if (cObj['start_val']) {
283
- let start_val = cObj['start_val'];
284
- if (XEUtils.isDate(start_val)) {
285
- let startDate = XEUtils.convertDate(start_val);
286
- if (!(startDate.getTime() <= fDate.getTime())) {
287
- return false;
288
- }
289
- } else {
290
- return false;
291
- }
292
- } else if (cObj['end_val']) {
293
- let end_val = cObj['end_val'];
294
- if (XEUtils.isDate(end_val)) {
295
- let endDate = XEUtils.convertDate(end_val);
296
- if (!(fDate.getTime() < endDate.getTime())) {
297
- return false;
298
- }
299
- } else {
300
- return false;
301
- }
302
- }
303
- }
304
- }
305
- }
306
- }
307
- }
308
- if ('compare' == con) {
309
- if ('TEXT' == field.fieldType) {
310
- if (value.indexOf('|#|') != -1) {
311
- for (let kw in value.split('|#|')) {
312
- if (fVal.indexOf(kw) == -1) {
313
- return false;
314
- }
315
- }
316
- } else {
317
- if (cObj['mk'] && 'like' == cObj['mk']) {
318
- if (fVal.indexOf(value) == -1) {
319
- return false;
320
- }
321
- } else {
322
- if (fVal.indexOf(value) == -1) {
323
- return false;
324
- }
325
- }
326
- }
327
- } else if ('NUMBER' == field.fieldType()) {
328
- if (XEUtils.isNumber(value) && XEUtils.isNumber(fVal)) {
329
- if (fVal * 1 != value * 1) {
330
- return false;
331
- }
332
- } else {
333
- return false;
334
- }
335
- } else {
336
- if (fVal != value) {
337
- return false;
338
- }
339
- }
340
- }
341
- return true;
342
- },
343
- getBetween: function(value, type, comVal) {
344
- if (value && value.indexOf('~') != -1 && value.split('~').length == 2) {
345
- let start = value.split('~')[0];
346
- let end = value.split('~')[1];
347
- if ('number' == type) {
348
- if (XEUtils.isNumber(start) && XEUtils.isNumber(end)) {
349
- return start * 1 <= comVal * 1 && comVal * 1 < end * 1;
350
- }
351
- }
352
- }
353
- },
354
- convertDate: function(str) {
355
- if (str) {
356
- if (str.indexOf('-') != -1) {
357
- str = str = str.replace(/-/g, '/');
358
- try {
359
- let date = new Date(str);
360
- return date;
361
- } catch (e) {
362
- console.log(e);
363
- }
364
- } else {
365
- try {
366
- let date = new Date(str);
367
- return date;
368
- } catch (e) {
369
- console.log(e);
370
- }
371
- }
372
- }
373
- },
374
- addDate: function(tempDate, days, unit) {
375
- let date = tempDate;
376
- if (['D', 'H', 'W'].includes(unit)) {
377
- if (tempDate && XEUtils.isValidDate(tempDate)) {
378
- date = date.getTime();
379
- }
380
- }
381
- if (unit == 'D') {
382
- return new Date(date + days * 24 * 3600 * 1000);
383
- } else if (unit == 'W') {
384
- return new Date(date + days * 7 * 24 * 3600 * 1000);
385
- } else if (unit == 'M') {
386
- let newDate = new Date(date);
387
- newDate.setMonth(date.getMonth() + days);
388
- return newDate;
389
- } else if (unit == 'Q') {
390
- let newDate = new Date(date);
391
- newDate.setMonth(date.getMonth() + days * 3);
392
- return newDate;
393
- } else if (unit == 'Y') {
394
- let newDate = new Date(date);
395
- newDate.setMonth(date.getMonth() + days * 12);
396
- return newDate;
397
- } else if (unit == 'H') {
398
- return new Date(date + days * 3600 * 1000);
399
- }
400
- },
401
- addDiDate: function(curDate, count, unit = 'day', type) {
402
- let useTime,
403
- res = {};
404
- let getUnit = unit.toLowerCase();
405
- let useUnit = getUnit + 's';
406
- if (type == 'add') {
407
- useTime = moment(curDate).add(count, useUnit);
408
- } else {
409
- useTime = moment(curDate).subtract(count, useUnit);
410
- }
411
- res.startTime = useTime.startOf(getUnit).valueOf();
412
- res.endTime = useTime.endOf(getUnit).valueOf();
413
- return res;
414
- },
415
- // 获取当前季度第一天
416
- getCurSeasonFirstDay: function() {
417
- let curDate = new Date();
418
- let year = curDate.getFullYear();
419
- let month = curDate.getMonth() + 1;
420
- if (month >= 1 && month <= 3) {
421
- return new Date(year + '/01/01');
422
- } else if (4 <= month && month <= 6) {
423
- return new Date(year + '/04/01');
424
- } else if (7 <= month && month <= 9) {
425
- return new Date(year + '/07/01');
426
- } else {
427
- return new Date(year + '/10/01');
428
- }
429
- },
430
- isNumber: function(val) {
431
- try {
432
- let i = val * 1 + 100;
433
- if (i > 0 || i < 0 || i == 0) {
434
- return true;
435
- }
436
- } catch (e) {
437
- console.log(e);
438
- }
439
- return false;
440
- },
441
- isDate: function(data) {
442
- if (isNaN(data) && !isNaN(Date.parse(data))) {
443
- return true;
444
- }
445
- return false;
446
- }
447
- };
448
- XEUtils.mixin({
449
- ...com,
450
- isJSON(str) {
451
- if (typeof str == 'string') {
452
- try {
453
- let obj = JSON.parse(str);
454
- if (typeof obj == 'object' && obj) {
455
- return true;
456
- } else {
457
- return false;
458
- }
459
- } catch (e) {
460
- return false;
461
- }
462
- }
463
- return false;
464
- },
465
- /**
466
- * 获取按钮自定义颜色
467
- * @param {string} v
468
- */
469
- getBtnStyle(v) {
470
- // custom_bg, white_bg, none_bg
471
- if (v.showStyle == 'white_bg') {
472
- return {
473
- 'border-color': v.color,
474
- color: v.color
475
- };
476
- } else if (v.showStyle == 'none_bg') {
477
- return {
478
- color: v.color
479
- };
480
- } else if (v.showStyle == 'only_icon') {
481
- return {
482
- 'background-color': v.color,
483
- 'border-color': v.color
484
- // color: v.color
485
- };
486
- }
487
- return {
488
- 'background-color': v.color,
489
- 'border-color': v.color
490
- };
491
- },
492
-
493
- oldColorMap(str) {
494
- let oldMap = {
495
- blue: 'blue',
496
- sky: 'skyblue',
497
- azure: 'azure',
498
- palegreen: 'palegreen',
499
- yellow: 'yellow',
500
- darkorange: 'darkorange',
501
- magenta: 'magenta',
502
- purple: 'purple',
503
- maroon: 'maroon',
504
- orange: 'orange',
505
- green: 'green',
506
- red: 'red',
507
- grey: 'grey'
508
- };
509
- if (!str || !oldMap[str]) return '';
510
- return oldMap[str];
511
- },
512
-
513
- validateBirthday(val, title, type) {
514
- let res = true;
515
- if (!type) return false;
516
- let regObj = {
517
- DAYReg: /^([0-9]|[1-9][0-9]|[1-2][0-9][0-9]|[3][0-5][0-9]|(360|361|363|362|364|365))$/,
518
- MONTHReg: /^(?:[0-9]|1[0-2])$/,
519
- YEARReg: /^(?:[1-9]?\d|100)$/
520
- };
521
- let testReg = `${type}Reg`;
522
- if (!regObj[testReg].test(+val)) {
523
- this.$message.warning(`${title}${this.$t('1.9.40')}`, 2);
524
- res = false;
525
- }
526
- return res;
527
- },
528
-
529
- handleImageSize(item, defaultHeight) {
530
- let res = {
531
- display: 'inline-block',
532
- height: defaultHeight
533
- };
534
- if (item.h) {
535
- res.height = item.h === 'adaptive' ? 'auto' : item.h + 'px';
536
- }
537
- if (item.w) {
538
- res.width = item.w === 'adaptive' ? 'auto' : item.w + 'px';
539
- }
540
- return res;
541
- },
542
-
543
- /**
544
- * 大数组复制
545
- * @param {*} arr 复制的数据
546
- * @param {*} size 每次操作的数据量
547
- * @returns {Array}
548
- */
549
- handleBigArrayCopy(arr, size = 1000) {
550
- if (!Array.isArray(arr)) return arr;
551
- let cSize = size || 1000;
552
- const list = XEUtils.chunk(arr, cSize);
553
-
554
- const copyFunc = (list = [], type = 'json') => {
555
- const obj = {
556
- json: v => JSON.parse(JSON.stringify(v)),
557
- clone: v => XEUtils.clone(v, true)
558
- };
559
- let copyList = [];
560
- list.forEach(v => {
561
- let rs = obj[type](v);
562
- copyList.push(rs);
563
- });
564
- return XEUtils.flatten(copyList);
565
- };
566
- let res = [];
567
- try {
568
- res = copyFunc(list, 'json');
569
- } catch (error) {
570
- // 防止数据大,使用JSON.stringify 超出字符串长度
571
- res = copyFunc(list, 'clone');
572
- }
573
- return res;
574
- },
575
-
576
- // color 获取 alpha
577
- getAlphafloat(a, alpha) {
578
- if (typeof a !== 'undefined') {
579
- return parseFloat((a / 256).toFixed(2));
580
- }
581
- if (typeof alpha !== 'undefined') {
582
- if (1 < alpha && alpha <= 100) {
583
- return parseFloat((alpha / 100).toFixed(2));
584
- }
585
- if (0 <= alpha && alpha <= 1) {
586
- return parseFloat(alpha.toFixed(2));
587
- }
588
- }
589
- return 1;
590
- },
591
-
592
- // hex 转 rgba
593
- hexToRGBA(hex, alpha) {
594
- const isValidHex = hex => /^#([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);
595
- const getChunksFromString = (st, chunkSize) => st.match(new RegExp(`.{${chunkSize}}`, 'g'));
596
-
597
- const convertHexUnitTo256 = hexStr => parseInt(hexStr.repeat(2 / hexStr.length), 16);
598
-
599
- if (!isValidHex(hex)) {
600
- console.log('Invalid HEX');
601
- return '';
602
- }
603
- const chunkSize = Math.floor((hex.length - 1) / 3);
604
- const hexArr = getChunksFromString(hex.slice(1), chunkSize);
605
- const [r, g, b, a] = hexArr.map(convertHexUnitTo256);
606
- return {
607
- r: r,
608
- g: g,
609
- b: b,
610
- a: XEUtils.getAlphafloat(a, alpha)
611
- };
612
- },
613
-
614
- /**
615
- *
616
- * 时间转换
617
- * @param {type} type 时间戳类型
618
- * @param {time} time 时间戳
619
- */
620
- formatTime(type, time) {
621
- let format = '';
622
- if (!time) return '';
623
- switch (type) {
624
- case 'DATE':
625
- format = 'yyyy-MM-dd';
626
- break;
627
- case 'DATETIME':
628
- format = 'yyyy-MM-dd HH:mm:ss';
629
- break;
630
- case 'TIME':
631
- format = 'HH:mm:ss';
632
- break;
633
- case 'MOUTH':
634
- format = 'MM-dd';
635
- break;
636
- case 'DATETIMESTR':
637
- format = 'yyyy年M月dd日 HH:mm';
638
- break;
639
- case 'MOUTHTIME':
640
- format = 'M月d日 HH:mm';
641
- break;
642
- case 'HM':
643
- format = ' HH:mm';
644
- break;
645
- default:
646
- break;
647
- }
648
- return XEUtils.toDateString(time, format);
649
- },
650
- formatDate(date, isShowYear = false) {
651
- const today = new Date();
652
- const curDate = date || today.getTime();
653
-
654
- const todayStr = XEUtils.formatTime('DATE', today.getTime());
655
- const todayTimeStamp = XEUtils.convertDate(todayStr + ' 00:00:00').getTime();
656
- // const yesterdayTimeStamp = todayTimeStamp - 24 * 60 * 60 * 1000;
657
- const thisYear = today.getFullYear();
658
- const curYear = new Date(+curDate).getFullYear();
659
- if (curDate > todayTimeStamp) {
660
- return XEUtils.formatTime('TIME', curDate);
661
- }
662
- // else if (curDate > yesterdayTimeStamp) {
663
- // return "昨天 " + XEUtils.formatTime("TIME", curDate);
664
- // }
665
- else {
666
- if (!isShowYear) return XEUtils.formatTime('DATETIME', curDate);
667
- if (thisYear !== curYear) {
668
- return XEUtils.formatTime('DATETIMESTR', curDate);
669
- }
670
- return XEUtils.formatTime('MOUTHTIME', curDate);
671
- }
672
- },
673
- imgs2imgArr(imgs) {
674
- if (!imgs) return [];
675
-
676
- return imgs
677
- .replace(/(,)(data|http)/g, (match, p1, p2) => {
678
- return `|${p2}`;
679
- })
680
- .split('|');
681
- },
682
- filterOption(input, option, extraValue) {
683
- try {
684
- let text = option.componentOptions.children[0].text;
685
- let lowText = text.toLowerCase();
686
- let lowInput = input.toLowerCase();
687
- let extraText = extraValue?.toLowerCase() || '';
688
- let flag = false;
689
- var reg = /^[a-zA-Z]+$/;
690
- if (typeof text === 'string' && reg.test(input) && ''._toPinYin) {
691
- flag = lowText._toPinYin().indexOf(lowInput) >= 0 || (extraText && extraText._toPinYin().indexOf(lowInput) >= 0);
692
- }
693
- return flag || lowText.indexOf(lowInput) >= 0 || (extraText && extraText.indexOf(lowInput) >= 0);
694
- } catch (error) {
695
- return false;
696
- }
697
- },
698
-
699
- /**
700
- * 转换含有###的值
701
- * @param {*} item
702
- * @param {*} k key
703
- * @returns
704
- */
705
- stringToValue(item, k = 'value') {
706
- if (XEUtils.isString(item)) {
707
- if (item && item.startsWith('###{')) {
708
- let temp = JSON.parse(item.replace('###', ''));
709
- item = temp[k];
710
- }
711
- }
712
- return item;
713
- },
714
-
715
- notEmpty(text) {
716
- return XEUtils.isBoolean(text) || String(text) === '0' || !!text;
717
- },
718
-
719
- anyNotEmpty(text) {
720
- if (Array.isArray(text)) return text.length > 0;
721
- if (XEUtils.isObject(text)) return Object.keys(text || {}).length > 0;
722
- return XEUtils.notEmpty(text);
723
- },
724
-
725
- /**
726
- * 变量转换
727
- * @param {string} str
728
- * @param {object} obj
729
- * @param {string | number} noval // 没有值,默认赋值
730
- */
731
- handleSysParams(str, obj = {}, noval = '') {
732
- let p = {
733
- ...obj
734
- };
735
- const that = this;
736
- // 解析变量
737
- const getValList = (plsList = [], obj = {}) => {
738
- var l = [];
739
- var o = obj;
740
- plsList.forEach(v => {
741
- let c = v;
742
- // xx.xx
743
- if (v.includes('.')) {
744
- try {
745
- // 使用 eval 解析 'result.map.map.filed'
746
- eval(`c=o.${v}`);
747
- } catch (error) {
748
- c = '';
749
- }
750
- }
751
- if (XEUtils.notEmpty(c)) {
752
- l.push(c);
753
- }
754
- });
755
- return l;
756
- };
757
- const getVal = (t, r, k) => {
758
- return t.replace(r, function() {
759
- var pKey = arguments[1];
760
- // 切割
761
- var pls = pKey.split('!');
762
- // 取值
763
- var l = getValList(pls, p);
764
- var f = l.find(v => XEUtils.notEmpty(v));
765
- var res = f;
766
- res = XEUtils.notEmpty(res) ? res : noval;
767
- return res;
768
- });
769
- };
770
- if (typeof str === 'string') {
771
- if (str.includes('form')) {
772
- str = getVal(str, /\${(.*?)\}/g, 'form');
773
- }
774
- if (str.includes('sys')) {
775
- str = getVal(str, /\${(.*?)\}/g, 'sys');
776
- }
777
- if (str.includes('db')) {
778
- str = getVal(str, /\${(.*?)\}/g, 'db');
779
- }
780
- if (str.includes('table')) {
781
- str = getVal(str, /\${(.*?)\}/g, 'table');
782
- }
783
- if (str.includes('result')) {
784
- str = getVal(str, /\${(.*?)\}/g, 'result');
785
- }
786
- }
787
- return str;
788
- },
789
- /**
790
- * 去掉字符串两边的空格
791
- * @param {string} str
792
- * @return {string}
793
- */
794
- handleClearStrBlank(str) {
795
- if (typeof str === 'string') {
796
- return str.replace(/^\s*|\s*$/g, '');
797
- }
798
- return str;
799
- },
800
- // 数组对象去重
801
- uniqArrObj(arr, name) {
802
- let obj = {};
803
- return arr.reduce((cur, next) => {
804
- obj[next[name]] ? '' : (obj[next[name]] = true && cur.push(next));
805
- return cur;
806
- }, []);
807
- }
808
- });
809
-
810
- export default XEUtils;
811
-
812
- export { moment };
813
-
814
- export function formatReleaseTime(type, time) {
815
- if (time < 0) {
816
- return '';
817
- }
818
- let format = '';
819
- switch (type) {
820
- case 'DATE':
821
- format = 'yyyy-MM-dd';
822
- break;
823
- case 'DATETIMENew':
824
- format = 'yyyy-MM-dd HH:mm';
825
- break;
826
- case 'DATETIME':
827
- format = 'yyyy-MM-dd HH:mm:ss';
828
- break;
829
- case 'TIME':
830
- format = 'HH:mm:ss';
831
- break;
832
- default:
833
- break;
834
- }
835
- return XEUtils.toDateString(time, format);
836
- }
1
+ import XEUtils from 'xe-utils';
2
+ import moment from 'moment';
3
+ // com内容来源于老项目
4
+ const com = {
5
+ parseCondition: function(conList, data, fieldList) {
6
+ if (conList && conList.length > 0 && data && data.table) {
7
+ for (let i = 0; i < conList.length; i++) {
8
+ let conObj = conList[i];
9
+ if (conObj && conObj.field_key && conObj.con) {
10
+ let value = data.table[conObj.field_key];
11
+ let fieldObj = XEUtils.getFieldByKey(conObj.field_key, fieldList);
12
+ // 缺少fieldObj 或 value 则条件不成立 2020.09.09。
13
+ if (!fieldObj || (!value && String(value) !== '0')) return false;
14
+ if (!XEUtils.getConnection(conObj, value, fieldObj)) {
15
+ return false;
16
+ }
17
+ }
18
+ }
19
+ }
20
+ return true;
21
+ },
22
+ getFieldByKey: function(fieldKey, fieldList) {
23
+ if (fieldList && fieldList.length > 0) {
24
+ for (let i = 0; i < fieldList.length; i++) {
25
+ let fobj = fieldList[i];
26
+ if (fobj.columnName == fieldKey) {
27
+ return fobj;
28
+ }
29
+ }
30
+ }
31
+ },
32
+ getConnection: function(cObj, fVal, field) {
33
+ let con = cObj.con;
34
+ let value = cObj.value;
35
+ // 修改 #['NULL','NOT_NULL'] 的判断: value => fval 2020-09-15.
36
+ if ('NULL' == con) {
37
+ if (fVal) {
38
+ return false;
39
+ }
40
+ } else if ('NOT_NULL' == con) {
41
+ if (!fVal) {
42
+ return false;
43
+ }
44
+ }
45
+
46
+ if ('TEXT' == field.fieldType) {
47
+ if ('CL' == con) {
48
+ if (fVal.indexOf(value) == -1) {
49
+ return false;
50
+ }
51
+ } else if ('NC' == con) {
52
+ if (fVal.indexOf(value) != -1) {
53
+ return false;
54
+ }
55
+ } else if ('EQ' == con || 'QUOTE' == con) {
56
+ if (value.indexOf('|#|') != -1) {
57
+ for (let kw in value.split('|#|')) {
58
+ if (fVal.indexOf(kw) == -1) {
59
+ return false;
60
+ }
61
+ }
62
+ } else {
63
+ if (fVal != value) {
64
+ return false;
65
+ }
66
+ }
67
+ } else if ('NEQ' == con) {
68
+ if (fVal == value) {
69
+ return false;
70
+ }
71
+ }
72
+ } else {
73
+ if ('NUMBER' == field.fieldType) {
74
+ if (!XEUtils.isNumber(fVal)) {
75
+ return false;
76
+ }
77
+ if ('EQ' == con || 'QUOTE' == con) {
78
+ if (XEUtils.isNumber(value)) {
79
+ if (fVal * 1 != value * 1) {
80
+ return false;
81
+ }
82
+ } else {
83
+ if (!XEUtils.getBetween(value, 'number', fVal)) {
84
+ return false;
85
+ }
86
+ }
87
+ } else if ('NEQ' == con) {
88
+ if (XEUtils.isNumber(value)) {
89
+ if (fVal * 1 == value * 1) {
90
+ return false;
91
+ }
92
+ }
93
+ } else if ('BIG' == con) {
94
+ if (XEUtils.isNumber(value)) {
95
+ if (fVal * 1 <= value * 1) {
96
+ return false;
97
+ }
98
+ }
99
+ } else if ('LESS' == con) {
100
+ if (XEUtils.isNumber(value)) {
101
+ if (fVal * 1 >= value * 1) {
102
+ return false;
103
+ }
104
+ }
105
+ }
106
+ } else {
107
+ if (
108
+ 'TODAY' == con ||
109
+ 'TOMORROW' == con ||
110
+ 'YESTERDAY' == con ||
111
+ 'THIS_WEEK' == con ||
112
+ 'NEXT_WEEK' == con ||
113
+ 'UP_WEEK' == con ||
114
+ 'THIS_MONTH' == con ||
115
+ 'NEXT_MONTH' == con ||
116
+ 'UP_MONTH' == con ||
117
+ 'THIS_SEASON' == con ||
118
+ 'NEXT_SEASON' == con ||
119
+ 'UP_SEASON' == con ||
120
+ 'THIS_YEAR' == con ||
121
+ 'NEXT_YEAR' == con ||
122
+ 'UP_YEAR' == con
123
+ ) {
124
+ if (XEUtils.isDate(fVal)) {
125
+ let curDate = new Date();
126
+ let startDate;
127
+ let endDate;
128
+ let oneDayTime = 24 * 60 * 60 * 1000;
129
+ let fDate = XEUtils.convertDate(fVal);
130
+ let curDateStr = XEUtils.toDateString(curDate, 'yyyy-MM-dd');
131
+ if ('TODAY' == con) {
132
+ startDate = XEUtils.convertDate(curDateStr + ' 00:00:00');
133
+ endDate = XEUtils.convertDate(curDateStr + ' 23:59:59');
134
+ } else if ('TOMORROW' == con) {
135
+ let tomorrowDate = XEUtils.addDate(curDate, 1, 'D');
136
+ let dateStr = tomorrowDate.format('yyyy-MM-dd');
137
+ startDate = XEUtils.convertDate(dateStr + ' 00:00:00');
138
+ endDate = XEUtils.convertDate(dateStr + ' 23:59:59');
139
+ } else if ('YESTERDAY' == con) {
140
+ let tomorrowDate = XEUtils.addDate(curDate, -1, 'D');
141
+ let dateStr = tomorrowDate.format('yyyy-MM-dd');
142
+ startDate = XEUtils.convertDate(dateStr + ' 00:00:00');
143
+ endDate = XEUtils.convertDate(dateStr + ' 23:59:59');
144
+ } else if ('THIS_WEEK' == con) {
145
+ let day = curDate.getDay() || 7;
146
+ let mondayTime = curDate.getTime() - (day - 1) * oneDayTime;
147
+ let mundayTime = curDate.getTime() + (7 - day) * oneDayTime;
148
+ startDate = new Date(mondayTime);
149
+ endDate = new Date(mundayTime);
150
+ } else if ('NEXT_WEEK' == con) {
151
+ let sevenDays = XEUtils.addDate(curDate, 1, 'W');
152
+ let day = sevenDays.getDay() || 7;
153
+ let mondayTime = sevenDays.getTime() - (day - 1) * oneDayTime;
154
+ let mundayTime = sevenDays.getTime() + (7 - day) * oneDayTime;
155
+ startDate = new Date(mondayTime);
156
+ endDate = new Date(mundayTime);
157
+ } else if ('UP_WEEK' == con) {
158
+ let sevenDays = XEUtils.addDate(curDate, -1, 'W');
159
+ let day = sevenDays.getDay() || 7;
160
+ let mondayTime = sevenDays.getTime() - (day - 1) * oneDayTime;
161
+ let mundayTime = sevenDays.getTime() + (7 - day) * oneDayTime;
162
+ startDate = new Date(mondayTime);
163
+ endDate = new Date(mundayTime);
164
+ } else if ('THIS_MONTH' == con) {
165
+ let date = new Date();
166
+ date.setDate(1);
167
+ startDate = date;
168
+ endDate = XEUtils.addDate(date, 1, 'M');
169
+ } else if ('NEXT_MONTH' == con) {
170
+ let date = new Date();
171
+ date.setDate(1);
172
+ startDate = XEUtils.addDate(date, 1, 'M');
173
+ endDate = XEUtils.addDate(date, 2, 'M');
174
+ } else if ('UP_MONTH' == con) {
175
+ let date = new Date();
176
+ date.setDate(1);
177
+ startDate = XEUtils.addDate(date, -1, 'M');
178
+ endDate = date;
179
+ } else if ('THIS_SEASON' == con) {
180
+ startDate = XEUtils.getCurSeasonFirstDay();
181
+ endDate = XEUtils.addDate(startDate, 3, 'M');
182
+ } else if ('NEXT_SEASON' == con) {
183
+ startDate = XEUtils.addDate(XEUtils.getCurSeasonFirstDay(), 3, 'M');
184
+ endDate = XEUtils.addDate(startDate, 3, 'M');
185
+ } else if ('UP_SEASON' == con) {
186
+ endDate = XEUtils.getCurSeasonFirstDay();
187
+ startDate = XEUtils.addDate(endDate, -3, 'M');
188
+ } else if ('THIS_YEAR' == con) {
189
+ let date = new Date();
190
+ startDate = new Date(date.getFullYear() + '/01/01');
191
+ endDate = XEUtils.addDate(startDate, 1, 'Y');
192
+ } else if ('NEXT_YEAR' == con) {
193
+ let date = new Date();
194
+ startDate = XEUtils.addDate(new Date(date.getFullYear() + '/01/01'), 1, 'Y');
195
+ endDate = XEUtils.addDate(startDate, 1, 'Y');
196
+ } else if ('UP_YEAR' == con) {
197
+ let date = new Date();
198
+ endDate = new Date(date.getFullYear() + '/01/01');
199
+ startDate = XEUtils.addDate(endDate, -1, 'Y');
200
+ }
201
+ if (startDate && endDate) {
202
+ if (!(startDate.getTime() <= fDate.getTime() && fDate.getTime() < endDate.getTime())) {
203
+ return false;
204
+ }
205
+ }
206
+ } else {
207
+ return false;
208
+ }
209
+ } else if ('L_' == con || 'N_' == con || 'IN_THE_PAST' == con || 'IN_THE_FUTURE' == con || 'IN_THE_PAST_DI' == con || 'IN_THE_FUTURE_DI' == con) {
210
+ if (cObj['unit'] && XEUtils.isNumber(value)) {
211
+ if (XEUtils.isDate(fVal)) {
212
+ let fDate = XEUtils.convertDate(fVal);
213
+ let curDate = new Date();
214
+ let unit = cObj['unit'];
215
+ if ('DAY' == unit || 'WEEK' == unit || 'MONTH' == unit || 'QUARTER' == unit || 'YEAR' == unit || 'HOUR' == unit) {
216
+ let type = 'D';
217
+ if ('WEEK' == unit) {
218
+ type = 'W';
219
+ } else if ('MONTH' == unit) {
220
+ type = 'M';
221
+ } else if ('QUARTER' == unit) {
222
+ type = 'Q';
223
+ } else if ('YEAR' == unit) {
224
+ type = 'Y';
225
+ } else if ('HOUR' == unit) {
226
+ type = 'H';
227
+ }
228
+ let count = value * 1;
229
+ if ('L_' == con) {
230
+ let targetDate = XEUtils.addDate(new Date(), count * -1, type);
231
+ if (fDate.getTime() < targetDate.getTime()) {
232
+ return false;
233
+ }
234
+ } else if ('N_' == con) {
235
+ let targetDate = XEUtils.addDate(new Date(), count, type);
236
+ if (fDate.getTime() > targetDate.getTime()) {
237
+ return false;
238
+ }
239
+ } else if ('IN_THE_PAST' == con) {
240
+ let curTime = fDate.getTime();
241
+ let endTime = curDate.getTime();
242
+ let startTime = XEUtils.addDate(curDate, count * -1, type).getTime();
243
+ if (curTime < startTime || curTime > endTime) {
244
+ return false;
245
+ }
246
+ } else if ('IN_THE_FUTURE' == con) {
247
+ let curTime = fDate.getTime();
248
+ let startTime = curDate.getTime();
249
+ let endTime = XEUtils.addDate(curDate, count, type).getTime();
250
+ if (curTime < startTime || curTime > endTime) {
251
+ return false;
252
+ }
253
+ } else if ('IN_THE_PAST_DI' == con || 'IN_THE_FUTURE_DI' == con) {
254
+ let curTime = fDate.getTime();
255
+ let useType = con == 'IN_THE_FUTURE_DI' ? 'add' : 'subtract';
256
+ let { startTime, endTime } = XEUtils.addDiDate(curDate, count, unit, useType);
257
+ if (curTime < startTime || curTime > endTime) {
258
+ return false;
259
+ }
260
+ }
261
+ }
262
+ } else {
263
+ return false;
264
+ }
265
+ }
266
+ } else if ('IN' == con) {
267
+ if (XEUtils.isDate(fVal)) {
268
+ let fDate = XEUtils.convertDate(fVal);
269
+ if (!value) {
270
+ if (cObj['start_val'] && cObj['end_val']) {
271
+ let start_val = cObj['start_val'];
272
+ let end_val = cObj['end_val'];
273
+ if (start_val && end_val && XEUtils.isDate(start_val) && XEUtils.isDate(end_val)) {
274
+ let startDate = XEUtils.convertDate(start_val);
275
+ let endDate = XEUtils.convertDate(end_val);
276
+ if (!(startDate.getTime() <= fDate.getTime() && fDate.getTime() < endDate.getTime())) {
277
+ return false;
278
+ }
279
+ } else {
280
+ return false;
281
+ }
282
+ } else if (cObj['start_val']) {
283
+ let start_val = cObj['start_val'];
284
+ if (XEUtils.isDate(start_val)) {
285
+ let startDate = XEUtils.convertDate(start_val);
286
+ if (!(startDate.getTime() <= fDate.getTime())) {
287
+ return false;
288
+ }
289
+ } else {
290
+ return false;
291
+ }
292
+ } else if (cObj['end_val']) {
293
+ let end_val = cObj['end_val'];
294
+ if (XEUtils.isDate(end_val)) {
295
+ let endDate = XEUtils.convertDate(end_val);
296
+ if (!(fDate.getTime() < endDate.getTime())) {
297
+ return false;
298
+ }
299
+ } else {
300
+ return false;
301
+ }
302
+ }
303
+ }
304
+ }
305
+ }
306
+ }
307
+ }
308
+ if ('compare' == con) {
309
+ if ('TEXT' == field.fieldType) {
310
+ if (value.indexOf('|#|') != -1) {
311
+ for (let kw in value.split('|#|')) {
312
+ if (fVal.indexOf(kw) == -1) {
313
+ return false;
314
+ }
315
+ }
316
+ } else {
317
+ if (cObj['mk'] && 'like' == cObj['mk']) {
318
+ if (fVal.indexOf(value) == -1) {
319
+ return false;
320
+ }
321
+ } else {
322
+ if (fVal.indexOf(value) == -1) {
323
+ return false;
324
+ }
325
+ }
326
+ }
327
+ } else if ('NUMBER' == field.fieldType()) {
328
+ if (XEUtils.isNumber(value) && XEUtils.isNumber(fVal)) {
329
+ if (fVal * 1 != value * 1) {
330
+ return false;
331
+ }
332
+ } else {
333
+ return false;
334
+ }
335
+ } else {
336
+ if (fVal != value) {
337
+ return false;
338
+ }
339
+ }
340
+ }
341
+ return true;
342
+ },
343
+ getBetween: function(value, type, comVal) {
344
+ if (value && value.indexOf('~') != -1 && value.split('~').length == 2) {
345
+ let start = value.split('~')[0];
346
+ let end = value.split('~')[1];
347
+ if ('number' == type) {
348
+ if (XEUtils.isNumber(start) && XEUtils.isNumber(end)) {
349
+ return start * 1 <= comVal * 1 && comVal * 1 < end * 1;
350
+ }
351
+ }
352
+ }
353
+ },
354
+ convertDate: function(str) {
355
+ if (str) {
356
+ if (str.indexOf('-') != -1) {
357
+ str = str = str.replace(/-/g, '/');
358
+ try {
359
+ let date = new Date(str);
360
+ return date;
361
+ } catch (e) {
362
+ console.log(e);
363
+ }
364
+ } else {
365
+ try {
366
+ let date = new Date(str);
367
+ return date;
368
+ } catch (e) {
369
+ console.log(e);
370
+ }
371
+ }
372
+ }
373
+ },
374
+ addDate: function(tempDate, days, unit) {
375
+ let date = tempDate;
376
+ if (['D', 'H', 'W'].includes(unit)) {
377
+ if (tempDate && XEUtils.isValidDate(tempDate)) {
378
+ date = date.getTime();
379
+ }
380
+ }
381
+ if (unit == 'D') {
382
+ return new Date(date + days * 24 * 3600 * 1000);
383
+ } else if (unit == 'W') {
384
+ return new Date(date + days * 7 * 24 * 3600 * 1000);
385
+ } else if (unit == 'M') {
386
+ let newDate = new Date(date);
387
+ newDate.setMonth(date.getMonth() + days);
388
+ return newDate;
389
+ } else if (unit == 'Q') {
390
+ let newDate = new Date(date);
391
+ newDate.setMonth(date.getMonth() + days * 3);
392
+ return newDate;
393
+ } else if (unit == 'Y') {
394
+ let newDate = new Date(date);
395
+ newDate.setMonth(date.getMonth() + days * 12);
396
+ return newDate;
397
+ } else if (unit == 'H') {
398
+ return new Date(date + days * 3600 * 1000);
399
+ }
400
+ },
401
+ addDiDate: function(curDate, count, unit = 'day', type) {
402
+ let useTime,
403
+ res = {};
404
+ let getUnit = unit.toLowerCase();
405
+ let useUnit = getUnit + 's';
406
+ if (type == 'add') {
407
+ useTime = moment(curDate).add(count, useUnit);
408
+ } else {
409
+ useTime = moment(curDate).subtract(count, useUnit);
410
+ }
411
+ res.startTime = useTime.startOf(getUnit).valueOf();
412
+ res.endTime = useTime.endOf(getUnit).valueOf();
413
+ return res;
414
+ },
415
+ // 获取当前季度第一天
416
+ getCurSeasonFirstDay: function() {
417
+ let curDate = new Date();
418
+ let year = curDate.getFullYear();
419
+ let month = curDate.getMonth() + 1;
420
+ if (month >= 1 && month <= 3) {
421
+ return new Date(year + '/01/01');
422
+ } else if (4 <= month && month <= 6) {
423
+ return new Date(year + '/04/01');
424
+ } else if (7 <= month && month <= 9) {
425
+ return new Date(year + '/07/01');
426
+ } else {
427
+ return new Date(year + '/10/01');
428
+ }
429
+ },
430
+ isNumber: function(val) {
431
+ try {
432
+ let i = val * 1 + 100;
433
+ if (i > 0 || i < 0 || i == 0) {
434
+ return true;
435
+ }
436
+ } catch (e) {
437
+ console.log(e);
438
+ }
439
+ return false;
440
+ },
441
+ isDate: function(data) {
442
+ if (isNaN(data) && !isNaN(Date.parse(data))) {
443
+ return true;
444
+ }
445
+ return false;
446
+ }
447
+ };
448
+ XEUtils.mixin({
449
+ ...com,
450
+ isJSON(str) {
451
+ if (typeof str == 'string') {
452
+ try {
453
+ let obj = JSON.parse(str);
454
+ if (typeof obj == 'object' && obj) {
455
+ return true;
456
+ } else {
457
+ return false;
458
+ }
459
+ } catch (e) {
460
+ return false;
461
+ }
462
+ }
463
+ return false;
464
+ },
465
+ /**
466
+ * 获取按钮自定义颜色
467
+ * @param {string} v
468
+ */
469
+ getBtnStyle(v) {
470
+ // custom_bg, white_bg, none_bg
471
+ if (v.showStyle == 'white_bg') {
472
+ return {
473
+ 'border-color': v.color,
474
+ color: v.color
475
+ };
476
+ } else if (v.showStyle == 'none_bg') {
477
+ return {
478
+ color: v.color
479
+ };
480
+ } else if (v.showStyle == 'only_icon') {
481
+ return {
482
+ 'background-color': v.color,
483
+ 'border-color': v.color
484
+ // color: v.color
485
+ };
486
+ }
487
+ return {
488
+ 'background-color': v.color,
489
+ 'border-color': v.color
490
+ };
491
+ },
492
+
493
+ oldColorMap(str) {
494
+ let oldMap = {
495
+ blue: 'blue',
496
+ sky: 'skyblue',
497
+ azure: 'azure',
498
+ palegreen: 'palegreen',
499
+ yellow: 'yellow',
500
+ darkorange: 'darkorange',
501
+ magenta: 'magenta',
502
+ purple: 'purple',
503
+ maroon: 'maroon',
504
+ orange: 'orange',
505
+ green: 'green',
506
+ red: 'red',
507
+ grey: 'grey'
508
+ };
509
+ if (!str || !oldMap[str]) return '';
510
+ return oldMap[str];
511
+ },
512
+
513
+ validateBirthday(val, title, type) {
514
+ let res = true;
515
+ if (!type) return false;
516
+ let regObj = {
517
+ DAYReg: /^([0-9]|[1-9][0-9]|[1-2][0-9][0-9]|[3][0-5][0-9]|(360|361|363|362|364|365))$/,
518
+ MONTHReg: /^(?:[0-9]|1[0-2])$/,
519
+ YEARReg: /^(?:[1-9]?\d|100)$/
520
+ };
521
+ let testReg = `${type}Reg`;
522
+ if (!regObj[testReg].test(+val)) {
523
+ this.$message.warning(`${title}${this.$t('1.9.40')}`, 2);
524
+ res = false;
525
+ }
526
+ return res;
527
+ },
528
+
529
+ handleImageSize(item, defaultHeight) {
530
+ let res = {
531
+ display: 'inline-block',
532
+ height: defaultHeight
533
+ };
534
+ if (item.h) {
535
+ res.height = item.h === 'adaptive' ? 'auto' : item.h + 'px';
536
+ }
537
+ if (item.w) {
538
+ res.width = item.w === 'adaptive' ? 'auto' : item.w + 'px';
539
+ }
540
+ return res;
541
+ },
542
+
543
+ /**
544
+ * 大数组复制
545
+ * @param {*} arr 复制的数据
546
+ * @param {*} size 每次操作的数据量
547
+ * @returns {Array}
548
+ */
549
+ handleBigArrayCopy(arr, size = 1000) {
550
+ if (!Array.isArray(arr)) return arr;
551
+ let cSize = size || 1000;
552
+ const list = XEUtils.chunk(arr, cSize);
553
+
554
+ const copyFunc = (list = [], type = 'json') => {
555
+ const obj = {
556
+ json: v => JSON.parse(JSON.stringify(v)),
557
+ clone: v => XEUtils.clone(v, true)
558
+ };
559
+ let copyList = [];
560
+ list.forEach(v => {
561
+ let rs = obj[type](v);
562
+ copyList.push(rs);
563
+ });
564
+ return XEUtils.flatten(copyList);
565
+ };
566
+ let res = [];
567
+ try {
568
+ res = copyFunc(list, 'json');
569
+ } catch (error) {
570
+ // 防止数据大,使用JSON.stringify 超出字符串长度
571
+ res = copyFunc(list, 'clone');
572
+ }
573
+ return res;
574
+ },
575
+
576
+ // color 获取 alpha
577
+ getAlphafloat(a, alpha) {
578
+ if (typeof a !== 'undefined') {
579
+ return parseFloat((a / 256).toFixed(2));
580
+ }
581
+ if (typeof alpha !== 'undefined') {
582
+ if (1 < alpha && alpha <= 100) {
583
+ return parseFloat((alpha / 100).toFixed(2));
584
+ }
585
+ if (0 <= alpha && alpha <= 1) {
586
+ return parseFloat(alpha.toFixed(2));
587
+ }
588
+ }
589
+ return 1;
590
+ },
591
+
592
+ // hex 转 rgba
593
+ hexToRGBA(hex, alpha) {
594
+ const isValidHex = hex => /^#([A-Fa-f0-9]{3,4}){1,2}$/.test(hex);
595
+ const getChunksFromString = (st, chunkSize) => st.match(new RegExp(`.{${chunkSize}}`, 'g'));
596
+
597
+ const convertHexUnitTo256 = hexStr => parseInt(hexStr.repeat(2 / hexStr.length), 16);
598
+
599
+ if (!isValidHex(hex)) {
600
+ console.log('Invalid HEX');
601
+ return '';
602
+ }
603
+ const chunkSize = Math.floor((hex.length - 1) / 3);
604
+ const hexArr = getChunksFromString(hex.slice(1), chunkSize);
605
+ const [r, g, b, a] = hexArr.map(convertHexUnitTo256);
606
+ return {
607
+ r: r,
608
+ g: g,
609
+ b: b,
610
+ a: XEUtils.getAlphafloat(a, alpha)
611
+ };
612
+ },
613
+
614
+ /**
615
+ *
616
+ * 时间转换
617
+ * @param {type} type 时间戳类型
618
+ * @param {time} time 时间戳
619
+ */
620
+ formatTime(type, time) {
621
+ let format = '';
622
+ if (!time) return '';
623
+ switch (type) {
624
+ case 'DATE':
625
+ format = 'yyyy-MM-dd';
626
+ break;
627
+ case 'DATETIME':
628
+ format = 'yyyy-MM-dd HH:mm:ss';
629
+ break;
630
+ case 'TIME':
631
+ format = 'HH:mm:ss';
632
+ break;
633
+ case 'MOUTH':
634
+ format = 'MM-dd';
635
+ break;
636
+ case 'DATETIMESTR':
637
+ format = 'yyyy年M月dd日 HH:mm';
638
+ break;
639
+ case 'MOUTHTIME':
640
+ format = 'M月d日 HH:mm';
641
+ break;
642
+ case 'HM':
643
+ format = ' HH:mm';
644
+ break;
645
+ default:
646
+ break;
647
+ }
648
+ return XEUtils.toDateString(time, format);
649
+ },
650
+ formatDate(date, isShowYear = false) {
651
+ const today = new Date();
652
+ const curDate = date || today.getTime();
653
+
654
+ const todayStr = XEUtils.formatTime('DATE', today.getTime());
655
+ const todayTimeStamp = XEUtils.convertDate(todayStr + ' 00:00:00').getTime();
656
+ // const yesterdayTimeStamp = todayTimeStamp - 24 * 60 * 60 * 1000;
657
+ const thisYear = today.getFullYear();
658
+ const curYear = new Date(+curDate).getFullYear();
659
+ if (curDate > todayTimeStamp) {
660
+ return XEUtils.formatTime('TIME', curDate);
661
+ }
662
+ // else if (curDate > yesterdayTimeStamp) {
663
+ // return "昨天 " + XEUtils.formatTime("TIME", curDate);
664
+ // }
665
+ else {
666
+ if (!isShowYear) return XEUtils.formatTime('DATETIME', curDate);
667
+ if (thisYear !== curYear) {
668
+ return XEUtils.formatTime('DATETIMESTR', curDate);
669
+ }
670
+ return XEUtils.formatTime('MOUTHTIME', curDate);
671
+ }
672
+ },
673
+ imgs2imgArr(imgs) {
674
+ if (!imgs) return [];
675
+
676
+ return imgs
677
+ .replace(/(,)(data|http)/g, (match, p1, p2) => {
678
+ return `|${p2}`;
679
+ })
680
+ .split('|');
681
+ },
682
+ filterOption(input, option, extraValue) {
683
+ try {
684
+ let text = option.componentOptions.children[0].text;
685
+ let lowText = text.toLowerCase();
686
+ let lowInput = input.toLowerCase();
687
+ let extraText = extraValue?.toLowerCase() || '';
688
+ let flag = false;
689
+ var reg = /^[a-zA-Z]+$/;
690
+ if (typeof text === 'string' && reg.test(input) && ''._toPinYin) {
691
+ flag = lowText._toPinYin().indexOf(lowInput) >= 0 || (extraText && extraText._toPinYin().indexOf(lowInput) >= 0);
692
+ }
693
+ return flag || lowText.indexOf(lowInput) >= 0 || (extraText && extraText.indexOf(lowInput) >= 0);
694
+ } catch (error) {
695
+ return false;
696
+ }
697
+ },
698
+
699
+ /**
700
+ * 转换含有###的值
701
+ * @param {*} item
702
+ * @param {*} k key
703
+ * @returns
704
+ */
705
+ stringToValue(item, k = 'value') {
706
+ if (XEUtils.isString(item)) {
707
+ if (item && item.startsWith('###{')) {
708
+ let temp = JSON.parse(item.replace('###', ''));
709
+ item = temp[k];
710
+ }
711
+ }
712
+ return item;
713
+ },
714
+
715
+ notEmpty(text) {
716
+ return XEUtils.isBoolean(text) || String(text) === '0' || !!text;
717
+ },
718
+
719
+ anyNotEmpty(text) {
720
+ if (Array.isArray(text)) return text.length > 0;
721
+ if (XEUtils.isObject(text)) return Object.keys(text || {}).length > 0;
722
+ return XEUtils.notEmpty(text);
723
+ },
724
+
725
+ /**
726
+ * 变量转换
727
+ * @param {string} str
728
+ * @param {object} obj
729
+ * @param {string | number} noval // 没有值,默认赋值
730
+ */
731
+ handleSysParams(str, obj = {}, noval = '') {
732
+ let p = {
733
+ ...obj
734
+ };
735
+ const that = this;
736
+ // 解析变量
737
+ const getValList = (plsList = [], obj = {}) => {
738
+ var l = [];
739
+ var o = obj;
740
+ plsList.forEach(v => {
741
+ let c = v;
742
+ // xx.xx
743
+ if (v.includes('.')) {
744
+ try {
745
+ // 使用 eval 解析 'result.map.map.filed'
746
+ eval(`c=o.${v}`);
747
+ } catch (error) {
748
+ c = '';
749
+ }
750
+ }
751
+ if (XEUtils.notEmpty(c)) {
752
+ l.push(c);
753
+ }
754
+ });
755
+ return l;
756
+ };
757
+ const getVal = (t, r, k) => {
758
+ return t.replace(r, function() {
759
+ var pKey = arguments[1];
760
+ // 切割
761
+ var pls = pKey.split('!');
762
+ // 取值
763
+ var l = getValList(pls, p);
764
+ var f = l.find(v => XEUtils.notEmpty(v));
765
+ var res = f;
766
+ res = XEUtils.notEmpty(res) ? res : noval;
767
+ return res;
768
+ });
769
+ };
770
+ if (typeof str === 'string') {
771
+ if (str.includes('form')) {
772
+ str = getVal(str, /\${(.*?)\}/g, 'form');
773
+ }
774
+ if (str.includes('sys')) {
775
+ str = getVal(str, /\${(.*?)\}/g, 'sys');
776
+ }
777
+ if (str.includes('db')) {
778
+ str = getVal(str, /\${(.*?)\}/g, 'db');
779
+ }
780
+ if (str.includes('table')) {
781
+ str = getVal(str, /\${(.*?)\}/g, 'table');
782
+ }
783
+ if (str.includes('result')) {
784
+ str = getVal(str, /\${(.*?)\}/g, 'result');
785
+ }
786
+ }
787
+ return str;
788
+ },
789
+ /**
790
+ * 去掉字符串两边的空格
791
+ * @param {string} str
792
+ * @return {string}
793
+ */
794
+ handleClearStrBlank(str) {
795
+ if (typeof str === 'string') {
796
+ return str.replace(/^\s*|\s*$/g, '');
797
+ }
798
+ return str;
799
+ },
800
+ // 数组对象去重
801
+ uniqArrObj(arr, name) {
802
+ let obj = {};
803
+ return arr.reduce((cur, next) => {
804
+ obj[next[name]] ? '' : (obj[next[name]] = true && cur.push(next));
805
+ return cur;
806
+ }, []);
807
+ }
808
+ });
809
+
810
+ export default XEUtils;
811
+
812
+ export { moment };
813
+
814
+ export function formatReleaseTime(type, time) {
815
+ if (time < 0) {
816
+ return '';
817
+ }
818
+ let format = '';
819
+ switch (type) {
820
+ case 'DATE':
821
+ format = 'yyyy-MM-dd';
822
+ break;
823
+ case 'DATETIMENew':
824
+ format = 'yyyy-MM-dd HH:mm';
825
+ break;
826
+ case 'DATETIME':
827
+ format = 'yyyy-MM-dd HH:mm:ss';
828
+ break;
829
+ case 'TIME':
830
+ format = 'HH:mm:ss';
831
+ break;
832
+ default:
833
+ break;
834
+ }
835
+ return XEUtils.toDateString(time, format);
836
+ }