|
|
|
@ -16,23 +16,27 @@
|
|
|
|
|
<div class="left-echart">
|
|
|
|
|
<echart></echart>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right-tables" :style="{height : tabOneHeader + 'px'}">
|
|
|
|
|
<div class="table-items" v-for="item in 5">
|
|
|
|
|
<div class="project-name">【项目名称】</div>
|
|
|
|
|
<div class="right-tables" :style="{height : tabOneHeader + 'px'}" v-if="tableData.length > 0">
|
|
|
|
|
<div class="table-items" v-for="item in tableData">
|
|
|
|
|
<div class="project-name">【{{item.projectName}}】</div>
|
|
|
|
|
<div class="project-type">
|
|
|
|
|
<span class="left-title">项目类别:</span>
|
|
|
|
|
<span class="right-value">自主品牌先进技术研究院</span>
|
|
|
|
|
<div class="project-type-box" v-if="item.projectBigType">
|
|
|
|
|
<dict-tag class="right-value" :options="dict.type.project_categories" :value="item.projectBigType"/>
|
|
|
|
|
</div>
|
|
|
|
|
<span class="right-value" v-else>其他</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="declare-time">
|
|
|
|
|
<span class="left-title">申报时间:</span>
|
|
|
|
|
<span class="right-number">2023-04-01</span>
|
|
|
|
|
<span class="left-title">拨付时间:</span>
|
|
|
|
|
<span class="right-number">{{ item.appropriationTime ? formatDate(item.appropriationTime,2) : '' }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="appropriate">
|
|
|
|
|
<span class="left-title">拨付金额<span class="left-unit">(亿元)</span>:</span>
|
|
|
|
|
<span class="right-number">50</span>
|
|
|
|
|
<span class="left-title">拨付金额<span class="left-unit">(元)</span>:</span>
|
|
|
|
|
<span class="right-number">{{item.fundAmount}}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<el-empty class="right-tables-Two" :style="{height : tabOneHeader + 'px'}" :image-size="160" v-else></el-empty>
|
|
|
|
|
</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12" class="enterprise-honor">
|
|
|
|
@ -40,15 +44,24 @@
|
|
|
|
|
<span class="garden"></span>
|
|
|
|
|
<span class="box-header-title">企业荣誉资质(5个)</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="two-tables" :style="{height : tabOneHeader + 'px'}">
|
|
|
|
|
<div class="table-items" v-for="item in 10">
|
|
|
|
|
<div class="two-left">xxxxx项目</div>
|
|
|
|
|
<div class="two-right">
|
|
|
|
|
<span class="right-left">项目类别:</span>
|
|
|
|
|
<span class="right-span">自主品牌先进技术研究院</span>
|
|
|
|
|
<div class="two-tables" :style="{height : tabOneHeader + 'px'}" v-if="enterpriseHonor.length > 0">
|
|
|
|
|
<div class="table-items" v-for="item in enterpriseHonor">
|
|
|
|
|
<div class="promoteProject-top">
|
|
|
|
|
<span class="span-one" @click="goProjectInfo(item)"><dict-tag :options="dict.type.project_small_type" :value="item.projectSmallType"/></span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-bottom">
|
|
|
|
|
<div class="promoteProject-bottom-left">
|
|
|
|
|
项目类别:
|
|
|
|
|
<span class="span-two"><dict-tag :options="dict.type.project_categories" :value="item.projectBigType"/></span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-bottom-right">
|
|
|
|
|
申报时间:
|
|
|
|
|
<span class="span-three">{{ formatYear(item.createTime) }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<el-empty :style="{height : tabOneHeader + 'px'}" :image-size="160" v-else></el-empty>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row class="home-enterprise-bottom">
|
|
|
|
@ -59,15 +72,22 @@
|
|
|
|
|
</div>
|
|
|
|
|
<section>
|
|
|
|
|
<el-table v-loading="loadingTab" class="dataMap-two-table" :data="tableData" :height="tableTwoHeight" border :header-cell-style="{background:'#E8F3FC'}">
|
|
|
|
|
<el-table-column label="项目类别" prop="projectType" align="center"/>
|
|
|
|
|
<el-table-column label="项目类别" prop="projectType" align="center">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<div v-if="scope.row.projectBigType">
|
|
|
|
|
<dict-tag :options="dict.type.project_categories" :value="scope.row.projectBigType"/>
|
|
|
|
|
</div>
|
|
|
|
|
<span v-else>其他</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="项目名称" prop="projectName" align="center">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<div class="project-trace-table">{{ scope.row.projectName }}</div>
|
|
|
|
|
<div class="project-trace-table" @click="goProjectInfoLeft(scope.row)">{{ scope.row.projectName }}</div>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="专项资金申报时间" prop="time" align="center">
|
|
|
|
|
<el-table-column label="专项资金拨付时间" prop="time" align="center">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<div class="project-trace-table-number">{{ scope.row.time }}</div>
|
|
|
|
|
<div class="project-trace-table-number">{{ scope.row.appropriationTime ? formatDate(scope.row.appropriationTime,2) : '' }}</div>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
@ -78,30 +98,33 @@
|
|
|
|
|
<span class="garden"></span>
|
|
|
|
|
<span class="box-header-title">关联项目进展(3个)</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-box-wai-box" :style="{height:tableTwoHeight + 'px'}">
|
|
|
|
|
<div class="promoteProject-box-wai-box" :style="{height:tableTwoHeight + 'px'}" v-if="tableTwoData.length > 0">
|
|
|
|
|
<div class="promoteProject-box-div" v-for="(item,index) in tableTwoData" :key="index">
|
|
|
|
|
<div class="promoteProject-top">
|
|
|
|
|
<span class="span-one">【{{ item.projectName }}】</span>
|
|
|
|
|
<span class="span-one" @click="goProjectInfo(item)">【<dict-tag :options="dict.type.project_small_type" :value="item.projectSmallType"/>】</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-bottom">
|
|
|
|
|
<div class="promoteProject-bottom-left">
|
|
|
|
|
所属企业:
|
|
|
|
|
<span class="span-two">{{ item.enterprice }}</span>
|
|
|
|
|
项目类别:
|
|
|
|
|
<span class="span-two"><dict-tag :options="dict.type.project_categories" :value="item.projectBigType"/></span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-bottom-right">
|
|
|
|
|
申报时间:
|
|
|
|
|
<span class="span-three">{{ item.time }}</span>
|
|
|
|
|
<span class="span-three">{{ formatYear(item.createTime) }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-position" :class="(item.status == 0 || item.status == 1 || item.status == 2 || item.status == 3) ? 'orange' : (item.status == 6) ? 'green' : (item.status == 7 || item.status == 8 || item.status == 9 || item.status == 10) ? 'red' : ''">
|
|
|
|
|
{{item.status == 0 ? '待填报' : item.status == 1 ? '初审中' : item.status == 2 ? '复审中' : item.status == 3 ? '终审中' : item.status == 6 ? '已填报' : item.status == 7 ? '复审不通过' : item.status == 8 ? '初审不通过' : item.status == 9 ? '终审不通过' : item.status == 10 ? '初审驳回' : ''}}
|
|
|
|
|
</div>
|
|
|
|
|
<div class="promoteProject-position" :class="item.type == 1 ? 'orange' : item.type == 2 ? 'green' : item.type == 3 ? 'red' : ''">{{item.type == 1 ? '复审中' : item.type == 2 ? '评审通过' : item.type == 3 ? '复审不通过' : ''}}</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<el-empty :style="{height : tableTwoHeight + 'px'}" :image-size="160" v-else></el-empty>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8" class="home-main-right">
|
|
|
|
|
<el-row type="flex" class="main-two-row">
|
|
|
|
|
<el-col :span="24" class="work-main-left" style="height: 64.5%;">
|
|
|
|
|
<el-col :span="24" class="work-main-left" style="height: 49.5%;">
|
|
|
|
|
<div class="main-left">
|
|
|
|
|
<div class="left-header">
|
|
|
|
|
<div class="left-header-titleS">
|
|
|
|
@ -118,7 +141,11 @@
|
|
|
|
|
<div class="warn-main-content">
|
|
|
|
|
<div class="content-title">【{{ item.declarationName }}】【预计{{ item.daysAdvance }}天后填报结束】</div>
|
|
|
|
|
<div class="content-middle">{{ item.alertContent }}</div>
|
|
|
|
|
<!-- <div class="content-time">{{ item.alertTime }}</div> -->
|
|
|
|
|
<div class="tixing-duanxin">
|
|
|
|
|
<div class="content-time">{{ item.alertTime }}</div>
|
|
|
|
|
<div class="content-time content-time-two">已发送短信</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="warn-main-left" v-else-if="item.alertManner == 1 && item.qymc && item.alertRecipients == 2">
|
|
|
|
@ -126,7 +153,11 @@
|
|
|
|
|
<div class="warn-main-content">
|
|
|
|
|
<div class="content-title" style="display: flex;">【{{ item.qymc }}】<dict-tag :options="dict.type.project_small_type" :value="item.declarationName"/></div>
|
|
|
|
|
<div class="content-middle">{{ item.alertContent }}</div>
|
|
|
|
|
<!-- <div class="content-time">{{ item.alertTime }}</div> -->
|
|
|
|
|
<div class="tixing-duanxin">
|
|
|
|
|
<div class="content-time">{{ item.alertTime }}</div>
|
|
|
|
|
<div class="content-time content-time-two">已发送短信</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="warn-main-left" v-else-if="item.alertManner == 1 && item.projectId">
|
|
|
|
@ -134,14 +165,22 @@
|
|
|
|
|
<div class="warn-main-content">
|
|
|
|
|
<div class="content-title">【{{ item.declarationName }}】</div>
|
|
|
|
|
<div class="content-middle">{{ item.alertContent }}</div>
|
|
|
|
|
<!-- <div class="content-time">{{ item.alertTime }}</div> -->
|
|
|
|
|
<div class="tixing-duanxin">
|
|
|
|
|
<div class="content-time">{{ item.alertTime }}</div>
|
|
|
|
|
<div class="content-time content-time-two">已发送短信</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="warn-main-left different-left" v-else-if="item.alertManner == 1 && !item.projectId">
|
|
|
|
|
<div class="warn-main-img"><img src="@/assets/images/warn-blue.png" alt=""></div>
|
|
|
|
|
<div class="warn-main-content">
|
|
|
|
|
<div class="content-title">{{ item.alertContent }}</div>
|
|
|
|
|
<!-- <div class="content-time">{{ item.alertTime }}</div> -->
|
|
|
|
|
<div class="tixing-duanxin">
|
|
|
|
|
<div class="content-time">{{ item.alertTime }}</div>
|
|
|
|
|
<div class="content-time content-time-two">已发送短信</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="warn-main-right">
|
|
|
|
@ -160,7 +199,7 @@
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="24" class="work-main-right" style="height: 34.5%;">
|
|
|
|
|
<el-col :span="24" class="work-main-right" style="height: 49.5%;">
|
|
|
|
|
<div class="main-right" id="task-box">
|
|
|
|
|
<div class="right-header" id="task-header">
|
|
|
|
|
<div class="right-header-box">
|
|
|
|
@ -200,10 +239,11 @@
|
|
|
|
|
</template>
|
|
|
|
|
<script>
|
|
|
|
|
import { listRecords } from "@/api/onlineDeclartion/records"
|
|
|
|
|
import { usualFund, enterpriseProject } from "@/api/jin_ji_hu/zijinbiao"
|
|
|
|
|
import { chiefAll, enterpriseAll, changeIsRead } from "@/api/jin_ji_hu/intelligentReminder"
|
|
|
|
|
import echart from "./components/echartsPage"
|
|
|
|
|
export default {
|
|
|
|
|
dicts: ["project_small_type"],
|
|
|
|
|
dicts: ["project_small_type", "project_categories"],
|
|
|
|
|
components:{
|
|
|
|
|
echart
|
|
|
|
|
},
|
|
|
|
@ -230,64 +270,9 @@ export default {
|
|
|
|
|
tabHeader: 200,
|
|
|
|
|
tabOneHeader: 200,
|
|
|
|
|
tableTwoHeight:null,
|
|
|
|
|
tableData:[
|
|
|
|
|
{
|
|
|
|
|
projectType:"省级总部",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"市级总部",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"区级总部",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"省级服务业领军",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"两业融合试点单位",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"市级工业设计中心",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"两业融合试点单位",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},{
|
|
|
|
|
projectType:"市级工业设计中心",
|
|
|
|
|
projectName:"xxx项目",
|
|
|
|
|
time:"2024-04-01"
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
tableTwoData:[
|
|
|
|
|
{
|
|
|
|
|
projectName:"项目名称",
|
|
|
|
|
enterprice:"苏州众汇聚合信息科技有限公司",
|
|
|
|
|
time:"2024-04-01",
|
|
|
|
|
type:1,
|
|
|
|
|
},{
|
|
|
|
|
projectName:"项目名称",
|
|
|
|
|
enterprice:"苏州众汇聚合信息科技有限公司",
|
|
|
|
|
time:"2024-04-01",
|
|
|
|
|
type:2,
|
|
|
|
|
},{
|
|
|
|
|
projectName:"项目名称",
|
|
|
|
|
enterprice:"苏州众汇聚合信息科技有限公司",
|
|
|
|
|
time:"2024-04-01",
|
|
|
|
|
type:3,
|
|
|
|
|
},{
|
|
|
|
|
projectName:"项目名称",
|
|
|
|
|
enterprice:"苏州众汇聚合信息科技有限公司",
|
|
|
|
|
time:"2024-04-01",
|
|
|
|
|
type:3,
|
|
|
|
|
},
|
|
|
|
|
]
|
|
|
|
|
tableData:[],
|
|
|
|
|
tableTwoData:[],
|
|
|
|
|
enterpriseHonor:[],
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
mounted(){
|
|
|
|
@ -295,11 +280,35 @@ export default {
|
|
|
|
|
this.cancalDebounce();
|
|
|
|
|
window.addEventListener('resize', this.cancalDebounce);
|
|
|
|
|
this.entRemind();
|
|
|
|
|
// 往年资金拨付比例
|
|
|
|
|
this.getUsualFund();
|
|
|
|
|
// 企业荣誉资质
|
|
|
|
|
this.getEnterpriseProjectOne();
|
|
|
|
|
// 关联项目进展
|
|
|
|
|
this.getEnterpriseProjectTwo();
|
|
|
|
|
},
|
|
|
|
|
beforeDestroy() {
|
|
|
|
|
window.removeEventListener('resize', this.cancalDebounce);
|
|
|
|
|
},
|
|
|
|
|
methods:{
|
|
|
|
|
// 企业荣誉资质
|
|
|
|
|
getEnterpriseProjectOne(){
|
|
|
|
|
enterpriseProject({type:1}).then(res=>{
|
|
|
|
|
this.enterpriseHonor = res.data;
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 关联项目进展
|
|
|
|
|
getEnterpriseProjectTwo(){
|
|
|
|
|
enterpriseProject({type:2}).then(res=>{
|
|
|
|
|
this.tableTwoData = res.data;
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 往年资金拨付比例
|
|
|
|
|
getUsualFund(){
|
|
|
|
|
usualFund().then(res=>{
|
|
|
|
|
this.tableData = res.data
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 待填报
|
|
|
|
|
getListTwo(){
|
|
|
|
|
this.loading = true;
|
|
|
|
@ -313,6 +322,25 @@ export default {
|
|
|
|
|
enterpriseAll({current:1,size:20}).then(res=>{
|
|
|
|
|
this.remindList = res.data.records;
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 企业荣誉资质/关联项目进展跳转
|
|
|
|
|
goProjectInfo(item){
|
|
|
|
|
this.$router.push({
|
|
|
|
|
name: 'projectInfo',
|
|
|
|
|
query: { userId: Number(item.id) }
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 往年专项资金申报
|
|
|
|
|
goProjectInfoLeft(item){
|
|
|
|
|
console.log(item,"item");
|
|
|
|
|
if(item.projectName == "区级总部" || item.projectName == "市级服务业领军") {
|
|
|
|
|
if(item.projectId) {
|
|
|
|
|
this.$router.push({
|
|
|
|
|
name: 'projectInfo',
|
|
|
|
|
query: { userId: Number(item.projectId) }
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 智能提醒跳转
|
|
|
|
|
enterjump(){
|
|
|
|
@ -362,6 +390,26 @@ export default {
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
formatYear(time){
|
|
|
|
|
const year = time.slice(0, 4);
|
|
|
|
|
let date = new Date();
|
|
|
|
|
const currentYear = date.getFullYear(); //获取完整的年份(4位)
|
|
|
|
|
if(Number(year) < Number(currentYear)) {
|
|
|
|
|
return year;
|
|
|
|
|
} else {
|
|
|
|
|
return this.parseTime(time, '{y}-{m}-{d}')
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
formatDate(dateString,id) {
|
|
|
|
|
const year = dateString.slice(0, 4);
|
|
|
|
|
const month = dateString.slice(4, 6);
|
|
|
|
|
const day = dateString.slice(6, 8);
|
|
|
|
|
if(id == 1) {
|
|
|
|
|
return `${year}年${month}月${day}日`;
|
|
|
|
|
} else {
|
|
|
|
|
return `${year}-${month}-${day}`;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// 屏幕尺寸变化
|
|
|
|
|
cancalDebounce(){
|
|
|
|
|
const element = document.getElementById('task-box'); // 通过元素的 ID 获取元素
|
|
|
|
|