fl-web-component 0.1.1 → 1.0.1
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/dist/fl-web-component.common.js +14751 -54489
- package/dist/fl-web-component.common.js.map +1 -1
- package/dist/fl-web-component.css +1 -1
- package/dist/fl-web-component.umd.js +14751 -54489
- package/dist/fl-web-component.umd.js.map +1 -1
- package/dist/fl-web-component.umd.min.js +3 -3
- package/dist/fl-web-component.umd.min.js.map +1 -1
- package/package.json +28 -5
- package/packages/components/button/index.vue +18 -17
- package/packages/components/com-card/card-page.vue +51 -49
- package/packages/components/com-card/index.vue +20 -21
- package/packages/components/com-dialogWrapper/index.vue +18 -21
- package/packages/components/com-flcanvas/components/bspline.js +91 -0
- package/packages/components/com-flcanvas/components/entityFormatting.js +503 -0
- package/packages/components/com-flcanvas/components/round10.js +24 -0
- package/packages/components/com-flcanvas/index.vue +259 -0
- package/packages/components/com-formDialog/index.vue +76 -75
- package/packages/components/com-graphics/index.vue +1057 -226
- package/packages/components/com-graphics/per-control.vue +109 -0
- package/packages/components/com-graphics/pid.vue +168 -0
- package/packages/components/com-page/index.vue +33 -33
- package/packages/components/com-selectTree/index.vue +61 -63
- package/packages/components/com-table/column-default.vue +9 -14
- package/packages/components/com-table/column-dynamic.vue +4 -8
- package/packages/components/com-table/column-menu.vue +8 -8
- package/packages/components/com-table/column-slot.vue +4 -4
- package/packages/components/com-table/column.vue +7 -15
- package/packages/components/com-table/config.js +9 -9
- package/packages/components/com-table/index.vue +35 -35
- package/packages/components/com-table/table-page.vue +17 -17
- package/packages/components/com-tabs/index.vue +19 -19
- package/packages/components/com-treeDynamic/index.vue +45 -45
- package/packages/components/model/api/index.js +59 -67
- package/packages/components/model/api/mock/detecttree.js +38 -38
- package/packages/components/model/api/mock/getmodel-line.js +15830 -79332
- package/packages/components/model/api/mock/init.js +1 -1
- package/packages/components/model/api/mock/pbstree.js +486 -495
- package/packages/components/model/components/TextOverTooltip/index.vue +3 -3
- package/packages/components/model/components/annotation-toolbar.vue +4 -19
- package/packages/components/model/components/check-proofing-model.vue +26 -29
- package/packages/components/model/components/clipping-type.vue +22 -14
- package/packages/components/model/components/com-dialogWrapper/index.vue +22 -25
- package/packages/components/model/components/detect-panel.vue +38 -26
- package/packages/components/model/components/detect-tree.vue +9 -24
- package/packages/components/model/components/firstPer-panel.vue +23 -25
- package/packages/components/model/components/header-button.vue +31 -107
- package/packages/components/model/components/imageViewer/index.vue +34 -35
- package/packages/components/model/components/import-model.vue +127 -127
- package/packages/components/model/components/location-panel.vue +25 -29
- package/packages/components/model/components/measure-type.vue +15 -15
- package/packages/components/model/components/pbs-tree.vue +139 -144
- package/packages/components/model/components/proof-config.vue +2 -10
- package/packages/components/model/components/proof-for-pc.vue +35 -32
- package/packages/components/model/components/proof-history.vue +136 -154
- package/packages/components/model/components/proof-panel-detail.vue +166 -165
- package/packages/components/model/components/proof-panel.vue +281 -205
- package/packages/components/model/components/proof-project-user.vue +13 -50
- package/packages/components/model/components/proof-publish.vue +130 -130
- package/packages/components/model/components/proof-role.vue +93 -124
- package/packages/components/model/components/props-panel.vue +63 -54
- package/packages/components/model/index.vue +3225 -3213
- package/packages/components/model/utils/annotation-tool.js +75 -82
- package/packages/components/model/utils/cursor.js +15 -10
- package/packages/components/model/utils/detect-v1.js +23 -35
- package/packages/components/model/utils/index.js +25 -25
- package/packages/components/model/utils/threejs/measure-angle.js +180 -180
- package/packages/components/model/utils/threejs/measure-area.js +196 -184
- package/packages/components/model/utils/threejs/measure-distance.js +154 -152
- package/packages/components/model/utils/threejs/measure-volume.js +64 -61
- package/src/assets/test.png +0 -0
- package/src/assets/worker.glb +0 -0
- package/src/main.js +11 -8
- package/src/utils/flgltf-parser.js +141 -0
- package/src/utils/instance-parser.js +402 -0
- package/src/utils/mock.js +84746 -0
- package/src/utils/threejs/measure-angle.js +240 -0
- package/src/utils/threejs/measure-area.js +249 -0
- package/src/utils/threejs/measure-distance.js +195 -0
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
|
|
4
|
-
<el-button type="text" @click="triggerDialog"
|
|
5
|
-
><i class="pre-img"></i>角色管理</el-button
|
|
6
|
-
>
|
|
3
|
+
<div class="trigger-button">
|
|
4
|
+
<el-button type="text" @click="triggerDialog"><i class="pre-img"></i>角色管理</el-button>
|
|
7
5
|
</div>
|
|
8
6
|
|
|
9
|
-
|
|
7
|
+
<!-- @handleClose="handleClose"
|
|
10
8
|
@submitDialogData="submitDialogData" -->
|
|
11
9
|
|
|
12
|
-
|
|
10
|
+
<com-dialog
|
|
13
11
|
v-if="dialogVisible"
|
|
14
12
|
dialog-title="角色管理"
|
|
15
13
|
:visible="dialogVisible"
|
|
@@ -17,91 +15,82 @@
|
|
|
17
15
|
:footerDisabled="true"
|
|
18
16
|
@handleClose="handleClose"
|
|
19
17
|
>
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
</el-col>
|
|
33
|
-
</el-row>
|
|
18
|
+
<el-row :gutter="10" class="mb8">
|
|
19
|
+
<el-col :span="1.5">
|
|
20
|
+
<el-button
|
|
21
|
+
type="primary"
|
|
22
|
+
icon="el-icon-plus "
|
|
23
|
+
size="small"
|
|
24
|
+
@click="handleAdd"
|
|
25
|
+
v-hasPermi="[`project:role:add:proj:${defaultParams.projectId}`]"
|
|
26
|
+
>新增</el-button
|
|
27
|
+
>
|
|
28
|
+
</el-col>
|
|
29
|
+
</el-row>
|
|
34
30
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
31
|
+
<el-table
|
|
32
|
+
v-loading="loading"
|
|
33
|
+
:data="roleList"
|
|
34
|
+
max-height="65vh"
|
|
35
|
+
@selection-change="handleSelectionChange"
|
|
36
|
+
>
|
|
41
37
|
<el-table-column label="序号" type="index" width="80" />
|
|
42
38
|
<el-table-column
|
|
43
|
-
|
|
39
|
+
label="角色名称"
|
|
44
40
|
width="250"
|
|
45
41
|
prop="roleName"
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
@click="handleDelete(row)"
|
|
84
|
-
>删除</el-button
|
|
85
|
-
>
|
|
86
|
-
</template>
|
|
87
|
-
</template>
|
|
88
|
-
</el-table-column>
|
|
89
|
-
</el-table>
|
|
42
|
+
:show-overflow-tooltip="true"
|
|
43
|
+
/>
|
|
44
|
+
<el-table-column
|
|
45
|
+
label="权限字符"
|
|
46
|
+
prop="roleKey"
|
|
47
|
+
:show-overflow-tooltip="true"
|
|
48
|
+
width="200"
|
|
49
|
+
/>
|
|
50
|
+
<el-table-column label="创建时间" prop="createTime">
|
|
51
|
+
<template slot-scope="scope">
|
|
52
|
+
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
53
|
+
</template>
|
|
54
|
+
</el-table-column>
|
|
55
|
+
<el-table-column label="操作" class-name="small-padding fixed-width">
|
|
56
|
+
<template slot-scope="{ row }">
|
|
57
|
+
<el-button
|
|
58
|
+
v-show="row.projectId"
|
|
59
|
+
v-hasPermi="[`project:role:edit:proj:${projectId}`]"
|
|
60
|
+
size="mini"
|
|
61
|
+
type="text"
|
|
62
|
+
@click="handleUpdate(row)"
|
|
63
|
+
>编辑</el-button
|
|
64
|
+
>
|
|
65
|
+
<!-- builtIn:'0' 内置,'2' 非内置 -->
|
|
66
|
+
<template v-if="row.builtIn === '2'">
|
|
67
|
+
<el-button
|
|
68
|
+
v-show="row.projectId"
|
|
69
|
+
v-hasPermi="[`project:role:remove:proj:${projectId}`]"
|
|
70
|
+
size="mini"
|
|
71
|
+
type="text"
|
|
72
|
+
@click="handleDelete(row)"
|
|
73
|
+
>删除</el-button
|
|
74
|
+
>
|
|
75
|
+
</template>
|
|
76
|
+
</template>
|
|
77
|
+
</el-table-column>
|
|
78
|
+
</el-table>
|
|
90
79
|
|
|
91
|
-
|
|
80
|
+
<!-- <pagination
|
|
92
81
|
v-show="total > 0"
|
|
93
82
|
:total="total"
|
|
94
83
|
:page.sync="queryParams.pageNum"
|
|
95
84
|
:limit.sync="queryParams.pageSize"
|
|
96
85
|
@pagination="getList"
|
|
97
86
|
/> -->
|
|
98
|
-
|
|
87
|
+
</com-dialog>
|
|
99
88
|
<!-- 新增或编辑角色配置对话框 -->
|
|
100
|
-
|
|
101
|
-
|
|
89
|
+
<!-- append-to-body -->
|
|
90
|
+
<!-- :close-on-click-modal="false" -->
|
|
102
91
|
<com-dialog
|
|
103
|
-
|
|
104
|
-
|
|
92
|
+
v-if="dialogOperate.visible"
|
|
93
|
+
:dialog-title="title"
|
|
105
94
|
:visible="dialogOperate.visible"
|
|
106
95
|
width="500px"
|
|
107
96
|
@handleClose="handleOperateClose"
|
|
@@ -109,11 +98,7 @@
|
|
|
109
98
|
>
|
|
110
99
|
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
|
111
100
|
<el-form-item label="角色名称" prop="roleName">
|
|
112
|
-
<el-input
|
|
113
|
-
v-trim
|
|
114
|
-
v-model="form.roleName"
|
|
115
|
-
placeholder="请输入角色名称"
|
|
116
|
-
/>
|
|
101
|
+
<el-input v-trim v-model="form.roleName" placeholder="请输入角色名称" />
|
|
117
102
|
</el-form-item>
|
|
118
103
|
<el-form-item prop="roleKey">
|
|
119
104
|
<span slot="label">
|
|
@@ -125,11 +110,7 @@
|
|
|
125
110
|
</el-tooltip>
|
|
126
111
|
权限字符
|
|
127
112
|
</span>
|
|
128
|
-
<el-input
|
|
129
|
-
v-trim
|
|
130
|
-
v-model="form.roleKey"
|
|
131
|
-
placeholder="请输入权限字符"
|
|
132
|
-
/>
|
|
113
|
+
<el-input v-trim v-model="form.roleKey" placeholder="请输入权限字符" />
|
|
133
114
|
</el-form-item>
|
|
134
115
|
<!-- <el-form-item label="角色顺序" prop="roleSort">
|
|
135
116
|
<el-input-number
|
|
@@ -141,19 +122,13 @@
|
|
|
141
122
|
/>
|
|
142
123
|
</el-form-item> -->
|
|
143
124
|
<el-form-item label="菜单权限">
|
|
144
|
-
<el-checkbox
|
|
145
|
-
v-model="menuExpand"
|
|
146
|
-
@change="handleCheckedTreeExpand($event)"
|
|
125
|
+
<el-checkbox v-model="menuExpand" @change="handleCheckedTreeExpand($event)"
|
|
147
126
|
>展开/折叠</el-checkbox
|
|
148
127
|
>
|
|
149
|
-
<el-checkbox
|
|
150
|
-
v-model="menuNodeAll"
|
|
151
|
-
@change="handleCheckedTreeNodeAll($event)"
|
|
128
|
+
<el-checkbox v-model="menuNodeAll" @change="handleCheckedTreeNodeAll($event)"
|
|
152
129
|
>全选/全不选</el-checkbox
|
|
153
130
|
>
|
|
154
|
-
<el-checkbox
|
|
155
|
-
v-model="form.menuCheckStrictly"
|
|
156
|
-
@change="handleCheckedTreeConnect($event)"
|
|
131
|
+
<el-checkbox v-model="form.menuCheckStrictly" @change="handleCheckedTreeConnect($event)"
|
|
157
132
|
>父子联动</el-checkbox
|
|
158
133
|
>
|
|
159
134
|
<el-tree
|
|
@@ -177,7 +152,7 @@
|
|
|
177
152
|
></el-input>
|
|
178
153
|
</el-form-item>
|
|
179
154
|
</el-form>
|
|
180
|
-
|
|
155
|
+
</com-dialog>
|
|
181
156
|
</div>
|
|
182
157
|
</template>
|
|
183
158
|
|
|
@@ -192,7 +167,7 @@ export default {
|
|
|
192
167
|
return this.defaultParams.projectId;
|
|
193
168
|
},
|
|
194
169
|
},
|
|
195
|
-
|
|
170
|
+
components: {
|
|
196
171
|
ComDialog: () => import('./com-dialogWrapper'),
|
|
197
172
|
},
|
|
198
173
|
watch: {
|
|
@@ -201,7 +176,7 @@ export default {
|
|
|
201
176
|
// this.getList();
|
|
202
177
|
// },
|
|
203
178
|
},
|
|
204
|
-
|
|
179
|
+
props: {
|
|
205
180
|
defaultParams: {
|
|
206
181
|
type: Object,
|
|
207
182
|
default() {
|
|
@@ -211,11 +186,11 @@ export default {
|
|
|
211
186
|
},
|
|
212
187
|
data() {
|
|
213
188
|
return {
|
|
214
|
-
|
|
215
|
-
|
|
189
|
+
dialogVisible: false,
|
|
190
|
+
dialogOperate: {
|
|
216
191
|
visible: false,
|
|
217
192
|
},
|
|
218
|
-
|
|
193
|
+
// 遮罩层
|
|
219
194
|
loading: true,
|
|
220
195
|
// 选中数组
|
|
221
196
|
ids: [],
|
|
@@ -261,9 +236,7 @@ export default {
|
|
|
261
236
|
{ required: true, message: '角色名称不能为空', trigger: 'change' },
|
|
262
237
|
{ max: 16, message: '角色名称不能大于16个字符', trigger: 'change' },
|
|
263
238
|
],
|
|
264
|
-
roleKey: [
|
|
265
|
-
{ required: true, message: '权限字符不能为空', trigger: 'change' },
|
|
266
|
-
],
|
|
239
|
+
roleKey: [{ required: true, message: '权限字符不能为空', trigger: 'change' }],
|
|
267
240
|
// roleSort: [
|
|
268
241
|
// { required: true, message: "角色顺序不能为空", trigger: "change" },
|
|
269
242
|
// {
|
|
@@ -280,7 +253,7 @@ export default {
|
|
|
280
253
|
this.getList();
|
|
281
254
|
},
|
|
282
255
|
methods: {
|
|
283
|
-
|
|
256
|
+
triggerDialog() {
|
|
284
257
|
this.dialogVisible = !this.dialogVisible;
|
|
285
258
|
console.log(this.dialogVisible);
|
|
286
259
|
},
|
|
@@ -293,13 +266,11 @@ export default {
|
|
|
293
266
|
const projectId = this.defaultParams.projectId;
|
|
294
267
|
// console.log(this.defaultParams);
|
|
295
268
|
this.loading = true;
|
|
296
|
-
modelApi
|
|
297
|
-
.
|
|
298
|
-
.
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
this.loading = false;
|
|
302
|
-
});
|
|
269
|
+
modelApi.getRoleList({ projectId }).then((response) => {
|
|
270
|
+
this.roleList = response.rows;
|
|
271
|
+
this.total = response.total;
|
|
272
|
+
this.loading = false;
|
|
273
|
+
});
|
|
303
274
|
},
|
|
304
275
|
// 查询菜单树结构
|
|
305
276
|
getMenuTreeselect() {
|
|
@@ -322,12 +293,10 @@ export default {
|
|
|
322
293
|
},
|
|
323
294
|
// 根据角色ID查询菜单树结构
|
|
324
295
|
getRoleMenuTreeselect(roleId) {
|
|
325
|
-
return proRole
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
return response;
|
|
330
|
-
});
|
|
296
|
+
return proRole.roleMenuTreeselect(this.projectId, roleId).then((response) => {
|
|
297
|
+
this.menuOptions = response.menus;
|
|
298
|
+
return response;
|
|
299
|
+
});
|
|
331
300
|
},
|
|
332
301
|
// 取消按钮
|
|
333
302
|
cancel() {
|
|
@@ -414,7 +383,7 @@ export default {
|
|
|
414
383
|
},
|
|
415
384
|
// 编辑按钮操作
|
|
416
385
|
handleUpdate(row) {
|
|
417
|
-
|
|
386
|
+
this.dialogOperate.visible = true;
|
|
418
387
|
this.reset();
|
|
419
388
|
const roleId = row.roleId || this.ids;
|
|
420
389
|
const roleMenu = this.getRoleMenuTreeselect(roleId);
|
|
@@ -472,8 +441,8 @@ export default {
|
|
|
472
441
|
const roleIds = row.roleId || this.ids.join(',');
|
|
473
442
|
const roleNames = row.roleName || this.roleNames;
|
|
474
443
|
this.$confirm('确认删除角色 "' + roleNames + '"?', '移除', {
|
|
475
|
-
|
|
476
|
-
|
|
444
|
+
type: 'error',
|
|
445
|
+
})
|
|
477
446
|
.then(() => {
|
|
478
447
|
this.$modal.loading('正在删除,请稍候...');
|
|
479
448
|
proRole
|
|
@@ -498,7 +467,7 @@ export default {
|
|
|
498
467
|
{
|
|
499
468
|
...this.queryParams,
|
|
500
469
|
},
|
|
501
|
-
`role_${new Date().getTime()}.xlsx
|
|
470
|
+
`role_${new Date().getTime()}.xlsx`,
|
|
502
471
|
);
|
|
503
472
|
},
|
|
504
473
|
// 校验排序
|
|
@@ -532,4 +501,4 @@ export default {
|
|
|
532
501
|
background-size: cover;
|
|
533
502
|
}
|
|
534
503
|
}
|
|
535
|
-
</style>
|
|
504
|
+
</style>
|
|
@@ -2,11 +2,15 @@
|
|
|
2
2
|
<div class="box-card" style="height: calc(100vh - 134px)">
|
|
3
3
|
<div class="box-title">
|
|
4
4
|
<span class="box-title-desc">属性</span>
|
|
5
|
-
<i
|
|
5
|
+
<i
|
|
6
|
+
class="el-icon-close box-title-close"
|
|
7
|
+
style="cursor: pointer"
|
|
8
|
+
@click="$emit('rightOperation', 'property')"
|
|
9
|
+
/>
|
|
6
10
|
</div>
|
|
7
11
|
|
|
8
12
|
<el-scrollbar>
|
|
9
|
-
<el-card class="" ref="card" id=
|
|
13
|
+
<el-card class="" ref="card" id="box-card">
|
|
10
14
|
<el-collapse class="property-box" v-model="activeNames">
|
|
11
15
|
<el-collapse-item name="基本信息">
|
|
12
16
|
<template slot="title">
|
|
@@ -15,7 +19,11 @@
|
|
|
15
19
|
</div>
|
|
16
20
|
</template>
|
|
17
21
|
<div v-if="propDataLength">
|
|
18
|
-
<div
|
|
22
|
+
<div
|
|
23
|
+
v-for="(value, name, index) in propData"
|
|
24
|
+
:key="index"
|
|
25
|
+
class="text item info-item"
|
|
26
|
+
>
|
|
19
27
|
<p class="property-key" :title="name">{{ name }}</p>
|
|
20
28
|
<p class="property-value" :title="value">{{ value }}</p>
|
|
21
29
|
</div>
|
|
@@ -28,7 +36,7 @@
|
|
|
28
36
|
</div>
|
|
29
37
|
</template>
|
|
30
38
|
<script>
|
|
31
|
-
import * as modelApi from '../api/index'
|
|
39
|
+
import * as modelApi from '../api/index';
|
|
32
40
|
export default {
|
|
33
41
|
name: 'Details',
|
|
34
42
|
// props: {
|
|
@@ -58,18 +66,18 @@ export default {
|
|
|
58
66
|
docData: [],
|
|
59
67
|
otherData: [],
|
|
60
68
|
activeNames: ['基本信息'],
|
|
61
|
-
}
|
|
69
|
+
};
|
|
62
70
|
},
|
|
63
71
|
computed: {
|
|
64
72
|
propDataLength() {
|
|
65
|
-
return Object.keys(this.propData).length
|
|
66
|
-
}
|
|
73
|
+
return Object.keys(this.propData).length;
|
|
74
|
+
},
|
|
67
75
|
},
|
|
68
76
|
methods: {
|
|
69
77
|
// 通过entityId获取图元的属性 图元的id 项目的id
|
|
70
|
-
getModelProperty({propertyGroup, modelId}) {
|
|
71
|
-
const property = propertyGroup[modelId]
|
|
72
|
-
this.$set(this, 'propData', property ? property : {})
|
|
78
|
+
getModelProperty({ propertyGroup, modelId }) {
|
|
79
|
+
const property = propertyGroup[modelId];
|
|
80
|
+
this.$set(this, 'propData', property ? property : {});
|
|
73
81
|
// modelApi.getModelProperty(params).then(res => {
|
|
74
82
|
// // if(this.lodash.isEmpty(res)) {
|
|
75
83
|
// // this.$message({type: 'warning', message: '暂无属性数据'})
|
|
@@ -84,32 +92,32 @@ export default {
|
|
|
84
92
|
// // this.propData.splice(0)
|
|
85
93
|
// // this.docData.splice(0)
|
|
86
94
|
// // this.$message({type: 'error', message: err.msg})
|
|
87
|
-
// })
|
|
95
|
+
// })
|
|
88
96
|
},
|
|
89
97
|
// 清空属性信息
|
|
90
98
|
resetProperties() {
|
|
91
99
|
// this.basicData.splice(0)
|
|
92
|
-
this.propData = {}
|
|
100
|
+
this.propData = {};
|
|
93
101
|
// this.docData.splice(0)
|
|
94
102
|
},
|
|
95
103
|
// 预览
|
|
96
104
|
handleView(data) {
|
|
97
|
-
const url = data.split(',')[0]
|
|
98
|
-
window.open(url)
|
|
105
|
+
const url = data.split(',')[0];
|
|
106
|
+
window.open(url);
|
|
99
107
|
// window.open('http://view.officeapps.live.com/op/view.aspx?src='+ url)
|
|
100
|
-
}
|
|
108
|
+
},
|
|
101
109
|
},
|
|
102
110
|
destroyed() {
|
|
103
|
-
window.onresize = null
|
|
104
|
-
}
|
|
105
|
-
}
|
|
111
|
+
window.onresize = null;
|
|
112
|
+
},
|
|
113
|
+
};
|
|
106
114
|
</script>
|
|
107
115
|
<style lang="scss" scoped>
|
|
108
|
-
.box-title{
|
|
116
|
+
.box-title {
|
|
109
117
|
font-size: 16px;
|
|
110
118
|
// color: #fff;
|
|
111
119
|
}
|
|
112
|
-
.details-box{
|
|
120
|
+
.details-box {
|
|
113
121
|
// position: fixed;
|
|
114
122
|
// height: calc(100% - 200px);
|
|
115
123
|
width: 300px;
|
|
@@ -122,12 +130,12 @@ export default {
|
|
|
122
130
|
box-sizing: border-box;
|
|
123
131
|
z-index: 10;
|
|
124
132
|
}
|
|
125
|
-
.box-card{
|
|
133
|
+
.box-card {
|
|
126
134
|
padding-top: 0;
|
|
127
135
|
padding-bottom: 0;
|
|
128
136
|
background: #fff;
|
|
129
137
|
width: 300px;
|
|
130
|
-
.box-title{
|
|
138
|
+
.box-title {
|
|
131
139
|
display: flex;
|
|
132
140
|
justify-content: space-between;
|
|
133
141
|
align-items: center;
|
|
@@ -136,114 +144,115 @@ export default {
|
|
|
136
144
|
padding-left: 8px;
|
|
137
145
|
padding-right: 8px;
|
|
138
146
|
border-bottom: 1px solid #dfdfdf;
|
|
139
|
-
.box-title-desc{
|
|
147
|
+
.box-title-desc {
|
|
140
148
|
font-size: 14px;
|
|
141
149
|
font-weight: bold;
|
|
142
150
|
}
|
|
143
|
-
.box-title-close{
|
|
151
|
+
.box-title-close {
|
|
144
152
|
font-size: 24px;
|
|
145
153
|
}
|
|
146
154
|
}
|
|
147
155
|
}
|
|
148
|
-
#box-card{
|
|
156
|
+
#box-card {
|
|
149
157
|
border-bottom: none;
|
|
150
158
|
}
|
|
151
|
-
::v-deep .el-card__body{
|
|
159
|
+
::v-deep .el-card__body {
|
|
152
160
|
height: 100%;
|
|
153
161
|
overflow: auto;
|
|
154
162
|
padding: 0;
|
|
155
163
|
}
|
|
156
|
-
.title{
|
|
164
|
+
.title {
|
|
157
165
|
font-size: 16px;
|
|
158
166
|
}
|
|
159
|
-
::v-deep .el-collapse-item__content{
|
|
167
|
+
::v-deep .el-collapse-item__content {
|
|
160
168
|
padding-bottom: 0px;
|
|
161
169
|
}
|
|
162
|
-
.text{
|
|
170
|
+
.text {
|
|
163
171
|
font-size: 12px;
|
|
164
172
|
// color: #fff;
|
|
165
173
|
}
|
|
166
|
-
.item{
|
|
174
|
+
.item {
|
|
167
175
|
padding: 5px;
|
|
168
|
-
span{
|
|
169
|
-
word-break: break-all
|
|
176
|
+
span {
|
|
177
|
+
word-break: break-all;
|
|
170
178
|
}
|
|
171
179
|
}
|
|
172
|
-
.info-item{
|
|
180
|
+
.info-item {
|
|
173
181
|
display: grid;
|
|
174
|
-
grid-template-columns: 55% 45
|
|
182
|
+
grid-template-columns: 55% 45%;
|
|
175
183
|
}
|
|
176
|
-
.property-box{
|
|
184
|
+
.property-box {
|
|
177
185
|
margin-bottom: 10px;
|
|
178
|
-
.title-content{
|
|
186
|
+
.title-content {
|
|
179
187
|
padding-left: 10px;
|
|
180
188
|
}
|
|
181
189
|
}
|
|
182
|
-
.property-title{
|
|
190
|
+
.property-title {
|
|
183
191
|
line-height: 24px;
|
|
184
192
|
font-size: 14px;
|
|
185
193
|
// color: #fff;
|
|
186
194
|
border-bottom: 1px solid #fff;
|
|
187
195
|
margin-bottom: 10px;
|
|
188
196
|
}
|
|
189
|
-
.empty-tips{
|
|
197
|
+
.empty-tips {
|
|
190
198
|
// color: #fff;
|
|
191
199
|
text-align: center;
|
|
192
200
|
}
|
|
193
|
-
::v-deep .has-gutter{
|
|
201
|
+
::v-deep .has-gutter {
|
|
194
202
|
background: rgba(44, 76, 124, 0.2);
|
|
195
203
|
}
|
|
196
|
-
::v-deep .el-collapse{
|
|
204
|
+
::v-deep .el-collapse {
|
|
197
205
|
border-top: none;
|
|
198
206
|
}
|
|
199
|
-
::v-deep .el-collapse-item__header{
|
|
207
|
+
::v-deep .el-collapse-item__header {
|
|
200
208
|
height: 36px;
|
|
201
209
|
line-height: 36px;
|
|
202
|
-
background: #
|
|
210
|
+
background: #f4f7fa;
|
|
203
211
|
// color: #fff;
|
|
204
212
|
font-size: 14px;
|
|
205
213
|
}
|
|
206
|
-
::v-deep .el-collapse-item__wrap{
|
|
214
|
+
::v-deep .el-collapse-item__wrap {
|
|
207
215
|
padding: 0 10px;
|
|
208
216
|
border-bottom: none;
|
|
209
217
|
// background: rgba(30, 30, 30, 0.6);
|
|
210
218
|
}
|
|
211
|
-
::v-deep .el-collapse-item__arrow{
|
|
212
|
-
|
|
219
|
+
::v-deep .el-collapse-item__arrow {
|
|
220
|
+
margin: 0 20px 0 auto;
|
|
213
221
|
}
|
|
214
|
-
.collapse-img{
|
|
222
|
+
.collapse-img {
|
|
215
223
|
display: inline-block;
|
|
216
224
|
vertical-align: middle;
|
|
217
225
|
margin-right: 10px;
|
|
218
226
|
}
|
|
219
|
-
.doc-item{
|
|
227
|
+
.doc-item {
|
|
220
228
|
display: flex;
|
|
221
229
|
flex-direction: row;
|
|
222
230
|
}
|
|
223
|
-
.doc-name{
|
|
231
|
+
.doc-name {
|
|
224
232
|
flex: 1;
|
|
225
233
|
white-space: nowrap;
|
|
226
234
|
text-overflow: ellipsis;
|
|
227
235
|
overflow: hidden;
|
|
228
236
|
}
|
|
229
|
-
.view-doc{
|
|
237
|
+
.view-doc {
|
|
230
238
|
width: 40px;
|
|
231
239
|
text-align: center;
|
|
232
|
-
color: #
|
|
240
|
+
color: #3afdff;
|
|
233
241
|
cursor: pointer;
|
|
234
242
|
}
|
|
235
|
-
.property-key
|
|
243
|
+
.property-key,
|
|
244
|
+
.property-value {
|
|
236
245
|
word-wrap: break-word;
|
|
237
246
|
word-break: break-all;
|
|
238
247
|
white-space: nowrap;
|
|
239
248
|
overflow: hidden;
|
|
240
|
-
text-overflow:ellipsis;
|
|
249
|
+
text-overflow: ellipsis;
|
|
241
250
|
margin: 0;
|
|
242
251
|
}
|
|
243
|
-
.property-value{
|
|
252
|
+
.property-value {
|
|
244
253
|
text-indent: 5px;
|
|
245
254
|
}
|
|
246
|
-
::v-deep .el-scrollbar{
|
|
255
|
+
::v-deep .el-scrollbar {
|
|
247
256
|
height: calc(100% - 53px);
|
|
248
257
|
}
|
|
249
258
|
</style>
|