cnhis-design-vue 0.1.83-beta → 0.1.87-beta

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 (119) hide show
  1. package/es/affix/index.js +8 -8
  2. package/es/age/index.js +10 -10
  3. package/es/alert/index.js +8 -8
  4. package/es/anchor/index.js +8 -8
  5. package/es/auto-complete/index.js +8 -8
  6. package/es/avatar/index.js +8 -8
  7. package/es/back-top/index.js +8 -8
  8. package/es/badge/index.js +8 -8
  9. package/es/base/index.js +8 -8
  10. package/es/big-table/index.js +127 -110
  11. package/es/big-table/style.css +1 -1
  12. package/es/breadcrumb/index.js +8 -8
  13. package/es/button/index.js +20 -20
  14. package/es/calendar/index.js +8 -8
  15. package/es/captcha/index.js +3 -3
  16. package/es/card/index.js +8 -8
  17. package/es/carousel/index.js +8 -8
  18. package/es/cascader/index.js +8 -8
  19. package/es/checkbox/index.js +9 -9
  20. package/es/col/index.js +8 -8
  21. package/es/collapse/index.js +8 -8
  22. package/es/color-picker/index.js +1 -1
  23. package/es/comment/index.js +8 -8
  24. package/es/config-provider/index.js +8 -8
  25. package/es/date-picker/index.js +8 -8
  26. package/es/descriptions/index.js +8 -8
  27. package/es/divider/index.js +8 -8
  28. package/es/drag-layout/index.js +3 -3
  29. package/es/drawer/index.js +8 -8
  30. package/es/dropdown/index.js +8 -8
  31. package/es/editor/index.js +1 -1
  32. package/es/empty/index.js +8 -8
  33. package/es/fabric-chart/index.js +9 -9
  34. package/es/form/index.js +8 -8
  35. package/es/form-model/index.js +8 -8
  36. package/es/index/index.js +893 -642
  37. package/es/index/style.css +1 -1
  38. package/es/input/index.js +9 -9
  39. package/es/input-number/index.js +8 -8
  40. package/es/layout/index.js +8 -8
  41. package/es/list/index.js +8 -8
  42. package/es/locale-provider/index.js +8 -8
  43. package/es/map/index.js +9 -9
  44. package/es/mentions/index.js +8 -8
  45. package/es/menu/index.js +8 -8
  46. package/es/message/index.js +8 -8
  47. package/es/multi-chat/index.js +465 -242
  48. package/es/multi-chat/style.css +1 -1
  49. package/es/multi-chat-client/index.js +419 -205
  50. package/es/multi-chat-client/style.css +1 -1
  51. package/es/multi-chat-history/index.js +4 -4
  52. package/es/multi-chat-record/index.js +16 -16
  53. package/es/multi-chat-setting/index.js +51 -44
  54. package/es/multi-chat-sip/index.js +1 -1
  55. package/es/notification/index.js +8 -8
  56. package/es/page-header/index.js +8 -8
  57. package/es/pagination/index.js +8 -8
  58. package/es/popconfirm/index.js +8 -8
  59. package/es/popover/index.js +8 -8
  60. package/es/progress/index.js +8 -8
  61. package/es/radio/index.js +9 -9
  62. package/es/rate/index.js +8 -8
  63. package/es/result/index.js +8 -8
  64. package/es/row/index.js +8 -8
  65. package/es/scale-view/index.js +24 -24
  66. package/es/select/index.js +11 -11
  67. package/es/select-label/index.js +10 -10
  68. package/es/select-person/index.js +2 -2
  69. package/es/skeleton/index.js +8 -8
  70. package/es/slider/index.js +8 -8
  71. package/es/space/index.js +8 -8
  72. package/es/spin/index.js +8 -8
  73. package/es/statistic/index.js +8 -8
  74. package/es/steps/index.js +8 -8
  75. package/es/switch/index.js +8 -8
  76. package/es/table-filter/index.js +170 -159
  77. package/es/table-filter/style.css +1 -1
  78. package/es/tabs/index.js +8 -8
  79. package/es/tag/index.js +9 -9
  80. package/es/time-picker/index.js +8 -8
  81. package/es/timeline/index.js +8 -8
  82. package/es/tooltip/index.js +8 -8
  83. package/es/transfer/index.js +8 -8
  84. package/es/tree/index.js +8 -8
  85. package/es/tree-select/index.js +8 -8
  86. package/es/upload/index.js +8 -8
  87. package/es/verification-code/index.js +2 -2
  88. package/lib/cui.common.js +1370 -1603
  89. package/lib/cui.umd.js +1370 -1603
  90. package/lib/cui.umd.min.js +54 -54
  91. package/lib/img/no-data2.3879f4a8.png +0 -0
  92. package/package.json +2 -2
  93. package/packages/big-table/src/BigTable.vue +29 -13
  94. package/packages/multi-chat/chat/chatHeader.vue +41 -33
  95. package/packages/multi-chat/chat/index.vue +93 -66
  96. package/packages/multi-chat/chat/scrollList.vue +4 -2
  97. package/packages/multi-chat/components/user-status.vue +204 -0
  98. package/packages/multi-chat/img/no-data2.png +0 -0
  99. package/packages/multi-chat/store/getters.js +3 -0
  100. package/packages/multi-chat/store/mutation.js +4 -1
  101. package/packages/multi-chat/store/state.js +2 -1
  102. package/packages/table-filter/src/base-search-com/BaseSearch.vue +28 -35
  103. package/packages/table-filter/src/components/table-modal/TableModal.vue +4 -4
  104. package/packages/table-filter/src/quick-search/QuickSearch.vue +9 -9
  105. package/es/img/audio.75c2c1ea.png +0 -0
  106. package/es/img/customer.a3b50156.png +0 -0
  107. package/es/img/customer_staff.426f87de.png +0 -0
  108. package/es/img/end-voice.cd63ae82.png +0 -0
  109. package/es/img/mute-audio.03ce245b.png +0 -0
  110. package/es/img/no-data.5ed2843c.png +0 -0
  111. package/es/img/no-data2.0ca9388b.png +0 -0
  112. package/es/img/notfound.3a1dabb7.png +0 -0
  113. package/es/img/receive.c4de18e9.png +0 -0
  114. package/es/img/to-session.8d3bf7b0.png +0 -0
  115. package/es/img/video-accept.2d7319b3.png +0 -0
  116. package/es/img/video_default_cover.bbbc9079.png +0 -0
  117. package/es/img/xb_big.7b2a9f5a.png +0 -0
  118. package/es/img/xb_small.dd9ba602.png +0 -0
  119. package/lib/img/no-data2.0ca9388b.png +0 -0
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
- "version": "0.1.83-beta",
3
+ "version": "0.1.87-beta",
4
4
  "description": "基于 Ant Desgin Vue 的UI库",
