2171 lines
99 KiB
HTML
2171 lines
99 KiB
HTML
<!--校活动信息管理 djx 2019-6-12-->
|
|
<!--#
|
|
layout("/layouts/platform.html"){
|
|
#-->
|
|
|
|
<style>
|
|
|
|
.dia .el-dialog__body {
|
|
padding: 10px 20px;
|
|
}
|
|
|
|
.el-form--label-top .el-form-item__label {
|
|
padding: 0px;
|
|
}
|
|
|
|
.el-form {
|
|
margin-left: 30px;
|
|
}
|
|
|
|
.el-form-item__label {
|
|
line-height: 20px;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.el-form-item--mini.el-form-item, .el-form-item--small.el-form-item {
|
|
margin-bottom: 8px;
|
|
}
|
|
|
|
.el-divider--horizontal {
|
|
margin: 16px 0px;
|
|
}
|
|
|
|
.editor {
|
|
width: 100%;
|
|
height: 160px;
|
|
}
|
|
|
|
label {
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
.el-card__body {
|
|
padding: 10px;
|
|
}
|
|
|
|
.el-input--suffix .el-input__inner {
|
|
padding-right: 0px;
|
|
}
|
|
|
|
.el-dropdown-menu__item {
|
|
padding: 0px 15px;
|
|
}
|
|
|
|
.el-step__title {
|
|
font-size: 14px;
|
|
line-height: 24px;
|
|
}
|
|
|
|
.el-step__icon {
|
|
width: 20px;
|
|
height: 20px;
|
|
}
|
|
|
|
.el-card__body {
|
|
padding: 10px 20px 0px;
|
|
}
|
|
|
|
.el-divider__text {
|
|
color: #f56c6c;
|
|
}
|
|
|
|
#query .el-card__body {
|
|
padding: 10px;
|
|
}
|
|
|
|
.el-date-editor .el-range-separator {
|
|
padding: 0px;
|
|
}
|
|
|
|
.el-range-editor.el-input__inner {
|
|
padding: 3px 6px;
|
|
}
|
|
|
|
.el-date-editor .el-range-input {
|
|
width: 42%;
|
|
}
|
|
|
|
.el-date-editor .el-range__close-icon {
|
|
width: 18px;
|
|
}
|
|
|
|
.bmqk .el-card__body {
|
|
padding: 10px 20px;
|
|
}
|
|
|
|
#first .el-card__body {
|
|
padding: 0px;
|
|
}
|
|
|
|
#addDialog .el-table--medium td, .el-table--medium th {
|
|
padding: 4px 0px;
|
|
}
|
|
|
|
#hdrs {
|
|
height: 30px;
|
|
padding: 0px 10px;
|
|
}
|
|
|
|
.el-table-container {
|
|
padding-top: 100px;
|
|
padding-left: 5px;
|
|
padding-right: 5px;
|
|
}
|
|
|
|
.v-0x2323544 {
|
|
text-align: center;
|
|
color: rgb(180, 180, 180);
|
|
}
|
|
|
|
.v-0x345756765 {
|
|
text-align: center;
|
|
}
|
|
|
|
</style>
|
|
|
|
<div id="app" v-cloak>
|
|
|
|
<transition name="el-zoom-in-center">
|
|
<div style="padding: 10px" v-show="isshow">
|
|
<el-card id="first">
|
|
<!--快捷查询-->
|
|
<el-row class="header navbar bg-white shadow">
|
|
<span>基础查询:</span>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-date-picker v-model="pageForm.year" value-format="yyyy" type="year"
|
|
:clearable="false" placeholder="选择年度"></el-date-picker>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-input style="width:180px;" placeholder="可按活动名称查询" v-model="pageForm.searchKeyword"
|
|
clearable></el-input>
|
|
</div>
|
|
|
|
<div class="btn-group tool-button mt5">
|
|
<el-select placeholder="请选择活动类型" v-model="pageForm.hdlx" style="width: 160px;" clearable="true"
|
|
filterable="true">
|
|
<el-option v-for="item in queryHdlx" :label="item.name" :value="item.id"></el-option>
|
|
</el-select>
|
|
</div>
|
|
|
|
<div class="btn-group tool-button mt5">
|
|
<el-select placeholder="请选择活动项目" v-model="pageForm.hdxm" style="width: 160px;" clearable="true"
|
|
filterable="true">
|
|
<el-option v-for="item in queryHdxm" :label="item.name" :value="item.id"></el-option>
|
|
</el-select>
|
|
</div>
|
|
|
|
<div class="btn-group tool-button mt5">
|
|
<el-select placeholder="竞赛模式" v-model="pageForm.jsms" style="width: 120px;" clearable="true"
|
|
filterable="true">
|
|
<el-option label="竞赛类" value="竞赛类"></el-option>
|
|
<el-option label="非竞赛类" value="非竞赛类"></el-option>
|
|
</el-select>
|
|
</div>
|
|
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button type="primary" icon="el-icon-search" @click="loading = true,doSearch()"></el-button>
|
|
</div>
|
|
|
|
<div class="pull-right offscreen-right mt5">
|
|
<el-button size="medium" @click="openAdd"><i class="ti-plus"></i> 创建文体活动</el-button>
|
|
</div>
|
|
|
|
<el-row style="margin-bottom: 5px">
|
|
<div class="btn-group tool-button mt5">
|
|
<span>一键查询:</span>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button size="medium" @click="loading = true,pageForm.zt='未开启',pageData()">未开启</el-button>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button size="medium" @click="loading = true,pageForm.zt='报名中',pageData()">报名中</el-button>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button size="medium" @click="loading = true,pageForm.zt='报名结束',pageData()">报名结束</el-button>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button size="medium" @click="loading = true,pageForm.zt='活动进行中',pageData()">正在进行</el-button>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button size="medium" @click="loading = true,pageForm.zt='活动结束',pageData()">已结束</el-button>
|
|
</div>
|
|
</el-row>
|
|
</el-row>
|
|
</el-card>
|
|
<!--表格-->
|
|
<el-row class="el-table-container">
|
|
<el-table :data="tableData" size="small" v-loading="loading" element-loading-text="拼命加载中"
|
|
element-loading-spinner="el-icon-loading" element-loading-background="white">
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope">
|
|
<span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column align="center" width="200" :show-overflow-tooltip="true" header-align="center"
|
|
label="活动名称" prop="xhdmc"></el-table-column>
|
|
<el-table-column align="center" width="140" :show-overflow-tooltip="true" header-align="center"
|
|
label="活动地点" prop="hddz"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="活动类型" prop="hdlx"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="活动项目" prop="hdxm"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="竞赛模式" prop="jsfs">
|
|
<template slot-scope="scope">
|
|
<el-tag type="primary" :disable-transitions="true" v-if="scope.row.jsfs=='竞赛类'">
|
|
{{scope.row.jsfs}}
|
|
</el-tag>
|
|
<el-tag type="warning" :disable-transitions="true" v-if="scope.row.jsfs=='非竞赛类'">
|
|
{{scope.row.jsfs}}
|
|
</el-tag>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="报名开始时间" prop="bmkssj"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="报名结束时间" prop="bmjssj"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="活动开始时间" prop="hdks"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="活动状态" prop="zt">
|
|
<template slot-scope="scope">
|
|
<el-tag type="info" v-if="scope.row.zt=='未开启' && scope.row.sdjs!='1'">{{scope.row.zt}}</el-tag>
|
|
<el-tag type="warning" v-if="scope.row.zt=='报名中' && scope.row.sdjs!='1'">{{scope.row.zt}}
|
|
</el-tag>
|
|
<el-tag type="parimay" v-if="scope.row.zt=='报名结束' && scope.row.sdjs!='1'">{{scope.row.zt}}
|
|
</el-tag>
|
|
<el-tag type="success" v-if="scope.row.zt=='活动进行中' && scope.row.sdjs!='1'">{{scope.row.zt}}
|
|
</el-tag>
|
|
<el-tag type="danger" v-if="scope.row.zt=='活动结束' && scope.row.sdjs!='1'">{{scope.row.zt}}
|
|
</el-tag>
|
|
<el-tag type="danger" v-if="scope.row.sdjs=='1'">活动结束</el-tag>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="已报名人数" prop="bmrs"></el-table-column>
|
|
<el-table-column align="center" label="操作" width="140px">
|
|
<template slot-scope="scope">
|
|
<el-dropdown trigger="click">
|
|
<el-button type="primary" size="mini">
|
|
请选择操作<i class="el-icon-arrow-down el-icon--right"></i>
|
|
</el-button>
|
|
<el-dropdown-menu slot="dropdown">
|
|
<el-dropdown-item @click.native="openInfo(scope)">查看</el-dropdown-item>
|
|
<el-dropdown-item @click.native="openEdit(scope)">编辑</el-dropdown-item>
|
|
<el-dropdown-item @click.native="openGzRy(scope)">设置活动工作人员</el-dropdown-item>
|
|
<el-dropdown-item @click.native="openXgCsry(scope)">修改参赛人员</el-dropdown-item>
|
|
<el-dropdown-item @click.native="jshd(scope)">结束活动</el-dropdown-item>
|
|
|
|
<!--#if(@shiro.hasRole('sysadmin')){#-->
|
|
<el-dropdown-item @click.native="deleteDo2(scope)">删除</el-dropdown-item>
|
|
<!--#}else{#-->
|
|
<el-dropdown-item @click.native="deleteDo(scope)">删除</el-dropdown-item>
|
|
<!--#}#-->
|
|
</el-dropdown-menu>
|
|
</el-dropdown>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-row>
|
|
<!--分页-->
|
|
<el-row class="el-pagination-container">
|
|
<el-pagination
|
|
@size-change="pageSizeChange"
|
|
@current-change="pageNumberChange"
|
|
:current-page="pageForm.pageNumber"
|
|
:page-sizes="[10, 20, 30, 50]"
|
|
:page-size="pageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
:total="pageForm.totalCount">
|
|
</el-pagination>
|
|
</el-row>
|
|
</div>
|
|
</transition>
|
|
|
|
|
|
|
|
<!--新增-->
|
|
<el-dialog title="创建文体活动" id="addDialog" v-if="addDialogVisible" class="dia" :close-on-click-modal="false" @close="pageData()"
|
|
:visible.sync="addDialogVisible" custom-class="ViewDialogClass" width="76%" top="3%">
|
|
|
|
<el-divider v-if="active=='1'" content-position="left"><span style="color: #409eff">填写活动基本信息</span></el-divider>
|
|
<el-divider v-if="active=='2'" content-position="left"><span style="color: #409eff">分配报名人员名额</span></el-divider>
|
|
|
|
<el-form v-show="active=='1'" :model="formData" label-position="top" ref="addForm" :rules="formRules"
|
|
size="small" label-width="86px">
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="计划名称">
|
|
<el-select v-model="formData.jhid" filterable @change="selChange" placeholder="请选择计划"
|
|
style="width: 88%">
|
|
<el-option label="选择其他" value=""></el-option>
|
|
<el-option
|
|
v-for="item in hdjhOptions"
|
|
:label="item.jhmc"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动名称">
|
|
<el-input maxlength="100" placeholder="请输入活动名称"
|
|
v-model="formData.xhdmc" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动地址">
|
|
<el-input maxlength="100" placeholder="请输入活动地址"
|
|
v-model="formData.hddz" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动类型">
|
|
<el-select v-model="formData.hdlxid" filterable placeholder="请选择活动类型" style="width: 88%">
|
|
<el-option
|
|
v-for="item in hdlxOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动项目">
|
|
<el-select v-model="formData.hdxmid" filterable placeholder="请选择活动项目" style="width: 88%">
|
|
<el-option
|
|
v-for="item in hdxmOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="报名日期">
|
|
<el-date-picker
|
|
style="width: 96%"
|
|
value-format="yyyy-MM-dd"
|
|
format="yyyy-MM-dd"
|
|
v-model="addBm"
|
|
type="daterange"
|
|
range-separator="至"
|
|
start-placeholder="报名开始日期"
|
|
end-placeholder="报名结束日期">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
|
|
<el-col :span="8">
|
|
<el-form-item label="主办单位">
|
|
<el-select v-model="formData.zbdw" filterable placeholder="请选择主办单位" style="width: 88%">
|
|
<el-option
|
|
v-for="item in dwOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="协办单位">
|
|
<el-select v-model="formData.xbdw" multiple filterable placeholder="请选择协办单位" style="width: 88%">
|
|
<el-option
|
|
v-for="item in dwOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动日期">
|
|
<el-date-picker
|
|
style="width: 96%"
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
format="yyyy-MM-dd HH:mm:ss"
|
|
v-model="addHd"
|
|
type="datetimerange"
|
|
range-separator="至"
|
|
start-placeholder="活动开始日期"
|
|
end-placeholder="活动结束日期">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
</el-col>
|
|
|
|
</el-row>
|
|
|
|
<el-row>
|
|
|
|
<el-col :span="8">
|
|
<el-form-item label="竞赛方式">
|
|
<el-radio v-model="formData.jsfs" border label="竞赛类">竞赛类</el-radio>
|
|
<el-radio v-model="formData.jsfs" border label="非竞赛类">非竞赛类</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="颁奖模式">
|
|
<el-radio v-model="formData.bjms" border label="团体">团体</el-radio>
|
|
<el-radio v-model="formData.bjms" border label="个人">个人</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动经费预算">
|
|
<el-input maxlength="100" placeholder="请输入活动经费预算"
|
|
v-model="formData.jfys" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="number">
|
|
<template slot="append">元</template>
|
|
</el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="16">
|
|
<el-form-item label="报名方式">
|
|
<el-radio v-model="formData.bmfs" border label="个人报名">个人报名</el-radio>
|
|
<el-radio v-model="formData.bmfs" border label="院级工会报名">院级工会报名</el-radio>
|
|
<el-radio style="margin-right: 10px;" v-model="formData.bmfs" border label="名额分配">院级工会名额分配
|
|
</el-radio>
|
|
<!--<el-button @click="open" size="medium" type="primary" icon="el-icon-edit" circle></el-button>-->
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="组合方式">
|
|
<el-radio v-model="formData.zhfs" :disabled="zhfsDis" border label="男女组">男女组</el-radio>
|
|
<el-radio v-model="formData.zhfs" border label="普通组">普通组</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
|
|
<el-col :span="8">
|
|
<el-form-item label="是否推送日历">
|
|
<el-radio-group v-model="formData.sfrl">
|
|
<el-radio label="1">是</el-radio>
|
|
<el-radio label="2">否</el-radio>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="16">
|
|
<el-form-item label="推送人员">
|
|
<el-checkbox-group v-model="formData.qx">
|
|
<el-checkbox label="H10">校活动管理员</el-checkbox>
|
|
<el-checkbox label="H04">院级工会管理员</el-checkbox>
|
|
<el-checkbox label="H01">会员用户</el-checkbox>
|
|
</el-checkbox-group>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row v-if="formData.zhfs=='普通组'&&formData.bmfs!='名额分配'">
|
|
|
|
<el-col :span="8">
|
|
<el-form-item label="总人数(包含教练及领队人数)">
|
|
<el-input maxlength="100" placeholder="请输入总人数"
|
|
v-model="formData.hdrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row v-if="formData.zhfs=='男女组'">
|
|
<el-col :span="8">
|
|
<el-form-item label="男队人数">
|
|
<el-input maxlength="100" placeholder="请输入男队人数"
|
|
v-model="formData.manrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="女队人数">
|
|
<el-input maxlength="100" placeholder="请输入女队人数"
|
|
v-model="formData.womenrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="总人数(包含教练及领队人数)">
|
|
<el-input maxlength="100" placeholder="请输入总人数"
|
|
v-model="formData.hdrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="报名办法" class="js" style="display: none">
|
|
<div id="bmEditor" ref="bmEditor"></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="竞赛办法" class="js" style="display: none">
|
|
<div id="jsEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="奖励办法" class="js" style="display: none">
|
|
<div id="jlEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="注意事项" class="js" style="display: none">
|
|
<div id="zysxEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="活动通知" class="fjs">
|
|
<div id="hdtzEditor"></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
</el-form>
|
|
|
|
<el-row v-show="active=='2'" style="text-align: right">
|
|
<el-input id="hdrs" size="mini" style="width: 13%;" placeholder="统一设置活动人数" v-model="hdrs"
|
|
type="number"></el-input>
|
|
<el-input size="mini" style="width: 40.5%;margin-right: 10px;margin-left: 18px;" placeholder="统一设置报名要求"
|
|
v-model="bmyq" type="textarea" :rows="1"></el-input>
|
|
</el-row>
|
|
<el-table v-show="active=='2'" :data="meTableData" size="medium">
|
|
<el-table-column align="center" header-align="center" label="工会名称" prop="unionname"></el-table-column>
|
|
<el-table-column align="center" width="160px" header-align="center" label="活动人数" prop="hdrs">
|
|
<template slot-scope="scope">
|
|
<el-input size="small" v-model="scope.row.hdrs" type="number"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="报名要求" prop="bmyq">
|
|
<template slot-scope="scope">
|
|
<el-input size="small" v-model="scope.row.bmyq" type="textarea" :rows="1"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
|
|
<span slot="footer" class="dialog-footer">
|
|
<el-button @click="addDialogVisible = false">取 消</el-button>
|
|
<el-button type="warning" @click="active='2'" v-if="formData.bmfs=='名额分配'&&active=='1'">下一步</el-button>
|
|
<el-button type="warning" @click="active='1'" v-if="formData.bmfs=='名额分配'&&active=='2'">上一步</el-button>
|
|
<el-button type="primary" @click="doAdd">保 存</el-button>
|
|
<el-button type="success" @click="queding">确 定</el-button>
|
|
</span>
|
|
|
|
</el-dialog>
|
|
|
|
<!--编辑-->
|
|
<el-dialog title="编辑活动信息" id="editDialog" class="dia" :close-on-click-modal="false"
|
|
:visible.sync="editDialogVisible" custom-class="ViewDialogClass" width="76%" top="3%">
|
|
|
|
<el-divider v-if="active=='1'" content-position="left"><span style="color: #409eff">填写活动基本信息</span></el-divider>
|
|
<el-divider v-if="active=='2'" content-position="left"><span style="color: #409eff">分配报名人员名额</span></el-divider>
|
|
|
|
<el-form v-show="active=='1'" :model="editFormData" label-position="top" ref="editForm" :rules="editFormRules"
|
|
size="small" label-width="86px">
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="计划名称">
|
|
<el-select :disabled="disabled" filterable @change="editSelChange" v-model="editFormData.jhid"
|
|
placeholder="请选择计划" style="width: 88%">
|
|
<el-option label="选择其他" value=""></el-option>
|
|
<el-option
|
|
v-for="item in editHdjhOptions"
|
|
:label="item.jhmc"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动名称">
|
|
<el-input maxlength="100" placeholder="请输入活动名称"
|
|
v-model="editFormData.xhdmc" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动地址">
|
|
<el-input maxlength="100" placeholder="请输入活动地址"
|
|
v-model="editFormData.hddz" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动类型">
|
|
<el-select v-model="editFormData.hdlxid" filterable placeholder="请选择活动类型" style="width: 88%">
|
|
<el-option
|
|
v-for="item in hdlxOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动项目">
|
|
<el-select v-model="editFormData.hdxmid" filterable placeholder="请选择活动项目" style="width: 88%">
|
|
<el-option
|
|
v-for="item in hdxmOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="报名日期">
|
|
<el-date-picker
|
|
style="width: 96%"
|
|
value-format="yyyy-MM-dd"
|
|
format="yyyy-MM-dd"
|
|
v-model="editBm"
|
|
type="daterange"
|
|
range-separator="至"
|
|
start-placeholder="报名开始日期"
|
|
end-placeholder="报名结束日期">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="主办单位">
|
|
<el-select v-model="editFormData.zbdw" filterable placeholder="请选择主办单位" style="width: 88%">
|
|
<el-option
|
|
v-for="item in dwOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="协办单位">
|
|
<el-select v-model="editFormData.xbdw" multiple filterable placeholder="请选择协办单位"
|
|
style="width: 88%">
|
|
<el-option
|
|
v-for="item in dwOptions"
|
|
:label="item.name"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动日期">
|
|
<el-date-picker
|
|
style="width: 96%"
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
format="yyyy-MM-dd HH:mm:ss"
|
|
v-model="editHd"
|
|
type="datetimerange"
|
|
range-separator="至"
|
|
start-placeholder="活动开始日期"
|
|
end-placeholder="活动结束日期">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="竞赛方式">
|
|
<el-radio v-model="editFormData.jsfs" :disabled="disabled" border label="竞赛类">竞赛类</el-radio>
|
|
<el-radio v-model="editFormData.jsfs" :disabled="disabled" border label="非竞赛类">非竞赛类</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="颁奖模式">
|
|
<el-radio v-model="editFormData.bjms" :disabled="disabled" border label="团体">团体</el-radio>
|
|
<el-radio v-model="editFormData.bjms" :disabled="disabled" border label="个人">个人</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="活动经费预算">
|
|
<el-input maxlength="100" placeholder="请输入活动经费预算"
|
|
v-model="editFormData.jfys" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="number">
|
|
<template slot="append">元</template>
|
|
</el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="16">
|
|
<el-form-item label="报名方式">
|
|
<el-radio v-model="editFormData.bmfs" border label="个人报名">个人报名</el-radio>
|
|
<el-radio v-model="editFormData.bmfs" border label="院级工会报名">院级工会报名</el-radio>
|
|
<el-radio style="margin-right: 10px;" v-model="editFormData.bmfs" border label="名额分配">基层工会名额分配
|
|
</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="组合方式">
|
|
<el-radio v-model="editFormData.zhfs" :disabled="editzhfsDis" border label="男女组">男女组</el-radio>
|
|
<el-radio v-model="editFormData.zhfs" border label="普通组">普通组</el-radio>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="8">
|
|
<el-form-item label="是否推送日历">
|
|
<el-radio-group v-model="editFormData.sfrl">
|
|
<el-radio label="1">是</el-radio>
|
|
<el-radio label="2">否</el-radio>
|
|
</el-radio-group>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="16">
|
|
<el-form-item label="推送人员">
|
|
<el-checkbox-group v-model="editFormData.qx">
|
|
<el-checkbox label="H10">校活动管理员</el-checkbox>
|
|
<el-checkbox label="H04">院级工会管理员</el-checkbox>
|
|
<el-checkbox label="H01">会员用户</el-checkbox>
|
|
</el-checkbox-group>
|
|
</el-form-item>
|
|
</el-col>
|
|
|
|
</el-row>
|
|
|
|
<el-row v-if="editFormData.zhfs=='普通组'&&editFormData.bmfs!='名额分配'">
|
|
|
|
<el-col :span="8">
|
|
<el-form-item label="总人数(包含教练及领队人数)">
|
|
<el-input maxlength="100" placeholder="请输入总人数"
|
|
v-model="editFormData.hdrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row v-if="editFormData.zhfs=='男女组'">
|
|
<el-col :span="8">
|
|
<el-form-item label="男队人数">
|
|
<el-input maxlength="100" placeholder="请输入男队人数"
|
|
v-model="editFormData.manrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="女队人数">
|
|
<el-input maxlength="100" placeholder="请输入女队人数"
|
|
v-model="editFormData.womenrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="8">
|
|
<el-form-item label="总人数(包含教练及领队人数)">
|
|
<el-input maxlength="100" placeholder="请输入总人数"
|
|
v-model="editFormData.hdrs" style="width: 88%"
|
|
auto-complete="off" tabindex="4" type="text"></el-input>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="报名办法" v-show="editFormData.jsfs=='竞赛类'">
|
|
<div id="editbmEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="竞赛办法" v-show="editFormData.jsfs=='竞赛类'">
|
|
<div id="editjsEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="奖励办法" v-show="editFormData.jsfs=='竞赛类'">
|
|
<div id="editjlEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="注意事项" v-show="editFormData.jsfs=='竞赛类'">
|
|
<div id="editzysxEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="24">
|
|
<el-form-item label="活动通知" v-show="editFormData.jsfs=='非竞赛类'">
|
|
<div id="edithdtzEditor" ></div>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
</el-form>
|
|
|
|
<el-row v-show="active=='2'" style="text-align: right">
|
|
<el-input id="hdrs" size="mini" style="width: 13%;" placeholder="统一设置活动人数" v-model="edithdrs"
|
|
type="number"></el-input>
|
|
<el-input size="mini" style="width: 40.5%;margin-right: 10px;margin-left: 18px;" placeholder="统一设置报名要求"
|
|
v-model="editbmyq" type="textarea" :rows="1"></el-input>
|
|
</el-row>
|
|
<el-table v-show="active=='2'" :data="editmeTableData" size="medium">
|
|
<el-table-column align="center" header-align="center" label="工会名称" prop="unionname"></el-table-column>
|
|
<el-table-column align="center" width="160px" header-align="center" label="活动人数" prop="hdrs">
|
|
<template slot-scope="scope">
|
|
<el-input size="small" v-model="scope.row.hdrs" type="number"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="报名要求" prop="bmyq">
|
|
<template slot-scope="scope">
|
|
<el-input size="small" v-model="scope.row.bmyq" type="textarea" :rows="1"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
<span slot="footer" class="dialog-footer">
|
|
<el-button @click="editDialogVisible = false">取 消</el-button>
|
|
<el-button type="warning" @click="active='2'" v-if="editFormData.bmfs=='名额分配'&&active=='1'">下一步</el-button>
|
|
<el-button type="warning" @click="active='1'" v-if="editFormData.bmfs=='名额分配'&&active=='2'">上一步</el-button>
|
|
<el-button type="primary" @click="doEdit">确 定</el-button>
|
|
</span>
|
|
|
|
</el-dialog>
|
|
|
|
<transition name="el-zoom-in-center">
|
|
<div style="padding: 10px 50px" v-show="!isshow">
|
|
<div class="text-primary pointer" style="font-size: 20px" @click="isshow=true">
|
|
<i class="el-icon-arrow-left"></i>
|
|
返回
|
|
</div>
|
|
<el-tabs v-model="xqactive">
|
|
<el-tab-pane label="活动详细信息" name="1">
|
|
<table class="table table-bordered">
|
|
<tr>
|
|
<td colspan="6" class="text-center" style="font-size: 16px;background-color: #f5f5f5">
|
|
{{viewData.xhdmc}}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="v-0x345756765">活动地点</td>
|
|
<td class="v-0x2323544" colspan="2">{{viewData.hddz}}</td>
|
|
<td class="v-0x345756765">主办单位</td>
|
|
<td class="v-0x2323544" colspan="2">{{viewData.unit}}</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="v-0x345756765">活动类型</td>
|
|
<td class="v-0x2323544">{{viewData.hdlx}}</td>
|
|
<td class="v-0x345756765">活动项目</td>
|
|
<td class="v-0x2323544">{{viewData.hdxm}}</td>
|
|
<td class="v-0x345756765">活动经费预算</td>
|
|
<td class="v-0x2323544">{{viewData.jfys}}</td>
|
|
</tr>
|
|
<tr style="border: 1px solid rgb(220,220,220);">
|
|
<td class="v-0x345756765">报名开始时间</td>
|
|
<td class="v-0x2323544">{{viewData.bmkssj}}</td>
|
|
<td class="v-0x345756765">报名截止时间</td>
|
|
<td class="v-0x2323544">{{viewData.bmjssj}}</td>
|
|
<td class="v-0x345756765">活动年份</td>
|
|
<td class="v-0x2323544">{{viewData.hdnf}}</td>
|
|
</tr>
|
|
<tr style="border: 1px solid rgb(220,220,220);">
|
|
<td class="v-0x345756765">活动开始时间</td>
|
|
<td class="v-0x2323544">{{viewData.hdks}}</td>
|
|
<td class="v-0x345756765">活动结束时间</td>
|
|
<td class="v-0x2323544">{{viewData.hdjs}}</td>
|
|
<td class="v-0x345756765">组合方式</td>
|
|
<td class="v-0x2323544">{{viewData.zhfs}}</td>
|
|
</tr>
|
|
<tr style="border: 1px solid rgb(220,220,220);">
|
|
<td class="v-0x345756765">颁奖模式</td>
|
|
<td class="v-0x2323544">{{viewData.bjms}}</td>
|
|
<td class="v-0x345756765">竞赛模式</td>
|
|
<td class="v-0x2323544">{{viewData.jsfs}}</td>
|
|
<td class="v-0x345756765">报名方式</td>
|
|
<td class="v-0x2323544" v-if="viewData.bmfs!='名额分配'">{{viewData.bmfs}}</td>
|
|
<td class="v-0x2323544" v-else>院级工会报名</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6" class="text-center"
|
|
style="font-size: 15px;border-top: 1px solid #e3e6f3;background-color: #f5f5f5">报名办法</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6">
|
|
<div class="v-0x2323544" v-html="viewData.bmbf"></div>
|
|
</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6" class="text-center"
|
|
style="font-size: 15px;border-top: 1px solid #e3e6f3;background-color: #f5f5f5">竞赛办法</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6">
|
|
<div class="v-0x2323544" v-html="viewData.jsbf"></div>
|
|
</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6" class="text-center"
|
|
style="font-size: 15px;border-top: 1px solid #e3e6f3;background-color: #f5f5f5">奖励办法</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6">
|
|
<div class="v-0x2323544" v-html="viewData.jlbf"></div>
|
|
</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6" class="text-center"
|
|
style="font-size: 15px;border-top: 1px solid #e3e6f3;background-color: #f5f5f5">其他注意事项</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6">
|
|
<div class="v-0x2323544" v-html="viewData.zysx"></div>
|
|
</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='非竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6" class="text-center"
|
|
style="font-size: 15px;border-top: 1px solid #e3e6f3;background-color: #f5f5f5">活动通知</td>
|
|
</tr>
|
|
<tr v-show="viewData.jsfs=='非竞赛类'" style="border: 1px solid rgb(220,220,220);">
|
|
<td colspan="6">
|
|
<div class="v-0x2323544" v-html="viewData.hdtz"></div>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</el-tab-pane>
|
|
<el-tab-pane label="活动工作人员列表" name="2">
|
|
<el-table :data="gzryListTableData" size="small" >
|
|
<el-table-column label="人员身份" prop="shmc" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column label="姓名" prop="username" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column label="所属单位" prop="name" header-align="center"
|
|
align="center"></el-table-column>
|
|
</el-table>
|
|
</el-tab-pane>
|
|
<el-tab-pane label="活动报名情况" name="3">
|
|
<el-table :data="bmTableData" max-height="320px" height="320px" size="small" >
|
|
<el-table-column label="序号" type="index" index="1" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column v-if="bmfs == '院级工会报名' || bmfs == '名额分配'" label="报名单位"
|
|
prop="unionname" header-align="center" align="center"></el-table-column>
|
|
<el-table-column v-if="bmfs == '院级工会报名' || bmfs == '名额分配'" label="报名人员" prop="cyry"
|
|
header-align="center" align="center"></el-table-column>
|
|
|
|
<el-table-column v-if="bmfs == '个人报名'" label="工资号" prop="loginname" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column v-if="bmfs == '个人报名'" label="姓名" prop="username" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column v-if="bmfs == '个人报名'" label="性别" prop="sex" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column v-if="bmfs == '个人报名'" label="单位" prop="name"
|
|
header-align="center" align="center"></el-table-column>
|
|
<el-table-column v-if="bmfs == '个人报名'" label="联系电话" prop="mobile" header-align="center"
|
|
align="center"></el-table-column>
|
|
</el-table>
|
|
</el-tab-pane>
|
|
<el-tab-pane label="活动获奖情况" name="4">
|
|
<el-table :data="hjTableData" size="small" >
|
|
<el-table-column v-if="hdms == '团体'" label="获奖单位" prop="name" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column v-if="hdms == '个人'" label="获奖人" prop="username" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column v-if="hdms == '个人'" label="获奖人单位" prop="name" header-align="center"
|
|
align="center"></el-table-column>
|
|
<el-table-column label="获奖信息" prop="mc" header-align="center" align="center"></el-table-column>
|
|
<el-table-column label="奖品名称" prop="jpmc" header-align="center" align="center">
|
|
<template slot-scope="scope">
|
|
<el-label v-if="scope.row.jpmc!='' && scope.row.jpmc!=null">{{scope.row.jpmc}}
|
|
</el-label>
|
|
<el-label v-else>无(现金奖励)</el-label>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column label="金额" prop="money" header-align="center" align="center"></el-table-column>
|
|
</el-table>
|
|
</el-tab-pane>
|
|
</el-tabs>
|
|
</div>
|
|
</transition>
|
|
|
|
|
|
|
|
<!--修改参赛人员-->
|
|
<el-dialog title="修改参赛人员" width="60%" custom-class="ViewDialogClass" :visible.sync="csryDialogVisible" top="6%">
|
|
|
|
<div class="block">
|
|
<el-select
|
|
size="small"
|
|
style="width: 60%"
|
|
class="span_n"
|
|
v-model="selUsers"
|
|
multiple
|
|
filterable
|
|
remote
|
|
default-first-option
|
|
reserve-keyword
|
|
:remote-method="remoteMethod"
|
|
placeholder="请输入姓名或工资号或单位名称"
|
|
>
|
|
<el-option
|
|
v-for="item in dbUsers"
|
|
:label="item.display"
|
|
:value="item.id">
|
|
</el-option>
|
|
</el-select>
|
|
<el-dropdown @command="addCsRy" trigger="click">
|
|
<el-button type="primary" @click="clickGrBm(scope)" size="mini">
|
|
添加参赛人员<i class="el-icon-arrow-down el-icon--right"></i>
|
|
</el-button>
|
|
<el-dropdown-menu slot="dropdown" v-if="dropDownIsShow">
|
|
<el-dropdown-item command="9">领队</el-dropdown-item>
|
|
<el-dropdown-item command="10">教练</el-dropdown-item>
|
|
<el-dropdown-item command="11">运动员(参与者)</el-dropdown-item>
|
|
</el-dropdown-menu>
|
|
</el-dropdown>
|
|
|
|
<el-button size="small" @click="removeCsRy" type="danger" style="margin-left: 60px;">移除参赛人员</el-button>
|
|
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-input style="width:180px;" placeholder="可按姓名、工资号查询" size="mini" v-model="xgPageForm.csWord"
|
|
clearable></el-input>
|
|
</div>
|
|
|
|
<div class="btn-group tool-button mt5">
|
|
<el-select placeholder="请选择工会" size="mini" filterable v-model="xgPageForm.csUnion" style="width: 220px;"
|
|
clearable="true" filterable="true">
|
|
<el-option v-for="item in ghOptions" :label="item.unionname" :value="item.id"></el-option>
|
|
</el-select>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button type="primary" size="mini" icon="el-icon-search" @click="csPageData()"></el-button>
|
|
</div>
|
|
<el-table
|
|
:data="xgTableData"
|
|
size="small"
|
|
header-align="center"
|
|
style="width: 100%;margin-top: 8px;"
|
|
@selection-change="userSelectionChange">
|
|
<el-table-column
|
|
type="selection"
|
|
width="40">
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope">
|
|
<span>{{scope.$index+(xgPageForm.pageNumber - 1) * xgPageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column align="center" width="80px" header-align="center" label="姓名"
|
|
prop="username"></el-table-column>
|
|
<el-table-column align="center" width="68px" header-align="center" label="工资号"
|
|
prop="loginname"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="单位" prop="name"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="电话" prop="mobile"></el-table-column>
|
|
<el-table-column align="center" width="50px" header-align="center" label="性别" prop="sex"></el-table-column>
|
|
<el-table-column align="center" width="96px" header-align="center" label="审核状态" prop="sex">
|
|
<template slot-scope="scope">
|
|
<el-tag type="warning" v-if="scope.row.shzt=='1'" size="small">待审核</el-tag>
|
|
<el-tag type="primary" v-if="scope.row.shzt=='3'" size="small">审核拒绝</el-tag>
|
|
<el-tag type="success" v-if="scope.row.shzt=='2'" size="small">审核通过</el-tag>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
<el-row class="el-pagination-container">
|
|
<el-pagination
|
|
@size-change="xgpageSizeChange"
|
|
@current-change="xgpageNumberChange"
|
|
:current-page="xgPageForm.pageNumber"
|
|
:page-sizes="[10, 20, 30, 50]"
|
|
:page-size="xgPageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
:total="xgPageForm.totalCount">
|
|
</el-pagination>
|
|
</el-row>
|
|
|
|
</el-dialog>
|
|
|
|
<!--设置活动工作人员-->
|
|
<el-dialog title="设置活动工作人员" class="dia"
|
|
:visible.sync="gzryDialogVisible" custom-class="ViewDialogClass" width="46%" top="3%">
|
|
|
|
<el-steps :active="active" align-center>
|
|
<el-step title="选择活动工作人员"></el-step>
|
|
<el-step title="设置工作人员信息"></el-step>
|
|
</el-steps>
|
|
|
|
<el-row style="margin-top: 20px;" v-show="active=='1'">
|
|
<div class="btn-group tool-button mt5">
|
|
<el-input style="width:180px;" size="mini" placeholder="可按姓名、工资号查询" v-model="gzryPageForm.searchKeyword"
|
|
clearable></el-input>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-select placeholder="请选择工会" size="mini" v-model="gzryPageForm.union" style="width: 160px;"
|
|
clearable="true" filterable="true">
|
|
<el-option v-for="item in ghOptions" :label="item.unionname" :value="item.id"></el-option>
|
|
</el-select>
|
|
</div>
|
|
<div class="btn-group tool-button mt5">
|
|
<el-button type="primary" size="mini" icon="el-icon-search" @click="doGgrySearch"></el-button>
|
|
</div>
|
|
</el-row>
|
|
|
|
<el-table :data="gzryTableData" ref="gzryTable" size="small" :row-key="rowKey" @selection-change="changeFun"
|
|
v-show="active=='1'">
|
|
<el-table-column :reserve-selection="true"
|
|
@selection-change="changeFun"
|
|
type="selection"
|
|
width="40">
|
|
</el-table-column>
|
|
<el-table-column align="center" header-align="center" label="序号" type="index">
|
|
<template scope="scope">
|
|
<span>{{scope.$index+(gzryPageForm.pageNumber - 1) * gzryPageForm.pageSize + 1}} </span></template>
|
|
</el-table-column>
|
|
<el-table-column align="center" width="80px" header-align="center" label="姓名"
|
|
prop="username"></el-table-column>
|
|
<el-table-column align="center" width="68px" header-align="center" label="工资号"
|
|
prop="loginname"></el-table-column>
|
|
<el-table-column align="center" header-align="center" label="单位" prop="name"></el-table-column>
|
|
<el-table-column align="center" width="100px" header-align="center" label="电话"
|
|
prop="mobile"></el-table-column>
|
|
<el-table-column align="center" width="60px" header-align="center" label="性别" prop="sex"></el-table-column>
|
|
</el-table>
|
|
<el-row class="el-pagination-container" v-show="active=='1'">
|
|
<el-pagination
|
|
@size-change="gzrypageSizeChange"
|
|
@current-change="gzrypageNumberChange"
|
|
:current-page="gzryPageForm.pageNumber"
|
|
:page-sizes="[10, 20, 30, 50]"
|
|
:page-size="gzryPageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next, jumper"
|
|
:total="gzryPageForm.totalCount">
|
|
</el-pagination>
|
|
</el-row>
|
|
|
|
<el-card class="box-card" v-show="active=='2'" style="margin-top: 20px">
|
|
<div slot="header" class="clearfix">
|
|
<span style="color: #ebb563">请填写以下人员的身份信息</span>
|
|
<el-button @click="gzryDo" style="float: right; padding: 6px 6px;" type="primary" icon="el-icon-check"
|
|
circle></el-button>
|
|
</div>
|
|
|
|
<el-form :model="formData" label-position="top" style="margin-left: 0px;" size="small" label-width="86px">
|
|
<el-row>
|
|
<el-col :span="8"
|
|
style="text-align: center;margin-bottom: 8px;background-color: #EBEEF5;color: black;font-weight: bold">
|
|
姓名
|
|
</el-col>
|
|
<el-col :span="8"
|
|
style="text-align: center;margin-bottom: 8px;background-color: #EBEEF5;color: black;font-weight: bold">
|
|
性别
|
|
</el-col>
|
|
<el-col :span="8"
|
|
style="text-align: center;margin-bottom: 8px;background-color: #EBEEF5;color: black;font-weight: bold">
|
|
身份信息
|
|
</el-col>
|
|
</el-row>
|
|
<el-row v-for="item in multipleSelection">
|
|
<el-col :span="8" style="text-align: center;margin-bottom: 8px;">
|
|
<el-lebel style="color: grey">{{item.username}}</el-lebel>
|
|
</el-col>
|
|
<el-col :span="8" style="text-align: center;margin-bottom: 8px;">
|
|
<el-lebel style="color: grey">{{item.sex}}</el-lebel>
|
|
</el-col>
|
|
<el-col :span="8" style="text-align: center;margin-bottom: 8px;">
|
|
<el-select placeholder="请选择人员身份" size="mini" v-model="item.rysf" style="width: 160px;"
|
|
clearable="true" filterable="true">
|
|
<el-option v-for="item in sfxx" :label="item.shmc" :value="item.sfid"></el-option>
|
|
</el-select>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row style="margin: 20px 0px;" v-if="multipleSelection.length==0">
|
|
<el-divider content-position="center">您还没有选择工作人员</el-divider>
|
|
</el-row>
|
|
|
|
</el-form>
|
|
</el-card>
|
|
|
|
<span slot="footer" class="dialog-footer">
|
|
<el-button @click="gzryDialogVisible = false">取 消</el-button>
|
|
<el-button type="warning" @click="active = '1'" v-if="active == '2'">上一步</el-button>
|
|
<el-button type="primary" @click="active = '2'" v-if="active == '1'">下一步</el-button>
|
|
<el-button type="primary" @click="gzryDo" v-if="active == '2'">确 定</el-button>
|
|
</span>
|
|
|
|
</el-dialog>
|
|
|
|
</div>
|
|
|
|
<script>
|
|
let E = window.wangEditor
|
|
let bmEditor = null
|
|
let jsEditor = null
|
|
let jlEditor = null
|
|
let zysxEditor = null
|
|
let hdtzEditor = null
|
|
let editbmEditor = null
|
|
let editjsEditor = null
|
|
let editjlEditor = null
|
|
let editzysxEditor = null
|
|
let edithdtzEditor = null
|
|
const vue = new Vue({
|
|
el: "#app",
|
|
data() {
|
|
return {
|
|
/*列表*/
|
|
tableData: [],
|
|
pageForm: {
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
searchKeyword: "",
|
|
hdlx: "",
|
|
hdxm: "",
|
|
zt: "",
|
|
year:""
|
|
},
|
|
queryHdlx: [],
|
|
queryHdxm: [],
|
|
loading: true,
|
|
|
|
/*新增*/
|
|
addDialogVisible: false,
|
|
formData: {
|
|
hdlxid: "",
|
|
hdxmid: "",
|
|
xbdw: [],
|
|
xhdmc: "",
|
|
zhfs: "",
|
|
jsfs: "非竞赛类",
|
|
},
|
|
hdrs: "",
|
|
bmyq: "",
|
|
zhfsDis: false,
|
|
editzhfsDis: false,
|
|
active: "1",
|
|
meTableData: [],//名额分配表格数据
|
|
formRules: {},
|
|
hdlxOptions: [],//活动类型
|
|
hdxmOptions: [],//活动项目
|
|
hdjhOptions: [],//活动计划
|
|
dwOptions: [],
|
|
ghOptions:[],
|
|
putongShow: false,
|
|
nannvShow: false,
|
|
addBm: [],
|
|
addHd: [],
|
|
|
|
/*编辑*/
|
|
editDialogVisible: false,
|
|
edithdrs: "",
|
|
editbmyq: "",
|
|
editmeTableData: [],
|
|
editHdjhOptions: [],
|
|
editFormData: {
|
|
hdlxid: "",
|
|
hdxmid: "",
|
|
xbdw: [],
|
|
},
|
|
editFormRules: {},
|
|
editBm: [],
|
|
editHd: [],
|
|
disabled: false,
|
|
|
|
/*查看*/
|
|
infoDialogVisible: false,
|
|
activeName: '1',
|
|
viewData: [],
|
|
bmTableData: [],
|
|
bmfs: "",
|
|
hdms: "",
|
|
hjTableData: [],
|
|
gzryListTableData: [],
|
|
|
|
/*查询参赛人员*/
|
|
csryData: [],
|
|
csryDialogVisible: false,
|
|
|
|
/*修改参赛人员*/
|
|
xgTableData: [],
|
|
selUsers: [],
|
|
dbUsers: [],
|
|
xgPageForm: {
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
searchKeyword: "",
|
|
id: "",
|
|
csUnit: "",
|
|
csWord: "",
|
|
csUnion:""
|
|
},
|
|
temp: [],
|
|
userSelection: [],
|
|
dropDownIsShow: true,
|
|
|
|
/*设置活动工作人员*/
|
|
gzryDialogVisible: false,
|
|
gzryPageForm: {
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
searchKeyword: "",
|
|
id: "",
|
|
union:""
|
|
},
|
|
gzryTableData: [],
|
|
formData: {},
|
|
multipleSelection: [],
|
|
sfxx: [],
|
|
|
|
editFlag: [],
|
|
saveid: "",
|
|
xbdwSave: [],
|
|
xqactive:"1",
|
|
isshow:true
|
|
}
|
|
},
|
|
methods: {
|
|
|
|
pageData () {
|
|
sublime.showLoadingbar();//显示loading
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/data", this.pageForm).then(data=>{
|
|
sublime.closeLoadingbar();//关闭loading
|
|
if (data.code == 0) {
|
|
this.tableData = data.data.hds.list;
|
|
this.pageForm.totalCount = data.data.hds.totalCount;
|
|
this.hdlxOptions = data.data.hdlx;
|
|
this.queryHdlx = data.data.hdlx;
|
|
this.hdjhOptions = data.data.hdjh;
|
|
this.dwOptions = data.data.dw;
|
|
this.ghOptions=data.data.union;
|
|
this.sfxx = data.data.sfxx;
|
|
this.pageForm.zt = "";
|
|
this.loading = false;
|
|
this.meTableData = data.data.union;
|
|
}else{
|
|
this.loading = false;
|
|
}
|
|
});
|
|
},
|
|
|
|
/*分页*/
|
|
pageSizeChange (val) {
|
|
this.pageForm.pageSize = val;
|
|
this.pageData();
|
|
},
|
|
pageNumberChange (val) {
|
|
this.pageForm.pageNumber = val;
|
|
this.pageData();
|
|
},
|
|
xgpageSizeChange (val) {
|
|
this.xgPageForm.pageSize = val;
|
|
this.xgFlag();
|
|
},
|
|
xgpageNumberChange (val) {
|
|
this.xgPageForm.pageNumber = val;
|
|
this.xgFlag();
|
|
},
|
|
gzrypageSizeChange (val) {
|
|
this.gzryPageForm.pageSize = val;
|
|
this.gzryPageData();
|
|
},
|
|
gzrypageNumberChange (val) {
|
|
this.gzryPageForm.pageNumber = val;
|
|
this.gzryPageData();
|
|
},
|
|
|
|
doSearch() {
|
|
this.pageForm.pageNumber = 1;
|
|
this.pageData();
|
|
},
|
|
|
|
selChange (obj) {
|
|
|
|
if (obj == "" || obj == null) {
|
|
this.formData.xhdmc = "";
|
|
this.formData.hdlxid = "";
|
|
this.formData.hdxmid = "";
|
|
} else {
|
|
for (var i = 0; i < this.hdjhOptions.length; i++) {
|
|
if (obj == this.hdjhOptions[i].id) {
|
|
|
|
this.formData.xhdmc = this.hdjhOptions[i].jhmc;
|
|
if (this.hdjhOptions[i].hdlxid != null && this.hdjhOptions[i].hdlxid != "") {
|
|
this.formData.hdlxid = this.hdjhOptions[i].hdlxid;
|
|
}
|
|
if (this.hdjhOptions[i].hdxmid != null && this.hdjhOptions[i].hdxmid != "") {
|
|
setTimeout(function () {
|
|
this.formData.hdxmid = this.hdjhOptions[i].hdxmid;
|
|
}, 80)
|
|
}
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
editSelChange (obj) {
|
|
|
|
if (obj == "" || obj == null) {
|
|
this.editFormData.xhdmc = this.editFlag[0];
|
|
this.editFormData.hdlxid = this.editFlag[1];
|
|
this.editFormData.hdxmid = this.editFlag[2];
|
|
} else {
|
|
for (var i = 0; i < this.hdjhOptions.length; i++) {
|
|
if (obj == this.hdjhOptions[i].id) {
|
|
|
|
this.editFormData.xhdmc = this.hdjhOptions[i].jhmc;
|
|
if (this.hdjhOptions[i].hdlxid != null && this.hdjhOptions[i].hdlxid != "") {
|
|
this.editFormData.hdlxid = this.hdjhOptions[i].hdlxid;
|
|
}
|
|
if (this.hdjhOptions[i].hdxmid != null && this.hdjhOptions[i].hdxmid != "") {
|
|
setTimeout(function () {
|
|
this.editFormData.hdxmid = this.hdjhOptions[i].hdxmid;
|
|
}, 80)
|
|
}
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
/*新增*/
|
|
openAdd () {
|
|
|
|
|
|
this.saveid = "";
|
|
this.active = "1";
|
|
this.formData = {
|
|
hdlxid: "",
|
|
hdxmid: "",
|
|
xbdw: [],
|
|
xhdmc: "",
|
|
zhfs: "",
|
|
jsfs: "非竞赛类",
|
|
qx:[]
|
|
};
|
|
|
|
|
|
vue.$nextTick(function () {
|
|
//实例化编辑器
|
|
bmEditor = new wangEditor("#bmEditor")
|
|
bmEditor.create()
|
|
jsEditor = new wangEditor("#jsEditor")
|
|
jsEditor.create()
|
|
jlEditor = new wangEditor("#jlEditor")
|
|
jlEditor.create()
|
|
zysxEditor = new wangEditor("#zysxEditor")
|
|
zysxEditor.create()
|
|
hdtzEditor = new wangEditor("#hdtzEditor")
|
|
hdtzEditor.create()
|
|
|
|
});
|
|
|
|
this.addDialogVisible = true;
|
|
},
|
|
doAdd () {
|
|
|
|
|
|
if (this.addBm) {
|
|
this.formData.bmkssj = this.addBm[0];
|
|
this.formData.bmjssj = this.addBm[1];
|
|
}
|
|
if (this.addHd) {
|
|
this.formData.hdkssj = this.addHd[0];
|
|
this.formData.hdjssj = this.addHd[1];
|
|
}
|
|
|
|
if (this.formData.hdkssj.substring(0, 10) < this.formData.bmkssj && this.formData.hdkssj.substring(0, 10) < this.formData.bmjssj) {
|
|
this.$alert("活动开始日期需在活动报名截止之后!", "温馨提示", {
|
|
type: 'warning',
|
|
closeOnPressEscape: true,
|
|
closeOnClickModal: true,
|
|
});
|
|
return;
|
|
}
|
|
|
|
this.formData.bmbf = bmEditor.txt.text();
|
|
this.formData.jsbf = jsEditor.txt.text();
|
|
this.formData.jlbf = jlEditor.txt.text();
|
|
this.formData.zysx = zysxEditor.txt.text();
|
|
this.formData.hdtz = hdtzEditor.txt.text();
|
|
this.xbdwSave = this.formData.xbdw;
|
|
this.formData.xbdw = this.formData.xbdw.toString();
|
|
this.formData.qx=this.formData.qx.toString();
|
|
this.formData.sfbc=0;
|
|
this.$refs["addForm"].validate().then(res=>{
|
|
const loading = this.$loading({
|
|
lock: true,
|
|
text: 'Loading',
|
|
spinner: 'el-icon-loading',
|
|
background: 'rgba(0, 0, 0, 0.7)'
|
|
});
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/addDo?id=" + this.saveid, this.formData).then(data=>{
|
|
loading.close();
|
|
if (data.code == 0) {
|
|
if (this.formData.bmfs != "名额分配") {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
this.pageData();
|
|
//this.addDialogVisible = false;
|
|
} else {
|
|
var array = new Array();
|
|
this.meTableData.forEach( obj=> {
|
|
array.push({
|
|
hdid: data.data,
|
|
unionid: obj.id,
|
|
hdrs: obj.hdrs,
|
|
bmyq: obj.bmyq,
|
|
});
|
|
});
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/saveMe", {
|
|
data: JSON.stringify(array),
|
|
id: this.saveid
|
|
}).then(data=>{
|
|
if (data.code == 0) {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
}
|
|
})
|
|
}
|
|
this.saveid = data.data;
|
|
this.formData.xbdw = this.xbdwSave;
|
|
}
|
|
}).catch(data=>{});
|
|
}).catch(res=>{});
|
|
},
|
|
queding () {
|
|
|
|
|
|
if (this.addBm) {
|
|
this.formData.bmkssj = this.addBm[0];
|
|
this.formData.bmjssj = this.addBm[1];
|
|
}
|
|
if (this.addHd) {
|
|
this.formData.hdkssj = this.addHd[0];
|
|
this.formData.hdjssj = this.addHd[1];
|
|
}
|
|
|
|
if (this.formData.hdkssj.substring(0, 10) < this.formData.bmkssj && this.formData.hdkssj.substring(0, 10) < this.formData.bmjssj) {
|
|
this.$alert("活动开始日期需在活动报名截止之后!", "温馨提示", {
|
|
type: 'warning',
|
|
closeOnPressEscape: true,
|
|
closeOnClickModal: true,
|
|
});
|
|
return;
|
|
}
|
|
|
|
this.formData.bmbf = bmEditor.txt.text();
|
|
this.formData.jsbf = jsEditor.txt.text();
|
|
this.formData.jlbf = jlEditor.txt.text();
|
|
this.formData.zysx = zysxEditor.txt.text();
|
|
this.formData.hdtz = hdtzEditor.txt.text();
|
|
this.xbdwSave = this.formData.xbdw;
|
|
this.formData.qx=this.formData.qx.toString();
|
|
this.formData.xbdw = this.formData.xbdw.toString();
|
|
this.formData.sfbc=1;
|
|
this.$refs["addForm"].validate().then(res=>{
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/addDo?id=" + this.saveid, this.formData).then(data=>{
|
|
if (data.code == 0) {
|
|
if (this.formData.bmfs != "名额分配") {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
this.pageData();
|
|
this.addDialogVisible = false;
|
|
} else {
|
|
var array = new Array();
|
|
this.meTableData.forEach( obj=> {
|
|
array.push({
|
|
hdid: data.data,
|
|
unionid: obj.unioninfomgr_id,
|
|
hdrs: obj.hdrs,
|
|
bmyq: obj.bmyq,
|
|
});
|
|
});
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/saveMe", {
|
|
data: JSON.stringify(array),
|
|
id: this.saveid
|
|
}).then(data=>{
|
|
if (data.code == 0) {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
}
|
|
})
|
|
}
|
|
this.saveid = data.data;
|
|
this.formData.xbdw = this.xbdwSave;
|
|
}
|
|
});
|
|
});
|
|
},
|
|
|
|
/*编辑*/
|
|
openEdit (scope) {
|
|
|
|
this.editBm = [];
|
|
this.editHd = [];
|
|
this.editFlag = [];
|
|
this.editHdjhOptions = [];
|
|
this.active = "1";
|
|
if (moment().format("YYYY-MM-DD HH:mm:ss") >= scope.row.hdkssj) {
|
|
this.disabled = true;
|
|
} else {
|
|
this.disabled = false;
|
|
}
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findHd", {id: scope.row.id}).then(data=>{
|
|
if (data.code == 0) {
|
|
this.editBm.push(data.data.xhd.bmkssj);
|
|
this.editBm.push(data.data.xhd.bmjssj);
|
|
this.editHd.push(data.data.xhd.hdkssj);
|
|
this.editHd.push(data.data.xhd.hdjssj);
|
|
this.editmeTableData = data.data.fpme;
|
|
this.editFlag.push(data.data.xhd.xhdmc);
|
|
this.editFlag.push(data.data.xhd.hdlxid);
|
|
this.editFlag.push(data.data.xhd.hdxmid);
|
|
this.editDialogVisible = true;
|
|
|
|
|
|
vue.$nextTick(function () {
|
|
//实例化编辑器
|
|
editbmEditor = new wangEditor("#editbmEditor")
|
|
editbmEditor.create()
|
|
editjsEditor = new wangEditor("#editjsEditor")
|
|
editjsEditor.create()
|
|
editjlEditor = new wangEditor("#editjlEditor")
|
|
editjlEditor.create()
|
|
editzysxEditor = new wangEditor("#editzysxEditor")
|
|
editzysxEditor.create()
|
|
edithdtzEditor = new wangEditor("#edithdtzEditor")
|
|
edithdtzEditor.create()
|
|
|
|
|
|
if (data.data.xhd.bmbf != "" && data.data.xhd.bmbf != null) {
|
|
editbmEditor.txt.html(data.data.xhd.bmbf);
|
|
}
|
|
|
|
|
|
if (data.data.xhd.jsbf != "" && data.data.xhd.jsbf != null) {
|
|
editjsEditor.txt.html(data.data.xhd.jsbf);
|
|
}
|
|
|
|
|
|
if (data.data.xhd.jlbf != "" && data.data.xhd.jlbf != null) {
|
|
editjlEditor.txt.html(data.data.xhd.jlbf);
|
|
}
|
|
|
|
|
|
if (data.data.xhd.zysx != "" && data.data.xhd.zysx != null) {
|
|
editzysxEditor.txt.html(data.data.xhd.zysx);
|
|
}
|
|
|
|
|
|
if (data.data.xhd.hdtz != "" && data.data.xhd.hdtz != null) {
|
|
edithdtzEditor.txt.html(data.data.xhd.hdtz);
|
|
}
|
|
|
|
});
|
|
this.editFormData = data.data.xhd;
|
|
if (data.data.xhd.qx!=null&&data.data.xhd.qx!=undefined){
|
|
//this.editFormData.qx=this.editFormData.qx.split(",")
|
|
this.$set(this.editFormData,"qx",this.editFormData.qx.split(","))
|
|
} else{
|
|
//this.editFormData.qx=[];
|
|
this.$set(this.editFormData,"qx",[])
|
|
}
|
|
this.hdxmOptions = data.data.hdxm;
|
|
|
|
if (data.data.hdjh.length > 0) {
|
|
this.editHdjhOptions = data.data.hdjh;
|
|
}
|
|
this.editHdjhOptions.push({
|
|
id: data.data.xhd.jhid,
|
|
jhmc: data.data.xhd.jhmc,
|
|
hdlxid: data.data.xhd.hdlxid,
|
|
hdxmid: data.data.xhd.hdxmid
|
|
});
|
|
|
|
if (data.data.xhd.xbdw.length != 0) {
|
|
this.editFormData.xbdw = data.data.xhd.xbdw.split(",");
|
|
} else {
|
|
this.editFormData.xbdw = [];
|
|
}
|
|
}
|
|
});
|
|
},
|
|
|
|
doEdit () {
|
|
|
|
if (this.editBm) {
|
|
this.editFormData.bmkssj = this.editBm[0];
|
|
this.editFormData.bmjssj = this.editBm[1];
|
|
}
|
|
if (this.editHd) {
|
|
this.editFormData.hdkssj = this.editHd[0];
|
|
this.editFormData.hdjssj = this.editHd[1];
|
|
}
|
|
this.editFormData.bmbf = editbmEditor.txt.text();
|
|
this.editFormData.jsbf = editjsEditor.txt.text();
|
|
this.editFormData.jlbf = editjlEditor.txt.text();
|
|
this.editFormData.zysx = editzysxEditor.txt.text();
|
|
this.editFormData.xbdw = this.editFormData.xbdw.toString();
|
|
this.editFormData.qx=this.editFormData.qx.toString();
|
|
if (this.editFormData.hdkssj.substring(0, 10) < this.editFormData.bmkssj && this.editFormData.hdkssj.substring(0, 10) < this.editFormData.bmjssj) {
|
|
this.$alert("活动开始日期需在活动报名截止之后!", "温馨提示", {
|
|
type: 'warning',
|
|
closeOnPressEscape: true,
|
|
closeOnClickModal: true,
|
|
});
|
|
return;
|
|
}
|
|
this.$refs["editForm"].validate().then(res=>{
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/editDo", this.editFormData).then(data=>{
|
|
if (data.code == 0) {
|
|
|
|
if (this.editFormData.bmfs != "名额分配") {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
} else {
|
|
var array = new Array();
|
|
this.editmeTableData.forEach( obj=> {
|
|
array.push({
|
|
hdid: this.editFormData.id,
|
|
unionid: obj.unioninfomgr_id,
|
|
hdrs: obj.hdrs,
|
|
bmyq: obj.bmyq,
|
|
});
|
|
});
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/fpmeEdit", {
|
|
data: JSON.stringify(array),
|
|
hdid: this.editFormData.id
|
|
}).then(data=>{
|
|
if (data.code == 0) {
|
|
this.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
}
|
|
})
|
|
}
|
|
this.pageData();
|
|
this.editDialogVisible = false;
|
|
}
|
|
});
|
|
});
|
|
},
|
|
|
|
/*查看*/
|
|
openInfo (scope) {
|
|
|
|
this.bmfs = scope.row.bmfs;
|
|
this.hdms = scope.row.bjms;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findById", {
|
|
id: scope.row.id,
|
|
bmfs: scope.row.bmfs,
|
|
bjms: scope.row.bjms
|
|
}).then(data=>{
|
|
if (data.code == 0) {
|
|
this.viewData = data.data.xhd;
|
|
this.bmTableData = data.data.cyry;
|
|
this.hjTableData = data.data.hj;
|
|
this.gzryListTableData = data.data.gzry;
|
|
//this.infoDialogVisible = true;
|
|
this.isshow=false;
|
|
}
|
|
});
|
|
},
|
|
|
|
/*删除*/
|
|
deleteDo2(scope) {
|
|
|
|
|
|
this.$confirm("此操作将永久删除该活动, 是否继续?", "温馨提示", {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
callback(a, b) {
|
|
if ("confirm" == a) {
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/deleteDo", {id: scope.row.id}).then(data=>{
|
|
if (data.code == 0) {
|
|
vue.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
vue.pageData();
|
|
} else {
|
|
vue.$message({
|
|
message: data.msg,
|
|
type: 'error'
|
|
});
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
},
|
|
|
|
/*删除*/
|
|
deleteDo(scope) {
|
|
|
|
|
|
|
|
if (scope.row.hdkssj <= moment().format("YYYY-MM-DD")) {
|
|
this.$alert("此活动已开始,不能删除!", "温馨提示", {
|
|
type: 'error',
|
|
closeOnPressEscape: true,
|
|
closeOnClickModal: true,
|
|
});
|
|
return;
|
|
}
|
|
|
|
this.$confirm("此操作将永久删除该活动, 是否继续?", "温馨提示", {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
callback(a, b) {
|
|
if ("confirm" == a) {
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/deleteDo", {id: scope.row.id}).then(data=>{
|
|
if (data.code == 0) {
|
|
vue.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
vue.pageData();
|
|
} else {
|
|
vue.$message({
|
|
message: data.msg,
|
|
type: 'error'
|
|
});
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
},
|
|
|
|
/*修改参赛人员*/
|
|
openXgCsry(scope) {
|
|
var self = this;
|
|
self.temp = scope.row;
|
|
self.xgPageForm.id = scope.row.id;
|
|
self.csPageData();
|
|
},
|
|
csPageData() {
|
|
var self = this;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findCsry", self.xgPageForm, function (data) {
|
|
if (data.code == 0) {
|
|
self.xgTableData = data.data.csry.list;
|
|
self.xgPageForm.totalCount = data.data.csry.totalCount;
|
|
self.csryDialogVisible = true;
|
|
}
|
|
}, "json");
|
|
},
|
|
xgFlag() {
|
|
var self = this;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findCsry", self.xgPageForm, function (data) {
|
|
if (data.code == 0) {
|
|
self.xgTableData = data.data.csry.list;
|
|
self.xgPageForm.totalCount = data.data.csry.totalCount;
|
|
self.csryDialogVisible = true;
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
remoteMethod(obj) {
|
|
var self = this;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findXgRy", {obj: obj, hdid: self.temp.id}, function (data) {
|
|
if (data.code == 0) {
|
|
self.dbUsers = data.data;
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
userSelectionChange(val) {
|
|
this.userSelection = val;
|
|
},
|
|
|
|
addCsRy(command) {
|
|
var self = this;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/addCsRy", {
|
|
hdid: self.temp.id,
|
|
users: self.selUsers.toString(),
|
|
rysf: command
|
|
}, function (data) {
|
|
if (data.code == 0) {
|
|
self.$message({
|
|
message: "添加成功!",
|
|
type: 'success'
|
|
});
|
|
self.selUsers = [];
|
|
self.xgFlag();
|
|
self.pageData();
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
removeCsRy() {
|
|
var self = this;
|
|
var array = new Array();
|
|
for (var i = 0; i < self.userSelection.length; i++) {
|
|
array.push(self.userSelection[i].id);
|
|
}
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/removeCsRy", {
|
|
hdid: self.temp.id,
|
|
users: array.toString()
|
|
}, function (data) {
|
|
if (data.code == 0) {
|
|
self.$message({
|
|
message: "移除成功!",
|
|
type: 'success'
|
|
});
|
|
self.selUsers = [];
|
|
self.xgFlag();
|
|
self.pageData();
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
openGzRy(scope) {
|
|
var self = this;
|
|
self.temp = scope.row;
|
|
self.multipleSelection = [];
|
|
self.gzryPageForm.id = scope.row.id;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findGzryUser", self.gzryPageForm, function (data) {
|
|
if (data.code == 0) {
|
|
self.gzryTableData = data.data.list;
|
|
self.gzryPageForm.totalCount = data.data.totalCount;
|
|
self.active = "1";
|
|
self.gzryDialogVisible = true;
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
gzryPageData() {
|
|
var self = this;
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findGzryUser", self.gzryPageForm, function (data) {
|
|
if (data.code == 0) {
|
|
self.gzryTableData = data.data.list;
|
|
self.gzryPageForm.totalCount = data.data.totalCount;
|
|
self.active = "1";
|
|
self.gzryDialogVisible = true;
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
rowKey(row) {
|
|
var self = this;
|
|
return row.id;
|
|
},
|
|
|
|
doGgrySearch() {
|
|
this.gzryPageData();
|
|
},
|
|
|
|
changeFun(val) {
|
|
this.multipleSelection = val;
|
|
},
|
|
|
|
gzryDo() {
|
|
var self = this;
|
|
if (self.multipleSelection.length == 0) {
|
|
self.$message({
|
|
message: "您还没有选择工作人员!",
|
|
type: 'error'
|
|
});
|
|
return;
|
|
}
|
|
for (var i = 0; i < self.multipleSelection.length; i++) {
|
|
if (self.multipleSelection[i].rysf == null || self.multipleSelection[i].rysf == "") {
|
|
self.$message({
|
|
message: "有人员身份信息尚未填写!",
|
|
type: 'error'
|
|
});
|
|
return;
|
|
}
|
|
}
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/gzryDo", {
|
|
data: JSON.stringify(self.multipleSelection),
|
|
hdid: self.temp.id
|
|
}, function (data) {
|
|
if (data.code == 0) {
|
|
self.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
self.pageData();
|
|
self.multipleSelection = [];
|
|
setTimeout(function () {
|
|
self.$refs.gzryTable.clearSelection();
|
|
}, 500)
|
|
self.gzryDialogVisible = false;
|
|
}
|
|
}, "json");
|
|
},
|
|
|
|
jshd(scope) {
|
|
var self = this;
|
|
self.$confirm("您是否要结束此活动?", "温馨提示", {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
callback(a, b) {
|
|
if ("confirm" == a) {
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/jshd", {
|
|
id: scope.row.id,
|
|
hdjssj: moment().format("YYYY-MM-DD HH:mm:ss"),
|
|
sdjs: "1"
|
|
}, function (data) {
|
|
if (data.code == 0) {
|
|
self.$message({
|
|
message: data.msg,
|
|
type: 'success'
|
|
});
|
|
self.pageData();
|
|
}
|
|
}, "json");
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
},
|
|
created() {
|
|
this.pageData();
|
|
},
|
|
watch: {
|
|
"formData.hdlxid"(obj) {
|
|
var self = this;
|
|
if (obj != "" && obj != null && obj != "undefined") {
|
|
self.formData.hdxmid = "";
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findHdXm", {id: obj}, function (data) {
|
|
if (data.code == 0) {
|
|
self.hdxmOptions = data.data;
|
|
self.formData.hdxmid = data.data[0].id;
|
|
}
|
|
}, "json");
|
|
}
|
|
},
|
|
"editFormData.hdlxid"(obj) {
|
|
var self = this;
|
|
if (obj != "" && obj != null && obj != "undefined") {
|
|
self.editFormData.hdxmid = "";
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findHdXm", {id: obj}, function (data) {
|
|
if (data.code == 0) {
|
|
self.hdxmOptions = data.data;
|
|
var flag = 0;
|
|
for (var i = 0; i < data.data.length; i++) {
|
|
if (data.data[i].id == self.editFlag[2]) {
|
|
flag = 1;
|
|
break;
|
|
} else {
|
|
flag = 2;
|
|
}
|
|
}
|
|
if (flag == 2) {
|
|
self.editFormData.hdxmid = data.data[0].id;
|
|
} else {
|
|
self.editFormData.hdxmid = self.editFlag[2];
|
|
}
|
|
}
|
|
}, "json");
|
|
}
|
|
},
|
|
"pageForm.hdlx"(obj) {
|
|
var self = this;
|
|
if (obj != "" && obj != null && obj != "undefined") {
|
|
self.pageForm.hdxm = "";
|
|
$.post(base + "/platform/hd/xhdgl/xhdxxgl/findHdXm", {id: obj}, function (data) {
|
|
if (data.code == 0) {
|
|
self.queryHdxm = data.data;
|
|
console.log(data.data)
|
|
self.pageForm.hdxm = data.data[0].id;
|
|
}
|
|
}, "json");
|
|
}
|
|
},
|
|
"formData.jsfs"(obj) {
|
|
if (obj == "竞赛类") {
|
|
$(".js").show();
|
|
$(".fjs").hide();
|
|
} else if (obj == "非竞赛类") {
|
|
$(".js").hide();
|
|
$(".fjs").show();
|
|
} else if (obj == "" || obj == null) {
|
|
$(".js").hide();
|
|
$(".fjs").hide();
|
|
}
|
|
},
|
|
"formData.bmfs"(obj) {
|
|
var self = this;
|
|
if (obj == "名额分配") {
|
|
self.formData.zhfs = "普通组";
|
|
self.zhfsDis = true;
|
|
} else {
|
|
self.formData.zhfs = "";
|
|
self.zhfsDis = false;
|
|
}
|
|
},
|
|
"editFormData.bmfs"(obj) {
|
|
var self = this;
|
|
if (obj == "名额分配") {
|
|
self.editFormData.zhfs = "普通组";
|
|
self.editzhfsDis = true;
|
|
} else {
|
|
self.editzhfsDis = false;
|
|
}
|
|
},
|
|
"hdrs"(obj) {
|
|
var self = this;
|
|
self.meTableData.forEach(function (value) {
|
|
value.hdrs = obj;
|
|
});
|
|
},
|
|
"bmyq"(obj) {
|
|
var self = this;
|
|
self.meTableData.forEach(function (value) {
|
|
value.bmyq = obj;
|
|
});
|
|
},
|
|
"edithdrs"(obj) {
|
|
var self = this;
|
|
self.editmeTableData.forEach(function (value) {
|
|
value.hdrs = obj;
|
|
});
|
|
},
|
|
"editbmyq"(obj) {
|
|
var self = this;
|
|
self.editmeTableData.forEach(function (value) {
|
|
value.bmyq = obj;
|
|
});
|
|
},
|
|
},
|
|
})
|
|
|
|
</script>
|
|
|
|
<!--#
|
|
}
|
|
#--> |