Files
UNION_NJUST/target/classes/static/components/syr/SyrInfoNew.vue
T
2026-09-23 09:38:39 +08:00

506 lines
19 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<el-tabs v-model="activeName" tab-position="top">
<el-tab-pane label="基本信息" name="1">
<el-card>
<table class="table table-bordered">
<tr>
<td class="text-center" colspan="6" style="font-size: 20px;">
{{ kt.jbxx.xmmc }}
<el-tooltip content="点我可以导出申报表" effect="dark" placement="top-start">
<i class="el-icon-tickets text-primary pointer"
@click="()=>{ window.open(base+'/platform/syr/common/exportlxsbs?id='+this.kt.jbxx.id)}">
</i>
</el-tooltip>
</td>
</tr>
<tr>
<td class="td-title" width="11.1%">姓名</td>
<td class="td-content" width="22.2%">{{ kt.jbxx.username }}</td>
<td class="td-title" width="11.1%">性别</td>
<td td-content width="22.2%">{{ kt.jbxx.sex }}</td>
<td class="td-title" width="11.1%">出生年月</td>
<td td-content width="22.2%">{{ kt.jbxx.birthday }}</td>
</tr>
<tr>
<td class="td-title">职务/职称</td>
<td td-content>{{ kt.jbxx.zwzc }}</td>
<td class="td-title">学历/学位</td>
<td td-content>{{ kt.jbxx.xlxw }}</td>
<td class="td-title">所在单位</td>
<td td-content>{{ kt.jbxx.dwname }}</td>
</tr>
<tr>
<td class="td-title">办公电话</td>
<td td-content>{{ kt.jbxx.bgphone }}</td>
<td class="td-title">手机</td>
<td td-content>{{ kt.jbxx.mobile }}</td>
<td class="td-title">电子信箱</td>
<td td-content>{{ kt.jbxx.email }}</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
项目组成员
</td>
</tr>
<tr>
<td colspan="6" style="padding:0!important;border-top: none">
<table class="table table-bordered">
<tr>
<td>姓名</td>
<td>职称</td>
<td>学历</td>
<td>工作单位</td>
</tr>
<tr v-for="o in kt.jbxx.xmzcy">
<td>{{ o.username }}</td>
<td>{{ o.zc }}</td>
<td>{{ o.xl }}</td>
<td>{{ o.gzdw }}</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
项目研究基础及条件
</td>
</tr>
<tr>
<td colspan="6">
<div class="text-left" v-html="kt.jbxx.yjjctj"></div>
</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
项目预期成果及应用推广价值
</td>
</tr>
<tr>
<td colspan="6">
<div class="text-left" v-html="kt.jbxx.yqcgtgjz"></div>
</td>
</tr>
</table>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="kt.jbxx.state>20" label="部门工会初审信息" name="2">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label">审核人</label>
<div class="item-content">{{ kt.jbxx.stbmghfzr }}</div>
</div>
<div class="clearfix">
<label class="item-label">审核时间</label>
<div class="item-content">{{ kt.jbxx.stbmghshsj }}</div>
</div>
<div class="clearfix">
<label class="item-label">审核意见</label>
<div class="item-content">{{ kt.jbxx.stbmghyj }}</div>
</div>
<div class="clearfix">
<label class="item-label"> 签字</label>
<div class="item-content">
<el-image :src="kt.jbxx.stbmghfzrqz" style="width: 200px;height:auto"></el-image>
</div>
</div>
</div>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="kt.jbxx.state>30" label="校工会初审信息" name="3">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label">审核人</label>
<div class="item-content">{{ kt.jbxx.stxghfzr }}</div>
</div>
<div class="clearfix">
<label class="item-label">审核时间</label>
<div class="item-content">{{ kt.jbxx.stxghshsj }}</div>
</div>
<div class="clearfix">
<label class="item-label">审核意见</label>
<div class="item-content">{{ kt.jbxx.stxghyj }}</div>
</div>
<div class="clearfix">
<label class="item-label"> 签字</label>
<div class="item-content">
<el-image :src="kt.jbxx.stxghfzrqz" style="width: 200px;height:auto"></el-image>
</div>
</div>
</div>
</el-card>
</el-tab-pane>
<!--# if(@shiro.hasRole('superadmin') || @shiro.hasRole('A06')){ #-->
<el-tab-pane v-if="kt.jbxx.state>=40" label="评委立项评审信息" name="4">
<el-row :gutter="10" class="mb10" type="flex">
<el-col :span="12">
<el-card class="box-card-syr" shadow="never">
<div slot="header" class="clearfix">
<span>建议立项率(建议立项数/已审数)</span>
</div>
<div id="jylxDiv" class="text-center" style="height: 300px;width: 500px"></div>
</el-card>
</el-col>
<el-col :span="12">
<el-card class="box-card-syr" shadow="never">
<div slot="header" class="clearfix">
<span>立项等次</span>
</div>
<div id="lxlevelDiv" class="text-center" style="height: 300px;width: 500px"></div>
</el-card>
</el-col>
</el-row>
<div>
<el-card>
<table class="table table-bordered">
<tr>
<td width="10%">评委姓名</td>
<td width="10%">评委工号</td>
<td width="10%">是否建议立项</td>
<td width="10%">立项等次</td>
<td width="30%">评审意见</td>
<td width="20%">评审时间</td>
<td width="10%">是否评审</td>
</tr>
<tr v-for="o in kt.lxpsxx">
<td>{{ o.username }}</td>
<td>{{ o.loginname }}</td>
<td>{{ o.isjylx === 1 ? '√' : o.isjylx === 0 ? '×' : '' }}</td>
<td>{{ o.lxlevel ? o.lxlevel + '元' : '' }}</td>
<td>
<div style="max-height: 100px;overflow-y: auto">
{{ o.psyj }}
</div>
</td>
<td>{{ o.pssj }}</td>
<td>
<i :class="o.pssj==null?'text-danger el-icon-circle-close':'text-success el-icon-circle-check'">
{{ o.pssj == null ? '未审' : '已审' }}
</i>
</td>
</tr>
</table>
</el-card>
</div>
</el-tab-pane>
<!--# } #-->
<el-tab-pane v-if="kt.jbxx.state>50" label="校工会立项评审信息" name="5">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label">审核人</label>
<div class="item-content">{{ kt.jbxx.lxusername }}</div>
</div>
<div class="clearfix">
<label class="item-label">立项审核时间</label>
<div class="item-content">{{ kt.jbxx.lxsj }}</div>
</div>
<div class="clearfix">
<label class="item-label">立项结果</label>
<div class="item-content">{{ kt.jbxx.lxresult ? '立项' : '不予立项' }}</div>
</div>
<div class="clearfix">
<label class="item-label">立项等次</label>
<div class="item-content">{{ kt.jbxx.lxlevel }}元</div>
</div>
</div>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="kt.jbxx.state>60 && kt.jbxx.lxresult===1" label="中期检查提醒" name="6">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label">提醒时间</label>
<div class="item-content">{{ kt.jbxx.zqtbtxsj }}</div>
</div>
<div class="clearfix">
<label class="item-label">截止时间</label>
<div class="item-content">{{ kt.jbxx.zqtbjzsj }}</div>
</div>
</div>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="kt.jbxx.state>70 && kt.jbxx.lxresult===1" label="中期检查表" name="7">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label" style="width: 200px">项目的进展情况及存在的问题</label>
<div class="item-content" style="margin-left: 200px">{{ kt.jbxx.zqxmjzqk }}</div>
</div>
<div class="clearfix">
<label class="item-label" style="width: 200px">经费预算明细</label>
<div class="item-content" style="margin-left:200px">{{ kt.jbxx.zqjfysmx }}</div>
</div>
<div class="clearfix">
<label class="item-label" style="width: 200px">备注</label>
<div class="item-content" style="margin-left:200px">{{ kt.jbxx.zqbz }}</div>
</div>
<div class="clearfix">
<label class="item-label" style="width: 200px">附件</label>
<div class="item-content" style="margin-left:200px">
<div class="pointer"
@click="()=>{window.location.href=base+'/platform/syr/common/exportzqjcb?id='+this.kt.jbxx.id}">
<svg id="icon-yunpanlogo-2" height="20" viewBox="0 0 1024 1024" width="20">
<path
d="M902.095238 314.514286V853.333333a97.52381 97.52381 0 0 1-97.523809 97.52381H219.428571a97.52381 97.52381 0 0 1-97.523809-97.52381V170.666667a97.52381 97.52381 0 0 1 97.523809-97.52381h441.295239z"
fill="#4997D9"></path>
<path d="M571.245714 720.944762h50.956191L707.047619 449.340952h-50.95619l-84.845715 271.60381z"
fill="#FFFFFF"></path>
<path
d="M660.72381 265.752381V73.142857l241.371428 241.371429h-192.609524a48.761905 48.761905 0 0 1-48.761904-48.761905z"
fill="#4B80CB"></path>
<path d="M622.201905 720.944762h-50.956191l-84.601904-237.470476h50.71238l84.845715 237.470476z"
fill="#FFFFFF"></path>
<path d="M401.798095 720.944762h50.956191l84.601904-237.470476h-50.71238l-84.845715 237.470476z"
fill="#FFFFFF"></path>
<path d="M452.754286 720.944762h-50.956191L316.952381 449.340952h50.95619l84.845715 271.60381z"
fill="#FFFFFF"></path>
</svg>
中期检查表.docx
</div>
</div>
</div>
</div>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="kt.jbxx.state>80 && kt.jbxx.lxresult===1" label="中期审核信息" name="8">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label">审核人</label>
<div class="item-content">{{ kt.jbxx.zqxghfzr }}</div>
</div>
<div class="clearfix">
<label class="item-label">审核时间</label>
<div class="item-content">{{ kt.jbxx.zqxghshsj }}</div>
</div>
<div class="clearfix">
<label class="item-label">审核意见</label>
<div class="item-content">{{ kt.jbxx.zqxghyj }}</div>
</div>
</div>
</el-card>
</el-tab-pane>
<el-tab-pane v-if="kt.jbxx.state>90 && kt.jbxx.lxresult===1" label="结题报告" name="9">
<el-card>
<table class="table table-bordered">
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
项目研究实践的主要内容及方法
</td>
</tr>
<tr>
<td colspan="6">
<div class="text-left">{{ kt.jtbgs.zynr }}</div>
</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
成果自我评价及应用范围或取得的社会效益
</td>
</tr>
<tr>
<td colspan="6">
<div class="text-left">{{ kt.jtbgs.zwpjshxy }}</div>
</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
主要成果介绍
</td>
</tr>
<tr>
<td colspan="6">
<div class="text-left">{{ kt.jtbgs.zycgjs }}</div>
</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
经费使用情况
</td>
</tr>
<tr>
<td colspan="6">
<div class="text-left">{{ kt.jtbgs.jfsyqk }}</div>
</td>
</tr>
<tr>
<td class="text-center" colspan="6"
style="font-size: 15px;border-top: 1px solid #e3e6f3;">
研究成果及佐证材料文件
</td>
</tr>
<tr>
<td colspan="6">
<div v-for="o in kt.yjcgfj" class="pointer text-left"
@click="dd3s.download(o.filepath,o.filename)">
<svg id="icon-yunpanlogo-2" height="20" viewBox="0 0 1024 1024" width="20">
<path
d="M902.095238 314.514286V853.333333a97.52381 97.52381 0 0 1-97.523809 97.52381H219.428571a97.52381 97.52381 0 0 1-97.523809-97.52381V170.666667a97.52381 97.52381 0 0 1 97.523809-97.52381h441.295239z"
fill="#4997D9"></path>
<path d="M571.245714 720.944762h50.956191L707.047619 449.340952h-50.95619l-84.845715 271.60381z"
fill="#FFFFFF"></path>
<path
d="M660.72381 265.752381V73.142857l241.371428 241.371429h-192.609524a48.761905 48.761905 0 0 1-48.761904-48.761905z"
fill="#4B80CB"></path>
<path d="M622.201905 720.944762h-50.956191l-84.601904-237.470476h50.71238l84.845715 237.470476z"
fill="#FFFFFF"></path>
<path d="M401.798095 720.944762h50.956191l84.601904-237.470476h-50.71238l-84.845715 237.470476z"
fill="#FFFFFF"></path>
<path d="M452.754286 720.944762h-50.956191L316.952381 449.340952h50.95619l84.845715 271.60381z"
fill="#FFFFFF"></path>
</svg>
{{ o.filename }}
</div>
</td>
</tr>
</table>
</el-card>
</el-tab-pane>
<!--# if(@shiro.hasRole('superadmin') || @shiro.hasRole('A06')){ #-->
<el-tab-pane v-if="kt.jbxx.state>=100 && kt.jbxx.lxresult===1" label="评委结题评审信息"
name="10">
<el-row :gutter="10" class="mb10" type="flex">
<el-col :span="12">
<el-card class="box-card-syr">
<div slot="header" class="clearfix">
<span>通过比例(通过数/已审数)</span>
</div>
<div id="passDiv" class="text-center" style="height: 300px;width: 500px"></div>
</el-card>
</el-col>
<el-col :span="12">
<el-card class="box-card-syr">
<div slot="header" class="clearfix">
<span>优秀比例(优秀数/通过数)</span>
</div>
<div id="goodDiv" class="text-center" style="height: 300px;width: 500px"></div>
</el-card>
</el-col>
</el-row>
<div>
<el-card>
<table class="table table-bordered">
<tr>
<td width="10%">评委姓名</td>
<td width="10%">评委工号</td>
<td width="10%">是否通过</td>
<td width="10%">是否优秀</td>
<td width="20%">评审时间</td>
<td width="30%">评审建议</td>
<td width="10%">是否评审</td>
</tr>
<tr v-for="o in kt.jtpsxx">
<td>{{ o.username }}</td>
<td>{{ o.loginname }}</td>
<td>{{ o.ispass === 1 ? '√' : o.ispass === 0 ? '×' : '' }}</td>
<td>{{ o.isgood === 1 ? '√' : o.isgood === 0 ? '×' : '' }}</td>
<td>{{ o.pssj }}</td>
<td>
<div style="max-height: 100px;overflow-y: auto">
{{ o.psjy }}
</div>
</td>
<td>
<i :class="o.pssj==null?'text-danger el-icon-circle-close':'text-success el-icon-circle-check'">
{{ o.pssj == null ? '未审' : '已审' }}
</i>
</td>
</tr>
</table>
</el-card>
</div>
</el-tab-pane>
<!--# } #-->
<el-tab-pane v-if="kt.jbxx.state>110 && kt.jbxx.lxresult===1" label="校工会结题评审信息"
name="11">
<el-card>
<div class="item">
<div class="clearfix">
<label class="item-label">评审人</label>
<div class="item-content">{{ kt.jbxx.jtxghfzr }}</div>
</div>
<div class="clearfix">
<label class="item-label">评审时间</label>
<div class="item-content">{{ kt.jbxx.jtxghshsj }}</div>
</div>
<div class="clearfix">
<label class="item-label">是否通过</label>
<div class="item-content">{{ kt.jbxx.ispass ? '是' : '否' }}</div>
</div>
<div v-if="kt.jbxx.ispass===1" class="clearfix">
<label class="item-label">是否优秀</label>
<div class="item-content">{{ kt.jbxx.isgood ? '是' : '否' }}</div>
</div>
</div>
</el-card>
</el-tab-pane>
<!--handle 主要是审核操作-->
<slot name="handle"></slot>
</el-tabs>
</template>
<script>
module.exports = {
props: {
activeName: {
type: String,
default: '1'
}
},
data() {
return {
kt: {
jbxx: {},
lxpsxx: {},
jtpsxx: {},
jtbgs: {},
yjcgfj: []
}
}
},
methods: {
async openView(id, activeName = '1') {
const resp = await $.get(base + '/platform/syr/common/findOne', {id})
this.activeName = activeName
if (resp.code === 0) {
this.$set(this, 'kt', resp.data)
this.kt.jbxx.xmzcy = JSON.parse(resp.data.jbxx.xmzcy)
// if (this.kt.jbxx.state >= 40 && this.smm.showpane.includes(4)) {
// this.initPwLxPsPlot()
// }
// if (this.kt.jbxx.state > 100 && this.kt.jbxx.lxresult === 1 && this.smm.showpane.includes(10)) {
// this.initPwJtPsPlot()
// }
}
}
}
}
</script>
<style scoped>
</style>