# Conflicts:
#	src/main/resources/views/platform/zhgh/democratic/executiveCommittee/delegationOnePush/index.html
#	src/main/resources/views/platform/zhgh/democratic/executiveCommittee/delegationTwoPush/index.html
#	src/main/resources/views/platform/zhgh/democratic/executiveCommittee/executiveCommitteeMember/index.html
#	src/main/resources/views/platform/zhgh/democratic/executiveCommittee/preparatoryGroupPush/index.html
This commit is contained in:
=
2025-10-16 18:28:28 +08:00
202 changed files with 4116 additions and 923 deletions
@@ -141,10 +141,10 @@ const act = {
padding: 40px 0;
}
.section-act .section-act-title span:hover {
/*.section-act .section-act-title span:hover {
color: var(--color-primary);
cursor: pointer;
}
}*/
/deep/ .section-act .section-act-title span::before {
content: '';
@@ -2,7 +2,7 @@ const entry = {
template: /*language=HTML*/ `
<div class="entry-wrapper">
<div class="entry-title">
常用入口
<span>常用入口</span>
</div>
<div class="entry-container">
@@ -144,6 +144,27 @@ const entry = {
padding: 40px 0;
}
/deep/ .entry-title span::before {
content: '';
width: 24px;
height: 11px;
background: url(https://www.ncu.edu.cn/images/titl.svg) no-repeat center;
background-size: 24px 11px;
display: inline-block;
margin-right: 0;
vertical-align: middle;
}
/deep/ .entry-title span::after {
content: '';
width: 24px;
height: 11px;
background: url(https://www.ncu.edu.cn/images/titr.svg) no-repeat center;
background-size: 24px 11px;
display: inline-block;
margin-left: 0;
vertical-align: middle;
}
.entry-container {
width: 80%;
@@ -3,11 +3,11 @@ const jcdt = {
<div class="jcdt-wrapper">
<div class="jcdt-container">
<div class="jcdt-title">
基层动态
<span>基层动态</span>
</div>
<div class="jcdt-content">
<div class="jcdt-list">
<div class="jcdt-item" v-for="item in list" :key="item.title">
<div class="jcdt-item" v-for="item in list" :key="item.title" @click="onLink(item)">
<div class="date">{{item.date}}</div>
<div class="title">{{item.title}}</div>
<div class="image">
@@ -29,7 +29,12 @@ const jcdt = {
default: []
}
},
methods: {},
methods: {
onLink(item) {
if(!item.url) return
window.open(item.url)
},
},
style: /*language=CSS*/ `
.jcdt-wrapper {
width: 100%;
@@ -54,6 +59,28 @@ const jcdt = {
text-align: center;
padding: 40px 0;
}
/deep/ .jcdt-container .jcdt-title span::before {
content: '';
width: 24px;
height: 11px;
background: url(https://www.ncu.edu.cn/images/titl.svg) no-repeat center;
background-size: 24px 11px;
display: inline-block;
margin-right: 0;
vertical-align: middle;
}
/deep/ .jcdt-container .jcdt-title span::after {
content: '';
width: 24px;
height: 11px;
background: url(https://www.ncu.edu.cn/images/titr.svg) no-repeat center;
background-size: 24px 11px;
display: inline-block;
margin-left: 0;
vertical-align: middle;
}
.jcdt-list {
display: grid;
@@ -48,12 +48,12 @@ var assigneeForm = {
</div>
<!-- 用户选择弹窗 -->
<el-dialog title="选择参与者" :visible.sync="dialogVisible" width="80%" append-to-body>
<el-dialog title="选择参与者" :visible.sync="dialogVisible" width="80%" append-to-body top="20px">
<div style="display: flex;">
<!-- 左侧表格 -->
<div style="flex: 3; margin-right: 10px; overflow: auto;">
<div style="margin-bottom: 10px;">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入关键字搜索" style="width: 200px; margin-right: 10px;"></el-input>
<el-input v-model="pageForm.searchKeyword" placeholder="请输入姓名或工号搜索" style="width: 200px; margin-right: 10px;"></el-input>
<el-button type="primary" @click="searchUsers">搜索</el-button>
</div>
<el-table
@@ -38,7 +38,7 @@ layout("/layouts/platform.html"){
<el-input placeholder="请输入内容" clearable v-model="pageForm.loginName" style="width: 100%"></el-input>
</search-item>
<search-item label="所属单位">
<el-select v-model="pageForm.unitName" clearable filterable>
<el-select placeholder="请选择所属单位" v-model="pageForm.unitName" clearable filterable>
<el-option v-for="item in unitNameOptions" :key="item" :label="item" :value="item"></el-option>
</el-select>
</search-item>
@@ -7,11 +7,11 @@ layout("/layouts/platform.html"){
width: 100%;
margin-bottom: 10px;
}
.pullTimeRadioGroup .el-radio.is-bordered + .el-radio.is-bordered {
margin-left: 0;
}
.condition-builder {
border: 1px solid #dcdfe6;
border-radius: 4px;
@@ -32,7 +32,7 @@ layout("/layouts/platform.html"){
<el-input placeholder="请输入内容" clearable v-model="pageForm.loginName" style="width: 100%"></el-input>
</search-item>
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" clearable style="width: 100%">
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId" clearable style="width: 100%">
<el-option v-for="i in unitOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
@@ -47,7 +47,7 @@ layout("/layouts/platform.html"){
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool label="系统当前用户数据">
<el-button type="primary" size="mini" @click="updateDataDict" icon="el-icon-refresh">更新【码表】数据</el-button>
@@ -87,11 +87,11 @@ layout("/layouts/platform.html"){
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
</template>
<template #view>
<member-all-change-info ref="memberAllChangeInfoRef"></member-all-change-info>
</template>
</guava>
<el-dialog title="选择数据源" :visible.sync="updateDialog" width="70%">
<el-timeline>
@@ -105,7 +105,7 @@ layout("/layouts/platform.html"){
</el-radio>
</el-radio-group>
</el-timeline-item>
<el-timeline-item timestamp="更新方式" placement="top">
<el-radio-group class="checkGroup" style="width: 100%" v-model="updateFromData.updateMode" size="small">
<el-row>
@@ -114,10 +114,10 @@ layout("/layouts/platform.html"){
</el-row>
</el-radio-group>
</el-timeline-item>
<el-timeline-item timestamp="高级条件筛选" placement="top">
<el-switch v-model="enableAdvancedConditions" active-text="启用高级条件"></el-switch>
<div v-if="enableAdvancedConditions" class="condition-builder">
<!-- 条件构建器组件 -->
<condition-group :group="updateFromData.conditionGroup" :field_options="fieldOptions" @remove="removeRootGroup"></condition-group>
@@ -133,7 +133,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../../../zhgh/staffmanage/member/change/common/memberAllChangeInfo.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -193,7 +193,7 @@ layout("/layouts/platform.html"){
}
})
})
},
// 更新码表数据
updateDataDict() {
@@ -262,12 +262,12 @@ layout("/layouts/platform.html"){
this.$message.warning("请选择更新方式")
return
}
// 如果未启用高级条件,则移除条件组
if (!this.enableAdvancedConditions) {
this.updateFromData.conditionGroup = null
}
this.$confirm("确定要更新数据吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
@@ -4,8 +4,8 @@ layout("/layouts/platform.html"){
<div id="app" v-cloak>
<el-card shadow="never">
<search @search="doSearch">
<search-item label="单位">
<el-select clearable filterable placeholder="请选择" style="width: 100%" v-model="pageForm.searchUnit" @change="doSearch">
<search-item label="所属单位">
<el-select clearable filterable placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.searchUnit" @change="doSearch">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in units"></el-option>
</el-select>
<!-- <el-cascader :props="props" v-model="parentUnitSearch" placeholder="请选择单位" clearable filterable></el-cascader>-->
@@ -298,7 +298,7 @@ layout("/layouts/platform.html"){
})
}
},
units: []
}
},
@@ -171,7 +171,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</div>
@@ -14,25 +14,25 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="申请人">
<el-input placeholder="请输入申请人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, BRANCH_UNION_ADMIN')">
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -41,7 +41,7 @@ layout("/layouts/platform.html"){
</template>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -49,12 +49,12 @@ layout("/layouts/platform.html"){
<el-radio-button label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
type="index" width="60px"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -142,7 +142,7 @@ layout("/layouts/platform.html"){
unions: [],
units: [],
clubs: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -189,7 +189,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -23,7 +23,7 @@ layout("/layouts/platform.html"){
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -32,7 +32,7 @@ layout("/layouts/platform.html"){
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -14,25 +14,25 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="申请人">
<el-input placeholder="请输入申请人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, BRANCH_UNION_ADMIN')">
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -41,7 +41,7 @@ layout("/layouts/platform.html"){
</template>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -49,12 +49,12 @@ layout("/layouts/platform.html"){
<el-radio-button label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
type="index" width="60px"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -142,7 +142,7 @@ layout("/layouts/platform.html"){
unions: [],
units: [],
clubs: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -189,7 +189,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -14,25 +14,25 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="申请人">
<el-input placeholder="请输入申请人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, BRANCH_UNION_ADMIN')">
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -41,7 +41,7 @@ layout("/layouts/platform.html"){
</template>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -49,12 +49,12 @@ layout("/layouts/platform.html"){
<el-radio-button label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
type="index" width="60px"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -142,7 +142,7 @@ layout("/layouts/platform.html"){
unions: [],
units: [],
clubs: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -189,7 +189,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -197,7 +197,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
@@ -14,25 +14,25 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="申请人">
<el-input placeholder="请输入申请人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, BRANCH_UNION_ADMIN')">
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -41,7 +41,7 @@ layout("/layouts/platform.html"){
</template>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -49,12 +49,12 @@ layout("/layouts/platform.html"){
<el-radio-button label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
type="index" width="60px"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -142,7 +142,7 @@ layout("/layouts/platform.html"){
unions: [],
units: [],
clubs: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -189,7 +189,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -23,7 +23,7 @@ layout("/layouts/platform.html"){
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -32,7 +32,7 @@ layout("/layouts/platform.html"){
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -14,25 +14,25 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="申请人">
<el-input placeholder="请输入申请人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, BRANCH_UNION_ADMIN')">
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -41,7 +41,7 @@ layout("/layouts/platform.html"){
</template>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -49,12 +49,12 @@ layout("/layouts/platform.html"){
<el-radio-button label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
type="index" width="60px"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -142,7 +142,7 @@ layout("/layouts/platform.html"){
unions: [],
units: [],
clubs: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -189,7 +189,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -14,25 +14,25 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="申请人">
<el-input placeholder="请输入申请人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, BRANCH_UNION_ADMIN')">
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -41,7 +41,7 @@ layout("/layouts/platform.html"){
</template>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -49,12 +49,12 @@ layout("/layouts/platform.html"){
<el-radio-button label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder"
ref="table" row-key="id" style="width: 100%">
<el-table-column :index="indexMethod" header-align="center" label="序号"
type="index" width="60px"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -142,7 +142,7 @@ layout("/layouts/platform.html"){
unions: [],
units: [],
clubs: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -189,7 +189,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -19,7 +19,7 @@ const signForm = {
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="所单位" prop="unitName">
<el-form-item label="所单位" prop="unitName">
<el-input readonly v-model="formData.unitName"></el-input>
</el-form-item>
</el-col>
@@ -7,13 +7,13 @@ layout("/layouts/platform.html"){
<div id="app" v-cloak>
<guava>
<el-card shadow="never">
<search @search="doSearch">
<search-item label="姓名工号">
<el-input placeholder="请输入关键字查询" v-model="pageForm.keyWord"></el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" clearable filterable placeholder="请选择院级工会"
<el-select v-model="pageForm.unionId" clearable filterable placeholder="请选择所属工会"
style="width: 100%">
<el-option
v-for="item in unionList"
@@ -251,7 +251,7 @@ layout("/layouts/platform.html"){
},
async created() {
this.pageData();
const hasAdminRole = this.$auth.hasRoleOr("SYSADMIN, SCHOOL_UNION_ADMIN")
if (hasAdminRole) {
this.unionList = await this.$businessTool.listUnion()
@@ -322,9 +322,9 @@ var ACTIVITY_SPORTS_APPLY_USER = {
<el-input maxlength="30" placeholder="请填写身份证号" type="text"
v-model="formData.idcard"></el-input>
</el-form-item>
<el-form-item label="所单位" prop="unitId"
:rules="{required: true, message: '请选择所单位', trigger: 'blur'}">
<el-select clearable filterable placeholder="请选择所单位" style="width: 100%"
<el-form-item label="所单位" prop="unitId"
:rules="{required: true, message: '请选择所单位', trigger: 'blur'}">
<el-select clearable filterable placeholder="请选择所单位" style="width: 100%"
v-model="formData.unitId">
<el-option
:key="item.id"
@@ -279,8 +279,8 @@ layout("/layouts/platform.html"){
v-model="leaderData.userId"
></user-select>
</el-form-item>
<el-form-item label="所单位" prop="unitId">
<el-select clearable filterable placeholder="请选择所单位" style="width: 100%"
<el-form-item label="所单位" prop="unitId">
<el-select clearable filterable placeholder="请选择所单位" style="width: 100%"
v-model="leaderData.unitId">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unitOptions"></el-option>
@@ -304,8 +304,8 @@ layout("/layouts/platform.html"){
v-model="coachData.userId"
></user-select>
</el-form-item>
<el-form-item label="所单位" prop="unitId">
<el-select clearable filterable placeholder="请选择所单位" style="width: 100%"
<el-form-item label="所单位" prop="unitId">
<el-select clearable filterable placeholder="请选择所单位" style="width: 100%"
v-model="coachData.unitId">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unitOptions"></el-option>
@@ -17,7 +17,7 @@ const applyForm = {
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="所单位" prop="unitName">
<el-form-item label="所单位" prop="unitName">
<el-input readonly v-model="formData.unitName"></el-input>
</el-form-item>
</el-col>
@@ -34,12 +34,12 @@ layout("/layouts/platform.html"){
<el-input v-model="pageForm.searchKeyword" clearable placeholder="请输入内容"></el-input>
</search-item>
<search-item label="所属工会">
<el-select clearable filterable placeholder="工会" v-model="pageForm.unionId" @change="pageForm.unitId=null;listUnit();">
<el-select clearable filterable placeholder="请选择所属工会" v-model="pageForm.unionId" @change="pageForm.unitId=null;listUnit();">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unionOptions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="提案单位" v-model="pageForm.unitId">
<el-select clearable filterable placeholder="请选择所属单位" v-model="pageForm.unitId">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitOptions"></el-option>
</el-select>
</search-item>
@@ -41,13 +41,13 @@ layout("/layouts/platform.html"){
</search-item>
<search-item label="所属工会">
<el-select clearable filterable placeholder="请选择工会" style="width: 100%" v-model="pageForm.unionId">
<el-select clearable filterable placeholder="请选择所属工会" style="width: 100%" v-model="pageForm.unionId">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unionList"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable multiple placeholder="请选择单位" style="width: 100%" v-model="pageForm.unitIds">
<el-select clearable filterable multiple placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitIds">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitList"></el-option>
</el-select>
</search-item>
@@ -48,13 +48,13 @@ layout("/layouts/platform.html"){
</search-item>
<search-item label="所属工会">
<el-select clearable filterable placeholder="请选择工会" style="width: 100%" v-model="pageForm.unionId">
<el-select clearable filterable placeholder="请选择所属工会" style="width: 100%" v-model="pageForm.unionId">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unionList"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable multiple placeholder="请选择单位" style="width: 100%" v-model="pageForm.unitIds">
<el-select clearable filterable multiple placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitIds">
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitList"></el-option>
</el-select>
</search-item>
@@ -34,9 +34,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -44,9 +44,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -33,9 +33,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -43,9 +43,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -241,7 +241,10 @@ const contentForm = {
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$message.success('删除成功');
this.$axios.post('/platform/edu/chapters/delete', {id}).then(res => {
this.$message.success('删除成功')
this.listChapter()
})
});
},
@@ -38,14 +38,14 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%"
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%"
@change="flushUnits" @clear="flushUnits">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
<el-select placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
filterable>
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"></el-option>
</el-select>
@@ -38,14 +38,14 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%"
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%"
@change="flushUnits" @clear="flushUnits">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
<el-select placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
filterable>
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"></el-option>
</el-select>
@@ -18,9 +18,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -28,9 +28,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -0,0 +1,128 @@
<!--#
layout("/layouts/platform.html"){
#-->
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询"
clearable></el-input>
</search-item>
<search-item label="分工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择分工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
:label="item.name"
></el-option>
</el-select>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool>
<el-button size="small" type="primary" @click="batchJoin">批量设置</el-button>
<el-button size="small" type="primary" @click="showImportDialog = true">批量导入</el-button>
</table-tool>
<el-table :data="tableData" ref="tableRef" row-key="id" @sort-change="pageOrder" style="width: 100%">
<el-table-column type="selection" fixed="left"></el-table-column>
<el-table-column label="序号" width="50" type="index" :index="indexMethod"
fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
<template v-if="column.prop === 'instanceState'" scope="{row}">
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
size="small"></enum-tag>
</template>
</el-table-column>
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
</guava>
<excel-import
ref="excelImportRef"
url="/platform/fundMember/batchJoin/batchImport"
template_url="/platform/fundMember/batchJoin/downloadTemplate"
:visible.sync="showImportDialog"
title="导入基金会员数据"
width="700px"
@import-success="doSearch"
:extra_params="{}"
></excel-import>
</div>
<script>
<!--#include('../info.js'){}#-->
new Vue({
el: "#app",
store,
mixins: [initTableMixins],
components: {
"fund-member-info": fundMemberInfo
},
data() {
return {
tableColumns: [
{label: "工号", prop: "loginname"},
{label: "姓名", prop: "username"},
{label: "性别", prop: "sex"},
{label: "出生年月", prop: "birthday"},
{label: "在职状态", prop: "userState"},
{label: "所属单位", prop: "unitName"},
{label: "所属工会", prop: "unionName"},
],
unionOptions: [],
pageForm: {
approval: false
},
formData: {},
showImportDialog: false
}
},
methods: {
batchJoin() {
const selection = this.$refs.tableRef.selection
if (selection.length === 0) {
this.$message.error("请选择要批量加入的人员")
return
}
this.$confirm("您确定要将勾选的用户批量加入基金会员吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post('/platform/fundMember/batchJoin/confirm', {
loginNames: JSON.stringify(selection.map(item => item.loginname))
}).then(res => {
if (res.code === 0) {
this.$message.success("批量加入成功")
this.doSearch()
}
})
})
}
},
created() {
this.$businessTool.listUnion().then((res) => (this.unionOptions = res))
this.pageData()
}
})
</script>
<!--#
}
#-->
@@ -9,8 +9,8 @@ layout("/layouts/platform.html"){
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
style="width: 100%"></el-date-picker>
</search-item>
<search-item label="标题">
<el-input v-model="pageForm.searchKeyword" placeholder="标题" clearable></el-input>
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询" clearable></el-input>
</search-item>
</search>
</el-card>
@@ -25,6 +25,13 @@ layout("/layouts/platform.html"){
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
<el-table-column prop="loginName" label="工号"></el-table-column>
<el-table-column prop="userName" label="姓名"></el-table-column>
<el-table-column prop="isJoin" label="申请类型">
<template slot-scope="{row}">
<el-tag v-if="row.isJoin" size="small">加入</el-tag>
<el-tag v-else size="small" type="danger">退出</el-tag>
</template>
</el-table-column>
<el-table-column prop="submitTime" label="申请时间"></el-table-column>
<el-table-column prop="curTaskName" label="当前节点"></el-table-column>
<el-table-column prop="instanceState" label="流程状态">
<template slot-scope="{row}">
@@ -0,0 +1,122 @@
<!--#
layout("/layouts/platform.html"){
#-->
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="年度">
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
style="width: 100%"></el-date-picker>
</search-item>
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询"
clearable></el-input>
</search-item>
<search-item label="分工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择分工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
:label="item.name"
></el-option>
</el-select>
</search-item>
<search-item label="变更类型">
<el-select v-model="pageForm.isJoin" style="width: 100%">
<el-option label="全部" :value="null"></el-option>
<el-option label="加入" :value="true"></el-option>
<el-option label="退出" :value="false"></el-option>
</el-select>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool :columns.sync="tableColumns">
</table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%">
<el-table-column label="序号" width="50" type="index" :index="indexMethod"
fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
<template v-if="column.prop === 'isJoin'" scope="{row}">
<el-tag v-if="row.isJoin" size="small">加入</el-tag>
<el-tag v-else size="small" type="danger">退出</el-tag>
</template>
</el-table-column>
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
</guava>
</div>
<script>
<!--#include('../info.js'){}#-->
new Vue({
el: "#app",
store,
mixins: [initTableMixins],
components: {
"fund-member-info": fundMemberInfo
},
data() {
return {
tableColumns: [
{label: "工号", prop: "loginName"},
{label: "姓名", prop: "userName"},
{label: "性别", prop: "sex"},
{label: "出生年月", prop: "birthday"},
{label: "参加工作日期", prop: "joinWorkTime"},
{label: "退休日期", prop: "retireTime"},
{label: "所属工会", prop: "unionName"},
{label: "变更类型", prop: "isJoin"},
{label: "变更来源", prop: "changeOrigin"},
{label: "变更时间", prop: "changeTime"}
],
unionOptions: [],
pageForm: {
approval: false,
isJoin: null
},
formData: {},
showApprovalForm: false
}
},
methods: {
openView(row) {
this.$refs.guava.edit(() => {
this.showApprovalForm = false
this.$refs.fundMemberInfoRef.onOpen(row)
})
},
exportExcel() {
if (!this.pageForm.year) {
this.$message.error('请选择年度再导出')
return
}
this.$downLoad('/platform/fundMember/query/exportExcel', {
year: this.pageForm.year,
unionId: this.pageForm.unionId
})
}
},
created() {
this.$businessTool.listUnion().then((res) => (this.unionOptions = res))
this.pageData()
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,110 @@
<!--#
layout("/layouts/platform.html"){
#-->
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="年度">
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
style="width: 100%"></el-date-picker>
</search-item>
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询"
clearable></el-input>
</search-item>
<search-item label="分工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择分工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
:label="item.name"
></el-option>
</el-select>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool>
</table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%">
<el-table-column label="序号" width="50" type="index" :index="indexMethod"
fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
</el-table-column>
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
</template>
</guava>
</div>
<script>
<!--#include('../info.js'){}#-->
new Vue({
el: "#app",
store,
mixins: [initTableMixins],
components: {
"fund-member-info": fundMemberInfo
},
data() {
return {
tableColumns: [
{label: "年度", prop: "year"},
{label: "工号", prop: "loginName"},
{label: "姓名", prop: "userName"},
{label: "性别", prop: "sex"},
{label: "出生年月", prop: "birthday"},
{label: "在职状态", prop: "userState"},
{label: "所属工会", prop: "unionName"},
{label: "加入时间", prop: "joinTime"},
],
unionOptions: [],
pageForm: {
approval: false
},
formData: {},
}
},
methods: {
openView(row) {
this.$refs.guava.edit(() => {
this.$refs.fundMemberInfoRef.onOpen(row)
})
},
exportExcel() {
if (!this.pageForm.year) {
this.$message.error('请选择年度再导出')
return
}
this.$downLoad('/platform/fundMember/query/exportExcel', {
year: this.pageForm.year,
unionId: this.pageForm.unionId
})
}
},
created() {
this.$businessTool.listUnion().then((res) => (this.unionOptions = res))
this.pageData()
}
})
</script>
<!--#
}
#-->
@@ -20,6 +20,13 @@ layout("/layouts/platform.html"){
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
<el-table-column prop="loginName" label="工号"></el-table-column>
<el-table-column prop="userName" label="姓名"></el-table-column>
<el-table-column prop="isJoin" label="申请类型">
<template slot-scope="{row}">
<el-tag v-if="row.isJoin" size="small">加入</el-tag>
<el-tag v-else size="small" type="danger">退出</el-tag>
</template>
</el-table-column>
<el-table-column prop="submitTime" label="申请时间"></el-table-column>
<el-table-column prop="taskName" label="当前节点"></el-table-column>
<el-table-column prop="instanceState" label="流程状态">
<template slot-scope="{row}">
@@ -37,7 +44,8 @@ layout("/layouts/platform.html"){
</el-button>
<el-button v-if="row.canRevoke" @click="onRevoke(row)" size="mini" type="danger">撤回
</el-button>
<el-button @click="onDelete(row.id)" v-if="row.taskKey === 'startTask' || !row.instanceId"
<!-- v-if="row.taskKey === 'startTask' || !row.instanceId"-->
<el-button @click="onDelete(row.id)"
size="mini" type="danger">删除
</el-button>
</template>
@@ -0,0 +1,171 @@
<!--#
layout("/layouts/platform.html"){
#-->
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="年度">
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
style="width: 100%"></el-date-picker>
</search-item>
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询"
clearable></el-input>
</search-item>
<search-item label="分工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择分工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
:label="item.name"
></el-option>
</el-select>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool>
<el-button size="small" type="primary" @click="backup">备份会员名单</el-button>
<el-button size="small" type="primary" @click="exportExcel">导出登记汇总表</el-button>
<el-button size="small" type="primary" @click="exportNewMemberExcel">导出本年新会员名单</el-button>
</table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%">
<el-table-column label="序号" width="50" type="index" :index="indexMethod"
fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
<template v-if="column.prop === 'instanceState'" scope="{row}">
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
size="small"></enum-tag>
</template>
<template v-else-if="column.prop === 'isJoin'" scope="{row}">
<el-tag v-if="row.isJoin" size="small">加入</el-tag>
<el-tag v-else size="small" type="danger">退出</el-tag>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" width="200px">
<template slot-scope="{row}">
<el-button @click="openView(row)" size="mini" type="primary">查看</el-button>
<el-button @click="onQuit(row)" size="mini" type="danger">退会</el-button>
</template>
</el-table-column>
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
</template>
</guava>
</div>
<script>
<!--#include('../info.js'){}#-->
new Vue({
el: "#app",
store,
mixins: [initTableMixins],
components: {
"fund-member-info": fundMemberInfo
},
data() {
return {
tableColumns: [
{label: "工号", prop: "loginName"},
{label: "姓名", prop: "userName"},
{label: "性别", prop: "sex"},
{label: "出生年月", prop: "birthday"},
{label: "在职状态", prop: "userState"},
{label: "所属工会", prop: "unionName"},
{label: "加入时间", prop: "joinTime"},
],
unionOptions: [],
pageForm: {
approval: false
},
formData: {},
}
},
methods: {
openView(row) {
this.$refs.guava.edit(() => {
this.$refs.fundMemberInfoRef.onOpen(row)
})
},
// 退会
onQuit(row) {
this.$confirm('您确定要将' + row.userName + '退会吗?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.$axios.post('/platform/fundMember/query/quit', {
loginName: row.loginName
}).then((res) => {
if (res.code === 0) {
this.$message.success('退会成功')
this.pageData()
}
})
})
},
// 备份会员
backup() {
// 此处需要选择年份
this.$prompt('请输入备份会员至哪个年度', {
confirmButtonText: '确定',
cancelButtonText: '取消',
inputPattern: /^[0-9]{4}$/,
inputErrorMessage: '请输入4位数的年份'
}).then(({value}) => {
this.$axios.post('/platform/fundMember/query/backup', {
year: value
}).then((res) => {
if (res.code === 0) {
this.$message.success('备份成功')
}
})
})
},
// 导出登记汇总表
exportExcel() {
if (!this.pageForm.year) {
this.$message.error('请选择年度再导出')
return
}
this.$downLoad('/platform/fundMember/query/exportExcel', {
year: this.pageForm.year,
unionId: this.pageForm.unionId
})
},
// 导出本年新会员名单
exportNewMemberExcel(){
this.$downLoad('/platform/fundMember/query/exportNewMemberExcel')
}
},
created() {
this.$businessTool.listUnion().then((res) => (this.unionOptions = res))
this.pageData()
}
})
</script>
<!--#
}
#-->
@@ -25,6 +25,14 @@ layout("/layouts/platform.html"){
<el-table-column type="index" width="50px" label="序号" :index="indexMethod"></el-table-column>
<el-table-column prop="loginName" label="工号"></el-table-column>
<el-table-column prop="userName" label="姓名"></el-table-column>
<el-table-column prop="unionName" label="所属工会"></el-table-column>
<el-table-column prop="isJoin" label="申请类型">
<template slot-scope="{row}">
<el-tag v-if="row.isJoin" size="small">加入</el-tag>
<el-tag v-else size="small" type="danger">退出</el-tag>
</template>
</el-table-column>
<el-table-column prop="submitTime" label="申请时间"></el-table-column>
<el-table-column prop="curTaskName" label="当前节点"></el-table-column>
<el-table-column prop="instanceState" label="流程状态">
<template slot-scope="{row}">
@@ -152,12 +152,13 @@ layout("/layouts/platform.html"){
message: '请输入正确的手机号码',
trigger: 'blur'
}],
homePhone: [{required: true, message: '请输入住宅号码', trigger: 'blur'},
homePhone: [
/*{required: true, message: '请输入住宅号码', trigger: 'blur'},
{
pattern: /^(0\d{2,3}-?)?\d{7,8}$/,
message: '请输入正确的住宅号码',
trigger: 'blur'
}
}*/
],
avatar: [{required: false, message: '请上传照片', trigger: 'blur'}]
},
@@ -234,13 +235,15 @@ layout("/layouts/platform.html"){
}
})
} else {
const {username, loginname, sex, birthday, mobile} = this.$store.state.user
const {username, loginname, sex, birthday, mobile, union} = this.$store.state.user
this.formData = {
userName: username,
loginName: loginname,
sex: sex,
birthday: birthday,
mobile: mobile
mobile: mobile,
unionId: union?.id,
unionName: union?.name
}
}
}
@@ -0,0 +1,166 @@
<!--#
layout("/layouts/platform.html"){
#-->
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="年度">
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
style="width: 100%"></el-date-picker>
</search-item>
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询"
clearable></el-input>
</search-item>
<search-item label="分工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择分工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
:label="item.name"
></el-option>
</el-select>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool>
<el-button size="small" type="primary" @click="showImportDialog = true">导入补助数据</el-button>
<el-button size="small" type="primary" @click="exportExcel">导出补助公示表</el-button>
</table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%" show-summary
:summary-method="getSummaries">
<el-table-column label="序号" width="50" type="index" :index="indexMethod"
fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
<template v-if="column.prop === 'instanceState'" scope="{row}">
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
size="small"></enum-tag>
</template>
</el-table-column>
<!-- <el-table-column label="操作" fixed="right" width="200px">-->
<!-- <template slot-scope="{row}">-->
<!-- <el-button @click="openView(row)" size="mini" type="primary">查看</el-button>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table>
</el-card>
<template #view>
</template>
</guava>
<excel-import
ref="excelImportRef"
url="/platform/fundSubsidy/query/importExcel"
template_url="/platform/fundSubsidy/query/downloadTemplate"
:visible.sync="showImportDialog"
title="导入数据"
width="700px"
@import-success="doSearch"
:extra_params="{}"
></excel-import>
</div>
<script>
new Vue({
el: "#app",
store,
mixins: [initTableMixins],
components: {},
data() {
return {
tableColumns: [
{label: "工号", prop: "loginName"},
{label: "姓名", prop: "userName"},
{label: "门诊费用", prop: "outpatientCost"},
{label: "住院费用", prop: "hospitalCost"},
{label: "合计", prop: "totalCost"},
{label: "不予补助金额", prop: "noSubsidyCost"},
{label: "门诊医保已报金额", prop: "outpatientMedicalInsuranceReportedCost"},
{label: "住院医保已报金额", prop: "hospitalMedicalInsuranceReportedCost"},
{label: "自费金额", prop: "selfCost"},
{label: "补助金额", prop: "subsidyCost"},
],
unionOptions: [],
pageForm: {},
showImportDialog: false
}
},
methods: {
pageData() {
this.tableLoading = true
this.$axios.post(loc() + "/pageData", this.pageForm).then((res) => {
this.tableLoading = false
if (res.code === 0) {
this.tableData = res.data
}
})
},
getSummaries(param) {
const {columns, data} = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = '合计';
}else if (index === 1) {
sums[index] = '';
}else if(index === columns.length - 1){
const values = data.map(item => Number(item[column.property]));
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] += ' 元';
} else {
sums[index] = 'N/A';
}
}
});
return sums;
},
openView(row) {
this.$refs.guava.edit(() => {
})
},
exportExcel() {
if (!this.pageForm.year) {
this.$message.error('请选择年度再导出')
return
}
this.$downLoad('/platform/fundSubsidy/query/exportExcel', {
year: this.pageForm.year,
unionId: this.pageForm.unionId
})
}
},
created() {
this.$businessTool.listUnion().then((res) => (this.unionOptions = res))
this.pageData()
}
})
</script>
<!--#
}
#-->
@@ -1,166 +0,0 @@
<!--#
layout("/layouts/platform.html"){
#-->
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="年度">
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
style="width: 100%"></el-date-picker>
</search-item>
<search-item label="工号/姓名">
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询" clearable></el-input>
</search-item>
</search>
</el-card>
<el-card shadow="never">
<table-tool></table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%">
<el-table-column label="序号" width="50" type="index" :index="indexMethod"
fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
<template v-if="column.prop === 'instanceState'" scope="{row}">
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
size="small"></enum-tag>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" width="300px">
<template slot-scope="{row}">
<el-button @click="openView(row)" size="mini" type="primary">查看</el-button>
<el-button v-if="row.taskState === 10" @click="openAudit(row)" size="mini" type="primary">审核
</el-button>
<el-button v-if="row.canRevoke" @click="onRevoke(row)" size="mini" type="danger">撤回
</el-button>
</template>
</el-table-column>
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<fund-member-info ref="fundMemberInfoRef">
<div v-if="showApprovalForm">
<div class="process-title">
{{formData.taskName}}
</div>
<el-form :model="formData" ref="formRef" :rules="formRules" label-width="0" label-suffix=""
class="flow-task-form">
<el-form-item label="审批意见" prop="tf_opinion"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<user-opinion-textarea v-model="formData.tf_opinion"></user-opinion-textarea>
</el-form-item>
</el-form>
<el-row type="flex" justify="end">
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
<el-button @click="handleTaskAction(6)" size="small" type="info">退回到发起人</el-button>
<el-button @click="handleTaskAction(2)" size="small" type="danger">拒绝申请</el-button>
<el-button @click="handleTaskAction(1)" size="small" type="primary">同意申请</el-button>
</el-row>
</div>
</fund-member-info>
</template>
</guava>
</div>
<script>
<!--#include('../info.js'){}#-->
new Vue({
el: "#app",
store,
mixins: [initTableMixins],
components: {
"fund-member-info": fundMemberInfo
},
data() {
return {
tableColumns: [
{label: "工号", prop: "loginName"},
{label: "姓名", prop: "userName"},
{label: "性别", prop: "sex"},
{label: "出生年月", prop: "birthday"},
{label: "当前节点", prop: "taskName"},
{label: "流程状态", prop: "instanceState"}
],
pageForm: {
approval: false
},
formData: {},
showApprovalForm: false
}
},
methods: {
openView(row) {
this.$refs.guava.edit(() => {
this.showApprovalForm = false
this.$refs.fundMemberInfoRef.onOpen(row)
})
},
openAudit(row) {
this.$refs.guava.edit(() => {
this.showApprovalForm = true
this.formData = {
processTaskId: row.taskId,
taskName: row.curTaskName
}
this.$refs.fundMemberInfoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$refs.formRef.validate(valid => {
if (!valid) return
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$axios.post("/flow/common/executeTask", {
data: JSON.stringify({
...this.formData,
submitType: val
})
}).then((res) => {
if (res.code === 0) {
this.$refs.guava.index()
this.$message.success(res.msg)
this.doSearch()
}
})
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "info"
}).then(() => {
this.$axios.post("/flow/common/revokeTask", {taskId: row.taskId}).then((res) => {
if (res.code === 0) {
this.$message.success(res.msg)
this.doSearch()
}
})
})
},
},
created() {
this.pageData()
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,158 @@
const CONDITION_STRUCTURE_DIALOG = {
template: /*language=HTML*/ `
<el-dialog
:close-on-click-modal="false"
:visible.sync="dialogVisible"
title="高级查询构造器"
width="50%"
>
<div class="process-title">过滤条件匹配</div>
<el-row :gutter="20">
<el-col :span="20">
<el-select v-model="formData.method" placeholder="请选择匹配方式" style="width: 100%">
<el-option label="AND(所有条件都要求匹配)" value="AND"></el-option>
<el-option label="OR(条件中的任意一个匹配)" value="OR"></el-option>
</el-select>
</el-col>
<el-col :span="4">
<el-button type="primary" icon="el-icon-plus" @click="formData.conditions.push({})">添加条件
</el-button>
</el-col>
</el-row>
<el-row :gutter="20" v-for="(cnd,idx) in formData.conditions" :key="idx" style="margin-top: 20px">
<el-col :span="2">
<el-tag>条件{{idx+1}}</el-tag>
</el-col>
<el-col :span="8">
<el-select v-model="cnd.field" placeholder="请选择字段" style="width: 100%"
@change="(v)=>fieldChange(v,cnd)">
<el-option
v-for="item in fields"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-col>
<el-col :span="4">
<el-select v-model="cnd.operational" placeholder="请选择" style="width: 100%">
<el-option
v-for="item in operationalOption"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-col>
<el-col :span="8">
<el-date-picker
v-if="cnd.fieldObj&&cnd.fieldObj.type=='date'"
v-model="cnd.value"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择日期" style="width: 100%">
</el-date-picker>
<el-select v-else-if="cnd.fieldObj&&cnd.fieldObj.type=='select'" v-model="cnd.value"
placeholder="请选择值"
filterable
style="width: 100%"
clearable>
<el-option
v-for="item in cnd.fieldObj.options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-input v-else v-model="cnd.value" clearable placeholder="请输入值"
style="width: 100%"></el-input>
</el-col>
<el-col :span="2">
<el-button type="danger" icon="el-icon-minus" @click="formData.conditions.splice(idx, 1)">
</el-button>
</el-col>
</el-row>
<span slot="footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="doSubmit"> </el-button>
</span>
</el-dialog>
`,
data() {
return {
dialogVisible: false,
formData: {
method: "",
conditions: []
},
fields: [
{
"label": "性别",
"value": "sex",
"type": "select",
"options": [{"value": "男", "label": "男"}, {"value": "女", "label": "女"}]
},
{
"label": "出生日期",
"value": "birthday",
"type": "date",
},
{
"label": "婚姻状况",
"value": "marriage",
"type": "select",
"options": [{"value": "未婚", "label": "未婚"}, {"value": "已婚", "label": "已婚"}]
}
],
operationalOption: [
{"label": "等于(=)", "value": "="},
{"label": "不等于(!=)", "value": "!="},
{"label": "小于(<)", "value": "<"},
{"label": "小于等于(<=)", "value": "<="},
{"label": "大于(>)", "value": ">"},
{"label": "大于等于(>=)", "value": ">="},
]
}
},
methods: {
async onOpen(formData) {
console.log(formData)
if (formData) {
this.formData = formData
}else{
this.formData = {
method: "",
conditions: []
}
}
this.dialogVisible = true
this.$forceUpdate()
},
fieldChange(val, cnd) {
this.$set(cnd, "fieldObj", this.fields.find(v => v.value === val))
this.$set(cnd, "value", null)
this.$forceUpdate()
},
doSubmit() {
if (!this.formData.method) {
this.$message.error("请选择匹配方式")
return
}
if (this.formData.conditions.length === 0) {
this.$message.error("请添加条件")
return
}
if (this.formData.conditions.some(v => !v.field || !v.operational || !v.value)) {
this.$message.error("请填写完整条件")
return
}
this.$emit("confirm", this.formData)
this.dialogVisible = false
}
}
}
@@ -51,7 +51,7 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" v-model="pageForm.unitId"
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId"
style="width: 100%;"
clearable
filterable>
@@ -146,14 +146,19 @@ layout("/layouts/platform.html"){
:label="item.optionName"></el-option>
</el-select>
</el-form-item>
<el-form-item label="院区"
prop="campus"
:rules="[{required:true,message:'请选择',trigger:['change','blur']}]">
<el-select v-model="editHealthCheckupData.campus" style="width: 100%">
<el-option v-for="item in campusOptions" :key="item.id" :value="item.id"
:label="item.campusName"></el-option>
</el-select>
<el-form-item label="备注"
prop="bz">
<el-input v-model="editHealthCheckupData.bz" type="textarea" rows="5"
placeholder="请输入备注"></el-input>
</el-form-item>
<!-- <el-form-item label="院区"
prop="campus"
:rules="[{required:true,message:'请选择',trigger:['change','blur']}]">
<el-select v-model="editHealthCheckupData.campus" style="width: 100%">
<el-option v-for="item in campusOptions" :key="item.id" :value="item.id"
:label="item.campusName"></el-option>
</el-select>
</el-form-item>-->
</el-form>
<el-row type="flex" justify="end">
<el-button @click="exportHealthCheckupDialog=false" type="primary" plain>取消</el-button>
@@ -197,10 +202,10 @@ layout("/layouts/platform.html"){
{prop: 'unionName', label: '所属工会', sortable: true},
{prop: 'unitName', label: '所属单位', sortable: true},
{prop: 'optionName', label: '所选套餐'},
{prop: 'campusName', label: '所选院区'},
{prop: 'selectTime', label: '选择时间', width: "160px"},
{prop: 'isAudit', label: '是否确认'},
{prop: 'auditTime', label: '确认时间'},
{prop: 'bz', label: '备注',width: "200px"},
],
exportHealthCheckupDialog: false,
editHealthCheckupData: {},
@@ -225,7 +230,7 @@ layout("/layouts/platform.html"){
this.notifyWarning("当前分工会没有名单,暂不需要提交")
return
}
const confirm = await this.$confirm(flag?'您确定名单都已核实,准确无误?':'您确定取消确认?', '提示', {
const confirm = await this.$confirm(flag ? '您确定名单都已核实,准确无误?' : '您确定取消确认?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
@@ -131,26 +131,7 @@ layout("/layouts/platform.html"){
</el-col>
<el-col :span="12">
<el-form-item prop="activityGroupId" label="可报名人员范围">
<div style="display: flex; justify-content: space-between">
<div style="width: 99%">
<el-select prop="activityGroupId" placeholder="参加人员范围"
v-model="formData.activityGroupId"
style="width: 99%;"
clearable
filterable>
<el-option v-for="item in activityGroupList"
:label="item.groupName"
:value="item.groupId"
:key="item.groupId"></el-option>
</el-select>
</div>
<div>
<el-button
@click="$refs.drawerUserScope.userScopeDialog = true"
type="primary">设置
</el-button>
</div>
</div>
<permission-group :value.sync="formData.activityGroupId"></permission-group>
</el-form-item>
</el-col>
<el-col :span="24">
@@ -163,79 +144,98 @@ layout("/layouts/platform.html"){
</el-col>
<el-col :span="24">
<el-form-item label="体检套餐" prop="healthCheckupProjectSubjects">
<el-card shadow="hover">
<el-card shadow="hover" v-for="(item,index) in formData.healthCheckupProjectSubjects"
:key="index">
<el-row :gutter="20">
<el-col :span="4">
医院名称:
<el-input v-model="item.optionName"></el-input>
</el-col>
<el-col :span="4">
排序:
<el-input v-model="item.optionSort"></el-input>
</el-col>
<!--<el-col :span="4">
封面图<file-upload :upload_number="1" :value.sync="item.imgUrl"
accept=".jpg,.jpeg,.png"
class="imgUrl"
upload_result_type="url"
complete_result upload_mode="file"></file-upload>
</el-col>-->
<el-col :span="4">
编辑说明:
<div>
<el-button type="primary" size="small"
@click="openDescRichText(item.description,index)">编辑说明
</el-button>
</div>
</el-col>
<el-col :span="2">
操作:
<div>
<el-button type="danger" size="small"
:disabled="formData.healthCheckupProjectSubjects.length===1"
@click="deleteSubject(item,index)">删除
</el-button>
</div>
</el-col>
</el-row>
<div class="s-options-list" style="margin-top: 10px;">
<el-table :data="formData.healthCheckupProjectSubjects" border>
<el-table-column
align="center"
header-align="center"
label="套餐名称">
<el-table :data="item.subjectMoneys" border size="small">
<el-table-column label="名称">
<template slot-scope="{row}">
<el-input v-model="row.optionName" autosize
<el-input v-model="row.subjectMoneyName" autosize
class="text-input"
data-type="option"
></el-input>
</template>
</el-table-column>
<el-table-column
align="center"
header-align="center"
label="排序">
<el-table-column label="金额">
<template slot-scope="{row}">
<el-input v-model="row.optionSort" autosize
<el-input v-model="row.money" autosize
class="text-input"
data-type="option"
></el-input>
</template>
</el-table-column>
<el-table-column
align="center"
header-align="center"
label="图片" width="130px">
<template slot-scope="{row,$index}">
<file-upload :upload_number="1" :value.sync="row.imgUrl"
accept=".jpg,.jpeg,.png"
class="imgUrl"
upload_result_type="url"
complete_result upload_mode="file"></file-upload>
</template>
</el-table-column>
<el-table-column align="center"
header-align="center"
label="说明">
<template slot-scope="{row,$index}">
<el-link type="primary"
@click="openDescRichText(row.description,$index)">
编辑说明
</el-link>
</template>
</el-table-column>
<el-table-column
align="center"
header-align="center"
label="操作"
width="100px">
<el-table-column label="操作" width="200px">
<template slot-scope="{row,$index}" slot="header">
<el-button size="mini" type="primary"
@click="item.subjectMoneys.push({
money:'',
subjectMoneyName:'',
marriage:'',
})">添加
</el-button>
</template>
<template slot-scope="{row,$index}">
<div class="option-delete">
<el-button circle
icon="el-icon-delete"
size="mini" type="danger"
@click="deleteRow(row,$index)"></el-button>
<el-button size="mini" type="primary"
@click="openCnd(row,$index,index)">设置可选条件
</el-button>
<el-button size="mini" type="danger"
@click="deleteRow(row,$index,index)">删除
</el-button>
</div>
</template>
</el-table-column>
</el-table>
<div class="s-operation">
<el-button size="small" type="primary"
@click="formData.healthCheckupProjectSubjects.push({optionNameId:'',optionName:'套餐'+(formData.healthCheckupProjectSubjects.length+1),optionSort:formData.healthCheckupProjectSubjects.length+1,imgUrl:null})">
添加项目
</el-button>
</div>
</div>
</el-card>
<div class="s-operation">
<el-button size="small" type="primary"
@click="formData.healthCheckupProjectSubjects.push({optionNameId:'',
optionName:'套餐'+(formData.healthCheckupProjectSubjects.length+1),
optionSort:formData.healthCheckupProjectSubjects.length+1,
imgUrl:null,
subjectMoneys:[]})">
添加医院
</el-button>
</div>
</el-form-item>
<el-form-item label="项目封面" prop="cover">
@@ -303,7 +303,7 @@ layout("/layouts/platform.html"){
:close-on-click-modal="false"
width="30%">
<div style=" display: flex;justify-content: center;">
<qrcode :options="{ width: 400 }" :value="activityUrl" ></qrcode>
<qrcode :options="{ width: 400 }" :value="activityUrl"></qrcode>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="codeDialogVisible = false" type="primary">关 闭</el-button>
@@ -330,9 +330,32 @@ layout("/layouts/platform.html"){
</template>
</span>
</el-dialog>
<el-dialog
:close-on-click-modal="false"
:visible.sync="subjectMoneyDialog"
title="套餐"
width="50%"
>
</el-dialog>
<condition-structure-dialog ref="conditionStructureDialog" @confirm="addCondition"></condition-structure-dialog>
<el-dialog :visible.sync="conditionStructureDialogVisible" title="条件构造器">
<condition-group :group="conditionGroup" :field_options="fieldOptions"
@remove="removeRootGroup"></condition-group>
<div slot="footer">
<el-button @click="conditionStructureDialogVisible = false">取消</el-button>
<el-button type="primary" @click="confirmCnd">确定</el-button>
</div>
</el-dialog>
</div>
<script>
<!--#include("../common/ConditionStructure.js"){}#-->
const vue = new Vue({
el: '#app',
mixins: [initTableMixins],
@@ -374,10 +397,37 @@ layout("/layouts/platform.html"){
description: "",
codeDialogVisible: false,
activityUrl: '',
rowData: {},
subjectRowData: {},
subjectMoneyDialog: false,
subjectMoneyIndex: null,
hospitalIndex: null,
deleteSubjectIds: {},
// 条件构造器相关
conditionStructureDialogVisible: false,
// 可选字段列表
fieldOptions: [
{label: "姓名", value: "username"},
{label: "工号", value: "loginname"},
{label: "性别", value: "sex"},
{label: "年龄", value: "age"},
{label: "婚姻状况", value: "marriage"},
{label: "在职状态", value: "userState"},
{label: "编制类别", value: "preparedBy"},
{label: "教职工类别", value: "personType"},
],
conditionGroup: {
logic: "AND",
conditions: [],
groups: []
}
}
},
components: {
"drawer-user-scope": httpVueLoader("/components/module/activity/DrawerUserScope.vue"),
"condition-structure-dialog": CONDITION_STRUCTURE_DIALOG
},
methods: {
dropdownCommand(command) {
@@ -398,6 +448,31 @@ layout("/layouts/platform.html"){
this.openCode(data.id)
}
},
openAddSubjectMoney(row, index) {
row.index = index
this.subjectRowData = row
this.subjectMoneyDialog = true
},
addCondition(val) {
this.$set(this.formData.healthCheckupProjectSubjects[this.subjectMoneyIndex].subjectMoneys[this.rowData.index], 'matchCnd', val)
},
openCnd(row, subjectIndex, hospitalIndex) {
this.rowData = row
this.subjectMoneyIndex = subjectIndex
this.hospitalIndex = hospitalIndex
this.conditionStructureDialogVisible = true
if(row.matchCnd){
this.conditionGroup = row.matchCnd
}
// this.$refs.conditionStructureDialog.onOpen(row.matchCnd ? row.matchCnd : null)
},
// 条件构造器确认
confirmCnd(){
this.conditionStructureDialogVisible = false
this.$set(this.formData.healthCheckupProjectSubjects[this.hospitalIndex].subjectMoneys[this.subjectMoneyIndex], 'matchCnd', this.conditionGroup)
},
async createUserList(row) {
const msg = '您确定要生成【' + row.name + '】体检名单吗?(该名单生成是按照创建时选择的可报名人员范围来生成)'
const confirm = await this.$confirm(msg, '提示', {
@@ -475,8 +550,13 @@ layout("/layouts/platform.html"){
this.codeDialogVisible = true
},
deleteRow(row, index) {
deleteSubject(row, index) {
this.formData.healthCheckupProjectSubjects.splice(index, 1)
if (row.id) this.deleteSubjectIds.push(row.id)
},
deleteRow(row, index, subjectMoneyIndex) {
this.formData.healthCheckupProjectSubjects[subjectMoneyIndex].subjectMoneys.splice(index, 1)
if (row.id) this.deleteRowIds.push(row.id)
},
async doDelete(id) {
@@ -523,19 +603,20 @@ layout("/layouts/platform.html"){
formData.healthCheckupProjectSubjects = JSON.stringify(this.formData.healthCheckupProjectSubjects)
formData.activityGroupName = this.activityGroupList.find(v => v.groupId === this.formData.activityGroupId).groupName
formData.deleteRowIds = JSON.stringify(this.deleteRowIds)
formData.deleteSubjectIds = JSON.stringify(this.deleteSubjectIds)
const resp = await $.post(loc() + "/doAdd", formData)
loading.close()
if (resp.code === 0) {
this.pageData()
this.$refs.guava.index()
this.deleteRowIds = []
this.deleteSubjectIds = []
} else {
this.notifyWarning(resp.msg)
}
}
},
openAdd() {
this.formData = {
name: null,
activityGroupId: null,
@@ -545,7 +626,8 @@ layout("/layouts/platform.html"){
optionName: '套餐1',
optionNameId: '',
optionSort: '1',
imgUrl: ''
imgUrl: '',
subjectMoneys: []
}
]
}
@@ -19,7 +19,7 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="年度">
<search-item label="体检项目">
<el-select @change="getHealthCheckupSubject();"
style="width: 100%;"
v-model="pageForm.projectId">
@@ -38,7 +38,7 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" v-model="pageForm.unitId"
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId"
style="width: 100%;"
clearable
filterable>
@@ -68,11 +68,17 @@ layout("/layouts/platform.html"){
type="primary"
v-if="projectInfo.healthCheckupType==='jzg'">导出教职工未选名单
</el-button>
<el-button @click="selectOptionByAdmin"
<!-- <el-button @click="selectOptionByAdmin"
icon="el-icon-printer"
size="small"
type="primary"
v-if="$auth.hasRoleOr(['SYSADMIN', 'SCHOOL_UNION_ADMIN'])">管理员代选择
</el-button>-->
<el-button @click="selectOptionByLastYear"
icon="el-icon-printer"
size="small"
type="primary"
v-if="$auth.hasRoleOr(['SYSADMIN', 'SCHOOL_UNION_ADMIN'])">管理员代选择
v-if="$auth.hasRoleOr(['SYSADMIN', 'SCHOOL_UNION_ADMIN'])">一键选择去年数据
</el-button>
</template>
@@ -260,7 +266,7 @@ layout("/layouts/platform.html"){
}
const {optionName} = this.projectSubjectOptions.find(v => v.id === this.noSelectOptionId)
const confirm = await this.$confirm('请确定是否把【' + optionName + '】福利赋给未选择的教职工?', '提示', {
const confirm = await this.$confirm('请确定是否把【' + optionName + '】套餐赋给未选择的教职工?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
@@ -273,18 +279,40 @@ layout("/layouts/platform.html"){
projectId: this.pageForm.projectId
})
if (resp.code === 0) {
setTimeout(()=>{
this.doSearch()
this.loading = false
this.selectByAdminDialogVisible = false
this.notifySuccess(resp.msg)
},2000)
setTimeout(() => {
this.doSearch()
this.loading = false
this.selectByAdminDialogVisible = false
this.notifySuccess(resp.msg)
}, 2000)
} else {
this.notifyWarning(resp.msg)
}
}
},
async selectOptionByLastYear() {
const confirm = await this.$confirm('请确定是否把没有选择的教职工统一选择去年的数据?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
if (confirm === "confirm") {
this.loading = true
const resp = await $.get(loc() + '/selectOptionByLastYear', {
projectId: this.pageForm.projectId
})
if (resp.code === 0) {
setTimeout(() => {
this.doSearch()
this.loading = false
this.notifySuccess(resp.msg)
}, 2000)
} else {
this.notifyWarning(resp.msg)
}
}
},
selectOptionByAdmin() {
this.noSelectOptionId = null
this.selectByAdminDialogVisible = true
@@ -17,7 +17,7 @@ layout("/layouts/platform.html"){
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select placeholder="所属工会" v-model="pageForm.unionId" style="width: 100%;"
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" style="width: 100%;"
clearable
filterable @change="honorLevelData">
<el-option v-for="item in unions" :label="item.name" :value="item.id"></el-option>
@@ -17,7 +17,7 @@ layout("/layouts/platform.html"){
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select placeholder="所属工会" v-model="pageForm.unionId" style="width: 100%;"
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" style="width: 100%;"
clearable filterable @change="pageData">
<el-option v-for="item in unions" :label="item.name" :value="item.id"></el-option>
</el-select>
@@ -35,7 +35,7 @@ layout("/layouts/platform.html"){
@clear="flushUnits"
clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%"
v-model="pageForm.unionId"
>
@@ -44,7 +44,7 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="请选择" style="width: 100%"
<el-select clearable filterable placeholder="请选择所属单位" style="width: 100%"
v-model="pageForm.unitId">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unitList"></el-option>
@@ -24,7 +24,7 @@ layout("/layouts/platform.html"){
@clear="flushUnits"
clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%"
v-model="pageForm.unionId"
>
@@ -33,7 +33,7 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="请选择" style="width: 100%"
<el-select clearable filterable placeholder="请选择所属单位" style="width: 100%"
v-model="pageForm.unitId">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unitList"></el-option>
@@ -17,7 +17,7 @@ const applyForm = {
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="所单位" prop="unitName">
<el-form-item label="所单位" prop="unitName">
<el-input readonly v-model="formData.unitName"></el-input>
</el-form-item>
</el-col>
@@ -30,7 +30,7 @@ layout("/layouts/platform.html"){
</el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%">
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
@@ -30,7 +30,7 @@ layout("/layouts/platform.html"){
</el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%">
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
@@ -30,7 +30,7 @@ layout("/layouts/platform.html"){
</el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%">
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
@@ -30,7 +30,7 @@ layout("/layouts/platform.html"){
</el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%">
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
@@ -28,14 +28,14 @@ layout("/layouts/platform.html"){
<el-input v-model="pageForm.searchKeyword" placeholder="姓名/工号" clearable></el-input>
</search-item>
<search-item label="所属工会">
<el-select clearable filterable placeholder="所属工会" style="width: 100%"
<el-select clearable filterable placeholder="请选择所属工会" style="width: 100%"
v-model="pageForm.unionId" @change="flushUnits">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unionOptions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
<el-select placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
filterable>
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"></el-option>
</el-select>
@@ -228,7 +228,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</div>
@@ -12,9 +12,9 @@ layout("/layouts/platform.html"){
<search-item label="姓名/工号">
<el-input placeholder="请输入经办人姓名或工号查询" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -22,9 +22,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -12,9 +12,9 @@ layout("/layouts/platform.html"){
<search-item label="姓名/工号">
<el-input placeholder="请输入经办人姓名或工号查询" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -22,9 +22,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -12,9 +12,9 @@ layout("/layouts/platform.html"){
<search-item label="姓名/工号">
<el-input placeholder="请输入经办人姓名或工号查询" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -22,9 +22,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -22,7 +22,7 @@ layout("/layouts/platform.html"){
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -18,11 +18,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -18,11 +18,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -17,11 +17,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -103,11 +103,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -22,7 +22,7 @@ layout("/layouts/platform.html"){
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -18,11 +18,11 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="所属工会">
<el-select @change="doSearch" clearable="true"
filterable="true"
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -44,7 +44,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="submitAgain" v-else>提交1</el-button>
<el-button type="primary" @click="submitAgain" v-else>提交</el-button>
</el-row>
</el-card>
</guava>
@@ -12,8 +12,8 @@ layout("/layouts/platform.html"){
<search-item label="会议名称">
<el-input @keyup.enter.native="doSearch" clearable placeholder="请输入会议名称" v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" filterable clearable style="width: 100%">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" filterable clearable style="width: 100%">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</search-item>
@@ -108,7 +108,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="submitAgain" v-else>提交1</el-button>
<el-button type="primary" @click="submitAgain" v-else>提交</el-button>
</el-row>
</el-card>
</guava>
@@ -65,15 +65,15 @@ layout("/layouts/platform.html"){
v-for="item in delegationOptions"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select clearable filterable placeholder="工会" v-model="pageForm.unionId"
<search-item label="所属工会">
<el-select clearable filterable placeholder="请选择所属工会" v-model="pageForm.unionId"
@change="pageForm.unitId=null;listUnit();">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unionOptions"></el-option>
</el-select>
</search-item>
<search-item label="单位">
<el-select clearable filterable placeholder="单位" v-model="pageForm.unitId">
<search-item label="所属单位">
<el-select clearable filterable placeholder="请选择所属单位" v-model="pageForm.unitId">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unitOptions"></el-option>
</el-select>
@@ -0,0 +1,231 @@
<!--#
layout("/layouts/platform.html"){
#-->
<style>
/* 提案信息卡片样式 - OA风格 */
.proposal-info-card {
background: #ffffff;
border: 1px solid var(--border-color-lighter);
margin-bottom: 20px;
overflow: hidden;
}
.proposal-info-content {
padding: 16px;
background: #fafafa;
}
.info-item {
display: flex;
align-items: flex-start;
margin-bottom: 12px;
line-height: 1.6;
padding: 8px 12px;
background: #ffffff;
border-left: 3px solid var(--color-primary-2);
transition: all 0.2s ease;
}
.info-item:hover {
border-left-color: var(--color-primary);
}
.info-item:last-child {
margin-bottom: 0;
}
.info-item label {
color: var(--color-text-regular);
font-weight: 500;
min-width: 80px;
margin-right: 12px;
flex-shrink: 0;
font-size: 13px;
}
.info-item span {
color: var(--color-text-primary);
word-break: break-all;
flex: 1;
font-size: 13px;
}
</style>
<div id="app">
<guava ref="guava">
<el-card shadow="never">
<search @search="doSearch">
<search-item label="教代会">
<el-select @change="meetingChange" clearable filterable placeholder="所属教代会" style="width: 100%"
v-model="pageForm.sessionId">
<el-option :key="item.id" :label="item.fullName" :value="item.id"
v-for="item in sessionOptions"></el-option>
</el-select>
</search-item>
<search-item label="提案编号">
<el-input v-model="pageForm.code" placeholder="提案编号" @keyup.enter.native="doSearch" clearable
style="width: 100%"></el-input>
</search-item>
<search-item label="提案名称">
<el-input v-model="pageForm.name" placeholder="提案名称" @keyup.enter.native="doSearch" clearable
style="width: 100%"></el-input>
</search-item>
<search-item label="姓名/工号:">
<el-input placeholder="请输入提案人姓名或工号查询" clearable v-model="pageForm.createUserKeyword"></el-input>
</search-item>
<!-- <search-item label="提案人姓名">-->
<!-- <el-input-->
<!-- @keyup.enter.native="doSearch"-->
<!-- clearable-->
<!-- placeholder="请输入提案人姓名"-->
<!-- v-model="pageForm.createUserName"-->
<!-- style="width: 100%"-->
<!-- ></el-input>-->
<!-- </search-item>-->
<!-- <search-item label="提案人工号">-->
<!-- <el-input-->
<!-- @keyup.enter.native="doSearch"-->
<!-- clearable-->
<!-- placeholder="请输入提案人工号"-->
<!-- v-model="pageForm.createUserLoginName"-->
<!-- style="width: 100%"-->
<!-- ></el-input>-->
<!-- </search-item>-->
</search>
</el-card>
<el-card shadow="never">
<table-tool :columns.sync="tableColumns">
<el-radio-group v-model="pageForm.approval" size="small" @change="doSearch">
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
</el-radio-group>
</table-tool>
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%">
<el-table-column label="序号" width="50" type="index" :index="indexMethod" fixed="left"></el-table-column>
<el-table-column
:label="column.label"
:prop="column.prop"
:key="column.key"
:min-width="column.width"
:fixed="column.fixed"
show-overflow-tooltip
v-for="column in tableColumns"
v-if="column.visible !== false"
>
<template v-if="column.prop === 'caseFilingResult'" scope="{row}">
<dict-tag :options="dict.type.PROPOSAL_CASE_FILING_RESULT"
:value="row.caseFilingResult"></dict-tag>
</template>
<template v-else-if="column.prop === 'instanceState'" scope="{row}">
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
size="small"></enum-tag>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" min-width="100px">
<template slot-scope="{row}">
<el-button @click="openView(row)" size="mini" type="primary">查看</el-button>
<el-button @click="openAudit(row)" size="mini" type="primary">答复</el-button>
</template>
</el-table-column>
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<proposal-info ref="proposalInfoRef">
<div v-if="showApprovalForm">
<el-form :model="formData" ref="formRef" label-width="80px" :rules="formRules" label-suffix="">
<el-form-item label="承办单位">
<el-input :value="formData.underTakeName" disabled></el-input>
</el-form-item>
<el-form-item label="落实情况" prop="tf_implementState"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<el-radio-group v-model="formData.tf_implementState" size="small">
<el-radio v-for="item in dict.type.PROPOSAL_REPLY_IMPLEMENT" :label="item.code" border>
{{item.label}}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="答复内容" prop="tf_opinion"
:rules="[{required:true,message:'必填',trigger:['change','blur']}]">
<text-editor v-model="formData.tf_opinion"></text-editor>
</el-form-item>
</el-form>
<el-row type="flex" justify="end">
<el-button @click="$refs.guava.index()" size="small">取消</el-button>
<el-button @click="" size="small" type="primary">提交</el-button>
</el-row>
</div>
</proposal-info>
</template>
</guava>
</div>
<script>
<!--#include('../../common/info.js'){}#-->
new Vue({
el: "#app",
store,
dicts: ["PROPOSAL_CASE_FILING_RESULT", "PROPOSAL_REPLY_IMPLEMENT"],
mixins: [initTableMixins],
components: {
"proposal-info": PROPOSAL_INFO
},
data() {
return {
tableColumns: [
{label: "提案编号", prop: "code"},
{label: "提案名称", prop: "name", width: "200px"},
{label: "提案类别", prop: "typeName"},
{label: "届次", prop: "sessionName"},
{label: "代表团", prop: "delegationName"},
{label: "当前节点", prop: "curTaskName"},
{label: "流程状态", prop: "instanceState"}
],
pageForm: {
approval: false
},
showApprovalForm: false,
formData: {},
sessionOptions: [],
}
},
methods: {
openView(row) {
this.$refs.guava.edit(() => {
this.showApprovalForm = false
this.$refs.proposalInfoRef.onOpen(row)
})
},
// 教代会
async meetingChange(val) {
this.doSearch()
},
// 查询开启的教代会
listOpenSession() {
this.$axios.post("/platform/proposal/common/listOpenSession").then((res) => {
if (res.code === 0) {
this.sessionOptions = res.data
if (this.sessionOptions) {
this.$set(this.pageForm, "sessionId", this.sessionOptions[0].id)
this.pageData()
}
}
})
}
},
created() {
this.pageData()
this.listOpenSession()
}
})
</script>
<!--#
}
#-->
@@ -12,9 +12,9 @@ layout("/layouts/platform.html"){
<search-item label="标题">
<el-input v-model="pageForm.title" placeholder="标题" clearable></el-input>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -22,9 +22,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -46,7 +46,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</div>
@@ -12,9 +12,9 @@ layout("/layouts/platform.html"){
<search-item label="标题">
<el-input v-model="pageForm.title" placeholder="标题" clearable></el-input>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -22,9 +22,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -18,13 +18,13 @@ layout("/layouts/platform.html"){
<el-option v-for="i in delegationOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" filterable @change="listUnit" clearable style="width: 100%">
<search-item label="所属工会">
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" filterable @change="listUnit" clearable style="width: 100%">
<el-option v-for="i in unionOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="单位">
<el-select v-model="pageForm.unitId" filterable clearable style="width: 100%">
<search-item label="所属单位">
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId" filterable clearable style="width: 100%">
<el-option v-for="i in unitOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
@@ -13,8 +13,8 @@ layout("/layouts/platform.html"){
:key="item.id"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" filterable clearable style="width: 100%">
<search-item label="所属工会">
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" filterable clearable style="width: 100%">
<el-option v-for="i in unionOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
@@ -18,13 +18,13 @@ layout("/layouts/platform.html"){
<el-option v-for="i in delegationOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" filterable @change="listUnit" clearable style="width: 100%">
<search-item label="所属工会">
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" filterable @change="listUnit" clearable style="width: 100%">
<el-option v-for="i in unionOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="单位">
<el-select v-model="pageForm.unitId" clearable filterable style="width: 100%">
<search-item label="所属单位">
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId" clearable filterable style="width: 100%">
<el-option v-for="i in unitOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
@@ -22,7 +22,7 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<search-item label="所属工会">
<el-select clearable filterable placeholder="所属工会" style="width: 100%" v-model="pageForm.unionId">
<el-select clearable filterable placeholder="请选择所属工会" style="width: 100%" v-model="pageForm.unionId">
<el-option :key="item.id" :label="item.name" :value="item.id"
v-for="item in unionOptions"></el-option>
</el-select>
@@ -18,13 +18,13 @@ layout("/layouts/platform.html"){
<el-option v-for="i in delegationOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" @change="listUnit" clearable style="width: 100%">
<search-item label="所属工会">
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" @change="listUnit" clearable style="width: 100%">
<el-option v-for="i in unionOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="单位">
<el-select v-model="pageForm.unitId" clearable style="width: 100%">
<search-item label="所属单位">
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId" clearable style="width: 100%">
<el-option v-for="i in unitOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
@@ -18,13 +18,13 @@ layout("/layouts/platform.html"){
<el-option v-for="i in delegationOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" @change="listUnit" clearable style="width: 100%">
<search-item label="所属工会">
<el-select placeholder="请选择所属工会" v-model="pageForm.unionId" @change="listUnit" clearable style="width: 100%">
<el-option v-for="i in unionOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
<search-item label="单位">
<el-select v-model="pageForm.unitId" clearable style="width: 100%">
<search-item label="所属单位">
<el-select placeholder="请选择所属单位" v-model="pageForm.unitId" clearable style="width: 100%">
<el-option v-for="i in unitOptions" :label="i.name" :key="i.id" :value="i.id"></el-option>
</el-select>
</search-item>
@@ -222,7 +222,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</div>
@@ -14,24 +14,24 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="受助人">
<el-input placeholder="请输入受助人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -39,7 +39,7 @@ layout("/layouts/platform.html"){
</search-item>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -78,7 +78,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -101,14 +101,14 @@ layout("/layouts/platform.html"){
</div>
</info>
</template>
</guava>
</div>
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -131,7 +131,7 @@ layout("/layouts/platform.html"){
],
unions: [],
units: [],
// 审核相关
formData: {},
showApprovalForm: false
@@ -157,7 +157,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -178,7 +178,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -22,7 +22,7 @@ layout("/layouts/platform.html"){
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -31,7 +31,7 @@ layout("/layouts/platform.html"){
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -22,7 +22,7 @@ layout("/layouts/platform.html"){
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
@@ -31,7 +31,7 @@ layout("/layouts/platform.html"){
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -14,24 +14,24 @@ layout("/layouts/platform.html"){
value-format="yyyy">
</el-date-picker>
</search-item>
<search-item label="受助人">
<el-input placeholder="请输入受助人工号或姓名" clearable v-model="pageForm.searchKeyword"></el-input>
</search-item>
<search-item label="所属工会">
<el-select @change="flushUnits" @clear="flushUnits" clearable
filterable
placeholder="所属工会"
placeholder="请选择所属工会"
style="width: 100%;"
v-model="pageForm.unionId">
<el-option :label="item.name" :value="item.id"
v-for="item in unions"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select clearable filterable placeholder="所属单位"
<el-select clearable filterable placeholder="请选择所属单位"
style="width: 100%;" v-model="pageForm.unitId">
<el-option :label="item.name" :value="item.id"
v-for="item in units"></el-option>
@@ -39,7 +39,7 @@ layout("/layouts/platform.html"){
</search-item>
</search>
</el-card>
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="审批列表">
<el-radio-group @change="doSearch" class="mr5" size="small" v-model="pageForm.audit">
@@ -78,7 +78,7 @@ layout("/layouts/platform.html"){
</el-table>
<!--#include("/layouts/pagination.html"){}#-->
</el-card>
<template #edit>
<info ref="infoRef">
<div v-if="showApprovalForm">
@@ -107,9 +107,9 @@ layout("/layouts/platform.html"){
</div>
<script>
<!--#include("../common/info.js"){}#-->
new Vue({
el: "#app",
mixins: [initTableMixins],
@@ -132,7 +132,7 @@ layout("/layouts/platform.html"){
],
unions: [],
units: [],
// 审核相关
formData: {
tf_money: 0,
@@ -161,7 +161,7 @@ layout("/layouts/platform.html"){
this.$refs.infoRef.onOpen(row)
})
},
handleTaskAction(val) {
this.$confirm("您确定要提交吗?", "提示", {
confirmButtonText: "确定",
@@ -182,7 +182,7 @@ layout("/layouts/platform.html"){
})
})
},
onRevoke(row) {
this.$confirm("您确定要撤回吗?", "提示", {
confirmButtonText: "确定",
@@ -152,7 +152,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</div>
@@ -18,9 +18,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -28,9 +28,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -18,9 +18,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -28,9 +28,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -19,9 +19,9 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<template v-if="$auth.hasRoleOr(['SYSADMIN', 'SCHOOL_UNION_ADMIN', 'BRANCH_UNION_CHAIRMAN'])">
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -29,9 +29,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -48,14 +48,14 @@ layout("/layouts/platform.html"){
</el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%"
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%"
@change="flushUnits" @clear="flushUnits">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
<el-select placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
filterable>
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"
:key="item.id"></el-option>
@@ -48,14 +48,14 @@ layout("/layouts/platform.html"){
</el-input>
</search-item>
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%"
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%"
@change="flushUnits" @clear="flushUnits">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</search-item>
<search-item label="所属单位">
<el-select placeholder="所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
<el-select placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
filterable>
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"
:key="item.id"></el-option>
@@ -152,7 +152,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</div>
@@ -18,9 +18,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -28,9 +28,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -18,9 +18,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -28,9 +28,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -19,9 +19,9 @@ layout("/layouts/platform.html"){
</el-select>
</search-item>
<template v-if="$auth.hasRoleOr(['SYSADMIN', 'SCHOOL_UNION_ADMIN', 'BRANCH_UNION_CHAIRMAN'])">
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -29,9 +29,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -211,7 +211,7 @@ layout("/layouts/platform.html"){
<el-row type="flex" justify="end" class="mt20">
<el-button type="primary" plain @click="onSave">保存</el-button>
<el-button type="primary" @click="onSubmit" v-if="!taskId">提交</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交1</el-button>
<el-button type="primary" @click="onFinishTask" v-else>提交</el-button>
</el-row>
</el-card>
</template>
@@ -32,9 +32,9 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
placeholder="请选择工会" clearable>
placeholder="请选择所属工会" clearable>
<el-option v-for="item in unionOptions"
:value="item.id"
:key="item.id"
@@ -42,9 +42,9 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item label="单位">
<search-item label="所属单位">
<el-select v-model="pageForm.unitId" @change="doSearch" style="width: 100%"
placeholder="请选择单位" clearable>
placeholder="请选择所属单位" clearable>
<el-option v-for="item in unitOptions"
:value="item.id"
:key="item.id"
@@ -68,7 +68,7 @@ layout("/layouts/platform.html"){
></el-option>
</el-select>
</search-item>
<search-item v-if="$auth.hasRole('SYSADMIN') || $auth.hasRole('SCHOOL_UNION_ADMIN')" label="工会:">
<search-item v-if="$auth.hasRole('SYSADMIN') || $auth.hasRole('SCHOOL_UNION_ADMIN')" label="所属工会:">
<el-select @change="doSearch"
clearable
filterable
@@ -45,15 +45,15 @@ layout("/layouts/platform.html"){
<el-option label="女" value="女"></el-option>
</el-select>
</search-item>
<search-item label="工会">
<el-select v-model="pageForm.unionId" placeholder="请选择工会" clearable style="width: 100%"
<search-item label="所属工会">
<el-select v-model="pageForm.unionId" placeholder="请选择所属工会" clearable style="width: 100%"
@change="flushUnits" @clear="flushUnits">
<el-option v-for="item in unionOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
</search-item>
<search-item label="单位">
<el-select placeholder="请选择单位" style="width: 100%" v-model="pageForm.unitId" clearable
<search-item label="所属单位">
<el-select placeholder="请选择所属单位" style="width: 100%" v-model="pageForm.unitId" clearable
filterable>
<el-option v-for="item in unitOptions" :label="item.name" :value="item.id"></el-option>
</el-select>

Some files were not shown because too many files have changed in this diff Show More