cnhis-design-vue 0.2.18-beta → 0.2.19-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.
- package/es/affix/index.js +8 -8
- package/es/age/index.js +10 -10
- package/es/alert/index.js +8 -8
- package/es/anchor/index.js +8 -8
- package/es/auto-complete/index.js +8 -8
- package/es/avatar/index.js +8 -8
- package/es/back-top/index.js +8 -8
- package/es/badge/index.js +8 -8
- package/es/base/index.js +8 -8
- package/es/big-table/index.js +434 -211
- package/es/big-table/style.css +1 -1
- package/es/breadcrumb/index.js +8 -8
- package/es/button/index.js +102 -65
- package/es/button/style.css +1 -1
- package/es/calendar/index.js +8 -8
- package/es/captcha/index.js +3 -3
- package/es/card/index.js +8 -8
- package/es/carousel/index.js +8 -8
- package/es/cascader/index.js +8 -8
- package/es/checkbox/index.js +9 -9
- package/es/col/index.js +8 -8
- package/es/collapse/index.js +8 -8
- package/es/color-picker/index.js +1 -1
- package/es/comment/index.js +8 -8
- package/es/config-provider/index.js +8 -8
- package/es/date-picker/index.js +8 -8
- package/es/descriptions/index.js +8 -8
- package/es/divider/index.js +8 -8
- package/es/drag-layout/index.js +3 -3
- package/es/drawer/index.js +8 -8
- package/es/dropdown/index.js +8 -8
- package/es/editor/index.js +1 -1
- package/es/empty/index.js +8 -8
- package/es/fabric-chart/index.js +9 -9
- package/es/form/index.js +8 -8
- package/es/form-model/index.js +8 -8
- package/es/index/index.js +1505 -872
- package/es/index/style.css +1 -1
- package/es/input/index.js +9 -9
- package/es/input-number/index.js +8 -8
- package/es/layout/index.js +8 -8
- package/es/list/index.js +8 -8
- package/es/locale-provider/index.js +8 -8
- package/es/map/index.js +9 -9
- package/es/mentions/index.js +8 -8
- package/es/menu/index.js +8 -8
- package/es/message/index.js +8 -8
- package/es/multi-chat/index.js +650 -247
- package/es/multi-chat/style.css +1 -1
- package/es/multi-chat-client/index.js +570 -195
- package/es/multi-chat-client/style.css +1 -1
- package/es/multi-chat-history/index.js +4 -4
- package/es/multi-chat-record/index.js +14 -14
- package/es/multi-chat-setting/index.js +330 -79
- package/es/multi-chat-setting/style.css +1 -1
- package/es/multi-chat-sip/index.js +1 -1
- package/es/notification/index.js +8 -8
- package/es/page-header/index.js +8 -8
- package/es/pagination/index.js +8 -8
- package/es/popconfirm/index.js +8 -8
- package/es/popover/index.js +8 -8
- package/es/progress/index.js +8 -8
- package/es/radio/index.js +9 -9
- package/es/rate/index.js +8 -8
- package/es/result/index.js +8 -8
- package/es/row/index.js +8 -8
- package/es/scale-view/index.js +92 -77
- package/es/scale-view/style.css +1 -1
- package/es/select/index.js +11 -11
- package/es/select-label/index.js +10 -10
- package/es/select-person/index.js +2 -2
- package/es/skeleton/index.js +8 -8
- package/es/slider/index.js +8 -8
- package/es/space/index.js +8 -8
- package/es/spin/index.js +8 -8
- package/es/statistic/index.js +8 -8
- package/es/steps/index.js +8 -8
- package/es/switch/index.js +8 -8
- package/es/table-filter/index.js +241 -143
- package/es/table-filter/style.css +1 -1
- package/es/tabs/index.js +8 -8
- package/es/tag/index.js +9 -9
- package/es/time-picker/index.js +8 -8
- package/es/timeline/index.js +8 -8
- package/es/tooltip/index.js +8 -8
- package/es/transfer/index.js +8 -8
- package/es/tree/index.js +8 -8
- package/es/tree-select/index.js +8 -8
- package/es/upload/index.js +8 -8
- package/es/utils/UniRTCv2.js +586 -0
- package/es/verification-code/index.js +2 -2
- package/lib/cui.common.js +2412 -1225
- package/lib/cui.umd.js +2412 -1225
- package/lib/cui.umd.min.js +61 -61
- package/package.json +3 -3
- package/packages/big-table/src/BigTable.vue +71 -16
- package/packages/big-table/src/assets/style/table-base.less +5 -0
- package/packages/big-table/src/components/TextOverTooltip.vue +23 -10
- package/packages/big-table/src/utils/batchEditing.js +1 -1
- package/packages/big-table/src/utils/bigTableProps.js +2 -1
- package/packages/button/src/ButtonPrint/index.vue +49 -14
- package/packages/multi-chat/chat/audio.vue +22 -0
- package/packages/multi-chat/chat/calling.vue +6 -0
- package/packages/multi-chat/chat/chatFooter.vue +43 -3
- package/packages/multi-chat/chat/client/clientChat.vue +13 -1
- package/packages/multi-chat/chat/index.vue +16 -3
- package/packages/multi-chat/chat/mixins/uniRTCAPI.js +77 -0
- package/packages/multi-chat/chat/multiVideo.vue +14 -0
- package/packages/multi-chat/chat/scrollList.vue +7 -1
- package/packages/multi-chat/chat/video.vue +4 -0
- package/packages/multi-chat/components/user-status.vue +50 -45
- package/packages/multi-chat/setting/baseInfo/index.vue +3 -3
- package/packages/multi-chat/setting/configuration/index.vue +38 -1
- package/packages/multi-chat/store/actions.js +76 -0
- package/packages/multi-chat/store/getters.js +9 -0
- package/packages/multi-chat/store/mutation.js +9 -0
- package/packages/multi-chat/store/state.js +4 -1
- package/packages/scale-view/answerParse.vue +27 -14
- package/packages/scale-view/scaleView.vue +18 -8
- package/packages/table-filter/src/base-search-com/BaseSearch.vue +74 -7
- package/packages/table-filter/src/quick-search/QuickSearch.vue +31 -18
- package/src/utils/UniRTCv2.js +561 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cnhis-design-vue",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.19-beta",
|
|
4
4
|
"description": "基于 Ant Desgin Vue 的UI库",
|
|
5
5
|
"keyword": "cnhis-design-vue vue cnhis",
|
|
6
6
|
"homepage": "http://dv.cnhis.com/",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"spark-md5": "^3.0.1",
|
|
41
41
|
"stompjs": "^2.3.3",
|
|
42
42
|
"text-security": "^3.2.1",
|
|
43
|
-
"trtc-js-sdk": "^4.11.
|
|
43
|
+
"trtc-js-sdk": "^4.11.4",
|
|
44
44
|
"v-viewer": "1.5.1",
|
|
45
45
|
"video.js": "^7.8.4",
|
|
46
46
|
"vue-dom-portal": "^0.1.6",
|
|
@@ -93,4 +93,4 @@
|
|
|
93
93
|
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
|
-
}
|
|
96
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
class="big-table"
|
|
4
4
|
:class="{
|
|
5
5
|
mt: visibleCheckAllWrap || visibleTreeCheck || hasRefresh,
|
|
6
|
-
'expand-padding':
|
|
6
|
+
'expand-padding': !isNestTable
|
|
7
7
|
}"
|
|
8
8
|
:style="{ height: tableHeight }"
|
|
9
9
|
>
|
|
@@ -147,7 +147,7 @@
|
|
|
147
147
|
<script>
|
|
148
148
|
import Vue from 'vue';
|
|
149
149
|
import TextOverTooltip from './components/TextOverTooltip.vue';
|
|
150
|
-
import { Icon, Tooltip, Progress, Switch, Popover, Button, Dropdown, Menu, Checkbox, Input } from 'ant-design-vue';
|
|
150
|
+
import { Icon, Tooltip, Progress, Switch, Popover, Button, Dropdown, Menu, Checkbox, Input, Popconfirm } from 'ant-design-vue';
|
|
151
151
|
import format from './utils/format';
|
|
152
152
|
import { parseDurationValue, parseCombinationValue, formatFieldText, imgs2imgArr } from './utils/tableParse';
|
|
153
153
|
import passwordCom from './components/password-com.vue';
|
|
@@ -167,6 +167,7 @@ import EditForm from './components/edit-form/EditForm.vue';
|
|
|
167
167
|
|
|
168
168
|
import nestTable from './utils/nestTable';
|
|
169
169
|
import bigTableProps from './utils/bigTableProps';
|
|
170
|
+
import SvgIcon from '@/component/svg/index.vue';
|
|
170
171
|
|
|
171
172
|
let addInlineEditPrimaryKey = '';
|
|
172
173
|
export default create({
|
|
@@ -182,9 +183,11 @@ export default create({
|
|
|
182
183
|
[Switch.name]: Switch,
|
|
183
184
|
[Popover.name]: Popover,
|
|
184
185
|
[Dropdown.name]: Dropdown,
|
|
186
|
+
[Popconfirm.name]: Popconfirm,
|
|
185
187
|
[Menu.name]: Menu,
|
|
186
188
|
[Grid.name]: Grid,
|
|
187
|
-
[VideoList.name]: VideoList
|
|
189
|
+
[VideoList.name]: VideoList,
|
|
190
|
+
SvgIcon
|
|
188
191
|
},
|
|
189
192
|
mixins: [format, batchEditing, nestTable],
|
|
190
193
|
props: Object.assign({}, bigTableProps),
|
|
@@ -347,6 +350,9 @@ export default create({
|
|
|
347
350
|
}
|
|
348
351
|
let startIndex = (this.pageVO.pageIndex - 1) * this.pageVO.pageSize;
|
|
349
352
|
return { startIndex: startIndex < 0 ? 0 : startIndex };
|
|
353
|
+
},
|
|
354
|
+
isScanMultiTable() {
|
|
355
|
+
return this.columnConfig?.isScanMultiTable
|
|
350
356
|
}
|
|
351
357
|
},
|
|
352
358
|
watch: {
|
|
@@ -468,6 +474,10 @@ export default create({
|
|
|
468
474
|
}
|
|
469
475
|
},
|
|
470
476
|
methods: {
|
|
477
|
+
customerInit(){
|
|
478
|
+
this.loadColumn(this.columnConfig);
|
|
479
|
+
this.loadData(this.data);
|
|
480
|
+
},
|
|
471
481
|
setTalbeScrollTo() {
|
|
472
482
|
let table = this.$refs.xGrid;
|
|
473
483
|
if (!table) return;
|
|
@@ -1289,8 +1299,9 @@ export default create({
|
|
|
1289
1299
|
* sortable: 是否允许列排序
|
|
1290
1300
|
*/
|
|
1291
1301
|
// 配置列表
|
|
1292
|
-
let { selectType
|
|
1293
|
-
let {
|
|
1302
|
+
let { selectType } = this.getOtherConfigInit() || {};
|
|
1303
|
+
let { tableNoSetting } = this;
|
|
1304
|
+
let { isBatchSelect, fieldList, showButtonTop, isScanMultiTable } = map;
|
|
1294
1305
|
if (selectType) {
|
|
1295
1306
|
// 有设置 selectType 强制可选。
|
|
1296
1307
|
isBatchSelect = 1;
|
|
@@ -1313,7 +1324,20 @@ export default create({
|
|
|
1313
1324
|
);
|
|
1314
1325
|
}
|
|
1315
1326
|
};
|
|
1316
|
-
|
|
1327
|
+
let checkVisible = isBatchSelect == 1 && !this.isNestTable && !isScanMultiTable || false;
|
|
1328
|
+
let columns = [
|
|
1329
|
+
{
|
|
1330
|
+
fixed: 'left',
|
|
1331
|
+
align: 'center',
|
|
1332
|
+
visible: isScanMultiTable || false,
|
|
1333
|
+
width: '50',
|
|
1334
|
+
slots: {
|
|
1335
|
+
header: () => {
|
|
1336
|
+
return "操作";
|
|
1337
|
+
},
|
|
1338
|
+
default: this.scanMultiOperate
|
|
1339
|
+
}
|
|
1340
|
+
},
|
|
1317
1341
|
{
|
|
1318
1342
|
type: 'seq',
|
|
1319
1343
|
fixed: this.isNestTable ? '' : 'left',
|
|
@@ -1323,7 +1347,7 @@ export default create({
|
|
|
1323
1347
|
showOverflow: true,
|
|
1324
1348
|
slots: {
|
|
1325
1349
|
header: () => {
|
|
1326
|
-
return [
|
|
1350
|
+
return [tableNoSetting ? null : <a-icon class="setting" type="setting" onClick={() => this.showDrawer()} />];
|
|
1327
1351
|
}
|
|
1328
1352
|
}
|
|
1329
1353
|
},
|
|
@@ -1331,7 +1355,7 @@ export default create({
|
|
|
1331
1355
|
type: selectType,
|
|
1332
1356
|
fixed: this.isNestTable ? '' : 'left',
|
|
1333
1357
|
align: 'center',
|
|
1334
|
-
visible:
|
|
1358
|
+
visible: checkVisible,
|
|
1335
1359
|
resizable: false,
|
|
1336
1360
|
width: checkMinWidth,
|
|
1337
1361
|
// slots: selectType === 'checkbox' ? checkboxSlot : null,
|
|
@@ -1360,6 +1384,14 @@ export default create({
|
|
|
1360
1384
|
let treeNode = this.isNestTable ? false : this.isTree != 0 ? index === 0 : false;
|
|
1361
1385
|
let type = index === 0 && this.showNestTable ? 'expand' : '';
|
|
1362
1386
|
|
|
1387
|
+
// 扫码打开的table只展示
|
|
1388
|
+
if(isScanMultiTable) {
|
|
1389
|
+
fixed = "";
|
|
1390
|
+
sortable = false;
|
|
1391
|
+
treeNode = false;
|
|
1392
|
+
type = "";
|
|
1393
|
+
}
|
|
1394
|
+
|
|
1363
1395
|
const col = Object.assign(item, {
|
|
1364
1396
|
visible: item.columnName == 'operatorColumn' ? showButtonTop == 0 : item.isShow == 1,
|
|
1365
1397
|
field: item.columnName,
|
|
@@ -1384,7 +1416,7 @@ export default create({
|
|
|
1384
1416
|
editRender: this.generateEditRender(item)
|
|
1385
1417
|
});
|
|
1386
1418
|
|
|
1387
|
-
if (filterField && !this.isNestTable) {
|
|
1419
|
+
if (filterField && !this.isNestTable && !isScanMultiTable) {
|
|
1388
1420
|
this.$set(
|
|
1389
1421
|
this.filterFields,
|
|
1390
1422
|
item.columnName,
|
|
@@ -1407,7 +1439,10 @@ export default create({
|
|
|
1407
1439
|
col.slots.header = this.toolTipTitle(item);
|
|
1408
1440
|
}
|
|
1409
1441
|
|
|
1410
|
-
|
|
1442
|
+
|
|
1443
|
+
if (!isScanMultiTable) {
|
|
1444
|
+
col.slots.footer = 'tooltip_footer';
|
|
1445
|
+
}
|
|
1411
1446
|
|
|
1412
1447
|
// 主表设置expand
|
|
1413
1448
|
if (this.showNestTable && this.isTree == 0 && this.curNestColumnConfig?.isTree == 0) {
|
|
@@ -1691,7 +1726,7 @@ export default create({
|
|
|
1691
1726
|
if (this.tableOptions?.dataSourceType == 'guage') {
|
|
1692
1727
|
tooltipTitle = item.alias || item.title;
|
|
1693
1728
|
}
|
|
1694
|
-
if (name && name !== tooltipTitle) {
|
|
1729
|
+
if (name&& tooltipTitle && name !== tooltipTitle) {
|
|
1695
1730
|
isAlias = !!tooltipTitle;
|
|
1696
1731
|
}
|
|
1697
1732
|
if (type === 'format') return <text-over-tooltip refName={'item-' + item[this.handleRowId]} tooltipTitle={tooltipTitle} content={name} isAlias={isAlias} />;
|
|
@@ -1971,6 +2006,23 @@ export default create({
|
|
|
1971
2006
|
field.indeterminate = !!len && len !== field.setting.showSetting.length;
|
|
1972
2007
|
field.searchFilterText = '';
|
|
1973
2008
|
},
|
|
2009
|
+
scanMultiOperate(params){
|
|
2010
|
+
return [
|
|
2011
|
+
<a-popconfirm ok-text={'确认'} cancel-text={'取消'} title={'是否确认删除?'} on-confirm={() =>this.confirmScanMulti(params)}>
|
|
2012
|
+
<svg-icon class="scan-multi-delete" iconClass="shanchu" />
|
|
2013
|
+
</a-popconfirm>
|
|
2014
|
+
]
|
|
2015
|
+
},
|
|
2016
|
+
/**
|
|
2017
|
+
* 删除选中scan数据
|
|
2018
|
+
*/
|
|
2019
|
+
confirmScanMulti(params){
|
|
2020
|
+
let{row, $rowIndex} = params || {}
|
|
2021
|
+
if(!row) return;
|
|
2022
|
+
this.$emit("scanMultiRemove", $rowIndex, params)
|
|
2023
|
+
let vxeTable = this.$refs.xGrid;
|
|
2024
|
+
vxeTable.remove(row);
|
|
2025
|
+
},
|
|
1974
2026
|
// 表格渲染逻辑
|
|
1975
2027
|
formatter(params, col) {
|
|
1976
2028
|
let { row, column, $rowIndex } = params;
|
|
@@ -2065,7 +2117,7 @@ export default create({
|
|
|
2065
2117
|
];
|
|
2066
2118
|
}
|
|
2067
2119
|
|
|
2068
|
-
if (this.isLink(own, row)) {
|
|
2120
|
+
if (this.isLink(own, row) && !this.isScanMultiTable) {
|
|
2069
2121
|
if (own.btnLinkSwitch) {
|
|
2070
2122
|
let disabled = false;
|
|
2071
2123
|
let curBtn = row.btnList?.find(v => v.name == own.columnName);
|
|
@@ -2225,14 +2277,14 @@ export default create({
|
|
|
2225
2277
|
},
|
|
2226
2278
|
// 行双击
|
|
2227
2279
|
rowdblclick({ row, column }) {
|
|
2228
|
-
if (this.isInlineOperating) return false;
|
|
2280
|
+
if (this.isScanMultiTable || this.isInlineOperating) return false;
|
|
2229
2281
|
if (vexutils.has(row, GROUP_TITLE_KEY)) return false;
|
|
2230
2282
|
this.$emit('setNestTableClick', this.isNestTable);
|
|
2231
2283
|
this.$emit('rowdblclick', row, column, true, true);
|
|
2232
2284
|
},
|
|
2233
2285
|
// 行单击
|
|
2234
2286
|
handlerClickRow(data) {
|
|
2235
|
-
if (this.isInlineOperating) return false;
|
|
2287
|
+
if (this.isScanMultiTable || this.isInlineOperating) return false;
|
|
2236
2288
|
if (vexutils.has(data?.row, GROUP_TITLE_KEY)) return false;
|
|
2237
2289
|
if (this.isTriggerSelectionChange && this.isTree == 0) return false;
|
|
2238
2290
|
let table = this.$refs.xGrid;
|
|
@@ -2242,7 +2294,7 @@ export default create({
|
|
|
2242
2294
|
let { row, $event = {}, $rowIndex } = data;
|
|
2243
2295
|
// 点击主表格展开行按钮 不需要触发选中行
|
|
2244
2296
|
let { className } = $event.target || {};
|
|
2245
|
-
if (className && className.includes('vxe-table--expand-btn')) return;
|
|
2297
|
+
if (className && vexutils.isString(className) && className.includes('vxe-table--expand-btn')) return;
|
|
2246
2298
|
|
|
2247
2299
|
// 记录上次点击table信息 用于清除
|
|
2248
2300
|
this.isAboutNestTable && this.$emit('setNestLastClickTable', table, this.isNestTable, row[this.handleRowId], row);
|
|
@@ -2812,7 +2864,10 @@ export default create({
|
|
|
2812
2864
|
const config = tableOptions?.config || {};
|
|
2813
2865
|
return config || undefined;
|
|
2814
2866
|
},
|
|
2815
|
-
|
|
2867
|
+
tableNoSetting(){
|
|
2868
|
+
let { noSetting } = this.getOtherConfigInit() || {};
|
|
2869
|
+
return noSetting || this.showSettings?.hideSettingBtn == 1;
|
|
2870
|
+
},
|
|
2816
2871
|
// 单选
|
|
2817
2872
|
radioOnChange(rowData = {}) {
|
|
2818
2873
|
let { data, row, $rowIndex } = rowData;
|
|
@@ -17,6 +17,7 @@ body {
|
|
|
17
17
|
img {
|
|
18
18
|
max-height: 100%;
|
|
19
19
|
object-fit: contain;
|
|
20
|
+
cursor: pointer;
|
|
20
21
|
}
|
|
21
22
|
&.img-circle {
|
|
22
23
|
img {
|
|
@@ -179,6 +180,10 @@ body {
|
|
|
179
180
|
height: 100%;
|
|
180
181
|
}
|
|
181
182
|
|
|
183
|
+
.scan-multi-delete {
|
|
184
|
+
color: #F06F64;
|
|
185
|
+
}
|
|
186
|
+
|
|
182
187
|
.vxe-table--header {
|
|
183
188
|
background-color: #f2f2f2;
|
|
184
189
|
.vxe-header--column .vxe-cell--title {
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="text-over-tooltip-components">
|
|
3
|
-
<a-tooltip
|
|
4
|
-
|
|
3
|
+
<a-tooltip
|
|
4
|
+
:effect="effect"
|
|
5
|
+
:visible="isDisabledTooltip"
|
|
6
|
+
:title="curContent"
|
|
7
|
+
:placement="placement"
|
|
8
|
+
>
|
|
9
|
+
<div
|
|
10
|
+
class="ellipsis"
|
|
11
|
+
:class="className"
|
|
12
|
+
@mouseover="onMouseOver(refName)"
|
|
13
|
+
@mouseout="onMouseOut"
|
|
14
|
+
>
|
|
5
15
|
<i :ref="refName">
|
|
6
16
|
<slot></slot>
|
|
7
17
|
<i>{{ content }}</i>
|
|
@@ -12,10 +22,10 @@
|
|
|
12
22
|
</template>
|
|
13
23
|
|
|
14
24
|
<script>
|
|
15
|
-
import { Tooltip } from
|
|
25
|
+
import { Tooltip } from "ant-design-vue";
|
|
16
26
|
import vexutils from '@/utils/vexutils';
|
|
17
27
|
export default {
|
|
18
|
-
name:
|
|
28
|
+
name: "TextOverTooltip",
|
|
19
29
|
components: {
|
|
20
30
|
[Tooltip.name]: Tooltip
|
|
21
31
|
},
|
|
@@ -30,27 +40,27 @@ export default {
|
|
|
30
40
|
effect: {
|
|
31
41
|
type: String,
|
|
32
42
|
default: () => {
|
|
33
|
-
return
|
|
43
|
+
return "dark";
|
|
34
44
|
}
|
|
35
45
|
},
|
|
36
46
|
// Tooltip 的出现位置top/top-start/top-end/bottom/bottom-start/bottom-end/left/left-start/left-end/right/right-start/right-end
|
|
37
47
|
placement: {
|
|
38
48
|
type: String,
|
|
39
49
|
default: () => {
|
|
40
|
-
return
|
|
50
|
+
return "top";
|
|
41
51
|
}
|
|
42
52
|
},
|
|
43
|
-
tooltipTitle: { type: [Number, String], default:
|
|
53
|
+
tooltipTitle: { type: [Number, String], default: "" },
|
|
44
54
|
isAlias: Boolean
|
|
45
55
|
},
|
|
46
56
|
data() {
|
|
47
57
|
return {
|
|
48
|
-
isDisabledTooltip:
|
|
58
|
+
isDisabledTooltip: false // 是否需要禁止提示
|
|
49
59
|
};
|
|
50
60
|
},
|
|
51
61
|
computed: {
|
|
52
62
|
curContent() {
|
|
53
|
-
let res = this.tooltipTitle || this.content ||
|
|
63
|
+
let res = this.tooltipTitle || this.content || "";
|
|
54
64
|
if (vexutils.isNumber(res)) {
|
|
55
65
|
return res.toString();
|
|
56
66
|
}
|
|
@@ -67,7 +77,10 @@ export default {
|
|
|
67
77
|
let parentWidth = this.$refs[str].parentNode.offsetWidth;
|
|
68
78
|
let contentWidth = this.$refs[str].offsetWidth;
|
|
69
79
|
// 判断是否禁用tooltip功能
|
|
70
|
-
this.isDisabledTooltip = contentWidth
|
|
80
|
+
this.isDisabledTooltip = contentWidth > parentWidth;
|
|
81
|
+
},
|
|
82
|
+
onMouseOut() {
|
|
83
|
+
this.isDisabledTooltip = false;
|
|
71
84
|
}
|
|
72
85
|
}
|
|
73
86
|
};
|
|
@@ -296,7 +296,7 @@ export default {
|
|
|
296
296
|
* @returns
|
|
297
297
|
*/
|
|
298
298
|
showEditForm(row, column, $rowIndex) {
|
|
299
|
-
if (!this.isMatchComponent || this.isNestTable) return false;
|
|
299
|
+
if (!this.isMatchComponent || this.isNestTable || this.isScanMultiTable) return false;
|
|
300
300
|
if (this.isBatchEditing || this.isInlineEditing || this.isInlineAdding) {
|
|
301
301
|
let matchObj = this.editColumnMap[column.property];
|
|
302
302
|
if (!matchObj || !matchObj.matchItem || !matchObj.fieldItem) return false;
|
|
@@ -100,6 +100,9 @@ export default create({
|
|
|
100
100
|
params: {
|
|
101
101
|
type: Array
|
|
102
102
|
},
|
|
103
|
+
hisParams: {
|
|
104
|
+
type: Object
|
|
105
|
+
},
|
|
103
106
|
/* */
|
|
104
107
|
prevFn: {
|
|
105
108
|
type: Function,
|
|
@@ -290,7 +293,6 @@ export default create({
|
|
|
290
293
|
const { templateNumber, authorizationKey, baseUrl, getPrintFormatByNumberUrl, versionType } = this;
|
|
291
294
|
const suffix = versionType == 1 ? `jsessionids=${vexutils.cookie.get('jsessionids') || '31e5fc0e-955f-4c89-9679-39c43d0171321636163291241'}` : `authorizationKey=${authorizationKey}`;
|
|
292
295
|
const url = `${baseUrl}${getPrintFormatByNumberUrl}?number=${templateNumber}&${suffix}`;
|
|
293
|
-
|
|
294
296
|
return httpFn
|
|
295
297
|
.get(url)
|
|
296
298
|
.then(async ({ data }) => {
|
|
@@ -450,15 +452,29 @@ export default create({
|
|
|
450
452
|
})
|
|
451
453
|
.then(() => {
|
|
452
454
|
if (this.versionType == 1) {
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
455
|
+
if (this.strategy === 'MULTI') {
|
|
456
|
+
for (let i = 0; i < this.params.length; i++) {
|
|
457
|
+
const params = this.getHisParams(i);
|
|
458
|
+
printInstance
|
|
459
|
+
.handleHisPrint(7, params)
|
|
460
|
+
.then(res => {
|
|
461
|
+
console.log(res, '777777777777');
|
|
462
|
+
})
|
|
463
|
+
.catch(error => {
|
|
464
|
+
console.log(error, 'error777');
|
|
465
|
+
});
|
|
466
|
+
}
|
|
467
|
+
} else {
|
|
468
|
+
const params = this.getOnceHisParams();
|
|
469
|
+
printInstance
|
|
470
|
+
.handleHisPrint(7, params)
|
|
471
|
+
.then(res => {
|
|
472
|
+
console.log(res, '777777777777');
|
|
473
|
+
})
|
|
474
|
+
.catch(error => {
|
|
475
|
+
console.log(error, 'error777');
|
|
476
|
+
});
|
|
477
|
+
}
|
|
462
478
|
} else {
|
|
463
479
|
if (this.strategy === 'MULTI') {
|
|
464
480
|
// 循环多条
|
|
@@ -491,7 +507,7 @@ export default create({
|
|
|
491
507
|
this.visible = false;
|
|
492
508
|
});
|
|
493
509
|
},
|
|
494
|
-
getHisParams() {
|
|
510
|
+
getHisParams(index = 0) {
|
|
495
511
|
const { templateParams, hisParams, params } = this;
|
|
496
512
|
const { reportid = '280' } = hisParams;
|
|
497
513
|
const { id, name } = templateParams;
|
|
@@ -499,7 +515,26 @@ export default create({
|
|
|
499
515
|
reportid,
|
|
500
516
|
formatid: id,
|
|
501
517
|
formatname: name,
|
|
502
|
-
param: params[
|
|
518
|
+
param: params[index]
|
|
519
|
+
};
|
|
520
|
+
},
|
|
521
|
+
getOnceHisParams() {
|
|
522
|
+
const { templateParams, hisParams, params } = this;
|
|
523
|
+
const { reportid = '280' } = hisParams;
|
|
524
|
+
const { id, name } = templateParams;
|
|
525
|
+
const obj = {}
|
|
526
|
+
Object.keys(params[0]).forEach(v => {
|
|
527
|
+
obj[v] = [];
|
|
528
|
+
params.forEach(k => {
|
|
529
|
+
obj[v].push(k[v]);
|
|
530
|
+
});
|
|
531
|
+
obj[v] = obj[v].join(',');
|
|
532
|
+
});
|
|
533
|
+
return {
|
|
534
|
+
reportid,
|
|
535
|
+
formatid: id,
|
|
536
|
+
formatname: name,
|
|
537
|
+
param: obj
|
|
503
538
|
};
|
|
504
539
|
},
|
|
505
540
|
async handleClickPreview(e) {
|
|
@@ -512,7 +547,7 @@ export default create({
|
|
|
512
547
|
})
|
|
513
548
|
.then(() => {
|
|
514
549
|
if (this.versionType == 1) {
|
|
515
|
-
const params = this.getHisParams();
|
|
550
|
+
const params = this.strategy === 'MULTI' ? this.getHisParams() : this.getOnceHisParams();
|
|
516
551
|
printInstance
|
|
517
552
|
.handleHisPrint(8, params)
|
|
518
553
|
.then(res => {
|
|
@@ -551,7 +586,7 @@ export default create({
|
|
|
551
586
|
})
|
|
552
587
|
.then(() => {
|
|
553
588
|
if (this.versionType == 1) {
|
|
554
|
-
const params = this.getHisParams();
|
|
589
|
+
const params = this.strategy === 'MULTI' ? this.getHisParams() : this.getOnceHisParams();
|
|
555
590
|
printInstance
|
|
556
591
|
.handleHisPrint(9, params)
|
|
557
592
|
.then(res => {
|
|
@@ -73,8 +73,10 @@ import { mapGetters, mapActions, mapMutations } from '../store/helper';
|
|
|
73
73
|
import fetch, { qs } from '@/utils/chatFetch';
|
|
74
74
|
import RtcClient from '../utils/rtc-client-multi';
|
|
75
75
|
import { getSipUserId } from '@/utils/sip-device';
|
|
76
|
+
import uniRTCAPI from './mixins/uniRTCAPI';
|
|
76
77
|
export default {
|
|
77
78
|
inject: ['store', 'i18nText'],
|
|
79
|
+
mixins: [uniRTCAPI],
|
|
78
80
|
components: {
|
|
79
81
|
SvgIcon,
|
|
80
82
|
[Icon.name]: Icon,
|
|
@@ -255,6 +257,12 @@ export default {
|
|
|
255
257
|
this.$message.success(this.i18nText('1.9.386'));
|
|
256
258
|
// this.appendVideoMessage();
|
|
257
259
|
this.setVideoData(data.map);
|
|
260
|
+
// 江苏省
|
|
261
|
+
if (this.uniRTC || data.map?.vendor == 3) {
|
|
262
|
+
const targetList = data.map?.targetList || [];
|
|
263
|
+
this.checkStatus(targetList);
|
|
264
|
+
this.startCall(targetList);
|
|
265
|
+
}
|
|
258
266
|
} else {
|
|
259
267
|
this.$message.warning(data.resultMsg);
|
|
260
268
|
this.setShowAudio(false);
|
|
@@ -288,6 +296,8 @@ export default {
|
|
|
288
296
|
if (this.videoData?.roomId) {
|
|
289
297
|
this.handleLeaveRoom();
|
|
290
298
|
this.setMuteAudio(false);
|
|
299
|
+
|
|
300
|
+
this.uniRTC && this.hangUp();
|
|
291
301
|
}
|
|
292
302
|
} else {
|
|
293
303
|
this.$message.warning(data.resultMsg);
|
|
@@ -313,6 +323,15 @@ export default {
|
|
|
313
323
|
this.setMuteAudio(false);
|
|
314
324
|
this.setVideoMembers([]);
|
|
315
325
|
this.setVideoData({});
|
|
326
|
+
// 江苏省
|
|
327
|
+
if (this.uniRTC) {
|
|
328
|
+
if (this.videoData.isCaller || this.videoData.inviteResult == 1) {
|
|
329
|
+
this.stopCall();
|
|
330
|
+
} else {
|
|
331
|
+
// 拒接
|
|
332
|
+
this.refuseCall();
|
|
333
|
+
}
|
|
334
|
+
}
|
|
316
335
|
} else {
|
|
317
336
|
if (data.map.type == 1 && data.map.mode == 2) {
|
|
318
337
|
this.setShowVideo(true);
|
|
@@ -322,6 +341,9 @@ export default {
|
|
|
322
341
|
this.$nextTick(() => {
|
|
323
342
|
this.setRecordId(data.map.recordId);
|
|
324
343
|
});
|
|
344
|
+
// 江苏省接听
|
|
345
|
+
console.log('江苏省接听->videoInviteEnter', this.incoming);
|
|
346
|
+
this.uniRTC && this.acceptCall();
|
|
325
347
|
}
|
|
326
348
|
}
|
|
327
349
|
});
|
|
@@ -14,9 +14,11 @@
|
|
|
14
14
|
<script>
|
|
15
15
|
import { mapGetters, mapMutations } from "../store/helper";
|
|
16
16
|
import fetch, { qs } from "@/utils/chatFetch";
|
|
17
|
+
import uniRTCAPI from './mixins/uniRTCAPI';
|
|
17
18
|
|
|
18
19
|
export default {
|
|
19
20
|
inject: ["store", "i18nText"],
|
|
21
|
+
mixins: [uniRTCAPI],
|
|
20
22
|
props: {
|
|
21
23
|
validTalkingEnv: {
|
|
22
24
|
type: Function
|
|
@@ -119,6 +121,8 @@ export default {
|
|
|
119
121
|
}
|
|
120
122
|
this.disabled = false;
|
|
121
123
|
if (!accept) {
|
|
124
|
+
// 江苏省拒接
|
|
125
|
+
this.uniRTC && this.refuseCall();
|
|
122
126
|
return;
|
|
123
127
|
}
|
|
124
128
|
let res = data.obj || data.map;
|
|
@@ -153,6 +157,8 @@ export default {
|
|
|
153
157
|
"1.9.21"
|
|
154
158
|
)}!`
|
|
155
159
|
);
|
|
160
|
+
// 江苏省接听
|
|
161
|
+
this.uniRTC && this.acceptCall();
|
|
156
162
|
} else {
|
|
157
163
|
let realIndex = this.callings.findIndex(item => item.sessionId === sessionId);
|
|
158
164
|
if (realIndex !== -1) {
|
|
@@ -1357,6 +1357,45 @@ export default {
|
|
|
1357
1357
|
};
|
|
1358
1358
|
</script>
|
|
1359
1359
|
|
|
1360
|
+
<style lang="less">
|
|
1361
|
+
.chat-footer-modal-big {
|
|
1362
|
+
padding: 10px;
|
|
1363
|
+
&.ant-modal-wrap {
|
|
1364
|
+
overflow: none;
|
|
1365
|
+
}
|
|
1366
|
+
.ant-modal {
|
|
1367
|
+
width: 100%;
|
|
1368
|
+
height: 100%;
|
|
1369
|
+
top: 0;
|
|
1370
|
+
padding-bottom: 0;
|
|
1371
|
+
}
|
|
1372
|
+
.ant-modal-content {
|
|
1373
|
+
height: 100%;
|
|
1374
|
+
}
|
|
1375
|
+
.ant-modal-body {
|
|
1376
|
+
height: calc(100% - 55px);
|
|
1377
|
+
}
|
|
1378
|
+
}
|
|
1379
|
+
.chat-footer-modal-small {
|
|
1380
|
+
&.ant-modal-wrap {
|
|
1381
|
+
overflow: none;
|
|
1382
|
+
}
|
|
1383
|
+
.ant-modal {
|
|
1384
|
+
width: 80%;
|
|
1385
|
+
height: 80%;
|
|
1386
|
+
padding-bottom: 0;
|
|
1387
|
+
top: 60px;
|
|
1388
|
+
}
|
|
1389
|
+
.ant-modal-content {
|
|
1390
|
+
height: 100%;
|
|
1391
|
+
}
|
|
1392
|
+
.ant-modal-body {
|
|
1393
|
+
height: 100%;
|
|
1394
|
+
padding: 0;
|
|
1395
|
+
}
|
|
1396
|
+
}
|
|
1397
|
+
|
|
1398
|
+
</style>
|
|
1360
1399
|
<style lang="less" scoped>
|
|
1361
1400
|
.message-operate {
|
|
1362
1401
|
display: flex;
|
|
@@ -1370,8 +1409,8 @@ export default {
|
|
|
1370
1409
|
&::-webkit-scrollbar {
|
|
1371
1410
|
height: 5px;
|
|
1372
1411
|
}
|
|
1373
|
-
> img
|
|
1374
|
-
> .operate-icon {
|
|
1412
|
+
> img {
|
|
1413
|
+
// > .operate-icon {
|
|
1375
1414
|
margin-left: 10px;
|
|
1376
1415
|
}
|
|
1377
1416
|
/deep/ .ant-tabs .ant-tabs-top-content > .ant-tabs-tabpane {
|
|
@@ -1531,7 +1570,8 @@ export default {
|
|
|
1531
1570
|
}
|
|
1532
1571
|
}
|
|
1533
1572
|
.toolbar {
|
|
1534
|
-
margin-left: 10px;
|
|
1573
|
+
// margin-left: 10px;
|
|
1574
|
+
margin: 0 5px;
|
|
1535
1575
|
font-size: 20px;
|
|
1536
1576
|
outline: none;
|
|
1537
1577
|
padding: 6px;
|
|
@@ -34,9 +34,11 @@ import fetch, { qs } from '@/utils/chatFetch';
|
|
|
34
34
|
import vexutils from '@/utils/vexutils';
|
|
35
35
|
import SvgIcon from '@/component/svg/index.vue';
|
|
36
36
|
import { checkTalkingEnv } from '../../utils/index';
|
|
37
|
+
import uniRTCAPI from '../mixins/uniRTCAPI';
|
|
37
38
|
|
|
38
39
|
export default {
|
|
39
40
|
inject: ['store', 'dispatchEvent', 'i18nText'],
|
|
41
|
+
mixins: [uniRTCAPI],
|
|
40
42
|
data() {
|
|
41
43
|
this.stompClient = null;
|
|
42
44
|
return {
|
|
@@ -183,7 +185,8 @@ export default {
|
|
|
183
185
|
]),
|
|
184
186
|
...mapActions({
|
|
185
187
|
getHistoryMsg: 'setMsgList',
|
|
186
|
-
setChatTimer: 'setChatTimer'
|
|
188
|
+
setChatTimer: 'setChatTimer',
|
|
189
|
+
initUniRTC: 'initUniRTC'
|
|
187
190
|
}),
|
|
188
191
|
// 获取视频sdk
|
|
189
192
|
getSdkAppId() {
|
|
@@ -197,6 +200,15 @@ export default {
|
|
|
197
200
|
if (data.result === 'SUCCESS') {
|
|
198
201
|
const { sdkAppId, host, vendor } = data.obj;
|
|
199
202
|
this.setSdkInfo({ sdkAppId, host, vendor });
|
|
203
|
+
// 江苏省
|
|
204
|
+
if (vendor == 3) {
|
|
205
|
+
this.initUniRTC({
|
|
206
|
+
...data.obj,
|
|
207
|
+
params: {
|
|
208
|
+
assemblyId: this.assemblyId,
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
}
|
|
200
212
|
}
|
|
201
213
|
});
|
|
202
214
|
},
|