活动申报+基层工会

This commit is contained in:
Paidax
2025-02-28 17:01:09 +08:00
parent f7d05c43a0
commit f539184fca
456 changed files with 32939 additions and 35577 deletions
File diff suppressed because it is too large Load Diff
@@ -1,319 +1,285 @@
<template>
<el-tabs tab-position="top" v-model="activeName" v-loading="loading" class="activity_view">
<el-tab-pane label="活动信息" name="1">
<el-form label-suffix=":" label-position="left" style="padding: 20px 0">
<el-row gutter="20">
<el-col :span="24">
<vi-title title="基本信息"></vi-title>
</el-col>
<!-- <el-col :span="8">
<el-tabs tab-position="top" v-model="activeName" v-loading="loading" class="activity_view">
<el-tab-pane label="活动信息" name="1">
<el-form label-suffix=":" label-position="left" style="padding: 20px 0">
<el-row gutter="20">
<el-col :span="24">
<vi-title title="基本信息"></vi-title>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="活动计划">
{{ viewData.plan | str }}
</el-form-item>
</el-col>-->
<el-col :span="8">
<el-form-item label="活动名称">
{{ viewData.name | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="活动地址">
{{ viewData.address | str }}
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-col :span="8">
<el-form-item label="活动名称">
{{ viewData.name | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="活动地址">
{{ viewData.address | str }}
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="活动级别">
{{ activity.school.gameStyle[viewData.activityLevel] | str }}
</el-form-item>
</el-col>-->
<el-col :span="8">
<el-form-item label="报名日期">
{{ viewData.applyStartTime }} - {{ viewData.applyEndTime }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="主办单位">
{{ viewData.unitSponsorName | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="协办单位">
{{ viewData.unitJointlyName | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="活动时间">
{{ viewData.startTime }} - {{ viewData.endTime }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="竞赛方式">
<span v-if="viewData.gameStyle===1">竞赛类</span>
<span v-if="viewData.gameStyle===2">非竞赛类</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="报名日期">{{ viewData.applyStartTime }} - {{ viewData.applyEndTime }}</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="主办单位">
{{ viewData.unitSponsorName | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="协办单位">
{{ viewData.unitJointlyName | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="活动时间">{{ viewData.startTime }} - {{ viewData.endTime }}</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="竞赛方式">
<span v-if="viewData.gameStyle === 1">竞赛类</span>
<span v-if="viewData.gameStyle === 2">非竞赛类</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="经费预算">
{{ viewData.funding | money }} 元
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="经费预算">{{ viewData.funding | money }} 元</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="报名方式">
<span>{{ viewData.applyWay.map(v => activity.school.applyWay[v]).join('、') }}</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="报名方式">
<span>{{ viewData.applyWay.map((v) => activity.school.applyWay[v]).join("、") }}</span>
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<!-- <el-col :span="8">
<el-form-item label="报名人员类型">
<span v-if="viewData.personType===1">会员</span>
<span v-if="viewData.personType===2">普通教职工</span>
</el-form-item>
</el-col>-->
<el-col :span="24">
<vi-title title="活动说明"></vi-title>
</el-col>
<el-col :span="24">
<vi-title title="活动说明"></vi-title>
</el-col>
<template v-if="viewData.gameStyle===1&&!viewData.applyWay.includes(3)">
<el-col :span="24">
<el-form-item label="运动员资格 ">
<div v-html="viewData.athleteQualification"></div>
</el-form-item>
</el-col>
<template v-if="viewData.gameStyle === 1 && !viewData.applyWay.includes(3)">
<el-col :span="24">
<el-form-item label="运动员资格 ">
<div v-html="viewData.athleteQualification"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="报名方法 ">
<div v-html="viewData.registrationMethod"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="报名方法 ">
<div v-html="viewData.registrationMethod"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="竞赛方法 ">
<div v-html="viewData.competitionMethod"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="竞赛方法 ">
<div v-html="viewData.competitionMethod"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="奖励方法 ">
<div v-html="viewData.rewardMethod"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="奖励方法 ">
<div v-html="viewData.rewardMethod"></div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="注意事项 ">
<div v-html="viewData.precautions"></div>
</el-form-item>
</el-col>
</template>
<el-col :span="24">
<el-form-item label="注意事项 ">
<div v-html="viewData.precautions"></div>
</el-form-item>
</el-col>
</template>
<template v-if="viewData.applyWay.includes(3)">
<el-col :span="24">
<el-form-item label="活动通知 ">
<div v-html="viewData.eventNotification"></div>
</el-form-item>
</el-col>
</template>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane label="项目信息" name="2" v-if="!viewData.applyWay.includes(3)">
<el-form style="margin-top: 20px">
<el-card class="box-card mb10" v-for="app in viewData.events" shadow="hover">
<div slot="header" class="clearfix">
<span>{{ app.allName }}</span>
<el-button style="float: right; padding: 3px 5px" @click="$set(app,'show',!app.show)"
type="text">{{ app.show ? '折叠' : '展开' }}
</el-button>
</div>
<transition name="el-fade-in-linear">
<div v-show="app.show" class="text item transition-box" style="padding: 20px 20px">
<el-form label-suffix=":" label-position="left" style="padding: 20px 0">
<el-row>
<el-col :span="12">
<el-form-item label="比赛模式">
<span v-if="app.projectType==1">单项</span>
<span v-else-if="app.projectType==2">团体</span>
</el-form-item>
</el-col>
<template v-if="viewData.applyWay.includes(3)">
<el-col :span="24">
<el-form-item label="活动通知 ">
<div v-html="viewData.eventNotification"></div>
</el-form-item>
</el-col>
</template>
</el-row>
</el-form>
</el-tab-pane>
<el-row>
<el-tab-pane label="项目信息" name="2" v-if="!viewData.applyWay.includes(3)">
<el-form style="margin-top: 20px">
<el-card class="box-card mb10" v-for="app in viewData.events" shadow="hover">
<div slot="header" class="clearfix">
<span>{{ app.allName }}</span>
<el-button style="float: right; padding: 3px 5px" @click="$set(app, 'show', !app.show)" type="text">
{{ app.show ? "折叠" : "展开" }}
</el-button>
</div>
<transition name="el-fade-in-linear">
<div v-show="app.show" class="text item transition-box" style="padding: 20px 20px">
<el-form label-suffix=":" label-position="left" style="padding: 20px 0">
<el-row>
<el-col :span="12">
<el-form-item label="比赛模式">
<span v-if="app.projectType == 1">单项</span>
<span v-else-if="app.projectType == 2">团体</span>
</el-form-item>
</el-col>
</el-row>
<el-col :span="24" v-if="app.projectType==2">
<vi-title title="团体报名人数"></vi-title>
</el-col>
<el-row>
<el-col :span="24" v-if="app.projectType == 2">
<vi-title title="团体报名人数"></vi-title>
</el-col>
<!-- <el-col :span="8" v-if="app.projectType==2">
<!-- <el-col :span="8" v-if="app.projectType==2">
<el-form-item label="每队最少人数">
{{ app.restrictMinNum | money }} 人
</el-form-item>
</el-col>-->
<el-col :span="8" v-if="app.projectType==2&&app.applyType==1">
<el-form-item label="每队最多人数">
{{
app.athletesMaxNum + app.leanderNum + app.coachNum + app.substituteNum | money
}} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2 && app.applyType == 1">
<el-form-item label="每队最多人数">
{{ (app.athletesMaxNum + app.leanderNum + app.coachNum + app.substituteNum) | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2">
<el-form-item label="最多创建几队 ">
{{ app.restrictTotalTeam | money }} 队
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2">
<el-form-item label="最多创建几队 ">{{ app.restrictTotalTeam | money }} 队</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2&&app.applyType==1">
<el-form-item label="运动员最多人数 ">
{{ app.athletesMaxNum | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2 && app.applyType == 1">
<el-form-item label="运动员最多人数 ">{{ app.athletesMaxNum | money }} 人</el-form-item>
</el-col>
<!-- <el-col :span="8" v-if="app.projectType==2">
<!-- <el-col :span="8" v-if="app.projectType==2">
<el-form-item label="运动员最少人数 ">
{{ app.athletesMinNum | money }} 人
</el-form-item>
</el-col>-->
<el-col :span="8" v-if="app.projectType==2&&app.applyType==1">
<el-form-item label="领队人数 ">
{{ app.leanderNum | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2 && app.applyType == 1">
<el-form-item label="领队人数 ">{{ app.leanderNum | money }} 人</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2&&app.applyType==1">
<el-form-item label="教练人数">
{{ app.coachNum | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2 && app.applyType == 1">
<el-form-item label="教练人数">{{ app.coachNum | money }} 人</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2&&app.applyType==1">
<el-form-item label="副处长(级)以上最少人数">
{{ app.deputyDirectorNum | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2 && app.applyType == 1">
<el-form-item label="副处长(级)以上最少人数">{{ app.deputyDirectorNum | money }} 人</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2">
<el-form-item label="男队人数 ">
{{ app.restrictBoyNum | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2">
<el-form-item label="男队人数 ">{{ app.restrictBoyNum | money }} 人</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2">
<el-form-item label="女队人数 ">
{{ app.restrictGirlNum | money }} 人
</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType == 2">
<el-form-item label="女队人数 ">{{ app.restrictGirlNum | money }} 人</el-form-item>
</el-col>
<el-col :span="8" v-if="app.projectType==2&&app.applyType==1">
<el-form-item label="替补人员最少人数 ">
{{ app.substituteNum | money }} 人
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</transition>
</el-card>
</el-form>
</el-tab-pane>
<el-tab-pane label="报名信息" name="3" v-if="viewData.applyWay.includes(2)">
<el-form style="margin-top: 20px">
<el-form-item label="分工会报名信息&emsp;" label-width="150px" class="view-header"
v-if="union_filter">
<el-select v-model="unionid" placeholder="分工会筛选" filterable clearable
style="width: 200px;float: right" size="small" @change="changeUnion"
@clear="changeUnion">
<el-option
v-for="item in unions"
:key="item.id"
:label="item.unionname"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-form>
<el-card class="box-card mb10" v-for="app in viewData.apply" shadow="hover">
<div slot="header" class="clearfix">
<span>{{ isDisPlayCode ? '(' + app.unioncode + ')' : null }}{{
app.unionname
}}({{ app.num |money }} 人)</span>
<el-button style="float: right; padding: 3px 5px" @click="$set(app,'show',!app.show)"
type="text">{{ app.show ? '折叠' : '展开' }}
</el-button>
</div>
<transition name="el-fade-in-linear">
<div v-show="app.show" class="text item transition-box" style="padding: 20px 20px">
<el-timeline>
<el-timeline-item timestamp="领队信息" placement="top">
<el-card shadow="never">
<el-form label-suffix=":" label-position="right" label-width="80px"
style="margin-top: 30px">
<el-row gutter="20">
<el-col :span="4">
<el-form-item label="姓名">
{{ app.leader.username | str }}
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="性别">
{{ app.leader.sex | str }}
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="工号">
{{ app.leader.loginname | str }}
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="电话">
{{ app.leader.mobile | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位">
{{ app.leader.unitname | str }}
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-col :span="8" v-if="app.projectType == 2 && app.applyType == 1">
<el-form-item label="替补人员最少人数 ">{{ app.substituteNum | money }} 人</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</transition>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="运动员信息" placement="top">
</el-form>
</el-tab-pane>
<el-table border stripe :data="app.apply" size="mini" :key="tableKey">
<el-table-column
type="index" label="序号" header-align="center" align="center" sortable
width="100">
</el-table-column>
<el-tab-pane label="报名信息" name="3" v-if="viewData.applyWay.includes(2)">
<el-form style="margin-top: 20px">
<el-form-item label="基层工会报名信息&emsp;" label-width="150px" class="view-header" v-if="union_filter">
<el-select
v-model="unionid"
placeholder="基层工会筛选"
filterable
clearable
style="width: 200px; float: right"
size="small"
@change="changeUnion"
@clear="changeUnion"
>
<el-option v-for="item in unions" :key="item.id" :label="item.unionname" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-form>
<el-table-column
prop="team" header-align="center" align="center" sortable
label="所属队">
<template scope="{row}">
<span v-if="row.team">{{ row.team }}</span>
<span v-if="!row.team">单项比赛暂无小队</span>
</template>
</el-table-column>
<el-card class="box-card mb10" v-for="app in viewData.apply" shadow="hover">
<div slot="header" class="clearfix">
<span>{{ isDisPlayCode ? "(" + app.unioncode + ")" : null }}{{ app.unionname }}({{ app.num | money }} 人)</span>
<el-button style="float: right; padding: 3px 5px" @click="$set(app, 'show', !app.show)" type="text">
{{ app.show ? "折叠" : "展开" }}
</el-button>
</div>
<transition name="el-fade-in-linear">
<div v-show="app.show" class="text item transition-box" style="padding: 20px 20px">
<el-timeline>
<el-timeline-item timestamp="领队信息" placement="top">
<el-card shadow="never">
<el-form label-suffix=":" label-position="right" label-width="80px" style="margin-top: 30px">
<el-row gutter="20">
<el-col :span="4">
<el-form-item label="姓名">
{{ app.leader.username | str }}
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="性别">
{{ app.leader.sex | str }}
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="工号">
{{ app.leader.loginname | str }}
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="电话">
{{ app.leader.mobile | str }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位">
{{ app.leader.unitname | str }}
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="运动员信息" placement="top">
<el-table border stripe :data="app.apply" size="mini" :key="tableKey">
<el-table-column
type="index"
label="序号"
header-align="center"
align="center"
sortable
width="100"
></el-table-column>
<el-table-column
prop="username" header-align="center" align="center"
label="姓名">
</el-table-column>
<el-table-column prop="team" header-align="center" align="center" sortable label="所属队">
<template scope="{row}">
<span v-if="row.team">{{ row.team }}</span>
<span v-if="!row.team">单项比赛暂无小队</span>
</template>
</el-table-column>
<el-table-column
prop="loginname" header-align="center" align="center"
label="教工号">
</el-table-column>
<el-table-column prop="username" header-align="center" align="center" label="姓名"></el-table-column>
<!-- <el-table-column
<el-table-column prop="loginname" header-align="center" align="center" label="教工号"></el-table-column>
<!-- <el-table-column
prop="division_level_leadership" header-align="center" align="center" sortable
label="是否处级领导">
<template scope="{row:{division_level_leadership}}">
@@ -322,198 +288,171 @@
</template>
</el-table-column>-->
<el-table-column
prop="unitname" header-align="center" align="center" sortable
label="单位">
</el-table-column>
<el-table-column prop="unitname" header-align="center" align="center" sortable label="单位"></el-table-column>
<el-table-column
prop="mobile" header-align="center" align="center"
label="电话">
</el-table-column>
<el-table-column prop="mobile" header-align="center" align="center" label="电话"></el-table-column>
<el-table-column
prop="sex" header-align="center" align="center" sortable
label="性别">
</el-table-column>
<el-table-column prop="sex" header-align="center" align="center" sortable label="性别"></el-table-column>
<el-table-column
prop="identity" header-align="center" align="center"
label="身份">
<template scope="{row}">
<el-tag v-if="row.identity.includes('4')" type="info"
effect="light">处级领导
</el-tag>
<el-tag v-if="row.identity.includes('3')" type="warning"
effect="light">领队
</el-tag>
<el-tag v-if="row.identity.includes('2')" type="success"
effect="light">教练
</el-tag>
<el-tag v-if="row.identity.includes('1')" effect="light">运动员
</el-tag>
<el-tag v-if="row.identity.includes('5')" type="danger"
effect="light">替补
</el-tag>
<el-tag v-if="row.identity.includes('6')" effect="info">团长
</el-tag>
<el-tag v-if="row.identity.includes('7')" type="warning"
effect="light">工作人员
</el-tag>
</template>
</el-table-column>
</el-table>
</el-timeline-item>
</el-timeline>
</div>
</transition>
</el-card>
</el-tab-pane>
</el-tabs>
<el-table-column prop="identity" header-align="center" align="center" label="身份">
<template scope="{row}">
<el-tag v-if="row.identity.includes('4')" type="info" effect="light">处级领导</el-tag>
<el-tag v-if="row.identity.includes('3')" type="warning" effect="light">领队</el-tag>
<el-tag v-if="row.identity.includes('2')" type="success" effect="light">教练</el-tag>
<el-tag v-if="row.identity.includes('1')" effect="light">运动员</el-tag>
<el-tag v-if="row.identity.includes('5')" type="danger" effect="light">替补</el-tag>
<el-tag v-if="row.identity.includes('6')" effect="info">团长</el-tag>
<el-tag v-if="row.identity.includes('7')" type="warning" effect="light">工作人员</el-tag>
</template>
</el-table-column>
</el-table>
</el-timeline-item>
</el-timeline>
</div>
</transition>
</el-card>
</el-tab-pane>
</el-tabs>
</template>
<script>
module.exports = {
props: {
union_filter: {
type: Boolean,
default: true,
},
label: {
type: String,
default: '审核'
},
panes: {
type: Array,
default: []
},
},
filters: {
money(val) {
return val ? val : 0
},
str(val) {
return val ? val : '暂无'
}
},
data() {
return {
activeName: "1",
viewData: {awardsMode: [], applyWay: [], combinationMethod: []},
rootData: {},
loading: true,
units: [],
unions: [],
unionid: '',
tableKey: '',
}
},
methods: {
changeUnion() {
if (this.unionid) {
this.viewData.apply = this.rootData.apply.filter(v => {
return v.id === this.unionid
})
} else {
this.viewData.apply = JSON.parse(JSON.stringify(this.rootData.apply))
}
this.tableKey = new Date().getTime()
},
hasPane(name) {
return this.panes.includes(name)
},
async getUnitName(arr) {
const clubs = await getClubs()
const unitClubs = this.units.concat(clubs)
let brr = []
arr.forEach(a => {
const unit = unitClubs.find(v => {
return v.id === a
})
if (unit) {
brr.push(unit.name)
props: {
union_filter: {
type: Boolean,
default: true
},
label: {
type: String,
default: "审核"
},
panes: {
type: Array,
default: []
}
})
return brr.join(",")
},
async getInfo(id) {
this.loading = true
const {data} = await $.get("/platform/activity/common/findOne", {id})
this.loading = false
if (data) {
data.unitSponsorName = await this.getUnitName(JSON.parse(data.unitSponsor))
data.unitJointly = JSON.parse(data.unitJointly)
data.unitJointlyName = await this.getUnitName(data.unitJointly)
data.applyWay = JSON.parse(data.applyWay)
if (!data.applyWay.includes(3) && data.events.length > 0) {
data.events.forEach(v => {
v.awardsMode = v.awardsMode
v.combinationMethod = v.combinationMethod
})
filters: {
money(val) {
return val ? val : 0
},
str(val) {
return val ? val : "暂无"
}
if (data.applyWay.includes(2)) {
data.apply.forEach(v => {
const leaders = v.apply.filter(x => {
return x.identity === 3
})
v.leader = {}
if (leaders.length) {
v.leader = leaders[0]
},
data() {
return {
activeName: "1",
viewData: { awardsMode: [], applyWay: [], combinationMethod: [] },
rootData: {},
loading: true,
units: [],
unions: [],
unionid: "",
tableKey: ""
}
},
methods: {
changeUnion() {
if (this.unionid) {
this.viewData.apply = this.rootData.apply.filter((v) => {
return v.id === this.unionid
})
} else {
this.viewData.apply = JSON.parse(JSON.stringify(this.rootData.apply))
}
v.apply = v.apply.filter(x => {
return x.identity !== 3
this.tableKey = new Date().getTime()
},
hasPane(name) {
return this.panes.includes(name)
},
async getUnitName(arr) {
const clubs = await getClubs()
const unitClubs = this.units.concat(clubs)
let brr = []
arr.forEach((a) => {
const unit = unitClubs.find((v) => {
return v.id === a
})
if (unit) {
brr.push(unit.name)
}
})
})
return brr.join(",")
},
async getInfo(id) {
this.loading = true
const { data } = await $.get("/platform/activity/common/findOne", { id })
this.loading = false
data.apply.sort((a, b) => {
return b.num - a.num
})
if (data) {
data.unitSponsorName = await this.getUnitName(JSON.parse(data.unitSponsor))
data.unitJointly = JSON.parse(data.unitJointly)
data.unitJointlyName = await this.getUnitName(data.unitJointly)
data.applyWay = JSON.parse(data.applyWay)
if (data.apply.length === 1) {
data.apply[0].show = true
}
if (!data.applyWay.includes(3) && data.events.length > 0) {
data.events.forEach((v) => {
v.awardsMode = v.awardsMode
v.combinationMethod = v.combinationMethod
})
}
this.unions = data.apply.map(v => {
return {id: v.id, unionname: v.unionname}
})
if (data.applyWay.includes(2)) {
data.apply.forEach((v) => {
const leaders = v.apply.filter((x) => {
return x.identity === 3
})
v.leader = {}
if (leaders.length) {
v.leader = leaders[0]
}
v.apply = v.apply.filter((x) => {
return x.identity !== 3
})
})
data.apply.sort((a, b) => {
return b.num - a.num
})
if (data.apply.length === 1) {
data.apply[0].show = true
}
this.unions = data.apply.map((v) => {
return { id: v.id, unionname: v.unionname }
})
}
this.rootData = clone(data)
this.viewData = data
this.tableKey = new Date().getTime()
} else {
this.viewData = {}
this.$message({ message: "获取信息失败", type: "error" })
}
}
this.rootData = clone(data)
this.viewData = data
this.tableKey = new Date().getTime()
} else {
this.viewData = {}
this.$message({message: "获取信息失败", type: 'error'});
}
},
async created() {
this.units = await getUnits(null)
}
},
async created() {
this.units = await getUnits(null)
}
}
</script>
<style>
.mb10 {
margin-bottom: 10px;
margin-bottom: 10px;
}
.activity_view .el-card__header {
padding: 10px 20px;
padding: 10px 20px;
}
.activity_view .el-card__body {
padding: 0;
padding: 0;
}
.activity_view .el-timeline {
padding-left: 0;
padding-left: 0;
}
</style>
</style>
@@ -1,5 +1,5 @@
<template>
<!-- <div>
<!-- <div>
<el-form label-suffix=":" label-position="left" style="padding: 20px 0">
<el-row gutter="20">
<el-col :span="24">
@@ -22,7 +22,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="计划类型">
{{ viewData.type == 1 ? '校活动计划' : viewData.type == 2 ? '分工会活动计划' : '协会(社团)计划' }}
{{ viewData.type == 1 ? '校活动计划' : viewData.type == 2 ? '基层工会活动计划' : '协会(社团)计划' }}
</el-form-item>
</el-col>
<el-col :span="24">
@@ -33,66 +33,64 @@
</el-row>
</el-form>
</div>-->
<div style="width: 80%; margin: 0 auto">
<vi-title title="计划详情"></vi-title>
<el-descriptions :column="2" border class="table_fixed">
<el-descriptions-item label="计划名称">
{{ viewData.name }}
</el-descriptions-item>
<el-descriptions-item label="预计时间">
{{ viewData.time }}
</el-descriptions-item>
<el-descriptions-item label="预算费用">
{{ viewData.money }}
</el-descriptions-item>
<el-descriptions-item label="计划类型">
{{ viewData.type == 40001 ? '校活动计划' : viewData.type == 40002 ? '分工会活动计划' : '协会(社团)计划' }}
</el-descriptions-item>
<el-descriptions-item label="计划内容" :span="2">
<div v-html="viewData.content"></div>
</el-descriptions-item>
</el-descriptions>
</div>
<div style="width: 80%; margin: 0 auto">
<vi-title title="计划详情"></vi-title>
<el-descriptions :column="2" border class="table_fixed">
<el-descriptions-item label="计划名称">
{{ viewData.name }}
</el-descriptions-item>
<el-descriptions-item label="预计时间">
{{ viewData.time }}
</el-descriptions-item>
<el-descriptions-item label="预算费用">
{{ viewData.money }}
</el-descriptions-item>
<el-descriptions-item label="计划类型">
{{ viewData.type == 40001 ? "校活动计划" : viewData.type == 40002 ? "基层工会活动计划" : "协会(社团)计划" }}
</el-descriptions-item>
<el-descriptions-item label="计划内容" :span="2">
<div v-html="viewData.content"></div>
</el-descriptions-item>
</el-descriptions>
</div>
</template>
<script>
module.exports = {
props: {
label: {
type: String,
default: '审核'
props: {
label: {
type: String,
default: "审核"
},
panes: {
type: Array,
default: []
}
},
panes: {
type: Array,
default: []
data() {
return {
viewData: {},
loading: true,
tableKey: ""
}
},
},
methods: {
async getInfo(id) {
this.loading = true
const { data } = await $.get("/platform/activity/common/findOnePlan", { id })
this.loading = false
data() {
return {
viewData: {},
loading: true,
tableKey: '',
if (data) {
this.viewData = data
this.tableKey = new Date().getTime()
} else {
this.viewData = {}
this.$message({ message: "获取信息失败", type: "error" })
}
}
}
},
methods: {
async getInfo(id) {
this.loading = true
const {data} = await $.get("/platform/activity/common/findOnePlan", {id})
this.loading = false
if (data) {
this.viewData = data
this.tableKey = new Date().getTime()
} else {
this.viewData = {}
this.$message({message: "获取信息失败", type: 'error'});
}
}
},
}
</script>
<style>
</style>
<style></style>
@@ -1,373 +1,344 @@
<template>
<el-tabs tab-position="top" v-model="activeName" v-loading="loading">
<el-tab-pane label="活动基础信息" name="1">
<el-form label-suffix=":" style="padding: 20px 0" label-width="120px">
<el-form-item class="item-center">{{ viewData.name }}</el-form-item>
<el-tabs tab-position="top" v-model="activeName" v-loading="loading">
<el-tab-pane label="活动基础信息" name="1">
<el-form label-suffix=":" style="padding: 20px 0" label-width="120px">
<el-form-item class="item-center">{{ viewData.name }}</el-form-item>
<el-row gutter="60">
<el-col :span="12">
<el-form-item label="联系人">
<span v-if="viewData.username">
{{ viewData.username }}
({{ viewData.loginname }})
</span>
</el-form-item>
</el-col>
<el-row gutter="60">
<el-col :span="12">
<el-form-item label="联系方式">
{{ viewData.mobile }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系人">
<span v-if="viewData.username">
{{ viewData.username }}
({{ viewData.loginname }})</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动编号">
{{ viewData.activityCode }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系方式">
{{ viewData.mobile }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动项目类型">{{ viewData.projectTypeName }}({{ viewData.projectTypeCode }})</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动编号">
{{ viewData.activityCode }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动类型">
{{ viewData.type === 1 ? "基层工会活动" : viewData.type === 2 ? "协会社团活动" : "校工会活动" }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动项目类型">
{{ viewData.projectTypeName }}({{ viewData.projectTypeCode }})
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动计划时间">
{{ viewData.startPlannedDate + " - " + viewData.endPlannedDate }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动类型">
{{ viewData.type === 1 ? '分工会活动' : viewData.type === 2 ? '协会社团活动' : '校工会活动' }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动时间">{{ viewData.startTime }} - {{ viewData.endTime }}</el-form-item>
</el-col>
<el-col :span="12" v-if="viewData.applyStartTime">
<el-form-item label="报名时间">{{ viewData.applyStartTime }} - {{ viewData.applyEndTime }}</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动人数">{{ viewData.peopleNum || "暂无" }}</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动计划时间">
{{ viewData.startPlannedDate + ' - ' + viewData.endPlannedDate }}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="活动内容">
<span style="white-space: pre-line">
{{ viewData.activityContent }}
</span>
</el-form-item>
</el-col>
<el-col :span="24" v-if="!viewData.isEnrollSystem">
<el-form-item label="活动考核内容">
<span style="white-space: pre-line">
{{ viewData.activityExamineContent }}
</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动时间">{{ viewData.startTime }} - {{
viewData.endTime
}}
</el-form-item>
</el-col>
<el-col :span="12" v-if="viewData.applyStartTime">
<el-form-item label="报名时间">{{ viewData.applyStartTime }} - {{
viewData.applyEndTime
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动人数">{{ viewData.peopleNum || '暂无' }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="活动地点">{{ viewData.address }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="活动内容">
<span style="white-space: pre-line">
{{ viewData.activityContent }}
</span>
</el-form-item>
</el-col>
<el-col :span="24" v-if="!viewData.isEnrollSystem">
<el-form-item label="活动考核内容">
<span style="white-space: pre-line">
{{ viewData.activityExamineContent }}
</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="报名方式">
<span v-if="viewData.signUpMethod === 1">个人报名</span>
<span v-else-if="viewData.signUpMethod === 2">基层工会报名</span>
<span v-else-if="viewData.signUpMethod === 3">组队报名</span>
<span v-else-if="!viewData.signUpMethod">无需报名</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="活动地点">{{ viewData.address }}</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动提醒">
{{ viewData.xlFlag ? "提醒" : "不提醒" }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="报名方式">
<span v-if="viewData.signUpMethod===1">个人报名</span>
<span v-else-if="viewData.signUpMethod===2">分工会报名</span>
<span v-else-if="viewData.signUpMethod===3">组队报名</span>
<span v-else-if="!viewData.signUpMethod">无需报名</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否用于报名">
<span v-if="viewData.isEnrollSystem">活动报名</span>
<span v-else>活动管理</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="活动提醒">
{{ viewData.xlFlag ? '提醒' : '不提醒' }}
</el-form-item>
</el-col>
<el-col :span="12" v-if="viewData.signUpMethod != null">
<el-form-item label="报名人数限制">
<span v-if="viewData.userNumberLimit === 1">总人数限制({{ viewData.totalUserNumberLimit }}人)</span>
<span v-else-if="viewData.userNumberLimit === 2">基层工会人数限制</span>
<span v-else-if="!viewData.userNumberLimit">不限制</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否用于报名">
<span v-if="viewData.isEnrollSystem">活动报名</span>
<span v-else>活动管理</span>
</el-form-item>
</el-col>
<el-col :span="24" v-if="viewData.userNumberLimit === 2">
<el-form-item label="基层工会限制名额">
<el-table border stripe :data="viewData.unionUserNumberLimit" size="small" height="500">
<el-table-column type="index" label="序号" header-align="center" align="center" width="100"></el-table-column>
<el-table-column label="基层工会名称" prop="unionName"></el-table-column>
<el-table-column label="基层工会人数" prop="unionNum"></el-table-column>
<el-table-column label="限制人数" prop="limitNum"></el-table-column>
</el-table>
</el-form-item>
</el-col>
<el-col :span="12" v-if="viewData.signUpMethod!=null">
<el-form-item label="报名人数限制">
<span v-if="viewData.userNumberLimit===1">总人数限制({{
viewData.totalUserNumberLimit
}}人)</span>
<span v-else-if="viewData.userNumberLimit===2">分工会人数限制</span>
<span v-else-if="!viewData.userNumberLimit">不限制</span>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="viewData.type === 1" label="所属工会">
{{ !viewData.unionname ? "暂无" : viewData.unionname }}
</el-form-item>
<el-form-item v-if="viewData.type === 2" label="所属社团">
{{ !viewData.clubName ? "暂无" : viewData.clubName }}
</el-form-item>
<el-form-item v-if="viewData.type === 3" label="所属组织">校工会</el-form-item>
</el-col>
<el-col :span="24" v-if="viewData.userNumberLimit===2">
<el-form-item label="分工会限制名额">
<el-table border stripe :data="viewData.unionUserNumberLimit" size="small"
height="500">
<el-table-column type="index" label="序号" header-align="center" align="center"
width="100">
</el-table-column>
<el-table-column label="分工会名称" prop="unionName"></el-table-column>
<el-table-column label="分工会人数" prop="unionNum"></el-table-column>
<el-table-column label="限制人数" prop="limitNum"></el-table-column>
</el-table>
</el-form-item>
</el-col>
<el-col :span="12" v-if="[1, 2].includes(viewData.signUpMethod)">
<el-form-item label="是否需要签到">
{{ viewData.needSign ? "需要" : "不需要" }}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="viewData.type===1" label="所属工会">
{{ !viewData.unionname ? '暂无' : viewData.unionname }}
</el-form-item>
<el-form-item v-if="viewData.type===2" label="所属社团">
{{ !viewData.clubName ? '暂无' : viewData.clubName }}
</el-form-item>
<el-form-item v-if="viewData.type===3" label="所属组织">
校工会
</el-form-item>
</el-col>
<el-col :span="12" v-if="viewData.signUpMethod != null">
<el-form-item label="签到半径(m)" v-if="viewData.needSign">
{{ viewData.rangeMeter + "米" }}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="封面图" prop="cover">
<img
v-if="viewData.cover"
:src="FILE_DOMAIN + '/fileStreamPreview?id=' + viewData.cover"
class="avatar"
style="height: 200px; width: auto"
/>
</el-form-item>
</el-col>
<el-col :span="12" v-if="[1,2].includes(viewData.signUpMethod)">
<el-form-item label="是否需要签到">
{{ viewData.needSign ? '需要' : '不需要' }}
</el-form-item>
</el-col>
<el-col :span="24" v-if="viewData.needSign">
<el-form-item prop="" label="活动签到点位">
<el-card shadow="never">
<div style="width: 100%; height: 500px" id="signMap"></div>
</el-card>
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane label="活动费用" name="3" v-if="!viewData.isEnrollSystem">
<el-form label-suffix=":" label-position="left" style="padding: 20px 0" label-width="80px">
<el-table border stripe :data="viewData.goods">
<el-table-column type="index" label="序号" header-align="center" align="center" width="100"></el-table-column>
<el-col :span="12" v-if="viewData.signUpMethod!=null">
<el-form-item label="签到半径(m)" v-if="viewData.needSign">
{{ viewData.rangeMeter + '米' }}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="封面图" prop="cover">
<img v-if="viewData.cover"
:src="FILE_DOMAIN + '/fileStreamPreview?id=' + viewData.cover"
class="avatar" style="height: 200px;width: auto">
</el-form-item>
</el-col>
<el-table-column label="物品名称" header-align="center" align="center" prop="name"></el-table-column>
<el-col :span="24" v-if="viewData.needSign">
<el-form-item prop="" label="活动签到点位">
<el-card shadow="never">
<div style="width: 100%;height: 500px" id="signMap"></div>
</el-card>
</el-form-item>
</el-col>
<el-table-column label="物品价格" header-align="center" align="center" prop="actualPrice"></el-table-column>
</el-table>
</el-row>
<el-form-item label="发&emsp;&emsp;票">
<file-upload v-if="viewData.billFiles && viewData.billFiles.length" :files="viewData.billFiles" :view="true"></file-upload>
<span v-else>暂无</span>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="活动费用" name="3" v-if="!viewData.isEnrollSystem">
<el-form label-suffix=":" label-position="left" style="padding: 20px 0" label-width="80px">
<el-form-item label="照&emsp;&emsp;片">
<file-upload v-if="viewData.photoFiles && viewData.photoFiles.length" :files="viewData.photoFiles" :view="true"></file-upload>
<span v-else>暂无</span>
</el-form-item>
<el-table border stripe :data="viewData.goods">
<el-table-column
type="index" label="序号" header-align="center" align="center" width="100">
</el-table-column>
<el-table-column
label="物品名称" header-align="center" align="center" prop="name">
</el-table-column>
<el-table-column
label="物品价格" header-align="center" align="center" prop="actualPrice">
</el-table-column>
</el-table>
<el-form-item label="发&emsp;&emsp;票">
<file-upload v-if="viewData.billFiles&&viewData.billFiles.length"
:files="viewData.billFiles" :view="true">
</file-upload>
<span v-else>暂无</span>
</el-form-item>
<el-form-item label="照&emsp;&emsp;片">
<file-upload v-if="viewData.photoFiles&&viewData.photoFiles.length"
:files="viewData.photoFiles" :view="true">
</file-upload>
<span v-else>暂无</span>
</el-form-item>
<el-form-item label="其&emsp;&emsp;他">
<file-upload v-if="viewData.otherFiles&&viewData.otherFiles.length"
:files="viewData.otherFiles" :view="true">
</file-upload>
<span v-else>暂无</span>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="活动总结" name="4" v-if="!viewData.isEnrollSystem">
<el-form ref="form" label-width="120px">
<el-form-item prop="activitySummary" label="活动总结">
{{ viewData.activitySummary }}
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="审核信息" name="5" v-if="viewData.auditId">
<el-form ref="form" label-width="120px">
<el-row gutter="20">
<el-col :span="12">
<el-form-item label="审核人员:">
{{ viewData.audit.username }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="审核时间:">
{{ viewData.audit.auditTime }}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="审核意见:">
{{ viewData.audit.auditOpinion }}
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane v-if="handle" :label="label" name="999">
<slot name="handle"></slot>
</el-tab-pane>
</el-tabs>
<el-form-item label="其&emsp;&emsp;他">
<file-upload v-if="viewData.otherFiles && viewData.otherFiles.length" :files="viewData.otherFiles" :view="true"></file-upload>
<span v-else>暂无</span>
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="活动总结" name="4" v-if="!viewData.isEnrollSystem">
<el-form ref="form" label-width="120px">
<el-form-item prop="activitySummary" label="活动总结">
{{ viewData.activitySummary }}
</el-form-item>
</el-form>
</el-tab-pane>
<el-tab-pane label="审核信息" name="5" v-if="viewData.auditId">
<el-form ref="form" label-width="120px">
<el-row gutter="20">
<el-col :span="12">
<el-form-item label="审核人员:">
{{ viewData.audit.username }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="审核时间:">
{{ viewData.audit.auditTime }}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="审核意见:">
{{ viewData.audit.auditOpinion }}
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane v-if="handle" :label="label" name="999">
<slot name="handle"></slot>
</el-tab-pane>
</el-tabs>
</template>
<script>
module.exports = {
props: {
handle: {
type: Boolean,
default: false,
},
label: {
type: String,
default: '审核'
},
},
data() {
return {
userData: [],
viewData: {},
loading: true,
search: '',
tableKey: '',
activeName: '1',
userColumns: [],
}
},
components: {
'file-upload': httpVueLoader('/components/plugins/FileUpload.vue'),
},
methods: {
hasPane(name) {
if (!this.handle) {
return true
}
return this.panes.includes(name)
},
async doExport() {
window.open("/platform/activity/info/mange/doExportUser?id=" + this.viewData.id)
},
async userChange() {
if (this.search) {
const {data} = await $.get("/platform/activity/info/mange/searchTissueUser", {
id: this.viewData.id,
search: this.search
})
this.userData = data
}
},
async getInfo(id) {
this.userColumns = [{prop: 'userName', label: '姓名'},
{prop: 'loginName', label: '工号'},
{prop: 'sex', label: '性别'},
{prop: 'mobile', label: '联系方式'},
{prop: 'unitName', label: '所属单位'},
{prop: 'unionName', label: '所属工会'}]
this.loading = true
const {data} = await $.get("/platform/activity/info/mange/findOne", {id})
this.loading = false
if (data) {
if (data.needSign) {
this.userColumns.push({prop: 'isSign', label: '是否签到'})
this.userColumns.push({prop: 'signTime', label: '签到时间'})
props: {
handle: {
type: Boolean,
default: false
},
label: {
type: String,
default: "审核"
}
data.billFiles = JSON.parse(data.billFiles)
data.photoFiles = JSON.parse(data.photoFiles)
data.otherFiles = JSON.parse(data.otherFiles)
this.userData = clone(data.tissuePersonList)
data.unionUserNumberLimit = JSON.parse(data.unionUserNumberLimit)
data.location = JSON.parse(data.location)
this.viewData = data
this.tableKey = new Date().getTime()
this.initMap()
this.activeName = this.handle ? "999" : "1"
} else {
this.viewData = {}
this.$notify.error({title: '错误', message: '获取信息失败'});
}
},
initMap() {
let marker = null
this.$nextTick(() => {
let map = new AMap.Map("signMap", {
resizeEnable: true,
center: [118.640081, 32.082496],
zoom: 16
});
data() {
return {
userData: [],
viewData: {},
loading: true,
search: "",
tableKey: "",
activeName: "1",
userColumns: []
}
},
components: {
"file-upload": httpVueLoader("/components/plugins/FileUpload.vue")
},
methods: {
hasPane(name) {
if (!this.handle) {
return true
}
return this.panes.includes(name)
},
async doExport() {
window.open("/platform/activity/info/mange/doExportUser?id=" + this.viewData.id)
},
async userChange() {
if (this.search) {
const { data } = await $.get("/platform/activity/info/mange/searchTissueUser", {
id: this.viewData.id,
search: this.search
})
this.userData = data
}
},
async getInfo(id) {
this.userColumns = [
{ prop: "userName", label: "姓名" },
{ prop: "loginName", label: "工号" },
{ prop: "sex", label: "性别" },
{ prop: "mobile", label: "联系方式" },
{ prop: "unitName", label: "所属单位" },
{ prop: "unionName", label: "所属工会" }
]
this.loading = true
const { data } = await $.get("/platform/activity/info/mange/findOne", { id })
this.loading = false
if (data) {
if (data.needSign) {
this.userColumns.push({ prop: "isSign", label: "是否签到" })
this.userColumns.push({ prop: "signTime", label: "签到时间" })
}
data.billFiles = JSON.parse(data.billFiles)
data.photoFiles = JSON.parse(data.photoFiles)
data.otherFiles = JSON.parse(data.otherFiles)
this.userData = clone(data.tissuePersonList)
data.unionUserNumberLimit = JSON.parse(data.unionUserNumberLimit)
data.location = JSON.parse(data.location)
this.viewData = data
this.tableKey = new Date().getTime()
this.initMap()
this.activeName = this.handle ? "999" : "1"
} else {
this.viewData = {}
this.$notify.error({ title: "错误", message: "获取信息失败" })
}
},
initMap() {
let marker = null
this.$nextTick(() => {
let map = new AMap.Map("signMap", {
resizeEnable: true,
center: [118.640081, 32.082496],
zoom: 16
})
if (this.viewData.location && Array.isArray(this.viewData.location)) {
const lng = parseFloat(this.viewData.location[0])
const lat = parseFloat(this.viewData.location[1])
marker = new AMap.Marker({
position: [lng, lat],
offset: new AMap.Pixel(-13, -30)
});
marker.setMap(map);
map.setZoomAndCenter(18, [lng, lat])
if (this.viewData.location && Array.isArray(this.viewData.location)) {
const lng = parseFloat(this.viewData.location[0])
const lat = parseFloat(this.viewData.location[1])
marker = new AMap.Marker({
position: [lng, lat],
offset: new AMap.Pixel(-13, -30)
})
marker.setMap(map)
map.setZoomAndCenter(18, [lng, lat])
}
map.on("click", (e) => {
console.log(e)
if (marker) {
marker.setMap(null)
marker = null
}
marker = new AMap.Marker({
position: [e.lnglat.getLng(), e.lnglat.getLat()],
offset: new AMap.Pixel(-13, -30)
})
marker.setMap(map)
this.formData.location = []
this.formData.location.push(e.lnglat.getLng())
this.formData.location.push(e.lnglat.getLat())
})
})
}
map.on('click', (e) => {
console.log(e)
if (marker) {
marker.setMap(null)
marker = null
}
marker = new AMap.Marker({
position: [e.lnglat.getLng(), e.lnglat.getLat()],
offset: new AMap.Pixel(-13, -30)
})
marker.setMap(map)
this.formData.location = []
this.formData.location.push(e.lnglat.getLng())
this.formData.location.push(e.lnglat.getLat())
});
})
}
},
}
</script>
<style>
.item-center {
text-align: center;
font-weight: 700;
margin-right: 110px;
text-align: center;
font-weight: 700;
margin-right: 110px;
}
.item-center .el-form-item__content {
font-size: 18px;
font-size: 18px;
}
</style>
@@ -1,152 +1,166 @@
<template>
<el-table :data="tableData" style="width: 100%;height: 100%" stripe border
ref="MaleFemaleTab"
:header-cell-style="{background:'#FAFAFA'}" row-key="id" @sort-change="pageOrder"
v-loading="tableLoading" size="mini" fixed>
<el-table
:data="tableData"
style="width: 100%; height: 100%"
stripe
border
ref="MaleFemaleTab"
:header-cell-style="{ background: '#FAFAFA' }"
row-key="id"
@sort-change="pageOrder"
v-loading="tableLoading"
size="mini"
fixed
>
<el-table-column align="center" header-align="center" type="index" :index="indexMethod" label="序号" width="80px" fixed></el-table-column>
<el-table-column
label="基层工会"
prop="unionname"
header-align="center"
align="center"
fixed
show-overflow-tooltip
width="250px"
></el-table-column>
<el-table-column label="甲组" header-align="center" v-if="tableColumns.length > 0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip
></el-table-column>
</el-table-column>
<el-table-column label="乙组" header-align="center" v-if="tableColumns2.length > 0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns2"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip
></el-table-column>
</el-table-column>
<el-table-column label="丙组" header-align="center" v-if="tableColumns3.length > 0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns3"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip
></el-table-column>
</el-table-column>
<el-table-column label="丁组" header-align="center" v-if="tableColumns4.length > 0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns4"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip
></el-table-column>
</el-table-column>
<el-table-column label="团体" header-align="center" v-if="tableColumns5.length > 0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns5"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip
></el-table-column>
</el-table-column>
<el-table-column align="center" header-align="center" type="index" :index="indexMethod" label="序号"
width="80px" fixed></el-table-column>
<el-table-column label="分工会" prop="unionname" header-align="center"
align="center" fixed show-overflow-tooltip width="250px"></el-table-column>
<el-table-column label="甲组" header-align="center" v-if="tableColumns.length>0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip>
</el-table-column>
</el-table-column>
<el-table-column label="乙组" header-align="center" v-if="tableColumns2.length>0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns2"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip>
</el-table-column>
</el-table-column>
<el-table-column label="丙组" header-align="center" v-if="tableColumns3.length>0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns3"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip>
</el-table-column>
</el-table-column>
<el-table-column label="丁组" header-align="center" v-if="tableColumns4.length>0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns4"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip>
</el-table-column>
</el-table-column>
<el-table-column label="团体" header-align="center" v-if="tableColumns5.length>0">
<el-table-column
align="center"
header-align="center"
v-for="column in tableColumns5"
:label="column.label"
:prop="column.prop"
:sortable="column.sortable"
show-overflow-tooltip>
</el-table-column>
</el-table-column>
<el-table-column label="总分" prop="totalScore" header-align="center" align="center" show-overflow-tooltip fixed="right"></el-table-column>
<el-table-column label="总分" prop="totalScore" header-align="center"
align="center" show-overflow-tooltip fixed="right"></el-table-column>
<el-table-column align="center" header-align="center" type="index" show-overflow-tooltip label="名次"
width="80px" fixed="right"></el-table-column>
</el-table>
<el-table-column
align="center"
header-align="center"
type="index"
show-overflow-tooltip
label="名次"
width="80px"
fixed="right"
></el-table-column>
</el-table>
</template>
<script>
module.exports = {
props: {
Form: {
type: Object,
default: {},
}
},
mixins: [initTableMixins],
data() {
return {
tableData: [],
maxHeight: 0,
tableColumns2: [],
tableColumns3: [],
tableColumns4: [],
tableColumns5: []
}
},
mounted() {
/* const tabHeight = document.getElementById("app").clientHeight - (this.$refs.MaleFemaleTab.$el.offsetTop + 60)
props: {
Form: {
type: Object,
default: {}
}
},
mixins: [initTableMixins],
data() {
return {
tableData: [],
maxHeight: 0,
tableColumns2: [],
tableColumns3: [],
tableColumns4: [],
tableColumns5: []
}
},
mounted() {
/* const tabHeight = document.getElementById("app").clientHeight - (this.$refs.MaleFemaleTab.$el.offsetTop + 60)
this.$nextTick(()=>{
this.maxHeight = tabHeight
})*/
},
methods: {
async isMaleFemale() {
const loading = this.$loading({
lock: true,
text: '数据正在查询中,请稍后...',
spinner: 'el-icon-loading',
background: COVER_LAYER_COLOR
});
this.tableColumns = []
this.tableColumns2 = []
this.tableColumns3 = []
this.tableColumns4 = []
this.tableColumns5 = []
this.tableData = []
const {data} = await $.get(loc() + "/isMaleFemale", this.Form)
data.eventList.forEach(v => {
if (v.baname == "甲组" || v.baname == "乙组" || v.baname == "丙组" || v.baname == "丁组") {
this.tableColumns.push({label: v.isMenWomen ? v.label.substr(4) : v.label.substr(2), prop: v.label})
} else {
this.tableColumns5.push({label: v.label, prop: v.label})
}
})
this.tableData = data.score.sort(this.compare("totalScore"))
if (this.Form.unionname) {
this.tableData = this.tableData.filter(v => v.unionname == this.Form.unionname)
}
loading.close();
},
methods: {
async isMaleFemale() {
const loading = this.$loading({
lock: true,
text: "数据正在查询中,请稍后...",
spinner: "el-icon-loading",
background: COVER_LAYER_COLOR
})
this.tableColumns = []
this.tableColumns2 = []
this.tableColumns3 = []
this.tableColumns4 = []
this.tableColumns5 = []
this.tableData = []
const { data } = await $.get(loc() + "/isMaleFemale", this.Form)
data.eventList.forEach((v) => {
if (v.baname == "甲组" || v.baname == "乙组" || v.baname == "丙组" || v.baname == "丁组") {
this.tableColumns.push({ label: v.isMenWomen ? v.label.substr(4) : v.label.substr(2), prop: v.label })
} else {
this.tableColumns5.push({ label: v.label, prop: v.label })
}
})
compare(prop) {
return function (obj1, obj2) {
const val1 = obj1[prop];
const val2 = obj2[prop];
if (val1 > val2) {
return -1;
} else if (val1 < val2) {
return 1;
} else {
return 0;
this.tableData = data.score.sort(this.compare("totalScore"))
if (this.Form.unionname) {
this.tableData = this.tableData.filter((v) => v.unionname == this.Form.unionname)
}
loading.close()
},
compare(prop) {
return function (obj1, obj2) {
const val1 = obj1[prop]
const val2 = obj2[prop]
if (val1 > val2) {
return -1
} else if (val1 < val2) {
return 1
} else {
return 0
}
}
}
}
}
},
}
</script>
</script>
@@ -1,77 +1,77 @@
<template>
<el-table :data="tableData" style="width: 100%;height: 100%" stripe border
ref="MaleFemaleTab"
:header-cell-style="{background:'#FAFAFA'}" row-key="id" @sort-change="pageOrder"
v-loading="tableLoading" size="mini" fixed >
<!--:max-height="maxHeight"-->
<el-table-column align="center" header-align="center" type="index" :index="indexMethod" label="序号"
width="80px" fixed></el-table-column>
<el-table-column label="分工会" prop="unionname" header-align="center"
align="center" fixed show-overflow-tooltip></el-table-column>
<el-table
:data="tableData"
style="width: 100%; height: 100%"
stripe
border
ref="MaleFemaleTab"
:header-cell-style="{ background: '#FAFAFA' }"
row-key="id"
@sort-change="pageOrder"
v-loading="tableLoading"
size="mini"
fixed
>
<!--:max-height="maxHeight"-->
<el-table-column align="center" header-align="center" type="index" :index="indexMethod" label="序号" width="80px" fixed></el-table-column>
<el-table-column label="基层工会" prop="unionname" header-align="center" align="center" fixed show-overflow-tooltip></el-table-column>
<el-table-column label="总分" prop="totalScore" header-align="center"
align="center" show-overflow-tooltip></el-table-column>
<el-table-column align="center" header-align="center" type="index" :index="indexMethod" label="名次"
width="80px" ></el-table-column>
</el-table>
<el-table-column label="总分" prop="totalScore" header-align="center" align="center" show-overflow-tooltip></el-table-column>
<el-table-column align="center" header-align="center" type="index" :index="indexMethod" label="名次" width="80px"></el-table-column>
</el-table>
</template>
<script>
module.exports = {
props: {
Form: {
type: Object,
default: {},
}
},
mixins: [initTableMixins],
data() {
return {
tableData: [],
maxHeight: 0
}
},
mounted() {
/*const tabHeight = document.getElementById("app").clientHeight - (this.$refs.MaleFemaleTab.$el.offsetTop + 60)
props: {
Form: {
type: Object,
default: {}
}
},
mixins: [initTableMixins],
data() {
return {
tableData: [],
maxHeight: 0
}
},
mounted() {
/*const tabHeight = document.getElementById("app").clientHeight - (this.$refs.MaleFemaleTab.$el.offsetTop + 60)
this.$nextTick(() => {
this.maxHeight = tabHeight
})*/
},
methods: {
async isScoreTopEight() {
const loading = this.$loading({
lock: true,
text: '数据正在查询中,请稍后...',
spinner: 'el-icon-loading',
background: COVER_LAYER_COLOR
});
this.tableColumns = []
this.tableData = []
const {data} = await $.get(loc() + "/isScoreTopEight", this.Form)
const table = data.score.sort(this.compare("totalScore"))
this.tableData = table.slice(0, 8)
loading.close();
},
methods: {
async isScoreTopEight() {
const loading = this.$loading({
lock: true,
text: "数据正在查询中,请稍后...",
spinner: "el-icon-loading",
background: COVER_LAYER_COLOR
})
this.tableColumns = []
this.tableData = []
const { data } = await $.get(loc() + "/isScoreTopEight", this.Form)
const table = data.score.sort(this.compare("totalScore"))
this.tableData = table.slice(0, 8)
compare(prop) {
return function (obj1, obj2) {
const val1 = obj1[prop];
const val2 = obj2[prop];
if (val1 > val2) {
return -1;
} else if (val1 < val2) {
return 1;
} else {
return 0;
loading.close()
},
compare(prop) {
return function (obj1, obj2) {
const val1 = obj1[prop]
const val2 = obj2[prop]
if (val1 > val2) {
return -1
} else if (val1 < val2) {
return 1
} else {
return 0
}
}
}
}
}
},
}
</script>
</script>
@@ -1,91 +1,91 @@
<template>
<div>
<el-tabs tab-position="top" v-model="activeName" style="padding: 20px">
<!-- <el-tab-pane v-if="$.parseJSON(role) === true" label="当前场地使用情况" name="1">-->
<!-- <el-calendar v-model="reserve_time">-->
<!-- <template slot="dateCell" slot-scope="{date, data}">-->
<!-- <div class="div-Calendar">-->
<!-- <p :class="data.isSelected ? 'is-selected' : ''">-->
<!-- {{ data.day.split('-').slice(1).join('-') }} {{ data.isSelected ? '√' : '' }}-->
<!-- </p>-->
<!-- <div v-if="$.parseJSON(role) === true" v-for="item in viewData.site_info">-->
<!-- <div v-if="data.day.toString()==item.reserve_day"-->
<!-- :style="{backgroundColor:([0].includes(item.stateaudittype)?'#FAECD9':'#E0F4D9')}">-->
<!-- <el-row :gutter="20" style="line-height: 30px;margin-bottom: 10px;">-->
<!-- <el-col :span="4">-->
<!-- <el-button v-if="[0].includes(item.stateaudittype)" type="warning"-->
<!-- size="mini" circle>待-->
<!-- </el-button>-->
<!-- <el-button v-if="item.stateaudittype==3" type="success" size="mini" circle>通-->
<!-- </el-button>-->
<!-- </el-col>-->
<!-- <el-col :span="20" style="font-size: 10px">-->
<!-- <b>{{ item.reserve_person }}</b>:{{ item.start_time }}-{{ item.end_time }}-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </template>-->
<!-- </el-calendar>-->
<!-- </el-tab-pane>-->
<div>
<el-tabs tab-position="top" v-model="activeName" style="padding: 20px">
<!-- <el-tab-pane v-if="$.parseJSON(role) === true" label="当前场地使用情况" name="1">-->
<!-- <el-calendar v-model="reserve_time">-->
<!-- <template slot="dateCell" slot-scope="{date, data}">-->
<!-- <div class="div-Calendar">-->
<!-- <p :class="data.isSelected ? 'is-selected' : ''">-->
<!-- {{ data.day.split('-').slice(1).join('-') }} {{ data.isSelected ? '√' : '' }}-->
<!-- </p>-->
<!-- <div v-if="$.parseJSON(role) === true" v-for="item in viewData.site_info">-->
<!-- <div v-if="data.day.toString()==item.reserve_day"-->
<!-- :style="{backgroundColor:([0].includes(item.stateaudittype)?'#FAECD9':'#E0F4D9')}">-->
<!-- <el-row :gutter="20" style="line-height: 30px;margin-bottom: 10px;">-->
<!-- <el-col :span="4">-->
<!-- <el-button v-if="[0].includes(item.stateaudittype)" type="warning"-->
<!-- size="mini" circle>待-->
<!-- </el-button>-->
<!-- <el-button v-if="item.stateaudittype==3" type="success" size="mini" circle>通-->
<!-- </el-button>-->
<!-- </el-col>-->
<!-- <el-col :span="20" style="font-size: 10px">-->
<!-- <b>{{ item.reserve_person }}</b>:{{ item.start_time }}-{{ item.end_time }}-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </template>-->
<!-- </el-calendar>-->
<!-- </el-tab-pane>-->
<el-tab-pane label="预约基本信息" name="2">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>联系人</th>
<td>
{{ viewData.reserve_person_username }}
</td>
<th>联系人工号</th>
<td>
{{ viewData.loginname }}
</td>
<th>预约人性别</th>
<td>
{{ viewData.reserve_person_sex }}
</td>
</tr>
<el-tab-pane label="预约基本信息" name="2">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>联系人</th>
<td>
{{ viewData.reserve_person_username }}
</td>
<th>联系人工号</th>
<td>
{{ viewData.loginname }}
</td>
<th>预约人性别</th>
<td>
{{ viewData.reserve_person_sex }}
</td>
</tr>
<tr>
<th>联系方式</th>
<td>
{{ viewData.reserve_person_phone }}
</td>
<th>联系人工会</th>
<td>
{{ viewData.unionname }}
</td>
<th>联系人部门</th>
<td>
{{ viewData.reserve_person_unitname }}
</td>
</tr>
<tr>
<th>联系方式</th>
<td>
{{ viewData.reserve_person_phone }}
</td>
<th>联系人工会</th>
<td>
{{ viewData.unionname }}
</td>
<th>联系人部门</th>
<td>
{{ viewData.reserve_person_unitname }}
</td>
</tr>
<tr>
<th>预约场地</th>
<td>
{{ viewData.site_name }}
</td>
<th>活动人数</th>
<td>
{{ viewData.reserve_join_user_num }}
</td>
<th>预约事由</th>
<td>
{{ viewData.reserve_cause }}
</td>
</tr>
<tr>
<th>预约场地</th>
<td>
{{ viewData.site_name }}
</td>
<th>活动人数</th>
<td>
{{ viewData.reserve_join_user_num }}
</td>
<th>预约事由</th>
<td>
{{ viewData.reserve_cause }}
</td>
</tr>
<tr>
<th>使用时间</th>
<td colspan="5">
{{ viewData.reservationTimeStr }}
</td>
</tr>
<tr>
<th>使用时间</th>
<td colspan="5">
{{ viewData.reservationTimeStr }}
</td>
</tr>
<!-- <tr>
<!-- <tr>
<th>是否有横幅标语(内容)</th>
<td :colspan="5">
{{ viewData.banner_slogans ? viewData.banner_slogans : '暂无' }}
@@ -98,149 +98,148 @@
</td>
</tr>-->
<tr>
<th>预约状态</th>
<td :colspan="5">
<span v-if="[0].includes(viewData.stateAuditType)"
style="color: #e6a23c">{{ viewData.state_name }}</span>
<span v-if="viewData.stateAuditType==3" style="color: #67c23a">{{ viewData.state_name }}</span>
<span v-if="viewData.stateAuditType==1" style="color: #f56c6c">{{ viewData.state_name }}</span>
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
<tr>
<th>预约状态</th>
<td :colspan="5">
<span v-if="[0].includes(viewData.stateAuditType)" style="color: #e6a23c">{{ viewData.state_name }}</span>
<span v-if="viewData.stateAuditType == 3" style="color: #67c23a">{{ viewData.state_name }}</span>
<span v-if="viewData.stateAuditType == 1" style="color: #f56c6c">{{ viewData.state_name }}</span>
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
<el-tab-pane label="分工会审核信息" name="3" v-if="viewData.unionProcess">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>审核人</th>
<td>
{{ viewData.unionProcess.username }}
</td>
<th>审核结果</th>
<td>
{{ viewData.unionProcess.auditPass ? '通过' : '驳回' }}
</td>
</tr>
<tr>
<th>审核时间</th>
<td>
{{ viewData.unionProcess.auditTime }}
</td>
<th>审核意见</th>
<td>
{{ viewData.unionProcess.auditOpinion }}
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
<el-tab-pane label="基层工会审核信息" name="3" v-if="viewData.unionProcess">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>审核人</th>
<td>
{{ viewData.unionProcess.username }}
</td>
<th>审核结果</th>
<td>
{{ viewData.unionProcess.auditPass ? "通过" : "驳回" }}
</td>
</tr>
<tr>
<th>审核时间</th>
<td>
{{ viewData.unionProcess.auditTime }}
</td>
<th>审核意见</th>
<td>
{{ viewData.unionProcess.auditOpinion }}
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
<el-tab-pane label="离退休工作处审核信息" name="4" v-if="viewData.retireProcess">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>审核人</th>
<td>
{{ viewData.retireProcess.username }}
</td>
<th>审核结果</th>
<td>
{{ viewData.retireProcess.auditPass ? '通过' : '驳回' }}
</td>
</tr>
<tr>
<th>审核时间</th>
<td>
{{ viewData.retireProcess.auditTime }}
</td>
<th>审核意见</th>
<td>
{{ viewData.retireProcess.auditOpinion }}
</td>
</tr>
<el-tab-pane label="离退休工作处审核信息" name="4" v-if="viewData.retireProcess">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>审核人</th>
<td>
{{ viewData.retireProcess.username }}
</td>
<th>审核结果</th>
<td>
{{ viewData.retireProcess.auditPass ? "通过" : "驳回" }}
</td>
</tr>
<tr>
<th>审核时间</th>
<td>
{{ viewData.retireProcess.auditTime }}
</td>
<th>审核意见</th>
<td>
{{ viewData.retireProcess.auditOpinion }}
</td>
</tr>
<tr>
<th>签字</th>
<td colspan="3">
<el-image v-if="viewData.retireProcess.auditSign"
style="width: 300px; height: 100px"
:src="viewData.retireProcess.auditSign"
fit="contain"></el-image>
<span v-else>暂无</span>
</td>
</tr>
<tr>
<th>签字</th>
<td colspan="3">
<el-image
v-if="viewData.retireProcess.auditSign"
style="width: 300px; height: 100px"
:src="viewData.retireProcess.auditSign"
fit="contain"
></el-image>
<span v-else>暂无</span>
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
</table>
</border-table>
</el-tab-pane>
<el-tab-pane label="校工会审核信息" name="5" v-if="viewData.schoolProcess">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>审核人</th>
<td>
{{ viewData.schoolProcess.username }}
</td>
<th>审核结果</th>
<td>
{{ viewData.schoolProcess.auditPass ? "通过" : "驳回" }}
</td>
</tr>
<tr>
<th>审核时间</th>
<td>
{{ viewData.schoolProcess.auditTime }}
</td>
<th>审核意见</th>
<td>
{{ viewData.schoolProcess.auditOpinion }}
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
<el-tab-pane label="校工会审核信息" name="5" v-if="viewData.schoolProcess">
<border-table>
<table style="margin-top: 20px">
<tr>
<th>审核人</th>
<td>
{{ viewData.schoolProcess.username }}
</td>
<th>审核结果</th>
<td>
{{ viewData.schoolProcess.auditPass ? '通过' : '驳回' }}
</td>
</tr>
<tr>
<th>审核时间</th>
<td>
{{ viewData.schoolProcess.auditTime }}
</td>
<th>审核意见</th>
<td>
{{ viewData.schoolProcess.auditOpinion }}
</td>
</tr>
</table>
</border-table>
</el-tab-pane>
<slot name="handle"></slot>
</el-tabs>
</div>
<slot name="handle"></slot>
</el-tabs>
</div>
</template>
<script>
module.exports = {
props: {
id: String,
activeName: {
type: String,
default: '1'
props: {
id: String,
activeName: {
type: String,
default: "1"
}
},
},
data() {
return {
activeName: '2',
viewData: {},
reserve_time: '',
}
},
methods: {
async getSiteReserveInfo(id) {
const {data} = await $.get(base + "/platform/activity/site/reserve/findOne", {id})
return data
data() {
return {
activeName: "2",
viewData: {},
reserve_time: ""
}
},
async openView(id, activeName = '2') {
this.viewData = await this.getSiteReserveInfo(id)
this.activeName = activeName
methods: {
async getSiteReserveInfo(id) {
const { data } = await $.get(base + "/platform/activity/site/reserve/findOne", { id })
return data
},
async openView(id, activeName = "2") {
this.viewData = await this.getSiteReserveInfo(id)
this.activeName = activeName
}
}
}
}
</script>
<style scoped>
.el-descriptions-item__cell {
text-align: center !important;
text-align: center !important;
}
</style>
@@ -1,154 +1,139 @@
/**
*Desc:
*Create by: jug
*Create time:2023/12/15/11:37
*/
/** *Desc: *Create by: jug *Create time:2023/12/15/11:37 */
<template>
<div style="padding-bottom: 20px;">
<van-form>
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">
申请信息
</div>
</div>
<van-cell-group>
<van-cell readonly :value="formData.reserve_person_username" title="联系人"></van-cell>
<van-cell readonly :value="formData.reserve_person_loginname" title="联系人工号"></van-cell>
<van-cell readonly :value="formData.reserve_person_sex" title="预约人性别"></van-cell>
<van-cell readonly :value="formData.reserve_person_phone" title="联系方式"></van-cell>
<van-cell readonly :value="formData.reserve_person_unionname" title="联系人工会"></van-cell>
<van-cell readonly :value="formData.reserve_person_unitname" title="联系人部门"></van-cell>
<van-cell readonly :value="formData.site_name" title="预约场地"></van-cell>
<van-cell readonly :value="formData.reserve_cause" title="预约事由"></van-cell>
<van-cell readonly :value="formData.reserve_join_user_num" title="活动人数"></van-cell>
<!-- <van-cell readonly v-if="formData.equipment_ids" :value="formData.equipmentNames" title="使用设备"></van-cell>-->
<!-- <van-cell readonly v-else value="暂无" title="使用设备"></van-cell>-->
<van-cell readonly title="使用时间" :value="formData.reservationTimeStr"></van-cell>
<!-- <van-cell readonly title="预约开始时间" :value="formData.reserve_start_time"></van-cell>-->
<!-- <van-cell readonly title="预约结束时间" :value="formData.reserve_end_time"></van-cell>-->
<!-- <van-cell readonly title="是否有横幅标语" type="textarea" rows="2" :value="formData.banner_slogans"></van-cell>-->
<!-- <van-cell readonly title="是否有校外人员参加" type="textarea" rows="3" :value="formData.off_campus_personnel"></van-cell>-->
<!-- <van-cell readonly :value="formData.reserve_activity" title="预约活动项目"></van-cell>-->
<!-- <van-cell :value="formData.reserve_cause"-->
<!-- rows="1"-->
<!-- autosize-->
<!-- type="textarea"-->
<!-- title="预约事由"></van-cell>-->
<!-- <van-cell :value="formData.reserve_join_user_num"-->
<!-- title="参加人数"></van-cell>-->
<!-- <van-cell :value="formData.reserve_demand"-->
<!-- rows="1"-->
<!-- autosize-->
<!-- type="textarea"-->
<!-- title="场地需求"></van-cell>-->
</van-cell-group>
</van-form>
<div style="padding-bottom: 20px">
<van-form>
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">申请信息</div>
</div>
<van-cell-group>
<van-cell readonly :value="formData.reserve_person_username" title="联系人"></van-cell>
<van-cell readonly :value="formData.reserve_person_loginname" title="联系人工号"></van-cell>
<van-cell readonly :value="formData.reserve_person_sex" title="预约人性别"></van-cell>
<van-cell readonly :value="formData.reserve_person_phone" title="联系方式"></van-cell>
<van-cell readonly :value="formData.reserve_person_unionname" title="联系人工会"></van-cell>
<van-cell readonly :value="formData.reserve_person_unitname" title="联系人部门"></van-cell>
<van-cell readonly :value="formData.site_name" title="预约场地"></van-cell>
<van-cell readonly :value="formData.reserve_cause" title="预约事由"></van-cell>
<van-cell readonly :value="formData.reserve_join_user_num" title="活动人数"></van-cell>
<!-- <van-cell readonly v-if="formData.equipment_ids" :value="formData.equipmentNames" title="使用设备"></van-cell>-->
<!-- <van-cell readonly v-else value="暂无" title="使用设备"></van-cell>-->
<van-cell readonly title="使用时间" :value="formData.reservationTimeStr"></van-cell>
<!-- <van-cell readonly title="预约开始时间" :value="formData.reserve_start_time"></van-cell>-->
<!-- <van-cell readonly title="预约结束时间" :value="formData.reserve_end_time"></van-cell>-->
<!-- <van-cell readonly title="是否有横幅标语" type="textarea" rows="2" :value="formData.banner_slogans"></van-cell>-->
<!-- <van-cell readonly title="是否有校外人员参加" type="textarea" rows="3" :value="formData.off_campus_personnel"></van-cell>-->
<!-- <van-cell readonly :value="formData.reserve_activity" title="预约活动项目"></van-cell>-->
<!-- <van-cell :value="formData.reserve_cause"-->
<!-- rows="1"-->
<!-- autosize-->
<!-- type="textarea"-->
<!-- title="预约事由"></van-cell>-->
<!-- <van-cell :value="formData.reserve_join_user_num"-->
<!-- title="参加人数"></van-cell>-->
<!-- <van-cell :value="formData.reserve_demand"-->
<!-- rows="1"-->
<!-- autosize-->
<!-- type="textarea"-->
<!-- title="场地需求"></van-cell>-->
</van-cell-group>
</van-form>
<template v-if="formData && formData.unionProcess">
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">
分工会审核信息
</div>
</div>
<van-cell-group>
<van-cell title="审&ensp;核&ensp;人" :value="formData.unionProcess.username"></van-cell>
<van-cell title="审核时间" :value="formData.unionProcess.auditTime"></van-cell>
<van-cell title="审核意见" :value="formData.unionProcess.auditOpinion"></van-cell>
<!-- <van-field name="sign" label="签&emsp;&emsp;字">-->
<!-- <template #input>-->
<!-- <van-image width="200" height="100" :src="formData.unionProcess.auditSign"-->
<!-- v-if="formData.unionProcess.auditSign"/>-->
<!-- <span v-else>暂无</span>-->
<!-- </template>-->
<!-- </van-field>-->
</van-cell-group>
</template>
<template v-if="formData && formData.unionProcess">
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">基层工会审核信息</div>
</div>
<van-cell-group>
<van-cell title="审&ensp;核&ensp;人" :value="formData.unionProcess.username"></van-cell>
<van-cell title="审核时间" :value="formData.unionProcess.auditTime"></van-cell>
<van-cell title="审核意见" :value="formData.unionProcess.auditOpinion"></van-cell>
<!-- <van-field name="sign" label="签&emsp;&emsp;字">-->
<!-- <template #input>-->
<!-- <van-image width="200" height="100" :src="formData.unionProcess.auditSign"-->
<!-- v-if="formData.unionProcess.auditSign"/>-->
<!-- <span v-else>暂无</span>-->
<!-- </template>-->
<!-- </van-field>-->
</van-cell-group>
</template>
<template v-if="formData && formData.retireProcess">
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">离退休工作处审核信息</div>
</div>
<van-cell-group>
<van-cell title="审&ensp;核&ensp;人" :value="formData.retireProcess.username"></van-cell>
<van-cell title="审核时间" :value="formData.retireProcess.auditTime"></van-cell>
<van-cell title="审核意见" :value="formData.retireProcess.auditOpinion"></van-cell>
<!-- <van-field name="sign" label="签&emsp;&emsp;字">-->
<!-- <template #input>-->
<!-- <van-image width="200" height="100" :src="formData.retireProcess.auditSign"-->
<!-- v-if="formData.retireProcess.auditSign"/>-->
<!-- <span v-else>暂无</span>-->
<!-- </template>-->
<!-- </van-field>-->
</van-cell-group>
</template>
<template v-if="formData && formData.retireProcess">
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">
离退休工作处审核信息
</div>
</div>
<van-cell-group>
<van-cell title="审&ensp;核&ensp;人" :value="formData.retireProcess.username"></van-cell>
<van-cell title="审核时间" :value="formData.retireProcess.auditTime"></van-cell>
<van-cell title="审核意见" :value="formData.retireProcess.auditOpinion"></van-cell>
<!-- <van-field name="sign" label="签&emsp;&emsp;字">-->
<!-- <template #input>-->
<!-- <van-image width="200" height="100" :src="formData.retireProcess.auditSign"-->
<!-- v-if="formData.retireProcess.auditSign"/>-->
<!-- <span v-else>暂无</span>-->
<!-- </template>-->
<!-- </van-field>-->
</van-cell-group>
</template>
<template v-if="formData && formData.schoolProcess">
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">校工会审核信息</div>
</div>
<van-cell-group>
<van-cell title="审&ensp;核&ensp;人" :value="formData.schoolProcess.username"></van-cell>
<van-cell title="审核时间" :value="formData.schoolProcess.auditTime"></van-cell>
<van-cell title="审核意见" :value="formData.schoolProcess.auditOpinion"></van-cell>
<!-- <van-field name="sign" label="签&emsp;&emsp;字">-->
<!-- <template #input>-->
<!-- <van-image width="200" height="100" :src="formData.schoolProcess.auditSign"-->
<!-- v-if="formData.schoolProcess.auditSign"/>-->
<!-- <span v-else>暂无</span>-->
<!-- </template>-->
<!-- </van-field>-->
</van-cell-group>
</template>
<template v-if="formData && formData.schoolProcess">
<div class="van-cell-group__title">
<div class="van-sidebar-item van-sidebar-item--select">
校工会审核信息
</div>
</div>
<van-cell-group>
<van-cell title="审&ensp;核&ensp;人" :value="formData.schoolProcess.username"></van-cell>
<van-cell title="审核时间" :value="formData.schoolProcess.auditTime"></van-cell>
<van-cell title="审核意见" :value="formData.schoolProcess.auditOpinion"></van-cell>
<!-- <van-field name="sign" label="签&emsp;&emsp;字">-->
<!-- <template #input>-->
<!-- <van-image width="200" height="100" :src="formData.schoolProcess.auditSign"-->
<!-- v-if="formData.schoolProcess.auditSign"/>-->
<!-- <span v-else>暂无</span>-->
<!-- </template>-->
<!-- </van-field>-->
</van-cell-group>
</template>
<slot name="audit"></slot>
</div>
<slot name="audit"></slot>
</div>
</template>
<script>
module.exports = {
name: "SiteH5Info",
props: {
id: String
},
data() {
return {
formData: {}
}
},
methods: {
async getInfo(id) {
const {data, code, msg} = await $.get("/platform/activity/site/reserve/findOne", {id})
if (code === 0) {
this.formData = data
} else {
this.$toast.fail('获取信息失败');
}
name: "SiteH5Info",
props: {
id: String
},
},
created() {
this.getInfo(this.id)
}
data() {
return {
formData: {}
}
},
methods: {
async getInfo(id) {
const { data, code, msg } = await $.get("/platform/activity/site/reserve/findOne", { id })
if (code === 0) {
this.formData = data
} else {
this.$toast.fail("获取信息失败")
}
}
},
created() {
this.getInfo(this.id)
}
}
</script>
<style scoped>
.van-cell-group__title {
padding-left: 0 !important;
padding-left: 0 !important;
}
.van-sidebar-item {
font-size: 16px !important;
text-indent: 4px !important;
font-size: 16px !important;
text-indent: 4px !important;
}
.van-sidebar-item--select::before {
left: 5px !important;
left: 5px !important;
}
</style>