|
|
<!--
|
|
|
* @Version: 1.0
|
|
|
* @Author: kery.chen
|
|
|
* @Description: 总体概览左侧
|
|
|
* @Date: 2021-11-30 11:08:50
|
|
|
* @LastEditTime: 2023-08-24 13:47:44
|
|
|
* @FilePath : \\tcingiocpro\\src\\views\\privateOrder\\ecosphere\\components\\componentLeft.vue
|
|
|
-->
|
|
|
<template>
|
|
|
<div class="container">
|
|
|
<div class="module-container">
|
|
|
<div class="section-process">
|
|
|
<module-title>约谈流程</module-title>
|
|
|
<div class="section-process-outline">
|
|
|
<div class="column">
|
|
|
<div class="top_column">
|
|
|
<div class="top_column1" @click="processDetails('登记约谈')">
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-登记约谈.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">登记约谈</div>
|
|
|
</div>
|
|
|
<div class="top_column2" @click="processDetails('审核通过')">
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-审核通过.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">审核通过</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="center_column">
|
|
|
<div class="center_column1" @click="processDetails('约谈笔录')">
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-约谈笔录.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">约谈笔录</div>
|
|
|
</div>
|
|
|
<div class="center_column2" @click="processDetails('送达通知书')">
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-送达通知书.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">送达通知书</div>
|
|
|
</div>
|
|
|
<div
|
|
|
class="center_column3"
|
|
|
@click="processDetails('生成约谈通知书')"
|
|
|
>
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-生成约谈通知书.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">生成约谈通知书</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="bottom_column">
|
|
|
<div
|
|
|
class="bottom_column1"
|
|
|
@click="processDetails('生成整改通知书送达回执')"
|
|
|
>
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-生成整改.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">生成整改通知 书送达回执</div>
|
|
|
</div>
|
|
|
<div class="bottom_column2" @click="processDetails('扫描归档')">
|
|
|
<img
|
|
|
class="process-img"
|
|
|
src="@/assets/ecosphere/first/icon-扫描归档.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<div class="process-font">扫描归档</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="section-inventory">
|
|
|
<module-title>三份清单</module-title>
|
|
|
<div
|
|
|
class="three-inventory"
|
|
|
@mouseover="inventoryMouseOver"
|
|
|
@mouseleave="inventoryLeave"
|
|
|
>
|
|
|
<div
|
|
|
:class="threeStatus === 1 ? 'checked' : 'unchecked'"
|
|
|
@click="inventoryBtn(1, '重点企业名录清单')"
|
|
|
>
|
|
|
<div>重点企业名录清单</div>
|
|
|
<img
|
|
|
v-if="threeStatus === 1"
|
|
|
src="@/assets/ecosphere/icon-指挥手册-act.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<img
|
|
|
v-if="threeStatus != 1"
|
|
|
src="@/assets/ecosphere/icon-指挥手册-nor.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
</div>
|
|
|
<div
|
|
|
:class="threeStatus === 2 ? 'checked' : 'unchecked'"
|
|
|
@click="inventoryBtn(2, '重点领域监管清单')"
|
|
|
>
|
|
|
<div>重点领域监管清单</div>
|
|
|
<img
|
|
|
v-if="threeStatus === 2"
|
|
|
src="@/assets/ecosphere/icon-责任清单-act.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<img
|
|
|
v-if="threeStatus != 2"
|
|
|
src="@/assets/ecosphere/icon-责任清单-nor.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
</div>
|
|
|
<div
|
|
|
:class="threeStatus === 3 ? 'checked' : 'unchecked'"
|
|
|
@click="inventoryBtn(3, '重点工作项目清单')"
|
|
|
>
|
|
|
<div>重点工作项目清单</div>
|
|
|
<img
|
|
|
v-if="threeStatus === 3"
|
|
|
src="@/assets/ecosphere/icon-负面清单-act.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
<img
|
|
|
v-if="threeStatus != 3"
|
|
|
src="@/assets/ecosphere/icon-负面清单-nor.png"
|
|
|
alt=""
|
|
|
/>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="section-dynamic">
|
|
|
<module-title>工作动态</module-title>
|
|
|
<div @click="dynamicClick($event)">
|
|
|
<vue-seamless-scroll
|
|
|
:data="dynamicList"
|
|
|
:class-option="classOption"
|
|
|
class="scroll_box"
|
|
|
>
|
|
|
<div
|
|
|
v-for="(item, idx) in dynamicList"
|
|
|
:key="idx"
|
|
|
class="scroll_item"
|
|
|
>
|
|
|
<div class="item_txt">
|
|
|
<!-- materialsName -->
|
|
|
<span :data-id="item.id">
|
|
|
{{ item.name }}
|
|
|
</span>
|
|
|
</div>
|
|
|
<div class="item_bottom" :data-id="item.id">
|
|
|
<div class="bottom_icon"></div>
|
|
|
<div class="bottom_name" :data-id="item.id">{{ item.type }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</vue-seamless-scroll>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="section-ecosphere">
|
|
|
<module-title>
|
|
|
<div class="title-main">
|
|
|
网络平台
|
|
|
<div
|
|
|
v-show="iconIndex === 2"
|
|
|
class="title-back"
|
|
|
@click="
|
|
|
iconIndex = 1;
|
|
|
zoologyIconData = zoologyIconList.slice(0, 4);
|
|
|
"
|
|
|
>
|
|
|
返回
|
|
|
</div>
|
|
|
<div
|
|
|
v-show="iconIndex === 1"
|
|
|
class="title-right"
|
|
|
@click="
|
|
|
iconIndex = 2;
|
|
|
zoologyIconData = zoologyIconList.slice(4, 8);
|
|
|
"
|
|
|
>
|
|
|
其他
|
|
|
</div>
|
|
|
</div>
|
|
|
</module-title>
|
|
|
<div class="zoology-box">
|
|
|
<div
|
|
|
v-for="(item, idx) in zoologyIconData"
|
|
|
:key="idx"
|
|
|
class="zoology-icon"
|
|
|
:class="{ active: currentIndex === idx }"
|
|
|
@mouseover="zoologyMouseOver(idx)"
|
|
|
@mouseleave="zoologyMouseLeave"
|
|
|
@click="
|
|
|
networkPlatformClick(item.name,item.type);
|
|
|
currentIndex = idx;
|
|
|
"
|
|
|
>
|
|
|
<div class="icon-bk">
|
|
|
<img :src="item.url" style="width: 66px; height: 66px" alt="" />
|
|
|
</div>
|
|
|
<div class="zoology-icon-name">{{ item.name }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="bcLeft"></div>
|
|
|
<!-- 三份清单 -->
|
|
|
<el-dialog
|
|
|
v-if="dialogStatus"
|
|
|
:title="dialogTitle"
|
|
|
class="screen-dialog"
|
|
|
:visible.sync="dialogStatus"
|
|
|
width="2720px"
|
|
|
:modal-append-to-body="false"
|
|
|
center
|
|
|
:modal="false"
|
|
|
:before-close="beForeClose"
|
|
|
>
|
|
|
<div style="height: 765px">
|
|
|
|
|
|
<MyTable
|
|
|
:height="750"
|
|
|
:table-list="currentPageData"
|
|
|
:table-key="tableKey"
|
|
|
/>
|
|
|
<div style="text-align: right">
|
|
|
<paginations
|
|
|
v-show="total > 0"
|
|
|
:total="total"
|
|
|
:page.sync="queryParams.pageNum"
|
|
|
:limit.sync="queryParams.pageSize"
|
|
|
@pagination="inventoryBtn"
|
|
|
/>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<span>
|
|
|
<el-button class="dialog-btn" @click="dialogClose">关 闭</el-button>
|
|
|
</span>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
|
v-if="dynamicStatus"
|
|
|
:title="dialogTitle"
|
|
|
class="screen-dialog"
|
|
|
:visible.sync="dynamicStatus"
|
|
|
width="1000px"
|
|
|
:modal-append-to-body="false"
|
|
|
center
|
|
|
:modal="false"
|
|
|
>
|
|
|
<div style="height: 765px">
|
|
|
<el-table
|
|
|
:data="currentPageData"
|
|
|
height="740"
|
|
|
highlight-current-row
|
|
|
@row-click="rowClick"
|
|
|
>
|
|
|
<el-table-column
|
|
|
label="序号"
|
|
|
type="index"
|
|
|
:index="
|
|
|
(index) => {
|
|
|
return index + 1 + (currentPage - 1) * pageSize;
|
|
|
}
|
|
|
"
|
|
|
width="80"
|
|
|
align="center"
|
|
|
/>
|
|
|
<template v-for="item in tableHeader">
|
|
|
<el-table-column
|
|
|
v-if="item !== '序号'"
|
|
|
:key="item"
|
|
|
:prop="item"
|
|
|
show-overflow-tooltip
|
|
|
:label="item"
|
|
|
>
|
|
|
</el-table-column>
|
|
|
</template>
|
|
|
</el-table>
|
|
|
<div style="text-align: right">
|
|
|
<el-pagination
|
|
|
:current-page="currentPage"
|
|
|
:page-sizes="[10, 20, 30, 50, 100]"
|
|
|
:page-size="pageSize"
|
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
|
:total="total"
|
|
|
popper-class="select_bottom"
|
|
|
@size-change="handleSizeChange"
|
|
|
@current-change="handleCurrentChange"
|
|
|
>
|
|
|
</el-pagination>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<span>
|
|
|
<el-button class="dialog-btn" @click="dialogClose">关 闭</el-button>
|
|
|
</span>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
|
v-if="dialogDetails"
|
|
|
:title="dialogTitle"
|
|
|
class="screen-dialog"
|
|
|
:visible.sync="dialogDetails"
|
|
|
width="1460px"
|
|
|
:modal-append-to-body="true"
|
|
|
center
|
|
|
:modal="false"
|
|
|
>
|
|
|
<div
|
|
|
style="
|
|
|
height: 730px;
|
|
|
overflow: auto;
|
|
|
text-align: center;
|
|
|
display: flex;
|
|
|
justify-content: center;
|
|
|
"
|
|
|
>
|
|
|
<div
|
|
|
v-if="fileExtension === 'docx' || fileExtension === 'doc'"
|
|
|
ref="fileDoc"
|
|
|
class="file-content"
|
|
|
></div>
|
|
|
<div v-if="fileExtension === 'pdf'" class="file-content file-content-pdf">
|
|
|
<iframe style="height: 100%; width: 100%" :src="pdfUrl"></iframe>
|
|
|
<!-- <div v-for="i in numPages" :key="i">
|
|
|
<pdf ref="pdf" :key="i" :src="pdfUrl" :page="i"></pdf>
|
|
|
</div> -->
|
|
|
</div>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<span>
|
|
|
<el-button
|
|
|
class="dialog-btn"
|
|
|
@click="dialogDetails = false"
|
|
|
>关 闭</el-button>
|
|
|
</span>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<!-- 网络平台小图标 -->
|
|
|
<el-dialog
|
|
|
v-if="zoologyIconStatus"
|
|
|
:title="dialogTitle"
|
|
|
class="screen-dialog"
|
|
|
:visible.sync="zoologyIconStatus"
|
|
|
:modal-append-to-body="false"
|
|
|
center
|
|
|
:width="zoologyWidth"
|
|
|
:modal="false"
|
|
|
>
|
|
|
<div style="height: 765px">
|
|
|
<el-table
|
|
|
:data="currentPageData"
|
|
|
height="740"
|
|
|
highlight-current-row
|
|
|
@row-click="iconClick"
|
|
|
>
|
|
|
<el-table-column
|
|
|
label="序号"
|
|
|
type="index"
|
|
|
:index="
|
|
|
(index) => {
|
|
|
return index + 1 + (currentPage - 1) * pageSize;
|
|
|
}
|
|
|
"
|
|
|
width="80"
|
|
|
align="center"
|
|
|
/>
|
|
|
<template v-for="item in tableHeader">
|
|
|
<el-table-column
|
|
|
v-if="item !== '序号'"
|
|
|
:key="item"
|
|
|
:prop="item"
|
|
|
show-overflow-tooltip
|
|
|
:label="item"
|
|
|
>
|
|
|
</el-table-column>
|
|
|
</template>
|
|
|
</el-table>
|
|
|
<div style="text-align: right">
|
|
|
<el-pagination
|
|
|
:current-page="currentPage"
|
|
|
:page-sizes="[10, 20, 30, 50, 100]"
|
|
|
:page-size="pageSize"
|
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
|
:total="total"
|
|
|
popper-class="select_bottom"
|
|
|
@size-change="handleSizeChange"
|
|
|
@current-change="handleCurrentChange"
|
|
|
>
|
|
|
</el-pagination>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<span>
|
|
|
<el-button
|
|
|
class="dialog-btn"
|
|
|
@click="zoologyIconStatus = false"
|
|
|
>关 闭</el-button>
|
|
|
</span>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<!-- 网络平台图标点击url跳转 -->
|
|
|
<el-dialog
|
|
|
v-if="pageDetails"
|
|
|
class="screen-dialog"
|
|
|
:visible.sync="pageDetails"
|
|
|
width="2250px"
|
|
|
:modal-append-to-body="true"
|
|
|
center
|
|
|
:modal="false"
|
|
|
>
|
|
|
<div
|
|
|
style="
|
|
|
width: 2200px;
|
|
|
height: 765px;
|
|
|
display: flex;
|
|
|
justify-content: center;
|
|
|
"
|
|
|
>
|
|
|
<iframe
|
|
|
id="ifraRight"
|
|
|
style="
|
|
|
background: #fff;
|
|
|
margin-top: 200px;
|
|
|
width: 1080px;
|
|
|
height: 385px;
|
|
|
transform: scale(2);
|
|
|
"
|
|
|
name="ifraRight"
|
|
|
:src="href"
|
|
|
frameborder="0"
|
|
|
scrolling="yes"
|
|
|
></iframe>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<span>
|
|
|
<el-button
|
|
|
class="dialog-btn"
|
|
|
@click="pageDetails = false"
|
|
|
>关 闭</el-button>
|
|
|
</span>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<!-- 图片 -->
|
|
|
<el-dialog
|
|
|
v-if="dialogImg"
|
|
|
:title="dialogTitle"
|
|
|
class="screen-dialog"
|
|
|
style="overflow:aoto"
|
|
|
:visible.sync="dialogImg"
|
|
|
width="1460px"
|
|
|
:modal-append-to-body="true"
|
|
|
center
|
|
|
:modal="false"
|
|
|
>
|
|
|
<div style="height:762px;overflow:auto">
|
|
|
<img :src="imgSrc" alt="" style="width:100%">
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<span>
|
|
|
<el-button
|
|
|
class="dialog-btn"
|
|
|
@click="dialogImg = false"
|
|
|
>关 闭</el-button>
|
|
|
</span>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import vueSeamlessScroll from 'vue-seamless-scroll'
|
|
|
import ModuleTitle from '../../common/ModuleTitle.vue'
|
|
|
import { listEnterprise, listDomain, listWork, listDongtai, listPlatform, dongtaiInfo } from '@/api/zongzhi/st.js'
|
|
|
import {
|
|
|
getBilibiliData,
|
|
|
getRedBookData,
|
|
|
getToDayHeadlineData,
|
|
|
getQuickData,
|
|
|
getWechat,
|
|
|
getWebsite,
|
|
|
getWeibo,
|
|
|
getTikTok
|
|
|
} from '@/api/common'
|
|
|
import { downloadTwo } from '@/utils/safesoft'
|
|
|
const docx = require('docx-preview')
|
|
|
import pdf from 'vue-pdf'
|
|
|
import axios from 'axios'
|
|
|
import qs from 'qs'
|
|
|
window.JSZip = require('jszip')
|
|
|
export default {
|
|
|
components: {
|
|
|
ModuleTitle,
|
|
|
vueSeamlessScroll,
|
|
|
pdf
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
currentIndex: 0,
|
|
|
// 总条数
|
|
|
total: 0,
|
|
|
queryParams: {
|
|
|
pageNum: 1,
|
|
|
pageSize: 10
|
|
|
},
|
|
|
dtTotal: 0,
|
|
|
dtParams: {
|
|
|
pageNum: 1,
|
|
|
pageSize: 10
|
|
|
},
|
|
|
currentPageData: [], // 当前页显示内容
|
|
|
tableKey: [],
|
|
|
threeTimer: null,
|
|
|
dialogImg: false,
|
|
|
imgSrc: '',
|
|
|
zoologyTimer: null,
|
|
|
currentIndex: 0,
|
|
|
href: null,
|
|
|
threeStatus: 1,
|
|
|
pageDetails: false,
|
|
|
dynamicList: [],
|
|
|
zoologyIconList: [
|
|
|
{
|
|
|
name: '网站',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:1,
|
|
|
url: require('@/assets/ecosphere/icon-网站.png')
|
|
|
},
|
|
|
{
|
|
|
name: '抖音',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:2,
|
|
|
url: require('@/assets/ecosphere/icon-抖音.png')
|
|
|
},
|
|
|
{
|
|
|
name: '微信',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:3,
|
|
|
url: require('@/assets/ecosphere/icon-微信.png')
|
|
|
},
|
|
|
{
|
|
|
name: '微博',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:4,
|
|
|
url: require('@/assets/ecosphere/icon微博.png')
|
|
|
},
|
|
|
|
|
|
{
|
|
|
name: '今日头条',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:5,
|
|
|
url: require('@/assets/ecosphere/icon-头条.png')
|
|
|
},
|
|
|
{
|
|
|
name: '快手',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:6,
|
|
|
url: require('@/assets/ecosphere/icon-快手.png')
|
|
|
},
|
|
|
{
|
|
|
name: 'B站',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:7,
|
|
|
url: require('@/assets/ecosphere/icon-b站.png')
|
|
|
},
|
|
|
{
|
|
|
name: '小红书',
|
|
|
num: 0,
|
|
|
subList: [],
|
|
|
type:8,
|
|
|
url: require('@/assets/ecosphere/icon-小红书.png')
|
|
|
}
|
|
|
],
|
|
|
zoologyIconData: [],
|
|
|
dialogDetails: false,
|
|
|
fileUrlData: {
|
|
|
登记约谈:
|
|
|
'/网信办大屏内容文档/网络管理/工作动态/10.15约谈太仓论坛/约谈材料.docx'
|
|
|
},
|
|
|
iconIndex: 1,
|
|
|
dialogStatus: false,
|
|
|
dynamicStatus: false,
|
|
|
zoologyIconStatus: false,
|
|
|
totalPage: 1, // 统共页数,默认为1
|
|
|
total: 1, // 统共页数,默认为1
|
|
|
currentPage: 1, // 当前页数 ,默认为1
|
|
|
pageSize: 10, // 每页显示数量
|
|
|
|
|
|
tableHeader: [],
|
|
|
tableData: [],
|
|
|
dialogTitle: '',
|
|
|
zoologyWidth: '',
|
|
|
fileExtension: '',
|
|
|
pdfUrl: '',
|
|
|
numPages: '',
|
|
|
dongtaiTotal:0
|
|
|
}
|
|
|
},
|
|
|
computed: {
|
|
|
classOption() {
|
|
|
return {
|
|
|
step: 0.4, // 数值越大速度滚动越快
|
|
|
limitMoveNum: 5, // 开始无缝滚动的数据量 this.dataList.length
|
|
|
hoverStop: true, // 是否开启鼠标悬停stop
|
|
|
direction: 1, // 0向下 1向上 2向左 3向右
|
|
|
openWatch: true, // 开启数据实时监控刷新dom
|
|
|
singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
|
|
|
singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
|
|
|
waitTime: 1000 // 单步运动停止的时间(默认值1000ms)
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
watch: {},
|
|
|
created() {},
|
|
|
destroyed() {
|
|
|
clearInterval(this.threeTimer)
|
|
|
clearInterval(this.zoologyTimer)
|
|
|
clearInterval(this.time2)
|
|
|
},
|
|
|
mounted() {
|
|
|
this.zoologyIconData = this.zoologyIconList.slice(0, 4)
|
|
|
|
|
|
// this.getZoologyData() // 网络平台信息获取
|
|
|
this.getZoologyChange() // 网络平台按钮切换
|
|
|
this.inventoryChange() // 三份清单自动切换
|
|
|
this.getDynamicData() // 工作动态信息获取
|
|
|
|
|
|
// this.time2 = setInterval(() => { // 安全隐患列表
|
|
|
// if (this.dynamicList.length >= this.dongtaiTotal) {
|
|
|
// clearInterval(this.time2)
|
|
|
// } else {
|
|
|
// this.getDynamicData()
|
|
|
// }
|
|
|
// }, 500)
|
|
|
},
|
|
|
methods: {
|
|
|
// 工作动态信息获取
|
|
|
async getDynamicData() {
|
|
|
let res = await listDongtai()
|
|
|
this.dongtaiTotal = res.data.count
|
|
|
this.dynamicList = [...this.dynamicList, ...res.data.list]
|
|
|
},
|
|
|
|
|
|
// 网络平台信息获取
|
|
|
async networkPlatformClick(val,type) {
|
|
|
this.currentPage = 1
|
|
|
this.pageSize = 10
|
|
|
this.dialogTitle = val
|
|
|
this.zoologyIconStatus = true
|
|
|
if (val === 'B站') {
|
|
|
// getBilibiliData().then((res) => {
|
|
|
this.tableHeader = ['账号ID', 'URL']
|
|
|
this.zoologyWidth = '1000px'
|
|
|
this.tableData = []
|
|
|
// this.tableData = [
|
|
|
// { 账号ID: 1, URL: 'https://www.bilibili.com/' }
|
|
|
// ]
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['账号ID'] = item.name
|
|
|
obj['URL'] = item.dns
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
// res['T_DATA_BILIBILI[]'].forEach((item) => {
|
|
|
// this.tableData.push({ 账号ID: item.account_id, URL: item.url })
|
|
|
// })
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '小红书') {
|
|
|
// getRedBookData().then((res) => {
|
|
|
this.tableHeader = ['账号ID', 'URL']
|
|
|
this.zoologyWidth = '1000px'
|
|
|
this.tableData = []
|
|
|
// this.tableData = [
|
|
|
// { 账号ID: 1, URL: 'https://www.xiaohongshu.com/explore' }
|
|
|
// ]
|
|
|
// res['T_DATA_RED_BOOK[]'].forEach((item) => {
|
|
|
// this.tableData.push({ 账号ID: item.account_id, URL: item.url })
|
|
|
// })
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['账号ID'] = item.name
|
|
|
obj['URL'] = item.dns
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '今日头条') {
|
|
|
// getToDayHeadlineData().then((res) => {
|
|
|
this.tableHeader = ['账号ID', '简介']
|
|
|
this.zoologyWidth = '1200px'
|
|
|
this.tableData = []
|
|
|
// this.tableData = [
|
|
|
// { 账号ID: 1, 简介: '今日头条是北京字节跳动科技有限公司开发的一款基于数据挖掘的推荐引擎产品,为用户推荐信息、提供连接人与信息的服务的产品。由张一鸣于2012年3月创建,2012年8月发布第一个版本。' }
|
|
|
// ]
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['账号ID'] = item.name
|
|
|
obj['简介'] = item.intro
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
// res['T_DATA_TODAY_HEADLINE[]'].forEach((item) => {
|
|
|
// this.tableData.push({
|
|
|
// 账号ID: item.account_id,
|
|
|
// 简介: item.introduction
|
|
|
// })
|
|
|
// })
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '快手') {
|
|
|
// getQuickData().then((res) => {
|
|
|
this.tableHeader = ['账号ID', '简介']
|
|
|
this.zoologyWidth = '1000px'
|
|
|
this.tableData = []
|
|
|
// this.tableData = [
|
|
|
// { 账号ID: 1, 简介: '快手是北京快手科技有限公司旗下的产品。快手 [1-2]的前身,叫“GIF快手”,诞生于2011年3月,最初是一款用来制作、分享GIF图片的手机应用。2012年11月,快手从纯粹的工具应用转型为短视频社区,用于用户记录和分享生产、生活的平台。后来随着智能手机、平板电脑的普及和移动流量成本的下降,快手在2015年以后迎来市场' }
|
|
|
// ]
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['账号ID'] = item.name
|
|
|
obj['简介'] = item.intro
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
// res['T_DATA_QUICK_WORKER[]'].forEach((item) => {
|
|
|
// this.tableData.push({
|
|
|
// 账号ID: item.account_id,
|
|
|
// 简介: item.introduction
|
|
|
// })
|
|
|
// })
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '微信') {
|
|
|
// getWechat().then((res) => {
|
|
|
this.tableHeader = ['账号ID', '行业属性']
|
|
|
this.zoologyWidth = '1000px'
|
|
|
this.tableData = []
|
|
|
// this.tableData = [
|
|
|
// { 账号ID: 1, 行业属性: '自媒体' }
|
|
|
// ]
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['账号ID'] = item.name
|
|
|
obj['行业属性'] = this.getProps(item.props)
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
// res['T_DATA_WECHAT[]'].forEach((item) => {
|
|
|
// this.tableData.push({
|
|
|
// 账号ID: item.account_id,
|
|
|
// 行业属性: item.introduction
|
|
|
// })
|
|
|
// })
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '网站') {
|
|
|
// getWebsite().then((res) => {
|
|
|
this.tableHeader = ['网站名称', '真实IP', '网站域名', '备案许可证号']
|
|
|
this.zoologyWidth = '2000px'
|
|
|
this.tableData = []
|
|
|
// this.tableData.push({
|
|
|
// 网站名称: '百度',
|
|
|
// 真实IP: '220.181.111.188',
|
|
|
// 网站域名: 'https://www.xiaohongshu.com/explore',
|
|
|
// 备案许可证号: '京ICP证030173号',
|
|
|
// numOrder: 1
|
|
|
// })
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['网站名称'] = item.name
|
|
|
obj['真实IP'] = item.ipAddress
|
|
|
obj['网站域名'] = item.dns
|
|
|
obj['备案许可证号'] = item.licenceNum
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
// res['T_big_screen_website_data[]'].forEach((item) => {
|
|
|
// const startIndex = item.licence_num.indexOf('备')
|
|
|
// const endIndex = item.licence_num.lastIndexOf('号')
|
|
|
// this.tableData.push({
|
|
|
// 网站名称: item.website_name,
|
|
|
// 真实IP: item.acturally_ip,
|
|
|
// 网站域名: item.website_domain,
|
|
|
// 备案许可证号: item.licence_num,
|
|
|
// numOrder: item.licence_num.substring(startIndex + 1, endIndex)
|
|
|
// })
|
|
|
// })
|
|
|
this.tableData.sort((a, b) => a.numOrder - b.numOrder)
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '微博') {
|
|
|
// getWeibo().then((res) => {
|
|
|
this.tableHeader = ['账号名称', '认证', '地区']
|
|
|
this.zoologyWidth = '1000px'
|
|
|
this.tableData = []
|
|
|
// res['T_big_screen_weibo_data[]'].forEach((item) => {
|
|
|
// this.tableData.push({
|
|
|
// 账号名称: '大红矛',
|
|
|
// 认证: '微博原创视频博主',
|
|
|
// 地区: '北京'
|
|
|
// })
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {}
|
|
|
obj['账号名称'] = item.name
|
|
|
obj['认证'] = item.authentication
|
|
|
obj['地区'] = item.area
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
// })
|
|
|
this.networkPlatformData()
|
|
|
// })
|
|
|
} else if (val === '抖音') {
|
|
|
// getTikTok().then((res) => {
|
|
|
this.tableHeader = ['账号', '简介', '粉丝数']
|
|
|
this.zoologyWidth = '1500px'
|
|
|
this.tableData = []
|
|
|
// res['T_big_screen_tik_tok[]'].forEach((item) => {
|
|
|
// this.tableData.push({
|
|
|
// 账号: '1124693722',
|
|
|
// 简介: '无',
|
|
|
// 粉丝数: 25
|
|
|
// })
|
|
|
let res = await listPlatform({type:type});
|
|
|
res.rows.map((item)=>{
|
|
|
let obj = {};
|
|
|
obj['账号'] = item.name;
|
|
|
obj['简介'] = item.intro;
|
|
|
obj['粉丝数'] = item.fansNum;
|
|
|
this.tableData.push(obj)
|
|
|
})
|
|
|
this.tableData.sort((a, b) => b.粉丝数 - a.粉丝数)
|
|
|
|
|
|
// })
|
|
|
}
|
|
|
this.networkPlatformData()
|
|
|
},
|
|
|
getProps(props){
|
|
|
switch(props){
|
|
|
case 1:
|
|
|
return '房产';
|
|
|
case 2:
|
|
|
return '汽车';
|
|
|
case 3:
|
|
|
return '自媒体';
|
|
|
case 4:
|
|
|
return '餐饮';
|
|
|
case 5:
|
|
|
return '电子竞技';
|
|
|
case 6:
|
|
|
return '财务'
|
|
|
default :
|
|
|
break;
|
|
|
}
|
|
|
},
|
|
|
networkPlatformData() {
|
|
|
this.total = this.tableData.length
|
|
|
this.totalPage = Math.ceil(this.tableData.length / this.pageSize)
|
|
|
this.totalPage = this.totalPage === 0 ? 1 : this.totalPage
|
|
|
this.setCurrentPageData()
|
|
|
this.zoologyIconStatus = true
|
|
|
},
|
|
|
// 网络平台按钮切换
|
|
|
getZoologyChange() {
|
|
|
this.zoologyTimer = setInterval(() => {
|
|
|
this.currentIndex++
|
|
|
if (this.currentIndex > 3) {
|
|
|
this.currentIndex = 0
|
|
|
}
|
|
|
}, 4000)
|
|
|
},
|
|
|
// 网络平台悬停
|
|
|
zoologyMouseOver(index) {
|
|
|
this.currentIndex = index
|
|
|
clearInterval(this.zoologyTimer)
|
|
|
},
|
|
|
// 网络平台离开
|
|
|
zoologyMouseLeave() {
|
|
|
this.getZoologyChange()
|
|
|
},
|
|
|
/**
|
|
|
* 重置
|
|
|
*/
|
|
|
reset() {
|
|
|
this.total = 0
|
|
|
this.queryParams = {
|
|
|
pageNum: 1,
|
|
|
pageSize: 10
|
|
|
}
|
|
|
this.currentPageData = [] // 当前页显示内容
|
|
|
this.tableKey = []
|
|
|
},
|
|
|
/**
|
|
|
* 关闭dialog弹出前的回调
|
|
|
*/
|
|
|
beForeClose(done) {
|
|
|
this.reset()
|
|
|
done()
|
|
|
},
|
|
|
// 三份清单按钮切换
|
|
|
inventoryBtn(status, val) {
|
|
|
this.currentIndex = status
|
|
|
if (this.currentIndex == 1) {
|
|
|
listEnterprise(this.queryParams).then(res => {
|
|
|
this.currentPageData = res.rows
|
|
|
this.tableKey = [
|
|
|
{ name: '企业名称', value: 'enterpriseName' },
|
|
|
{ name: '企业类型', value: 'enterpriseType', dictType: 'tc_enter_type' },
|
|
|
{ name: '互联网业务', value: 'networkYewu', dictType: 'tc_inlet_yewu' },
|
|
|
{ name: '监管部门', value: 'jianguanBumen' },
|
|
|
{ name: '单位地址', value: 'address' },
|
|
|
{ name: '联系人', value: 'linkMan' },
|
|
|
{ name: '联系电话', value: 'phoneNum' },
|
|
|
{ name: '网址或平台名称', value: 'productName' },
|
|
|
{ name: '域名', value: 'dns' }
|
|
|
]
|
|
|
this.total = res.total
|
|
|
})
|
|
|
} else if (this.currentIndex == 2) {
|
|
|
listDomain(this.queryParams).then(res => {
|
|
|
this.currentPageData = res.rows
|
|
|
this.tableKey = [
|
|
|
{ name: '企业类型', value: 'enterpriseType', dictType: 'tc_enter_type' },
|
|
|
{ name: '重点监管监管对象', value: 'zdjgContent' },
|
|
|
{ name: '法律法规令禁止的有关行为', value: 'weifaXingwei' },
|
|
|
{ name: '主要监管部门', value: 'dep' },
|
|
|
{ name: '主要依据', value: 'zhuyaoYiju' }
|
|
|
]
|
|
|
this.total = res.total
|
|
|
})
|
|
|
} else if (this.currentIndex == 3) {
|
|
|
listWork(this.queryParams).then(res => {
|
|
|
this.currentPageData = res.rows
|
|
|
this.tableKey = [
|
|
|
{ name: '推进单位', value: 'unitName' },
|
|
|
{ name: '项目名称', value: 'projectName' },
|
|
|
{ name: '项目内容', value: 'projectContent' },
|
|
|
{ name: '项目类型', value: 'projectType', dictType: 'tc_item_type' },
|
|
|
{ name: '项目联系人', value: 'projectLinkMan' }
|
|
|
]
|
|
|
this.total = res.total
|
|
|
})
|
|
|
}
|
|
|
|
|
|
this.$nextTick(() => {
|
|
|
this.dialogTitle = val
|
|
|
this.dialogStatus = true
|
|
|
})
|
|
|
// this.currentPage = 1
|
|
|
// this.pageSize = 10
|
|
|
// const tableObject = require('./data.json')
|
|
|
// this.threeStatus = status
|
|
|
// this.dialogTitle = val
|
|
|
// this.tableData = tableObject[val]
|
|
|
// this.tableHeader = []
|
|
|
// for (const item in tableObject[val][0]) {
|
|
|
// this.tableHeader.push(item)
|
|
|
// }
|
|
|
// this.total = this.tableData.length
|
|
|
// this.totalPage = Math.ceil(this.tableData.length / this.pageSize)
|
|
|
// this.totalPage = this.totalPage === 0 ? 1 : this.totalPage
|
|
|
// this.setCurrentPageData()
|
|
|
// this.dialogStatus = true
|
|
|
},
|
|
|
// 三份清单自动切换
|
|
|
inventoryChange() {
|
|
|
this.threeTimer = setInterval(() => {
|
|
|
this.threeStatus++
|
|
|
if (this.threeStatus > 3) {
|
|
|
this.threeStatus = 1
|
|
|
}
|
|
|
}, 6000)
|
|
|
},
|
|
|
iconClick(row) {
|
|
|
console.log(row)
|
|
|
if (row.URL) {
|
|
|
this.href = row.URL
|
|
|
this.pageDetails = true
|
|
|
} else if (row.网站域名) {
|
|
|
if (row.网站域名.substring(0, 4) === 'http') {
|
|
|
this.href = row.网站域名
|
|
|
this.pageDetails = true
|
|
|
} else {
|
|
|
this.href = 'http://' + row.网站域名
|
|
|
this.pageDetails = true
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
// 三分清单悬停
|
|
|
inventoryMouseOver() {
|
|
|
clearInterval(this.threeTimer)
|
|
|
},
|
|
|
// 三分清单离开
|
|
|
inventoryLeave() {
|
|
|
this.inventoryChange()
|
|
|
},
|
|
|
setCurrentPageData() {
|
|
|
const begin = (this.currentPage - 1) * this.pageSize
|
|
|
const end = this.currentPage * this.pageSize
|
|
|
this.currentPageData = this.tableData.slice(begin, end)
|
|
|
},
|
|
|
handleSizeChange(val) {
|
|
|
this.pageSize = val
|
|
|
this.setCurrentPageData()
|
|
|
},
|
|
|
handleCurrentChange(val) {
|
|
|
this.currentPage = val
|
|
|
this.setCurrentPageData()
|
|
|
},
|
|
|
async dynamicClick(e) {
|
|
|
this.tableData = []
|
|
|
this.currentPage = 1
|
|
|
this.pageSize = 10
|
|
|
let data = await dongtaiInfo(e.target.dataset.id)
|
|
|
// console.log(data)
|
|
|
this.tableHeader= ['材料名称']
|
|
|
this.dialogTitle = data.data.materialsName
|
|
|
const fileName = data.data.materialsFileName.split(',')
|
|
|
const fileUrl = data.data.materialsFileUrl.split(',')
|
|
|
if (fileUrl.length < 1 || fileName.length < 1) return
|
|
|
// console.log(fileName)
|
|
|
if (fileName.length > 0) {
|
|
|
fileName.forEach((item, index) => {
|
|
|
this.tableData.push({ '材料名称': item.split('.')[0],'材料路径':fileUrl[index] })
|
|
|
})
|
|
|
this.networkPlatformDataTwo()
|
|
|
} else {
|
|
|
this.tableData = []
|
|
|
}
|
|
|
this.dynamicStatus = true
|
|
|
|
|
|
|
|
|
// this.dialogTitle = val.dynamicName
|
|
|
// this.tableData = val.fileList
|
|
|
// this.tableHeader = []
|
|
|
// for (const item in val.fileList[0]) {
|
|
|
// if (item !== '材料路径') {
|
|
|
// this.tableHeader.push(item)
|
|
|
// }
|
|
|
// }
|
|
|
// this.total = this.tableData.length
|
|
|
// this.totalPage = Math.ceil(this.tableData.length / this.pageSize)
|
|
|
// this.totalPage = this.totalPage === 0 ? 1 : this.totalPage
|
|
|
// this.setCurrentPageData()
|
|
|
// this.dynamicStatus = true
|
|
|
},
|
|
|
networkPlatformDataTwo() {
|
|
|
this.total = this.tableData.length
|
|
|
this.totalPage = Math.ceil(this.tableData.length / this.pageSize)
|
|
|
this.totalPage = this.totalPage === 0 ? 1 : this.totalPage
|
|
|
this.setCurrentPageData()
|
|
|
},
|
|
|
rowClick(row) {
|
|
|
// this.dialogDetails = true
|
|
|
// console.log(process.env.VUE_APP_BASE_API2 + row['材料路径'])
|
|
|
this.fileExtension = row['材料路径'].substring(
|
|
|
row['材料路径'].lastIndexOf('.') + 1
|
|
|
)
|
|
|
if (this.fileExtension == "pdf") {
|
|
|
this.pdfUrl = process.env.VUE_APP_BASE_API2 + row['材料路径'];
|
|
|
this.dialogDetails = true
|
|
|
} else if (
|
|
|
this.fileExtension === "docx" ||
|
|
|
this.fileExtension === "doc"
|
|
|
) {
|
|
|
axios({
|
|
|
method: "get",
|
|
|
responseType: "blob", // 设置响应文件格式
|
|
|
url: process.env.VUE_APP_BASE_API2 + row['材料路径'],
|
|
|
}).then(({ data }) => {
|
|
|
if (data) {
|
|
|
this.dialogDetails = true;
|
|
|
this.$nextTick(() => {
|
|
|
docx.renderAsync(data, this.$refs.fileDoc); // 渲染到页面预览
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
// if (['png', 'jpg', 'jpeg'].includes(row.材料路径.substring(row.材料路径.lastIndexOf('.') + 1))) {
|
|
|
// this.imgSrc = `${process.env.NODE_ENV === 'production' ? window._CONFIG['fileNginxUrl'] : '/fileApi'}${row['材料路径']}`
|
|
|
// this.dialogImg = true
|
|
|
// } else if (this.fileExtension === 'docx' || this.fileExtension === 'doc') {
|
|
|
// axios({
|
|
|
// method: 'get',
|
|
|
// responseType: 'blob', // 设置响应文件格式
|
|
|
// url: `${
|
|
|
// process.env.NODE_ENV === 'production'
|
|
|
// ? window._CONFIG['fileNginxUrl']
|
|
|
// : process.env.VUE_APP_BASE_API2
|
|
|
// }${row['材料路径']}`
|
|
|
// }).then(({ data }) => {
|
|
|
// if (data) {
|
|
|
// this.dialogDetails = true
|
|
|
// this.$nextTick(() => {
|
|
|
// docx.renderAsync(data, this.$refs.file) // 渲染到页面预览
|
|
|
// })
|
|
|
// }
|
|
|
// })
|
|
|
// } else if (this.fileExtension === 'pdf') {
|
|
|
// console.log('window._CONFIG[fileNginxUrl]',window._CONFIG['fileNginxUrl'])
|
|
|
// this.getNumPages(`${process.env.NODE_ENV === 'production' ? window._CONFIG['fileNginxUrl'] : '/fileApi'}${row['材料路径']}`)
|
|
|
// }
|
|
|
},
|
|
|
getNumPages(url) {
|
|
|
// console.log(url)
|
|
|
axios({
|
|
|
method: 'GET',
|
|
|
url: url, // 后台接口
|
|
|
paramsSerializer: function(params) {
|
|
|
return qs.stringify(params, { arrayFormat: 'brackets' })
|
|
|
},
|
|
|
headers: {
|
|
|
'Content-Type':
|
|
|
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
|
|
|
},
|
|
|
responseType: 'blob'
|
|
|
})
|
|
|
.then((response) => {
|
|
|
this.pdfUrl = this.getObjectURL(response.data)
|
|
|
const loadingTask = pdf.createLoadingTask(this.pdfUrl)
|
|
|
loadingTask.promise
|
|
|
.then((pdf) => {
|
|
|
this.numPages = 1
|
|
|
setInterval(() => {
|
|
|
if (pdf.numPages > this.numPages) {
|
|
|
this.numPages++
|
|
|
this.$forceUpdate()
|
|
|
} else {
|
|
|
clearInterval()
|
|
|
}
|
|
|
}, 2000)
|
|
|
this.dialogDetails = true
|
|
|
})
|
|
|
.catch((err) => {
|
|
|
console.error('pdf 加载失败', err)
|
|
|
})
|
|
|
})
|
|
|
.catch((error) => {
|
|
|
this.$message.error('' + error)
|
|
|
})
|
|
|
},
|
|
|
getObjectURL(file) {
|
|
|
let url = null
|
|
|
if (window.createObjectURL !== undefined) {
|
|
|
// basic
|
|
|
url = window.createObjectURL(file)
|
|
|
} else if (window.webkitURL !== undefined) {
|
|
|
// webkit or chrome
|
|
|
try {
|
|
|
url = window.webkitURL.createObjectURL(file)
|
|
|
} catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
} else if (window.URL !== undefined) {
|
|
|
// mozilla(firefox)
|
|
|
try {
|
|
|
url = window.URL.createObjectURL(file)
|
|
|
} catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
}
|
|
|
return url
|
|
|
},
|
|
|
dialogClose() {
|
|
|
this.reset()
|
|
|
this.dialogStatus = false
|
|
|
this.dynamicStatus = false
|
|
|
this.pageSize = 20
|
|
|
this.currentPage = 1
|
|
|
},
|
|
|
processDetails(val) {
|
|
|
this.fileExtension = 'docx'
|
|
|
|
|
|
if (
|
|
|
['生成整改通知书送达回执', '生成约谈通知书', '登记约谈'].includes(val)
|
|
|
) {
|
|
|
this.dialogDetails = true
|
|
|
// axios({
|
|
|
// method: 'get',
|
|
|
// responseType: 'blob', // 设置响应文件格式
|
|
|
// url: `${
|
|
|
// process.env.NODE_ENV === 'production'
|
|
|
// ? window._CONFIG['fileNginxUrl']
|
|
|
// : '/fileApi'
|
|
|
// }/网信办大屏内容文档/网络管理/约谈流程/${val}.docx`
|
|
|
// }).then(({ data }) => {
|
|
|
// if (data) {
|
|
|
// this.dialogDetails = true
|
|
|
// this.$nextTick(() => {
|
|
|
// docx.renderAsync(data, this.$refs.file) // 渲染到页面预览
|
|
|
// })
|
|
|
// }
|
|
|
// })
|
|
|
this.dialogTitle = val
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
.bcLeft {
|
|
|
width: 210px;
|
|
|
height: 924px;
|
|
|
position: absolute;
|
|
|
top: 156px;
|
|
|
right: -128px;
|
|
|
background: url("~@/assets/ecosphere/左.png") no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
.container {
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
.module-container {
|
|
|
width: 1603px;
|
|
|
height: 950px;
|
|
|
margin: 130px 0 0 50px;
|
|
|
display: flex;
|
|
|
flex-wrap: wrap;
|
|
|
// justify-content: space-between;
|
|
|
align-content: space-between;
|
|
|
.section-process {
|
|
|
width: 920px;
|
|
|
height: 445px;
|
|
|
margin-right: 22px;
|
|
|
.section-process-outline {
|
|
|
background: url("~@/assets/ecosphere/动图-箭头.png") no-repeat;
|
|
|
background-position-x: 48%;
|
|
|
background-position-y: 51%;
|
|
|
margin-left: 16px;
|
|
|
margin-top: 45px;
|
|
|
width: 900px;
|
|
|
height: 345px;
|
|
|
.column {
|
|
|
.top_column {
|
|
|
width: 100%;
|
|
|
height: 115px;
|
|
|
display: flex;
|
|
|
/* align-items: center; */
|
|
|
.top_column1 {
|
|
|
cursor: pointer;
|
|
|
width: 254px;
|
|
|
height: 80px;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 93px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 10px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
.top_column2 {
|
|
|
width: 254px;
|
|
|
height: 80px;
|
|
|
cursor: pointer;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 76px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 10px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.center_column {
|
|
|
width: 100%;
|
|
|
height: 115px;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
.center_column1 {
|
|
|
width: 254px;
|
|
|
height: 80px;
|
|
|
cursor: pointer;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: -5px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 10px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
.center_column2 {
|
|
|
cursor: pointer;
|
|
|
width: 254px;
|
|
|
height: 80px;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 76px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 10px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
.center_column3 {
|
|
|
width: 254px;
|
|
|
height: 80px;
|
|
|
cursor: pointer;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 76px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 10px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.bottom_column {
|
|
|
width: 100%;
|
|
|
height: 115px;
|
|
|
display: flex;
|
|
|
align-items: flex-end;
|
|
|
.bottom_column1 {
|
|
|
width: 274px;
|
|
|
height: 80px;
|
|
|
cursor: pointer;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程-长.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 194px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 10px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
.bottom_column2 {
|
|
|
width: 274px;
|
|
|
height: 80px;
|
|
|
cursor: pointer;
|
|
|
background: url("~@/assets/ecosphere/first/bg-约谈流程-长.png");
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
margin-left: 67px;
|
|
|
.process-img {
|
|
|
margin-left: 30px;
|
|
|
}
|
|
|
.process-font {
|
|
|
margin-left: 15px;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.section-inventory {
|
|
|
width: 520px;
|
|
|
height: 462px;
|
|
|
.three-inventory {
|
|
|
width: 483px;
|
|
|
height: 382px;
|
|
|
margin-left: 23px;
|
|
|
margin-top: 19px;
|
|
|
:hover {
|
|
|
cursor: pointer;
|
|
|
}
|
|
|
> div {
|
|
|
width: 483px;
|
|
|
height: 120px;
|
|
|
margin-bottom: 11px;
|
|
|
background: url("~@/assets/ecosphere/first/bg-三份清单-nor.png");
|
|
|
position: relative;
|
|
|
div:nth-child(1) {
|
|
|
position: absolute;
|
|
|
top: 35px;
|
|
|
left: 139px;
|
|
|
}
|
|
|
div:nth-child(2) {
|
|
|
position: absolute;
|
|
|
top: 59px;
|
|
|
left: 139px;
|
|
|
}
|
|
|
img {
|
|
|
position: absolute;
|
|
|
top: 12px;
|
|
|
left: 36px;
|
|
|
}
|
|
|
}
|
|
|
.checked {
|
|
|
background: url("~@/assets/ecosphere/first/bg-三份清单-act.png");
|
|
|
font-family: FZZDHJW--GB1-0;
|
|
|
font-size: 36px;
|
|
|
line-height: 32px;
|
|
|
letter-spacing: 2px;
|
|
|
color: #fbe84f;
|
|
|
}
|
|
|
.unchecked {
|
|
|
background: url("~@/assets/ecosphere/first/bg-三份清单-nor.png");
|
|
|
font-family: FZZDHJW--GB1-0;
|
|
|
font-size: 36px;
|
|
|
line-height: 32px;
|
|
|
letter-spacing: 2px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.section-dynamic {
|
|
|
width: 719px;
|
|
|
height: 484px;
|
|
|
margin-right: 22px;
|
|
|
padding-top: 40px;
|
|
|
.scroll_box {
|
|
|
width: 722px;
|
|
|
height: 412px;
|
|
|
margin-top: 30px;
|
|
|
overflow: hidden;
|
|
|
.scroll_item {
|
|
|
cursor: pointer;
|
|
|
width: 719px;
|
|
|
height: 165px;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
margin-bottom: 20px;
|
|
|
border: 1px solid #193859;
|
|
|
|
|
|
.item_txt {
|
|
|
width: 100%;
|
|
|
padding-left: 20px;
|
|
|
height: 115px;
|
|
|
line-height: 115px;
|
|
|
span {
|
|
|
display: inline-block;
|
|
|
width:695px;
|
|
|
color: #ffffff;
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
white-space: nowrap;
|
|
|
margin: 0 auto;
|
|
|
font-family: SourceHanSansCN-Medium;
|
|
|
font-size: 28px;
|
|
|
}
|
|
|
}
|
|
|
.item_bottom {
|
|
|
width: 719px;
|
|
|
height: 50px;
|
|
|
background-image: linear-gradient(
|
|
|
312deg,
|
|
|
rgb(99 202 250 / 0%) 0%,
|
|
|
rgba(103, 193, 253, 0.2) 0%,
|
|
|
rgb(106 184 255 / 0%) 0%,
|
|
|
#6ab7ff42 100%
|
|
|
),
|
|
|
linear-gradient(#6ab8ff00, #6ab8ff00);
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
.bottom_icon {
|
|
|
margin-left: 20px;
|
|
|
width: 29px;
|
|
|
height: 31px;
|
|
|
background: url("~@/assets/ecosphere/first/icon-部门.png");
|
|
|
}
|
|
|
.bottom_name {
|
|
|
margin-left: 12px;
|
|
|
font-family: SourceHanSansCN-Regular;
|
|
|
font-size: 28px;
|
|
|
color: #68cff9;
|
|
|
}
|
|
|
.bottom_time {
|
|
|
flex: 1;
|
|
|
text-align: right;
|
|
|
margin-right: 20px;
|
|
|
font-family: SourceHanSansCN-Regular;
|
|
|
font-size: 28px;
|
|
|
color: #68cff9;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.section-ecosphere {
|
|
|
width: 720px;
|
|
|
height: 484px;
|
|
|
padding-top: 40px;
|
|
|
.title-main {
|
|
|
width: 420px;
|
|
|
display: flex;
|
|
|
.title-right {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
text-indent: 30px;
|
|
|
cursor: pointer;
|
|
|
width: 130px;
|
|
|
height: 50px;
|
|
|
font-family: SourceHanSansCN-Medium, sans-serif;
|
|
|
font-size: 25px;
|
|
|
color: #ffffff;
|
|
|
background: url("~@/assets/ecosphere/btn-其他.png") no-repeat;
|
|
|
position: absolute;
|
|
|
right: 180px;
|
|
|
bottom: 470px;
|
|
|
}
|
|
|
.title-back {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
text-indent: 30px;
|
|
|
cursor: pointer;
|
|
|
width: 130px;
|
|
|
height: 50px;
|
|
|
font-family: SourceHanSansCN-Medium, sans-serif;
|
|
|
font-size: 25px;
|
|
|
color: #ffffff;
|
|
|
background: url("~@/assets/ecosphere/btn-返回.png") no-repeat;
|
|
|
position: absolute;
|
|
|
right: 180px;
|
|
|
bottom: 470px;
|
|
|
}
|
|
|
}
|
|
|
.zoology-box {
|
|
|
width: 700px;
|
|
|
display: flex;
|
|
|
flex-wrap: wrap;
|
|
|
}
|
|
|
.zoology-icon {
|
|
|
text-align: center;
|
|
|
width: 336px;
|
|
|
height: 170px;
|
|
|
line-height: 170px;
|
|
|
margin-top: 34px;
|
|
|
margin-left: 7px;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
box-sizing: border-box;
|
|
|
border: 1px solid #132d56;
|
|
|
border-radius: 3px;
|
|
|
div {
|
|
|
font-family: SourceHanSansCN-Regular;
|
|
|
font-size: 28px;
|
|
|
font-weight: normal;
|
|
|
font-stretch: normal;
|
|
|
letter-spacing: 1px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
.icon-bk {
|
|
|
position: relative;
|
|
|
left: 46px;
|
|
|
width: 110px;
|
|
|
height: 110px;
|
|
|
background: url("~@/assets/ecosphere/icon-bg-默认.png") no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
}
|
|
|
.zoology-icon-name {
|
|
|
width: 170px;
|
|
|
text-align: center;
|
|
|
position: relative;
|
|
|
top: 0px;
|
|
|
left: 54px;
|
|
|
font-family: SourceHanSansCN-Regular, sans-serif;
|
|
|
font-size: 33px;
|
|
|
letter-spacing: 1px;
|
|
|
color: #68cff9;
|
|
|
}
|
|
|
|
|
|
&:hover {
|
|
|
cursor: pointer;
|
|
|
}
|
|
|
}
|
|
|
.active {
|
|
|
background: url("~@/assets/ecosphere/bg-选中.png") no-repeat;
|
|
|
div {
|
|
|
opacity: 1;
|
|
|
}
|
|
|
.zoology-icon-name {
|
|
|
font-family: SourceHanSansCN-Regular, sans-serif;
|
|
|
font-size: 33px;
|
|
|
font-weight: normal;
|
|
|
font-stretch: normal;
|
|
|
letter-spacing: 1px;
|
|
|
color: #fffffe;
|
|
|
}
|
|
|
.arrow {
|
|
|
background: url("~@/assets/ecosphere/箭头-选中.png") no-repeat;
|
|
|
}
|
|
|
.icon-bk {
|
|
|
background: url("~@/assets/ecosphere/icon-bg-选中.png") no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
.screen-dialog {
|
|
|
.dialog-btn {
|
|
|
background: url("~@/assets/dialog/btn-bg.png") no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
width: 160px;
|
|
|
height: 50px;
|
|
|
font-family: SourceHanSansCN-Regular;
|
|
|
font-size: 24px;
|
|
|
font-weight: normal;
|
|
|
font-stretch: normal;
|
|
|
line-height: 10px;
|
|
|
letter-spacing: 2px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
::v-deep .el-button {
|
|
|
border: none;
|
|
|
}
|
|
|
.dialog-footer :hover {
|
|
|
.dialog-btn {
|
|
|
background: url("~@/assets/dialog/btn-bg-act.png") no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
}
|
|
|
::v-deep .el-dialog__header {
|
|
|
background: rgba(255, 255, 255, 0);
|
|
|
text-align: left;
|
|
|
padding-left: 40px;
|
|
|
.el-dialog__title {
|
|
|
font-family: SourceHanSansCN-Bold, san-serif;
|
|
|
font-size: 24px;
|
|
|
font-weight: normal;
|
|
|
font-stretch: normal;
|
|
|
line-height: 38px;
|
|
|
letter-spacing: 0px;
|
|
|
color: #ffffff;
|
|
|
}
|
|
|
}
|
|
|
::v-deep .el-dialog {
|
|
|
background: url("../../../../assets/dialog/弹窗背景-一般.png") no-repeat;
|
|
|
width: 1820px;
|
|
|
height: 950px;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
::v-deep .el-dialog__headerbtn {
|
|
|
top: 0;
|
|
|
}
|
|
|
::v-deep .el-dialog__footer {
|
|
|
background: rgba(255, 255, 255, 0);
|
|
|
}
|
|
|
::v-deep .el-table th.el-table__cell {
|
|
|
background-color: rgba(0, 0, 0, 0);
|
|
|
}
|
|
|
::v-deep .el-table {
|
|
|
background-color: rgba(0, 0, 0, 0);
|
|
|
color: #fff;
|
|
|
border: none;
|
|
|
}
|
|
|
::v-deep .el-table .cell {
|
|
|
font-size: 26px;
|
|
|
height: 40px;
|
|
|
line-height: 40px;
|
|
|
}
|
|
|
::v-deep.el-table::before {
|
|
|
display: none;
|
|
|
}
|
|
|
::v-deep .el-table tr {
|
|
|
background-color: rgba(0, 0, 0, 0);
|
|
|
}
|
|
|
::v-deep .el-table__header {
|
|
|
background-color: rgba(76, 162, 248, 0.2);
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-table__row {
|
|
|
font-family: SourceHanSansCN-Regular, sans-serif;
|
|
|
font-size: 26px;
|
|
|
font-weight: normal;
|
|
|
font-stretch: normal;
|
|
|
letter-spacing: 0px;
|
|
|
color: #b7dfff;
|
|
|
background-color: rgba(106, 184, 255, 0.2);
|
|
|
border: solid 1px #6ab8ff;
|
|
|
}
|
|
|
::v-deep .el-table {
|
|
|
tbody tr {
|
|
|
&:hover {
|
|
|
td {
|
|
|
background-color: rgba(228, 223, 223, 0.3) !important;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
::v-deep .el-table td.el-table__cell {
|
|
|
border: none;
|
|
|
}
|
|
|
::v-deep .el-table th.el-table__cell {
|
|
|
border: none;
|
|
|
}
|
|
|
}
|
|
|
.screen-dialog ::-webkit-scrollbar {
|
|
|
width: 10px;
|
|
|
height: 10px;
|
|
|
background-color: rgba(#1fb6e5, 0.06);
|
|
|
}
|
|
|
::v-deep .el-pagination__total {
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-input .el-input--mini .el-input--suffix {
|
|
|
background: transparent;
|
|
|
}
|
|
|
::v-deep .el-pagination .el-select .el-input .el-input__inner {
|
|
|
background: transparent;
|
|
|
border: none;
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-select-dropdown__list {
|
|
|
background: #000;
|
|
|
}
|
|
|
::v-deep .el-pagination button:disabled {
|
|
|
background-color: transparent;
|
|
|
}
|
|
|
::v-deep .el-pagination .btn-next {
|
|
|
background-color: transparent;
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-pager {
|
|
|
color: #fff !important;
|
|
|
}
|
|
|
::v-deep .el-pager li {
|
|
|
background-color: transparent;
|
|
|
}
|
|
|
::v-deep .el-pagination__editor.el-input .el-input__inner {
|
|
|
background-color: transparent;
|
|
|
border: none;
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-pagination__jump {
|
|
|
color: #fff;
|
|
|
}
|
|
|
::v-deep .el-select-dropdown .el-popper {
|
|
|
background-color: #132d56 !important;
|
|
|
}
|
|
|
.file-content {
|
|
|
width: 860px;
|
|
|
transform: scale(1.5);
|
|
|
height: 440px;
|
|
|
}
|
|
|
.file-content-pdf {
|
|
|
height: 580px;
|
|
|
}
|
|
|
</style>
|
|
|
<style lang="scss">
|
|
|
.file-content .docx-wrapper {
|
|
|
background: transparent !important;
|
|
|
padding: 0;
|
|
|
}
|
|
|
.file-content .docx {
|
|
|
width: 90% !important;
|
|
|
}
|
|
|
.file-content .docx p {
|
|
|
text-align: center !important;
|
|
|
}
|
|
|
</style>
|