cloud-web-corejs 1.0.54-dev.560 → 1.0.54-dev.562

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.
@@ -1,1032 +0,0 @@
1
- <template>
2
- <div class="index-home">
3
- <el-row>
4
- <el-col :span="8">
5
- <div class="i-user-info">
6
- <img class="img" v-if="headPhotoUrl" :src="headPhotoUrl"/>
7
- <p class="name">{{ $t1('您好') }},{{ userInfo.nickName }}</p>
8
- <p>{{ companyInfo.companyName }}</p>
9
- </div>
10
- <!-- <div class="notice-box">
11
- <div class="txt" @click="openMoreNotifyMessage()">
12
- <i class="iconfont icon-xiaoxitongzhi"></i>
13
- <span v-if="unreadMessageNum>0"
14
- v-html="$t1('您 有{number}条 未读消息,请及时查看。',{number: `<b>${(unreadMessageNum > 99 ? '99+' : unreadMessageNum)}</b>`})">
15
- </span>
16
- <span v-else-if="unreadMessageNum==0">
17
- {{ $t1('您 暂无 未读消息。') }}
18
- </span>
19
- </div>
20
- <el-tooltip class="item" effect="dark" :content="$t1('刷新')" placement="top">
21
- <el-button type="text" @click="getUnreadMessageNum(true)"><i class="el-icon-refresh"></i></el-button>
22
- </el-tooltip>
23
- <el-tooltip class="item" effect="dark" :content="$t1('查看更多')" placement="top">
24
- <el-button type="text" @click="openMoreNotifyMessage()" class="more">
25
- <i class="el-icon-news"></i>
26
- </el-button>
27
- </el-tooltip>
28
- </div> -->
29
- <el-card class="box-card">
30
- <div slot="header" class="clearfix">
31
- <span style="float:left">
32
- <i class="el-icon-chat-line-round ico"></i>
33
- {{ $t1('公告') }}
34
- </span>
35
- <el-button type="text" @click="openSystemNoticeDialog()"><span class="more">MORE+</span></el-button>
36
- </div>
37
- <div class="home-notice-list">
38
- <div v-for="(systemNotice,index) in systemNotices" :key="index" class="item"
39
- @click="openSystemNoticeDialog(systemNotice)"
40
- :title="systemNotice.title">
41
- {{ systemNotice.title }}
42
- <span class="time">{{ systemNotice.modifyDate.substring(0, 10) }}</span>
43
- </div>
44
- </div>
45
- </el-card>
46
- </el-col>
47
- <el-col :span="homeConfig.toDoSpan || 16" style="padding-left:6px;">
48
- <el-card class="box-card">
49
- <div slot="header" class="clearfix">
50
- <span style="float:left">
51
- <i class="el-icon-chat-line-round ico"></i>
52
- {{ $t1('待办事项') }}
53
- </span>
54
- <el-tooltip class="item" effect="dark" :content="$t1('刷新')" placement="top">
55
- <el-button type="text" @click="getWfInfoList(true)" class="more" style="right:107px">
56
- <i class="el-icon-refresh"></i>
57
- </el-button>
58
- </el-tooltip>
59
- <el-button type="text" @click="toWfManageList" class="more">
60
- <i class="el-icon-news"></i>
61
- <span>{{ $t1('查看更多+') }}</span>
62
- </el-button>
63
- </div>
64
- <div class="need-to">
65
- <vxe-grid :data="unDoWfRows" ref="table-wf" v-bind="wfOption"
66
- @resizable-change="$vxeTableUtil.onColumnWitchChange"
67
- @custom="$vxeTableUtil.customHandle"></vxe-grid>
68
- </div>
69
- </el-card>
70
- </el-col>
71
- </el-row>
72
- <el-row>
73
- <el-col :span="24" v-show="homeConfig.showFastTrack!==false">
74
- <el-card class="box-card">
75
- <div slot="header" class="clearfix">
76
- <span style="float:left">
77
- <i class="el-icon-star-off ico"></i>
78
- {{ $t1('快捷通道') }}
79
- </span>
80
- <el-button type="text" @click="showCommMenuDialog = true"><span class="more">MORE+</span></el-button>
81
- </div>
82
- <div class="fast-box">
83
- <div class="item" v-for="commMenu in commMenus" :key="commMenu.id">
84
- <a href="javascript:void(0);" @click="rourteTo(commMenu)">
85
- <p><i :class="!!commMenu.menuImg?('iconfont '+commMenu.menuImg):null"></i><span>{{
86
- commMenu.menuName
87
- }}</span></p>
88
- </a>
89
- </div>
90
- </div>
91
- </el-card>
92
- </el-col>
93
-
94
- <el-col :span="24">
95
- <el-card class="box-card">
96
- <div slot="header" class="clearfix">
97
- <span style="float:left">
98
- <i class="el-icon-message ico"></i>
99
- 系统通知
100
- </span>
101
- <el-button type="text" @click="openNotifyTemplateGroupDialog" class="more" style="right:100px">
102
- <i class="el-icon-receiving"></i>
103
- <span>选择分组</span>
104
- </el-button>
105
- <el-button type="text" @click="openMoreNotifyMessage()" class="more">
106
- <i class="el-icon-news"></i>
107
- <span>查看更多+</span>
108
- </el-button>
109
- </div>
110
- <div class="home-notice-list to-reed" style="height: calc(100vh - 484px);">
111
- <div v-for="(notifyMessage,index) in notifyMessages" class="item"
112
- :class="{noread:notifyMessage.readed == 0}"
113
- :title="notifyMessage.content" @click="checkNotifyMessage(notifyMessage,index)">
114
- <div class="clearfix">
115
- <el-tag type="warning">{{
116
- notifyMessage.notifyTypeName
117
- }}
118
- </el-tag>
119
- <span class="time">{{
120
- notifyMessage.createDate
121
- }}</span>
122
- <div class="btns fr">
123
- <el-link type="primary" @click.stop="openNotifyMessageDialog(notifyMessage)"><i class="el-icon-files"></i>
124
- </el-link>
125
- </div>
126
- </div>
127
- <span class="name">{{ notifyMessage.content }}</span>
128
- </div>
129
- </div>
130
- </el-card>
131
- </el-col>
132
- </el-row>
133
- <slot></slot>
134
- <systemNoticeInfoDialog v-if="showSystemNoticeInfoDialog" :visiable.sync="showSystemNoticeInfoDialog"
135
- :param="csnRow" :appendToTop="true"></systemNoticeInfoDialog>
136
-
137
- <commMenuDialog v-if="showCommMenuDialog" :visiable.sync="showCommMenuDialog"
138
- @confirm="commMenuCallBack"></commMenuDialog>
139
- <wfContentDialog v-if="showWfDialog" :visible.sync="showWfDialog" @close="wfClose"
140
- :option.sync="wfContentOption"></wfContentDialog>
141
-
142
- <notifyMessageDialog ref="notifyMessageDialog"></notifyMessageDialog>
143
-
144
- <notifyMessageInfoDialog v-if="showNoticeDialog" :visiable.sync="showNoticeDialog"
145
- :dataId.sync="notifyMessageInfoId"
146
- @readHanlde="notifyMessageReadHanlde"></notifyMessageInfoDialog>
147
-
148
-
149
- <el-dialog
150
- :title="$t1('选择分组')"
151
- :append-to-body="true"
152
- :modal-append-to-body="true"
153
- :close-on-click-modal="false"
154
- v-if="showGroupDialog"
155
- :visible.sync="showGroupDialog"
156
- :modal="false"
157
- custom-class="el-dialog dialog-style list-dialog"
158
- width="355px"
159
- :destroy-on-close="true"
160
- >
161
- <div class="cont group-list">
162
- <div class="item" v-for="(notifyTemplate,index) in notifyTemplates" :key="index"
163
- @click="openMoreNotifyMessage(notifyTemplate.notifyType)">
164
- <i class="iconfont icon-fenzu"></i>
165
- <span class="name">{{ notifyTemplate.ntName }}</span>
166
- <!-- <span class="nums">99+</span>-->
167
- </div>
168
- </div>
169
- </el-dialog>
170
-
171
- </div>
172
- </template>
173
-
174
- <script>
175
- import systemNoticeInfoDialog from '@base/views/user/system_notice/infoDialog.vue';
176
- import commMenuDialog from '@base/views/user/commMenu/index.vue';
177
- import notifyMessageDialog from '@base/views/user/notify_message/dialog.vue';
178
- import notifyMessageInfoDialog from '@base/views/user/notify_message/infoDialog';
179
-
180
- import {getToken} from "@base/utils/auth";
181
- import wfContentDialog from "@base/views/user/wf/wf_manage/wfContentDialog";
182
- import corejsConfig from "@/corejsConfig";
183
-
184
- export default {
185
- name: 'home',
186
- props: {
187
- wf_manage_url: String
188
- },
189
- components: {
190
- systemNoticeInfoDialog,
191
- commMenuDialog,
192
- notifyMessageDialog,
193
- notifyMessageInfoDialog,
194
- wfContentDialog
195
- },
196
- data() {
197
- return {
198
- showNoticeDialog: false,
199
- showGroupDialog: false,
200
- notifyTemplates: [],
201
- userInfo: {},
202
- companyInfo: {},
203
- systemNotices: [],
204
- showSystemNoticeInfoDialog: false,
205
- csnRow: null,
206
- headPhotoUrl: '',
207
- dialogVisible: true,
208
- unDoWfRows: [],
209
- wfOption: {},
210
- showWfDialog: false,
211
- wfContentOption: {},
212
- showWfContent: true,
213
- wfContent: null,
214
- wfDataId: '',
215
- showCommMenuDialog: false,
216
- commMenus: [],
217
- notifyMessages: [],
218
- notifyMessageInfoIndex: null,
219
- notifyMessageInfoId: null,
220
- unreadMessageNum: 0,
221
- activating: true,
222
- wfTimer: null,
223
- homeConfig: corejsConfig.homeConfig || {}
224
- };
225
- },
226
- activated() {
227
- this.activating = true;
228
- if (this.wfTimer) {
229
- this.timerExcFun(true);
230
- }
231
- },
232
- deactivated() {
233
- this.activating = false;
234
- },
235
- beforeDestroy() {
236
- this.clearTimer();
237
- },
238
- created() {
239
- this.handlePcPRedirectUrl();
240
- this.getUserInfo();
241
- this.initSystemNotice();
242
- this.initCommMenu();
243
- this.initNotifyMessage();
244
- this.initWfParam();
245
- this.initWfTimer();
246
- },
247
- methods: {
248
- handlePcPRedirectUrl(){
249
- let pcpRedirectUrl = sessionStorage.getItem("pcpRedirectUrl")
250
- if(pcpRedirectUrl){
251
- sessionStorage.removeItem("pcpRedirectUrl")
252
- location.href=pcpRedirectUrl;
253
- }
254
- },
255
- wfClose() {
256
- this.timerExcFun(true);
257
- },
258
- initWfTimer() {
259
- this.wfTimer = setInterval(() => {
260
- this.timerExcFun(false);
261
- }, 10000);
262
- this.timerExcFun(true);
263
- },
264
- timerExcFun(isLoading) {
265
- if (!this.activating) {
266
- return;
267
- }
268
- this.getWfInfoList(isLoading);
269
- this.getUnreadMessageNum(isLoading);
270
- this.$emit('timerHandle')
271
- },
272
- clearTimer() {
273
- clearInterval(this.wfTimer);
274
- this.wfTimer = null;
275
- },
276
- getUserInfo() {
277
- this.$http({
278
- url: USER_PREFIX + '/user/currentUser',
279
- method: 'post',
280
- success: res => {
281
- let userInfo = res.objx;
282
- this.headPhotoUrl = userInfo.headPhotoUrl ? userInfo.headPhotoUrl : require('@/resources/images' + '/default-header.png');
283
-
284
- this.userInfo = userInfo;
285
- }
286
- });
287
- this.$http({
288
- url: USER_PREFIX + '/company_info/getCurrent',
289
- method: `post`,
290
- success: res => {
291
- this.companyInfo = res.objx || {};
292
- }
293
- });
294
- },
295
- initSystemNotice() {
296
- this.$http({
297
- url: USER_PREFIX + '/system_notice/listPage',
298
- data: {publish: true, searchCount: false},
299
- method: 'post',
300
- success: res => {
301
- this.systemNotices = res.objx && res.objx.records ? res.objx.records : [];
302
- }
303
- });
304
- },
305
- openSystemNoticeDialog(row) {
306
- this.csnRow = row || null;
307
- this.showSystemNoticeInfoDialog = true;
308
- },
309
- initUnDoWfInfo() {
310
- this.$http({
311
- url: AGILEBPM_PREFIX + '/wf_manage/listPage',
312
- data: {type: 0, searchCount: false},
313
- method: 'post',
314
- success: res => {
315
- this.unDoWfRows = res.objx.records || [];
316
- }
317
- });
318
- },
319
- initWfTableList() {
320
- let that = this;
321
- let paramColumns = this.wfParamDTOs.map(item => {
322
- return {
323
- title: this.$t1(item.paramName),
324
- field: item.paramKey,
325
- width: 150
326
- };
327
- })
328
- var statuses = {running: this.$t1('审核中'), back: this.$t1('已驳回'), end: this.$t1('已完成')};
329
- let tableOption = {
330
- vue: this,
331
- tableRef: 'table-wf',
332
- tableName: 'home-table-wf',
333
- config: {
334
- height: 'auto'
335
- },
336
- columns: [
337
- {type: 'checkbox', width: 48, resizable: false, fixed: 'left'},
338
- {
339
- title: this.$t1('单据类型'),
340
- field: 'objTypeName',
341
- width: 150,
342
- fixed: 'left'
343
- },
344
- {
345
- title: this.$t1('流程主题'),
346
- field: 'name',
347
- width: 150
348
- },
349
- {
350
- title: this.$t1('启动人'),
351
- field: 'starterName',
352
- width: 150
353
- },
354
- {
355
- title: this.$t1('当前任务'),
356
- field: 'taskName',
357
- width: 150
358
- },
359
- {
360
- title: this.$t1('当前任务用户'),
361
- field: 'candidateNames',
362
- width: 150
363
- },
364
- {
365
- title: this.$t1('启动时间'),
366
- field: 'createDate',
367
- width: 150
368
- },
369
- ...paramColumns,
370
- {
371
- width: 47,
372
- fixed: 'right',
373
- title: '',
374
- sortable: false,
375
- slots: {
376
- default: ({row}) => {
377
- return [
378
- <a
379
- href="javascript:void(0);"
380
- class="a-link"
381
- onclick={() => {
382
- this.openWfDialog(row);
383
- }}
384
- >
385
- <el-tooltip enterable={false} effect="dark" content={this.$t1('查看')} placement="top"
386
- popper-class="tooltip-skin">
387
- <i class="el-icon-edit"/>
388
- </el-tooltip>
389
- </a>
390
- ];
391
- }
392
- }
393
- }
394
- ]
395
- };
396
- this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
397
- this.wfOption = opts;
398
- });
399
- },
400
- openWfDialog(row) {
401
- this.wfContentOption = {
402
- objId: row.objId,
403
- url: row.url,
404
- objTypeCode: row.objTypeCode
405
- };
406
- this.showWfDialog = true;
407
- },
408
- commMenuCallBack(datas) {
409
- this.commMenus = datas || [];
410
- },
411
- initCommMenu() {
412
- this.$http({
413
- url: USER_PREFIX + '/comm_menu/currentList',
414
- data: {longOne: 0},
415
- method: 'POST'
416
- }).then(resultMsg => {
417
- this.commMenus = resultMsg.objx || [];
418
- });
419
- },
420
- initNotifyMessage() {
421
- this.$http({
422
- url: USER_PREFIX + '/notify_message/listPage',
423
- data: {searchCount: false},
424
- method: 'post',
425
- success: res => {
426
- this.notifyMessages = res.objx && res.objx.records ? res.objx.records : [];
427
- }
428
- });
429
- },
430
- openNotifyMessageDialog(row) {
431
- if (row.jumpContent) {
432
- this.$refs.notifyMessageDialog.open(row, () => {
433
- row.readed = 1;
434
- });
435
- }
436
- },
437
- openMoreNotifyMessage(notifyType) {
438
- let data = {notifyType: (notifyType || '')};
439
- let view = {
440
- name: 'notify_message:list',
441
- query: data
442
- };
443
- this.$store.dispatch('tagsView/delCachedView', view).then(() => {
444
- this.$router.replace(view);
445
- });
446
-
447
- if (notifyType) {
448
- this.showGroupDialog = false;
449
- }
450
- },
451
- checkNotifyMessage(row, index) {
452
- this.showNoticeDialog = true;
453
- this.notifyMessageInfoIndex = index;
454
- this.notifyMessageInfoId = row.id;
455
- },
456
- notifyMessageReadHanlde() {
457
- this.notifyMessages[this.notifyMessageInfoIndex].readed = 1;
458
- },
459
- openNotifyTemplateGroupDialog() {
460
- this.$http({
461
- url: USER_PREFIX + `/notify_template/listPage`,
462
- method: `post`,
463
- data: {searchCount: false},
464
- isLoading: true,
465
- // loadingTarget: document.body,
466
- success: res => {
467
- this.notifyTemplates = res.objx && res.objx.records ? res.objx.records : [];
468
- this.showGroupDialog = true;
469
- }
470
- });
471
- },
472
- rourteTo(route) {
473
- if (route.type == 4) {
474
- this.jumpOutLink(route)
475
- } else if (route.type == 3) {
476
- let menuCode = route.menuCode;
477
- let path = "/user/outLink/index/" + menuCode;
478
- this.$router.push({path: path, query: {url: route.url}});
479
- } else {
480
- let path = this.getPath(route)
481
- if (!path) return
482
- this.$router.push(path);
483
- }
484
- },
485
- getPath(route3) {
486
- let item = null;
487
- let path = null
488
- if (route3.type == 0) {
489
- //普通菜单
490
- if (route3.url) {
491
- path = route3.route || route3.url;
492
- let str = "/report/vform/render/";
493
- if (path.indexOf(str) == 0) {
494
- } else {
495
- let pIndex = path.indexOf('?');
496
- if (pIndex > 0) {
497
- path = path.substring(0, pIndex);
498
- }
499
- }
500
- }
501
- } else if (route3.type == 5) {
502
- //动态表单
503
- let url = route3.route || route3.url;
504
- path = url;
505
- }
506
- if (path && path.startsWith("@")) {
507
- path = null
508
- }
509
- return path;
510
- },
511
- jumpOutLink(route) {
512
- let path = route.url;
513
- if (route.type == 4 && path) {
514
- if (path.indexOf('token={token}') >= 0) {
515
- path = path.replace('token={token}', 'token=' + getToken())
516
- }
517
- window.open(path);
518
- }
519
- },
520
- initWfParam() {
521
- return this.$http({
522
- url: USER_PREFIX + '/wf_param/list',
523
- method: `post`,
524
- data: {},
525
- isLoading: true,
526
- // loadingTarget: document.body,
527
- modalStrictly: true,
528
- success: res => {
529
- this.wfParamDTOs = res.objx || [];
530
- this.initWfTableList();
531
- }
532
- });
533
- },
534
- getWfInfoList(isLoading) {
535
- if (!this.activating) {
536
- return;
537
- }
538
- this.$http({
539
- url: USER_PREFIX + '/wf_info/listPage',
540
- data: {type: 0, size: 20, searchCount: false},
541
- method: 'post',
542
- isLoading: isLoading,
543
- modal:isLoading || false,
544
- // loadingTarget: document.body,
545
- success: res => {
546
- this.unDoWfRows = res.objx && res.objx.records ? res.objx.records : [];
547
- },
548
- failMsg: false,
549
- errorMsg: false,
550
- fail: (res, response) => {
551
- if (response && response.status == 200) {
552
- this.$errorMsg(res);
553
- }
554
- }
555
- });
556
- },
557
- getUnreadMessageNum(isLoading) {
558
- if (!this.activating) {
559
- return;
560
- }
561
- return this.$http({
562
- url: USER_PREFIX + '/notify_message/countMessage',
563
- method: `post`,
564
- data: {},
565
- isLoading: isLoading,
566
- modal:isLoading || false,
567
- // loadingTarget: document.body,
568
- success: res => {
569
- this.unreadMessageNum = res.objx || 0;
570
- },
571
- failMsg: false,
572
- errorMsg: false,
573
- fail: (res, response) => {
574
- if (response && response.status == 200) {
575
- this.$errorMsg(res);
576
- }
577
- }
578
- });
579
- },
580
- wfhandleCallback(flag) {
581
- if ([1, 2, 3].includes(flag)) {
582
- this.showWfDialog = false;
583
- this.wfClose();
584
- }
585
- },
586
- toWfManageList() {
587
- let url = this.wf_manage_url || '/basic/wf/wf_manage/list'
588
- this.$router.push(url)
589
- }
590
- }
591
- };
592
- </script>
593
- <style lang="scss" scoped>
594
- @import '~@/styles/variables.scss';
595
-
596
- body #app .index-home {
597
- margin: 3px 10px;
598
- height: calc(100vh - 38px);
599
- overflow: auto;
600
-
601
- #containt {
602
- margin: 0;
603
- background: none;
604
- height: auto;
605
- box-shadow: none;
606
- }
607
-
608
- .i-user-info {
609
- background: url(~@/resources/images/home-img.png) #2a6494 no-repeat 116% 45px;
610
- margin-bottom: 6px;
611
- background-size: 181px;
612
- padding: 14px 38px 11px 16px;
613
- border-radius: 4px 4px;
614
- color: #fff;
615
- font-size: 12px;
616
- margin-top: 3px;
617
- height: 95px;
618
- overflow: hidden;
619
-
620
- .name {
621
- opacity: 1;
622
- font-weight: 600;
623
- margin: 9px 0 14px;
624
- font-size: 14px;
625
- }
626
-
627
- .img {
628
- width: 60px;
629
- height: 60px;
630
- float: left;
631
- border-radius: 50%;
632
- border: solid 4px rgba(255, 255, 255, 0.28);
633
- margin-right: 10px;
634
- }
635
- }
636
-
637
- .home-notice-list {
638
- height: 229px;
639
- margin: 0 -12px;
640
-
641
- .item {
642
- padding: 6px 12px;
643
- font-size: 12px;
644
- cursor: pointer;
645
- overflow: hidden;
646
- text-overflow: ellipsis;
647
- white-space: nowrap;
648
-
649
- .time {
650
- color: #b9b9b9;
651
- font-size: 12px;
652
- right: 12px;
653
- }
654
-
655
- &:hover {
656
- color: $baseColor;
657
- background-color: transparentize($baseColor, 0.97);
658
-
659
- .time {
660
- color: $baseColor
661
- }
662
- }
663
-
664
- &.no-read:before {
665
- content: "";
666
- width: 6px;
667
- height: 6px;
668
- background-color: $red;
669
- border-radius: 50%;
670
- vertical-align: middle;
671
- display: inline-block;
672
- margin-bottom: 1px;
673
- }
674
- }
675
-
676
- &.to-reed {
677
- height: 300px;
678
- overflow: auto;
679
- margin: -8px -12px;
680
-
681
-
682
- .item {
683
- white-space: initial;
684
- padding: 8px 22px 2px;
685
- position: relative;
686
-
687
- &:after {
688
- content: "";
689
- position: absolute;
690
- left: 22px;
691
- right: 22px;
692
- border-top: dashed 1px #eee;
693
- height: 1px;
694
- bottom: 0;
695
- }
696
-
697
- &.noread {
698
- &:before {
699
- content: "";
700
- width: 6px;
701
- height: 6px;
702
- background-color: $red;
703
- border-radius: 50%;
704
- margin-right: 5px;
705
- display: inline-block;
706
- position: absolute;
707
- left: 10px;
708
- top: 16px;
709
- }
710
- }
711
-
712
- .el-tag {
713
- zoom: 0.95;
714
- padding: 0 5px;
715
- height: 24px;
716
- line-height: 24px;
717
- }
718
-
719
- // .noread{
720
- // position: absolute;right:0;top:0;
721
- // span{transform: rotate(47deg);
722
- // -ms-transform: rotate(47deg);
723
- // -moz-transform: rotate(47deg);
724
- // -webkit-transform: rotate(47deg);
725
- // -o-transform: rotate(47deg);
726
- // z-index: 3;
727
- // color: #FFF;
728
- // position: absolute;
729
- // right: 1px;
730
- // top: 2px;}
731
- // &:after{
732
- // content: "\e618";
733
- // font-size: 62px;
734
- // font-family: "iconfont";
735
- // color:$red
736
- // }
737
- // }
738
- .time {
739
- position: relative;
740
- right: 0;
741
- margin-left: 12px;
742
- }
743
-
744
- .name {
745
- overflow: hidden;
746
- text-overflow: ellipsis;
747
- white-space: nowrap;
748
- margin-top: 3px;
749
- display: block;
750
- margin-bottom: 4px;
751
- }
752
-
753
- &:hover .name {
754
- color: $baseColor
755
- }
756
-
757
- &:first-child:before {
758
- border-top: none
759
- }
760
-
761
- .btns {
762
- text-align: right;
763
-
764
- .el-link {
765
- font-size: 12px;
766
- display: inline-block;
767
- margin-left: 14px;
768
-
769
- i {
770
- font-size: 12px;
771
- margin-right: 3px;
772
- }
773
- }
774
- }
775
- }
776
-
777
- }
778
- }
779
-
780
- .fast-box {
781
- margin: 6px 4px 4px;
782
- overflow: hidden;
783
-
784
- .item {
785
- width: 118px;
786
- text-align: center;
787
- float: left;
788
- margin-right: 14px;
789
-
790
- p {
791
- color: #2a6494;
792
- border: solid 1px #e2e2e2;
793
- margin: 3.5px 4px;
794
- width: calc(100% - 4px);
795
- border-radius: 6px;
796
- position: relative;
797
- height: 54px;
798
- line-height: 54px;
799
- text-align: left;
800
- padding-left: 14px;
801
- font-size: 12px;
802
-
803
- i {
804
- font-size: 14px;
805
- vertical-align: middle;
806
- margin-right: 2px;
807
- }
808
-
809
- span {
810
- vertical-align: middle;
811
- }
812
-
813
- &:before {
814
- content: '';
815
- width: 4px;
816
- height: 24px;
817
- display: inline-block;
818
- background: #225279b8;
819
- position: absolute;
820
- left: -1px;
821
- top: 50%;
822
- margin-top: -12px;
823
- }
824
-
825
- &:hover {
826
- background-color: $baseColor;
827
- color: #fff;
828
- border-color: $baseColor;
829
-
830
- &:before {
831
- background: #fff;
832
- }
833
- }
834
- }
835
- }
836
- }
837
-
838
- .need-to {
839
- height: 332px;
840
- }
841
-
842
- .table-box {
843
- width: 100%;
844
- font-size: 12px;
845
-
846
- th {
847
- line-height: 32px;
848
- background: #f7f7f7;
849
- font-weight: 400;
850
- color: #808080;
851
- padding: 0 6px;
852
- }
853
-
854
- td {
855
- text-align: center;
856
- line-height: 34px;
857
- color: #424242;
858
- border-bottom: solid 1px #eee;
859
- padding: 0 6px;
860
- }
861
-
862
- tr:last-child td {
863
- border-bottom: none;
864
- }
865
- }
866
- }
867
-
868
- .box-card .more {
869
- background-color: #f7f7f7;
870
- }
871
-
872
- .group-list {
873
- padding: 18px 18px 6px 32px !important;
874
- height: 400px;
875
- overflow: auto;
876
-
877
- .item {
878
- position: relative;
879
- height: 36px;
880
- border: solid 1px #eee;
881
- line-height: 34px;
882
- border-radius: 2px;
883
- padding: 0 42px 0 14px;
884
- margin-bottom: 10px;
885
- cursor: pointer;
886
-
887
- &::before {
888
- content: "";
889
- width: 8px;
890
- height: 8px;
891
- border: solid 1px #eee;
892
- border-radius: 50%;
893
- display: inline-block;
894
- position: absolute;
895
- left: -16px;
896
- top: 13px;
897
- }
898
-
899
- &.checked {
900
- &:before {
901
- content: "";
902
- background-color: $baseColor;
903
- border-color: $baseColor
904
- }
905
-
906
- background-color: transparentize($baseColor, 0.9);
907
- color: $baseColor;
908
- border-color: $baseColor;
909
- }
910
-
911
- i {
912
- font-size: 12px;
913
- vertical-align: middle;
914
- }
915
-
916
- .name {
917
- font-size: 12px;
918
- margin-left: 8px;
919
- vertical-align: middle;
920
- }
921
-
922
- .nums {
923
- width: 22px;
924
- height: 22px;
925
- border-radius: 50%;
926
- display: inline-block;
927
- position: absolute;
928
- right: 5px;
929
- top: 6px;
930
- color: #FFF;
931
- font-size: 12px;
932
- background-color: $red;
933
- line-height: 22px;
934
- text-align: center;
935
- }
936
- }
937
- }
938
-
939
- .notice-box {
940
- background-color: #2a649429;
941
- border-radius: 0 0 4px 4px;
942
- padding: 9px 12px;
943
- margin-bottom: 5px;
944
- margin-top: -6px;
945
- position: relative;
946
- z-index: 2;
947
- font-size: 13px;
948
- color: #212121;
949
- overflow: hidden;
950
-
951
- .txt {
952
- line-height: 28px;
953
- font-size: 12px;
954
- position: relative;
955
- display: inline-block;
956
- cursor: pointer;
957
-
958
- &:before {
959
- content: "";
960
- background-color: $baseColor;
961
- width: 4px;
962
- height: 20px;
963
- border-radius: 2px;
964
- display: inline-block;
965
- vertical-align: middle;
966
- margin-right: 18px;
967
- }
968
-
969
- i {
970
- font-size: 14px;
971
- margin-right: 12px;
972
- vertical-align: middle;
973
- }
974
-
975
- > span {
976
- vertical-align: middle;
977
- height: 22px;
978
- line-height: 22px;
979
- display: inline-block;
980
-
981
- b {
982
- color: #FFF;
983
- margin: 0 4px;
984
- font-size: 16px;
985
- vertical-align: middle;
986
- background: #FF5615;
987
- border-radius: 50%;
988
- display: inline-block;
989
- padding: 4px;
990
- font-weight: 200;
991
- line-height: 1;
992
- }
993
- }
994
-
995
- }
996
-
997
- .el-button {
998
- position: absolute;
999
- right: 46px;
1000
- padding: 0;
1001
- height: 22px;
1002
- line-height: 22px;
1003
- min-width: 22px;
1004
- text-align: center;
1005
- border-radius: 2px;
1006
- top: 50%;
1007
- margin-top: -11px;
1008
-
1009
- i {
1010
- font-size: 15px;
1011
- }
1012
-
1013
- &:hover {
1014
- background-color: $baseColor;
1015
- color: #FFF;
1016
- }
1017
-
1018
- &.more {
1019
- right: 12px;
1020
- background: #f7f7f7;
1021
-
1022
- &:hover {
1023
- color: $baseColor
1024
- }
1025
- }
1026
- }
1027
-
1028
- ::v-deep .el-card.is-always-shadow {
1029
- box-shadow: 0 2px 2px 0 rgb(0 0 0 / 6%);
1030
- }
1031
- }
1032
- </style>