5
5
  "keyword": "cnhis-design-vue vue cnhis",
6
6
  "homepage": "http://dv.cnhis.com/",
@@ -93,4 +93,4 @@
93
93
  "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
94
94
  }
95
95
  }
96
- }
96
+ }
@@ -285,6 +285,9 @@ export default create({
285
285
  }
286
286
  return this.primaryKey || 'theUniqueKey';
287
287
  },
288
+ handlePrimaryKey() {
289
+ return this.isTree > 0 ? this.primaryKey || "theUniqueKey" : "theUniqueKey";
290
+ },
288
291
  handleName() {
289
292
  return function(item, key = 'name') {
290
293
  return item.alias || item[key];
@@ -845,7 +848,7 @@ export default create({
845
848
  key = temp.tooltip || temp.value; // temp.tooltip 日期的处理
846
849
  }
847
850
  }
848
- return [<a-switch checked={key == item.btnLinkSwitchDefVal} disabled={disabled} on-change={e => this.switchBtnOnChange(e, row, item)} />];
851
+ return [<a-switch checked={key == item.btnLinkSwitchDefVal} disabled={disabled} on-change={e => this.switchBtnOnChange(e, row, item, index)} />];
849
852
  },
850
853
  // 字段显示 jsx
851
854
  getField(row, item, index, isLink) {
@@ -1465,6 +1468,8 @@ export default create({
1465
1468
  };
1466
1469
  },
1467
1470
  setFilterStatus() {
1471
+ // 表头没有过滤字段 不需要设置
1472
+ if(!this.filterFields || !Object.keys(this.filterFields).length) return;
1468
1473
  let val = this.quickSearchConfig;
1469
1474
 
1470
1475
  if (!val || !val.length) {
@@ -1477,17 +1482,22 @@ export default create({
1477
1482
  // 修复 val长度和this.filterFields个数对不上 会少清空选中项
1478
1483
  for (let key in this.filterFields) {
1479
1484
  let item = this.filterFields[key];
1480
- this.$set(item, 'CONVERT', []);
1485
+ item && this.$set(item, 'CONVERT', []);
1481
1486
  }
1482
1487
 
1483
1488
  val.forEach(item => {
1484
- if (!this.filterFields[item.field_key]) {
1485
- this.$set(this.filterFields[item.field_key], 'CONVERT', []);
1486
- return false;
1487
- }
1489
+ let itemKey = item.field_key;
1490
+ // 参与搜索的字段必须在 filterFields中
1491
+ if (itemKey in this.filterFields) {
1488
1492
 
1489
- let value = item.value.map(item => JSON.stringify(item));
1490
- this.$set(this.filterFields[item.field_key], 'CONVERT', value);
1493
+ if (!this.filterFields[item.field_key]) {
1494
+ this.$set(this.filterFields[item.field_key], 'CONVERT', []);
1495
+ return false;
1496
+ }
1497
+
1498
+ let value = item.value.map(item => JSON.stringify(item));
1499
+ this.$set(this.filterFields[item.field_key], 'CONVERT', value);
1500
+ }
1491
1501
  });
1492
1502
  },
1493
1503
  handlerInitSearchItem(arr) {
@@ -2603,8 +2613,8 @@ export default create({
2603
2613
  if (!data) data = require('./assets/img/xb_big.png');
2604
2614
  this.$emit('handlePreView', data, i);
2605
2615
  },
2606
- switchBtnOnChange(e, r, i) {
2607
- this.$emit('switchBtnOnChange', e, r, i);
2616
+ switchBtnOnChange(e, r, i, index) {
2617
+ this.$emit('switchBtnOnChange', e, r, i, index);
2608
2618
  },
2609
2619
  hanldeCopyContent(e, value) {
2610
2620
  e.preventDefault();
@@ -2614,12 +2624,18 @@ export default create({
2614
2624
  // 链接按钮详情
2615
2625
  linkDetail(row, col, index, e) {
2616
2626
  if (this.isInlineOperating) return false;
2627
+ let vxeTable = this.$refs.xGrid;
2617
2628
  e.preventDefault();
2618
2629
  // e.stopPropagation();
2619
- this.$refs.xGrid.setCurrentRow(row);
2630
+ // 方晶晶验收2.5.12需求, 要求link字段第一次可选中checkbox, 第二次点击不取消选中
2631
+ let isCheckedByCheckboxRow = vxeTable.isCheckedByCheckboxRow(row);
2632
+ if (isCheckedByCheckboxRow) {
2633
+ e.stopPropagation();
2634
+ }
2635
+ vxeTable.setCurrentRow(row);
2620
2636
  this.$emit('setNestTableClick', this.isNestTable);
2621
2637
  this.$emit('setCurRowIndex', index);
2622
- this.$emit('linkDetail', row, col, row[this.handleRowId], null, false, index);
2638
+ this.$emit('linkDetail', row, col, row[this.handlePrimaryKey], null, false, index);
2623
2639
  },
2624
2640
  // 按钮事件
2625
2641
  clickBtn(row, btn, index, e, j) {
@@ -2628,7 +2644,7 @@ export default create({
2628
2644
  this.recordClickBtnInfo(row, index);
2629
2645
  this.$emit('setNestTableClick', this.isNestTable);
2630
2646
  this.$emit('setCurRowIndex', index);
2631
- this.$emit('clickBtn', row, btn, row[this.handleRowId], index);
2647
+ this.$emit('clickBtn', row, btn, row[this.handlePrimaryKey], index);
2632
2648
  // this.handleTopBtnTracher(btn, j);
2633
2649
  },
2634
2650
  recordClickBtnInfo(row, index) {
@@ -24,7 +24,8 @@
24
24
  <div>
25
25
  <a-button v-if="isShow('TRANSFER') && sessionType == 1 && onChating" @click="handleConvertShow" :disabled="!onChating && !!convertButtonTitle">{{ convertButtonTitle }}</a-button>
26
26
  <!-- 状态切换 -->
27
- <a-dropdown placement="bottomCenter">
27
+ <UserStatus :assemblyId="assemblyId" :statusList="statusList" :curStatus="status" @changeStatus="changeStatus" />
28
+ <!-- <a-dropdown placement="bottomCenter">
28
29
  <a-button>
29
30
  <svg-icon v-if="statusIcon" :icon-class="statusIcon" style="font-size:16px;"></svg-icon>
30
31
  <img v-else :src="getImg(status)" height="16" />
@@ -56,7 +57,7 @@
56
57
  >
57
58
  </a-menu-item>
58
59
  </a-menu>
59
- </a-dropdown>
60
+ </a-dropdown> -->
60
61
  <a-button @click="handleConfirm" :disabled="!onChating" v-if="isSessionOwner && !isStaff">{{ endSessionTitle }}</a-button>
61
62
  </div>
62
63
  </div>
@@ -100,6 +101,7 @@ import { mapState, mapGetters, mapMutations, mapActions } from '../store/helper'
100
101
  import { Layout, Button, Tooltip, Dropdown, Icon, Menu, Alert, Modal, Select, Input } from 'ant-design-vue';
101
102
  import SvgIcon from '@/component/svg/index.vue';
102
103
  import Avatar from '../components/avatar';
104
+ import UserStatus from '../components/user-status';
103
105
  import fetch, { qs } from '@/utils/chatFetch';
104
106
 
105
107
  export default {
@@ -118,7 +120,8 @@ export default {
118
120
  [Select.Option.name]: Select.Option,
119
121
  [Input.TextArea.name]: Input.TextArea,
120
122
  SvgIcon,
121
- Avatar
123
+ Avatar,
124
+ UserStatus,
122
125
  },
123
126
  props: {
124
127
  hideHeader: {
@@ -132,7 +135,7 @@ export default {
132
135
  serviceList: [],
133
136
  converUserId: '',
134
137
  converMark: '',
135
- status: 'ON-LINE' // 客服状态
138
+ // status: 'ON-LINE' // 客服状态
136
139
  };
137
140
  },
138
141
  computed: {
@@ -149,6 +152,7 @@ export default {
149
152
  'convertButtonTitle',
150
153
  'clientId',
151
154
  'statusList',
155
+ 'status',
152
156
  'endSessionTitle',
153
157
  'isServer',
154
158
  'clientParams',
@@ -169,15 +173,15 @@ export default {
169
173
  isStaff() {
170
174
  return this.assemblySetting?.type === 'staff';
171
175
  },
172
- statusObj() {
173
- return this.statusList.find(item => item.status === this.status);
174
- },
175
- statusDesc() {
176
- return this.statusObj?.title;
177
- },
178
- statusIcon() {
179
- return this.statusObj?.icon || '';
180
- },
176
+ // statusObj() {
177
+ // return this.statusList.find(item => item.status === this.status);
178
+ // },
179
+ // statusDesc() {
180
+ // return this.statusObj?.title;
181
+ // },
182
+ // statusIcon() {
183
+ // return this.statusObj?.icon || '';
184
+ // },
181
185
  formatedSessionTime() {
182
186
  let sessionTime = this.sessionTime;
183
187
  const totalTime = this.sessionTotalTime;
@@ -215,9 +219,13 @@ export default {
215
219
  'setSessionHistoryList',
216
220
  'setClientParams',
217
221
  'setClientId',
218
- 'setVoiceAlert'
222
+ 'setVoiceAlert',
223
+ 'setStatus'
219
224
  ]),
220
225
  ...mapActions(['setChatTimer']),
226
+ changeStatus(status) {
227
+ this.setStatus(status);
228
+ },
221
229
  /**
222
230
  * 剔除延时提醒
223
231
  */
@@ -322,25 +330,25 @@ export default {
322
330
  this.converUserId = '';
323
331
  });
324
332
  },
325
- getImg(name) {
326
- try {
327
- return require(`../img/${name}.png`);
328
- } catch {
329
- return '';
330
- }
331
- },
332
- handleStatusChange(status) {
333
- this.status = status;
334
- let params = {
335
- assemblyId: this.assemblyId,
336
- status
337
- };
338
- fetch.post('/chat/service/updateServiceState', qs.stringify(params)).then(({ data }) => {
339
- if (data.result === 'SUCCESS') {
340
- this.$message.success(`${this.i18nText('1.9.334')}!`);
341
- }
342
- });
343
- },
333
+ // getImg(name) {
334
+ // try {
335
+ // return require(`../img/${name}.png`);
336
+ // } catch {
337
+ // return '';
338
+ // }
339
+ // },
340
+ // handleStatusChange(status) {
341
+ // this.status = status;
342
+ // let params = {
343
+ // assemblyId: this.assemblyId,
344
+ // status
345
+ // };
346
+ // fetch.post('/chat/service/updateServiceState', qs.stringify(params)).then(({ data }) => {
347
+ // if (data.result === 'SUCCESS') {
348
+ // this.$message.success(`${this.i18nText('1.9.334')}!`);
349
+ // }
350
+ // });
351
+ // },
344
352
  handleConfirm() {
345
353
  let that = this;
346
354
  this.$confirm({
@@ -130,47 +130,55 @@
130
130
  </template>
131
131
  </a-tabs>
132
132
  <div v-if="isNormalStyle" class="footer-operate">
133
- <span v-if="showSetting" class="setting-span">
134
- <svg-icon icon-class="a-xitongtubiaoliaotianshezhi" @click="handleSetting" />
135
- </span>
136
- <span>
137
- <a-tooltip placement="bottom">
138
- <template slot="title">
139
- <span>声音提醒</span>
140
- </template>
141
- <svg-icon :icon-class="voiceAlert ? 'a-xitongtubiaoliaotianlaba' : 'a-xitongtubiaoliaotianjingyin'" style="margin-right: 10px" @click="toggleVoiceAlert" />
142
- </a-tooltip>
143
- </span>
144
- <span>
145
- <a-tooltip placement="top">
146
- <template slot="title">
147
- <span>语音历史</span>
148
- </template>
149
- <svg-icon @click="toggleVideoVoiceList" icon-class="a-xitongtubiaoliaotiantonghua" />
150
- </a-tooltip>
151
- </span>
133
+ <!-- 状态切换 -->
134
+ <UserStatus v-if="hideHeader" type="left-bottom" :assemblyId="assemblyId" :statusList="statusList" :curStatus="status" @changeStatus="changeStatus" />
135
+ <div class="footer-operate-right">
136
+ <span v-if="showSetting" class="setting-span">
137
+ <svg-icon icon-class="a-xitongtubiaoliaotianshezhi" @click="handleSetting" />
138
+ </span>
139
+ <span>
140
+ <a-tooltip placement="bottom">
141
+ <template slot="title">
142
+ <span>声音提醒</span>
143
+ </template>
144
+ <svg-icon :icon-class="voiceAlert ? 'a-xitongtubiaoliaotianlaba' : 'a-xitongtubiaoliaotianjingyin'" style="margin-right: 10px" @click="toggleVoiceAlert" />
145
+ </a-tooltip>
146
+ </span>
147
+ <span>
148
+ <a-tooltip placement="top">
149
+ <template slot="title">
150
+ <span>语音历史</span>
151
+ </template>
152
+ <svg-icon @click="toggleVideoVoiceList" icon-class="a-xitongtubiaoliaotiantonghua" />
153
+ </a-tooltip>
154
+ </span>
155
+ </div>
152
156
  </div>
153
- <a-popover v-else placement="rightBottom" arrowPointAtCenter>
154
- <template slot="content">
155
- <div class="chat-operate-group">
156
- <div v-if="showSetting" class="chat-operate-item" @click="handleSetting">
157
- <svg-icon icon-class="a-xitongtubiaoliaotianshezhi" />
158
- <span>设置</span>
159
- </div>
160
- <div class="chat-operate-item" @click="toggleVoiceAlert">
161
- <svg-icon :icon-class="voiceAlert ? 'a-xitongtubiaoliaotianlaba' : 'a-xitongtubiaoliaotianjingyin'" />
162
- <span>静音</span>
163
- </div>
164
- <div class="chat-operate-item" @click="toggleVideoVoiceList">
165
- <svg-icon icon-class="a-xitongtubiaoliaotiantonghua" />
166
- <span>通话</span>
157
+ <template v-else>
158
+ <a-popover placement="rightBottom" arrowPointAtCenter>
159
+ <template slot="content">
160
+ <div class="chat-operate-group">
161
+ <div v-if="showSetting" class="chat-operate-item" @click="handleSetting">
162
+ <svg-icon icon-class="a-xitongtubiaoliaotianshezhi" />
163
+ <span>设置</span>
164
+ </div>
165
+ <div class="chat-operate-item" @click="toggleVoiceAlert">
166
+ <svg-icon :icon-class="voiceAlert ? 'a-xitongtubiaoliaotianlaba' : 'a-xitongtubiaoliaotianjingyin'" />
167
+ <span>静音</span>
168
+ </div>
169
+ <div class="chat-operate-item" @click="toggleVideoVoiceList">
170
+ <svg-icon icon-class="a-xitongtubiaoliaotiantonghua" />
171
+ <span>通话</span>
172
+ </div>
167
173
  </div>
174
+ </template>
175
+ <div class="chat-operate-more">
176
+ <i class="operate-more-icon"></i>
168
177
  </div>
169
- </template>
170
- <div class="chat-operate-more">
171
- <i class="operate-more-icon"></i>
172
- </div>
173
- </a-popover>
178
+ </a-popover>
179
+ <!-- 状态切换 -->
180
+ <UserStatus v-if="hideHeader" type="left-bottom" :assemblyId="assemblyId" :statusList="statusList" :curStatus="status" @changeStatus="changeStatus" style="margin: -10px 0 8px; width: 100px;text-align: center;" />
181
+ </template>
174
182
  </a-layout-sider>
175
183
  <a-row style="width: 100%;height: 100%;overflow: hidden;">
176
184
  <a-col :span="mainSpan" style="height: 100%;position: relative">
@@ -327,6 +335,7 @@ import VideoVoiceList from './videoVoiceList';
327
335
  import addConference from './addConference';
328
336
  import ClassifyTabs from '../components/classify-tabs';
329
337
  import ChatTabsHeader from '../components/chat-tabs-header';
338
+ import UserStatus from '../components/user-status';
330
339
  import { checkTalkingEnv } from '../utils/index';
331
340
 
332
341
  export default {
@@ -432,6 +441,7 @@ export default {
432
441
  'callings',
433
442
  'assemblySetting',
434
443
  'statusList',
444
+ 'status',
435
445
  'tabList',
436
446
  'chatMainTitle',
437
447
  'endSessionTitle',
@@ -625,12 +635,16 @@ export default {
625
635
  'setLastCurrentTab',
626
636
  'setQueueItem',
627
637
  'setCurScrollItem',
628
- 'setSessionType'
638
+ 'setSessionType',
639
+ 'setStatus'
629
640
  ]),
630
641
  ...mapActions(['setChatTimer', 'getVideoHistoryList']),
631
642
  ...mapActions({
632
643
  getMsgList: 'setMsgList'
633
644
  }),
645
+ changeStatus(status) {
646
+ this.setStatus(status);
647
+ },
634
648
  handleDateOpenChange(v) {
635
649
  this.dateOpenStatus = v;
636
650
  },
@@ -1621,7 +1635,8 @@ export default {
1621
1635
  VideoVoiceList,
1622
1636
  addConference,
1623
1637
  ChatTabsHeader,
1624
- ClassifyTabs
1638
+ ClassifyTabs,
1639
+ UserStatus
1625
1640
  },
1626
1641
  beforeDestroy() {
1627
1642
  if (this.stompClient) {
@@ -1932,40 +1947,52 @@ export default {
1932
1947
  }
1933
1948
  .footer-operate {
1934
1949
  display: inline-flex;
1950
+ justify-content: space-around;
1951
+ align-items: center;
1935
1952
  width: 100%;
1953
+ box-sizing: border-box;
1954
+ padding: 0 0 0 8px;
1936
1955
  height: 55px;
1937
1956
  line-height: 55px;
1938
1957
  border-top: 1px solid #f0f0f5;
1939
- .setting-span {
1940
- position: relative;
1941
- z-index: 2;
1942
- }
1943
- span {
1944
- position: relative;
1958
+ &-right {
1945
1959
  flex: 1;
1946
1960
  display: inline-flex;
1947
- justify-content: center;
1948
- align-items: center;
1949
- &::after {
1950
- content: '';
1951
- position: absolute;
1952
- right: 0;
1953
- top: 50%;
1954
- transform: translateY(-50%);
1955
- width: 1px;
1956
- background: #ccc;
1957
- height: 22px;
1961
+ justify-content: flex-end;
1962
+ height: 100%;
1963
+ line-height: 55px;
1964
+ .setting-span {
1965
+ position: relative;
1966
+ z-index: 2;
1958
1967
  }
1959
- .svg-icon {
1960
- font-size: 20px;
1961
- cursor: pointer;
1962
- outline: none;
1963
- color: #b5b5b5;
1968
+ span {
1969
+ position: relative;
1970
+ // flex: 1;
1971
+ display: inline-flex;
1972
+ justify-content: center;
1973
+ padding: 0 10px;
1974
+ align-items: center;
1975
+ &::after {
1976
+ content: '';
1977
+ position: absolute;
1978
+ right: 0;
1979
+ top: 50%;
1980
+ transform: translateY(-50%);
1981
+ width: 1px;
1982
+ background: #ccc;
1983
+ height: 22px;
1984
+ }
1985
+ .svg-icon {
1986
+ font-size: 20px;
1987
+ cursor: pointer;
1988
+ outline: none;
1989
+ color: #b5b5b5;
1990
+ }
1964
1991
  }
1965
- }
1966
- span:last-child {
1967
- &::after {
1968
- width: 0;
1992
+ span:last-child {
1993
+ &::after {
1994
+ width: 0;
1995
+ }
1969
1996
  }
1970
1997
  }
1971
1998
  }
@@ -167,7 +167,8 @@ export default {
167
167
  if (aLevel === bLevel) {
168
168
  return Number(a.createdTime) - Number(b.createdTime);
169
169
  }
170
- return descOrAsc === 'desc' ? aLevel - bLevel : bLevel - aLevel;
170
+ // return descOrAsc === 'desc' ? aLevel - bLevel : bLevel - aLevel;
171
+ return descOrAsc === 'desc' ? bLevel - aLevel : aLevel - bLevel;
171
172
  });
172
173
  noLevel.sort((a, b) => Number(a.createdTime) - Number(b.createdTime));
173
174
  processedScrollList = [...hasLevel, ...noLevel];
@@ -380,7 +381,7 @@ export default {
380
381
  const dateParams = this.dateParams;
381
382
  if (dateParams?.length) {
382
383
  const fmt = 'YYYY-MM-DD';
383
- params.beginDate = dateParams[0].format(fmt) + ' 00:00:00';
384
+ params.startDate = dateParams[0].format(fmt) + ' 00:00:00';
384
385
  params.endDate = dateParams[1].format(fmt) + ' 23:59:59';
385
386
  }
386
387
  return params;
@@ -592,6 +593,7 @@ export default {
592
593
  fetch.get('/chat/service/getQueueUser', { params }).then(({ data }) => {
593
594
  if (data.result === 'SUCCESS') {
594
595
  const obj = data.obj || {};
596
+ this.currentTab === 'queue' && this.dispatchEvent('click_queueListUser', JSON.parse(JSON.stringify(obj.messages || [])));
595
597
  let messages = (obj.messages || []).map(item => {
596
598
  item.fromName = obj.name;
597
599
  item.content = JSON.parse(JSON.stringify(item));