Files
UNION_HUTB/target/classes/static/components/jdh/JdhTwoInfo.vue
T
2026-09-09 09:14:28 +08:00

213 lines
6.4 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>
<div>
<el-tabs tab-position="top" v-model="activeName" v-loading="loading">
<el-tab-pane label="会议信息" name="1">
<el-form label-suffix="" label-position="left" style="padding: 20px 0">
<el-form-item style="text-align: center">
<span style="font-weight: 700;font-size: 16px">{{ viewData.meeting_name }}</span>
</el-form-item>
<el-row gutter="450">
<el-col :span="12">
<el-form-item label="所在单位">
{{ viewData.unit_name }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="申请时间">
{{ viewData.create_time }}
</el-form-item>
</el-col>
</el-row>
<el-row gutter="20">
<el-col :span="8">
<el-form-item label="申请人">
{{ viewData.username }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="user_name" label="有无选举事项">
<i v-if="viewData.have_elect" class="fa fa-circle text-success ml5">&emsp13;</i>
<i v-if="!viewData.have_elect" class="fa fa-circle text-danger ml5">&emsp13;</i>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="审核状态">
<span :style="'color:'+viewData.color">{{ viewData.state_name }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="届&emsp;&emsp;次">
{{ viewData.jdhallname }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="会议时间">
{{ viewData.meeting_time }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="上次大会时间">
{{ viewData.before_meeting_time }}
</el-form-item>
</el-col>
</el-row>
<el-row gutter="20">
<el-col :span="6">
<el-form-item label="正式代表">
{{ viewData.official_delegate }}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="其中教师">
{{ viewData.teacher_delegate }}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="列席代表">
{{ viewData.attend_delegate }}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="其中特邀">
{{ viewData.special_delegate }}
</el-form-item>
</el-col>
</el-row>
<el-form-item prop="user_name" label="会议议题">
<span v-html="viewData.meeting_topic"></span>
</el-form-item>
<el-form-item prop="user_name" label="备&emsp;&emsp;注">
{{ viewData.remark }}
</el-form-item>
<el-form-item label="附&emsp;&emsp;件">
<file-upload v-if="viewData.files&&viewData.files.length"
:files="viewData.files"
:view="true"></file-upload>
<span v-else>暂无</span>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="院级党委意见" name="2" v-if="viewData.party_committee_id">
<el-form label-width="130px" style="padding: 20px 0">
<el-form-item label="审核信息&emsp;" label-width="135px" class="view-header"></el-form-item>
<el-row gutter="20">
<el-col :span="12">
<el-form-item label="审核人:">
{{ viewData.party_name }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="审核时间:">
{{ viewData.party_committee_time }}
</el-form-item>
</el-col>
</el-row>
<el-form-item label="审核意见:">
{{ viewData.party_committee_opinion }}
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="校工会意见" name="3" v-if="viewData.school_union_id">
<el-form label-width="130px" style="padding: 20px 0">
<el-form-item label="审核信息&emsp;" label-width="135px" class="view-header"></el-form-item>
<el-row gutter="20">
<el-col :span="12">
<el-form-item label="审核人:">
{{ viewData.school_name }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="审核时间:">
{{ viewData.school_union_time }}
</el-form-item>
</el-col>
</el-row>
<el-form-item label="审核意见:">
{{ viewData.school_union_opinion }}
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane v-if="handle" :label="label" name="999">
<slot name="handle"></slot>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
module.exports = {
props: {
id: String,
handle: {
type: Boolean,
default: false,
},
label: {
type: String,
default: '审核'
},
panes: {
type: Array,
default: []
}
},
data() {
return {
activeName: '1',
loading: true,
viewData: {},
replyFiles: []
}
},
components: {
'file-upload': httpVueLoader('/components/plugins/FileUpload.vue'),
},
methods: {
hasPane(name) {
if (!this.handle) {
return true
}
return this.panes.includes(name)
},
async getMeetingInfo(id) {
const {data} = await $.get(base + "/platform/jdh/level2/info/getMeetingInfo", {id})
return data
},
async openView(id) {
this.loading = true
this.viewData = await this.getMeetingInfo(id)
if (this.viewData) {
if (this.viewData.files) {
this.viewData.files = JSON.parse(this.viewData.files)
}
this.activeName = this.handle ? "999" : "1"
} else {
this.viewData = {}
this.$message.error("获取会议信息失败");
}
this.loading = false
}
}
}
</script>
<style>
</style>