Files
UNION_HUTB/target/classes/views/platform/hy/zzjg/unionMange.html
T
2026-09-09 09:14:28 +08:00

1058 lines
50 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!--#
layout("/layouts/platform.html"){
#-->
<style>
.el-transfer {
text-align: center;
}
.el-transfer-panel {
text-align: left;
width: 35%;
height: 400px;
}
.el-transfer-panel__list.is-filterable {
height: 300px;
}
</style>
<div id="app" v-cloak style="height: 100%">
<el-row style="height: 100%">
<el-col :span="5" style="height: 100%;max-height: 100vh;overflow: auto;padding: 10px 0">
<el-tree :data="data" :expand-on-click-node="false" :props="defaultProps" default-expand-all
@node-click="handleNodeClick"
highlight-current
style="height: 100%;width: 100%;border-right: 2px rgb(240,240,240) solid;overflow: auto">
<div class="custom-tree-node" style="display: inline-block;" slot-scope="{ node, data }">
<i v-if="node.level==1 " class="el-icon-office-building"></i>&nbsp;
<span v-if="node.level==1" style="font-size: 15px"> {{ data.unionname }}</span>
<i v-if="node.level==2 " class="el-icon-school"></i>&nbsp;
<span v-if="node.level==2" style="font-size: 14px;"> {{ data.unionname }}</span>
</div>
</el-tree>
</el-col>
<el-col :span="19">
<div v-if="node.level==1&&sysadmin">
<el-row class="header navbar bg-white shadow">
<div class="btn-group tool-button mt5">
<el-input placeholder="请输入内容" clearable v-model="pageForm.searchKeyword"
@keyup.enter.native="doSearch">
<el-select v-model="pageForm.searchName" slot="prepend" placeholder="查询类型"
style="width: 120px;">
<el-option label="基层工会名称" value="unionname"></el-option>
</el-select>
</el-input>
</div>
<div class="btn-group tool-button mt5">
<el-button type="primary" icon="el-icon-search" @click="doSearch"></el-button>
</div>
<div class="pull-right offscreen-right mt5">
<el-button size="medium" @click="openAdd"><i class="ti-plus"></i> 新建基层工会</el-button>
</div>
</el-row>
<el-row class="el-table-container">
<el-table
:data="tableData"
size="medium"
@sort-change='pageOrder'
header-align="center"
style="width: 100%"
>
<el-table-column align="center" header-align="center" label="序号" type="index">
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column
prop="unionname"
label="基层工会名称"
header-align="center"
align="center"
>
</el-table-column>
<el-table-column
prop="fzr"
label="管理员"
header-align="center"
align="center"
:show-overflow-tooltip="true">
<template slot-scope="scope">
{{scope.row.fzr | none2str}}
</template>
</el-table-column>
<el-table-column
prop="telephone"
label="联系电话"
header-align="center"
align="center"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
{{scope.row.telephone | none2str}}
</template>
</el-table-column>
<el-table-column
prop="userOnline"
label="操作"
header-align="center"
align="center"
width="290">
<template slot-scope="scope">
<el-button size="mini" @click="openFzr(scope.row.id)">设置管理员</el-button>
<el-button type="primary" size="mini" @click="openEdit(scope.row.id)">编辑
</el-button>
<el-button type="danger" size="mini" @click="doDelete(scope.row.id)">删除
</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container">
<el-pagination
@size-change="pageSizeChange"
@current-change="pageNumberChange"
:current-page="pageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="pageForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageForm.totalCount">
</el-pagination>
</el-row>
</div>
<div v-if="node.level==2||(node.level==1&&!sysadmin)" style="padding: 5px 10px">
<el-tabs v-model="activeName" type="card" @tab-click="handleClick" style="box-shadow: none">
<el-tab-pane name="one">
<span slot="label"><i class="el-icon-phone-outline"></i> 联系信息表</span>
<el-row class="el-table-container">
<el-table :data="lxrTableData" style="max-height: 70vh;overflow: auto"
v-loading="tabloading" size="medium">
<el-table-column align="center" header-align="center" label="序号"
type="index"></el-table-column>
<el-table-column align="center" header-align="center" label="姓名"
prop="name">
<template slot-scope="scope">
<el-input v-if="scope.$index==lxrData.idx" placeholder="填写姓名" size="small"
v-model="scope.row.name" clearable></el-input>
<span v-else>{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column align="center" header-align="center" label="性别"
prop="sex">
<template slot-scope="scope">
<el-select v-if="scope.$index==lxrData.idx" v-model="scope.row.sex" size="small"
placeholder="请选择">
<el-option
v-for="item in [{x:'男'},{x:'女'}]"
:key="item.x"
:label="item.x"
:value="item.x">
</el-option>
</el-select>
<span v-else>{{scope.row.sex}}</span>
</template>
</el-table-column>
<el-table-column align="center" header-align="center" label="职务" prop="zw">
<template slot-scope="scope">
<el-select v-if="scope.$index==lxrData.idx" v-model="scope.row.zw" size="small"
placeholder="请选择">
<el-option
v-for="item in zwOptions"
:key="item"
:label="item"
:value="item">
</el-option>
</el-select>
<span v-else>{{scope.row.zw}}</span>
</template>
</el-table-column>
<el-table-column align="center" header-align="center" label="电话" prop="mobile">
<template slot-scope="scope">
<el-input v-if="scope.$index==lxrData.idx" placeholder="填写电话" size="small"
v-model="scope.row.mobile" clearable></el-input>
<span v-else>{{scope.row.mobile}}</span>
</template>
</el-table-column>
<el-table-column align="center" header-align="center" label="邮箱" prop="email">
<template slot-scope="scope">
<el-input v-if="scope.$index==lxrData.idx" placeholder="填写邮箱" size="small"
v-model="scope.row.email" clearable></el-input>
<span v-else>{{scope.row.email}}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" header-align="center" width="160px">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="openEditLxr(scope.row.id)">编辑
</el-button>
<el-button type="danger" size="mini" @click="doDeleteLxr(scope.row.id)">删除
</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container" style="text-align: right;margin-top: 20px">
<span style="color: red">(新增联系人)</span>
<el-button size="medium" type="primary" @click="openAddLxr" circle><i
class="el-icon-plus"></i></el-button>
</el-row>
</el-tab-pane>
<el-tab-pane name="two">
<span slot="label"><i class="el-icon-user"></i> 会员档案</span>
<el-row class="header navbar bg-white">
<div class="btn-group tool-button mt5">
<el-input placeholder="请输入内容" clearable v-model="hyPageForm.searchKeyword"
@keyup.enter.native="hyDoSearch">
<el-select v-model="hyPageForm.searchName" slot="prepend" placeholder="查询类型"
style="width: 120px;">
<el-option label="姓名" value="username"></el-option>
<el-option label="工号" value="loginname"></el-option>
</el-select>
</el-input>
</div>
<div class="btn-group tool-button mt5">
<el-select v-model="hyPageForm.unitid" filterable clearable
placeholder="请选择单位">
<el-option
v-for="item in unitOptions"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</div>
<div class="btn-group tool-button mt5">
<el-button type="primary" icon="el-icon-search" @click="hyDoSearch"></el-button>
</div>
</el-row>
<el-row class="el-table-container">
<el-table :data="hyTableData" size="medium" v-loading="tabloading">
<el-table-column align="center" header-align="center" label="序号" type="index">
<template scope="scope"><span>{{scope.$index+(hyPageForm.pageNumber - 1) * hyPageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column align="center" header-align="center" label="工号" show-overflow-tooltip
prop="loginname"></el-table-column>
<el-table-column align="center" header-align="center" label="姓名" show-overflow-tooltip
prop="username"></el-table-column>
<el-table-column align="center" header-align="center" label="性别" show-overflow-tooltip
prop="sex"></el-table-column>
<el-table-column align="center" header-align="center" label="单位" show-overflow-tooltip
prop="unitname"></el-table-column>
<el-table-column align="center" header-align="center" label="电话" show-overflow-tooltip
prop="mobile"></el-table-column>
<el-table-column align="center" header-align="center" label="在职状态" show-overflow-tooltip
prop="zzzt"></el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container">
<el-pagination
@size-change="hyPageSizeChange"
@current-change="hyPageNumberChange"
:current-page="hyPageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="hyPageForm.pageSize"
layout="total, prev, pager, next"
:total="hyPageForm.totalCount">
</el-pagination>
</el-row>
</el-tab-pane>
<el-tab-pane name="three">
<span slot="label"><i class="el-icon-tickets"></i> 成员单位</span>
<el-row class="el-table-container">
<el-table :data="zcdwTableData" style="max-height: 70vh;overflow: auto"
v-loading="tabloading" size="medium">
<el-table-column align="center" header-align="center" label="序号"
type="index"></el-table-column>
<el-table-column align="center" header-align="center" label="单位名称"
prop="name">
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container" style="text-align: right;margin-top: 20px">
<span style="color: red">(设置成员单位)</span>
<el-button size="medium" type="primary" @click="openZcdw" circle><i
class="el-icon-plus"></i></el-button>
</el-row>
</el-tab-pane>
</el-tabs>
</div>
</el-col>
</el-row>
<el-dialog
title="设置成员单位"
:visible.sync="zcdwDialogVisible" width="55%">
<div style="width: 100%;">
<el-transfer
:titles="['可选二级单位', '当前成员单位']"
filterable
:props="{
key: 'id',
label: 'name'
}"
:filter-method="zdwFilterMethod"
v-model="zcdwValue"
:data="zcdwData">
</el-transfer>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="zcdwDialogVisible = false">取 消</el-button>
<el-button :disabled="subDis" type="primary" @click="doSzZcdw">确 定</el-button>
</span>
</el-dialog>
<el-dialog
title="设置管理员"
:visible.sync="fzrDialogVisible" width="55%">
<div style="width: 100%;">
<el-transfer
:titles="['单位成员', '管理员']"
filterable
:props="{
key: 'id',
label: 'name'
}"
:filter-method="fzrFilterMethod"
v-model="fzrValue"
:data="fzrData">
</el-transfer>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="fzrDialogVisible = false">取 消</el-button>
<el-button :disabled="subDis" type="primary" @click="doSzFzr">确 定</el-button>
</span>
</el-dialog>
<!--新建联系人-->
<el-dialog
title="新增"
@close="lxrUserOptions=[]"
:visible.sync="addLxrDialogVisible" width="40%">
<el-form :model="formData" ref="addForm" :rules="formRules" size="small" label-width="80px">
<el-form-item prop="name" label="姓名">
<el-select
v-model="formData.userid"
filterable
remote
@change="lxrUserChange"
reserve-keyword
placeholder="请输入姓名或工号查找"
:remote-method="lxrUserRemoteMethod"
:loading="lxrUserLoading">
<el-option
@focus="alert(1)"
v-for="item in lxrUserOptions"
:key="item.id"
:label="item.username+''+item.loginname+''"
:value="item.id">
</el-option>
</el-select>
<!-- <el-input maxlength="50" placeholder="姓名" v-model="formData.name" type="text"></el-input>-->
</el-form-item>
<el-form-item prop="sex" label="性别">
<el-select v-model="formData.sex"
placeholder="请选择">
<el-option
v-for="item in [{x:'男'},{x:'女'}]"
:key="item.x"
:label="item.x"
:value="item.x">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="zw" label="职务">
<el-select v-model="formData.zw"
placeholder="请选择">
<el-option
v-for="item in zwOptions"
:key="item"
:label="item"
:value="item">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="mobile" label="电话">
<el-input placeholder="填写电话" size="small"
v-model="formData.mobile" clearable type="mobile"></el-input>
</el-form-item>
<el-form-item prop="email" label="邮箱">
<el-input placeholder="填写邮箱" size="small"
v-model="formData.email" clearable type="email"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addLxrDialogVisible = false">取 消</el-button>
<el-button type="primary" :disabled="subDis" @click="doAddLxr">确 定</el-button>
</span>
</el-dialog>
<!--编辑联系人-->
<el-dialog
title="编辑"
:visible.sync="editLxrDialogVisible" width="40%">
<el-form :model="formData" ref="editForm" :rules="formRules" size="small" label-width="100px">
<el-form-item prop="name" label="姓名">
<el-input maxlength="50" disabled placeholder="姓名" v-model="formData.name" type="text"></el-input>
</el-form-item>
<el-form-item prop="sex" label="性别">
<el-select v-model="formData.sex"
placeholder="请选择">
<el-option
v-for="item in [{x:'男'},{x:'女'}]"
:key="item.x"
:label="item.x"
:value="item.x">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="zw" label="职务">
<el-select v-model="formData.zw"
placeholder="请选择">
<el-option
v-for="item in zwOptions"
:key="item"
:label="item"
:value="item">
</el-option>
</el-select>
</el-form-item>
<el-form-item prop="mobile" label="电话">
<el-input placeholder="填写电话" size="small"
v-model="formData.mobile" clearable type="mobile"></el-input>
</el-form-item>
<el-form-item prop="email" label="邮箱">
<el-input placeholder="填写邮箱" size="small"
v-model="formData.email" clearable type="email"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editLxrDialogVisible = false">取 消</el-button>
<el-button type="primary" :disabled="subDis" @click="doEditLxr">确 定</el-button>
</span>
</el-dialog>
<!--新建基层工会-->
<el-dialog
title="新建基层工会"
:visible.sync="addDialogVisible" width="40%">
<el-form :model="formData" ref="addForm" :rules="formRules" size="small" label-width="100px">
<el-form-item prop="unionname" label="基层工会名称">
<el-input maxlength="100" placeholder="基层工会名称"
v-model="formData.unionname"
auto-complete="off" tabindex="4" type="text"></el-input>
</el-form-item>
<!-- <el-form-item prop="dwcode" label="基层工会编号">-->
<!-- <el-input maxlength="100" placeholder="基层工会编号"-->
<!-- v-model="formData.dwcode" clearable-->
<!-- auto-complete="off" tabindex="4" type="text"></el-input>-->
<!-- </el-form-item>-->
<el-form-item prop="telephone" label="联系电话">
<el-input maxlength="100" placeholder="联系电话"
v-model="formData.telephone" clearable
auto-complete="off" tabindex="4" type="text"></el-input>
</el-form-item>
<el-form-item prop="unionaddress" label="基层工会地址">
<el-input maxlength="100" placeholder="基层工会地址"
v-model="formData.unionaddress"
auto-complete="off" tabindex="4" type="text"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addDialogVisible = false">取 消</el-button>
<el-button type="primary" :disabled="subDis" @click="doAdd">确 定</el-button>
</span>
</el-dialog>
<!--编辑基层工会-->
<el-dialog
title="编辑基层工会"
:visible.sync="editDialogVisible" width="40%">
<el-form :model="formData" ref="editForm" :rules="formRules" size="small" label-width="100px">
<el-form-item prop="unionname" label="基层工会名称">
<el-input maxlength="100" placeholder="基层工会名称"
v-model="formData.unionname"
auto-complete="off" tabindex="4" type="text"></el-input>
</el-form-item>
<!-- <el-form-item prop="dwcode" label="基层工会编号">-->
<!-- <el-input maxlength="100" placeholder="基层工会编号"-->
<!-- v-model="formData.dwcode" clearable-->
<!-- auto-complete="off" tabindex="4" type="text"></el-input>-->
<!-- </el-form-item>-->
<el-form-item prop="telephone" label="联系电话">
<el-input maxlength="100" placeholder="联系电话"
v-model="formData.telephone" clearable
auto-complete="off" tabindex="4" type="text"></el-input>
</el-form-item>
<el-form-item prop="unionaddress" label="基层工会地址">
<el-input maxlength="100" placeholder="基层工会地址"
v-model="formData.unionaddress"
auto-complete="off" tabindex="4" type="text"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editDialogVisible = false">取 消</el-button>
<el-button type="primary" :disabled="subDis" @click="doEdit">确 定</el-button>
</span>
</el-dialog>
</div>
<script>
const vue = new Vue({
el: '#app',
data() {
return {
lxrUserOptions: [],
lxrUserLoading: false,
zcdwData: [],
zcdwValue: [],
unitOptions: [],
tabloading: false,
lxrData: {
idx: -1,
type: 'add'
},
zwOptions: ['主席', '副主席', '书记', '院长(处长)', '组织委员', '宣传委员', '文艺委员', '体育委员', '青工委员', '女工委员', '生活委员'],
activeName: 'one',
subDis: false,
fzrUnionid: '',
fzrData: [],
fzrValue: [],
data: [],
zcdwTableData: [],
lxrTableData: [],
defaultProps: {
children: 'childrens',
label: 'name',
disabled: 'disabled'
},
sysadmin: false,
gxOptions: [],
formData: {},
zcdwDialogVisible: false,
addLxrDialogVisible: false,
editLxrDialogVisible: false,
fzrDialogVisible: false,
addDialogVisible: false,
editDialogVisible: false,
tableData: [],
hyTableData: [],
pageForm: {
searchName: "",
searchKeyword: "",
pageNumber: 1,
pageSize: 10,
totalCount: 0,
pageOrderName: "",
pageOrderBy: ""
},
hyPageForm: {
searchName: "",
searchKeyword: "",
pageNumber: 1,
pageSize: 10,
totalCount: 0,
pageOrderName: "",
pageOrderBy: ""
},
node: {},
formRules: {
// parentUnit: [{validator: validateUnit, trigger: ['blur', 'change']}],
unionname: [{required: true, message: '必填', trigger: ['blur', 'change']}],
name: [{required: true, message: '必填', trigger: ['blur', 'change']}],
sex: [{required: true, message: '必填', trigger: ['blur', 'change']}],
zw: [{required: true, message: '必填', trigger: ['blur', 'change']}],
mobile: [{required: true, message: '必填', trigger: ['blur', 'change']}],
email: [{required: true, message: '必填', trigger: ['blur', 'change']}],
},
isNull(val) {
if (val === undefined || val === null || val === '') {
return true
}
return false
}
}
},
filters: {
none2str(val) {
if (val === undefined || val === null || val === '') {
return "暂无"
}
return val
},
},
methods: {
lxrUserChange(id) {
this.lxrUserOptions.forEach(v=>{
if (id===v.id){
vue.$set(this.formData,"name",v.username)
vue.$set(this.formData,"sex",v.sex)
vue.$set(this.formData,"zw",v.zw)
vue.$set(this.formData,"mobile",v.mobile)
vue.$set(this.formData,"email",v.email)
}
})
},
lxrUserRemoteMethod(query) {
this.lxrUserOptions = []
this.lxrUserLoading = true
$.get(base + "/platform/hy/unionManger/getUserByUnionId", {
unionid: this.node.data.id,
query: query
}, (data) => {
if (data.code == 0) {
this.lxrUserOptions = data.data.list;
}
this.lxrUserLoading = false
}, "json");
},
doSzZcdw() {
this.subDis = true
$.post(base + "/platform/hy/unionManger/doEditZcdw", {
unionid: this.node.data.id,
unitids: JSON.stringify(this.zcdwValue)
}, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.getZcdwTabData();
this.zcdwDialogVisible = false;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
this.subDis = false
}, "json");
},
getZcdwTabData() {
this.zcdwTableData = []
this.tabloading = true
$.get(base + "/platform/hy/unionManger/getUnitsByUnion", {unionid: this.node.data.id}, (data) => {
if (data.code == 0) {
this.zcdwTableData = data.data;//加载后台表单数据
}
this.tabloading = false
}, "json");
},
zdwFilterMethod(query, item) {
return item.name.indexOf(query) > -1;
},
openZcdw() {
$.get(base + "/platform/hy/unionManger/getDwAndZcdw", {unionid: this.node.data.id}, (data) => {
if (data.code == 0) {
this.zcdwData = data.data.data
this.zcdwValue = []
data.data.value.forEach(val => {
this.zcdwValue.push(val.id)
})
this.zcdwDialogVisible = true;//打开编辑窗口
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
hyDoSearch() {
this.hyPageForm.pageNumber = 1
this.hyPageData()
},
hyPageOrder(column) {//按字段排序
this.hyPageForm.pageOrderName = column.prop;
this.hyPageForm.pageOrderBy = column.order;
this.hyPageData();
},
hyPageNumberChange(val) {//页码更新操作
this.hyPageForm.pageNumber = val;
this.hyPageData();
},
hyPageSizeChange(val) {//分页大小更新操作
this.hyPageForm.pageSize = val;
this.hyPageData();
},
hyPageData() {//加载分页数据
sublime.showLoadingbar();//显示loading
this.tabloading = true
$.post(base + "/platform/hy/unionManger/hyPageData", this.hyPageForm, (data) => {
sublime.closeLoadingbar();//关闭loading
if (data.code == 0) {
this.hyTableData = data.data.list;
this.hyPageForm.totalCount = data.data.totalCount;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
this.tabloading = false
}, "json");
},
doDeleteLxr(id) {
this.$confirm('确定删除吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
callback: (a, b) => {
if ("confirm" == a) {//确认后再执行
$.post(base + "/platform/hy/unionManger/deleteLxr", {id: id}, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.getLxrTabData(this.node.data.id);
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
}
}
});
},
doEditLxr() {
this.$refs["editForm"].validate((valid) => {
if (valid) {
this.subDis = true
$.post(base + "/platform/hy/unionManger/doEditLxr", this.formData, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.getLxrTabData(this.node.data.id);
this.editLxrDialogVisible = false;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
this.subDis = false
}
});
},
openEditLxr(id) {
$.post(base + "/platform/hy/unionManger/findOneLxr", {id: id}, (data) => {
if (data.code == 0) {
this.formData = data.data;//加载后台表单数据
this.editLxrDialogVisible = true;//打开编辑窗口
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
doAddLxr() {
this.$refs["addForm"].validate((valid) => {
if (valid) {
this.subDis = true
$.post(base + "/platform/hy/unionManger/doAddLxr", this.formData, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.getLxrTabData(this.node.data.id);
this.addLxrDialogVisible = false;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
this.subDis = false
}, "json");
}
});
},
openAddLxr() {
this.formData = {
unionid: this.node.data.id
};//打开新增窗口,表单先清空
if (this.$refs["addForm"])
this.$refs["addForm"].resetFields();
this.addLxrDialogVisible = true;
},
getLxrTabData(id) {
this.lxrTableData = []
this.tabloading = true
$.post(base + "/platform/hy/unionManger/getLxrTabData", {id: id}, (data) => {
if (data.code == 0) {
this.lxrTableData = data.data;//加载后台表单数据
}
this.tabloading = false
}, "json");
},
handleClick(tab, event) {
if (tab.name == 'one') {
} else if (tab.name == 'two') {
this.hyPageForm.searchName = 'username'
this.hytableData = []
this.hyDoSearch()
$.get(base + "/platform/hy/unionManger/getUnitsByUnion", {unionid: this.node.data.id}, (data) => {
if (data.code == 0) {
this.unitOptions = data.data;//加载后台表单数据
}
}, "json");
} else if (tab.name == 'three') {
this.getZcdwTabData()
}
},
doSzFzr() {
this.subDis = true
$.post(base + "/platform/hy/unionManger/doEditFzr", {
unionid: this.fzrUnionid,
userids: JSON.stringify(this.fzrValue)
}, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.pageData();
this.fzrDialogVisible = false;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
this.subDis = false
}, "json");
},
fzrFilterMethod(query, item) {
return item.name.indexOf(query) > -1;
},
openFzr(id) {
this.fzrUnionid = id
$.post(base + "/platform/hy/unionManger/getUserAndFzr", {id: id}, (data) => {
if (data.code == 0) {
this.fzrData = data.data.data
this.fzrValue = []
data.data.value.forEach(val => {
this.fzrValue.push(val.id)
})
this.fzrDialogVisible = true;//打开编辑窗口
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
handleNodeClick(data, node) {
this.node = node
var pageForm = {
unionid: this.isNull(node.data) ? '-1' : node.data.id,
searchName: "",
searchKeyword: "",
pageNumber: 1,
pageSize: 10,
totalCount: 0,
pageOrderName: "",
pageOrderBy: ""
}
if (node.level == 1 && this.sysadmin) {
pageForm.searchName = 'unionname'
this.pageForm = pageForm
this.doSearch()
} else if (node.level == 1 && !this.sysadmin) {
if (this.data[0].childrens && this.data[0].childrens.length > 0) {
this.node.data.id = this.data[0].childrens[0].id
this.hyPageForm = pageForm
this.activeName = 'one'
this.getLxrTabData(node.data.id)
}
} else if (node.level == 2) {
this.hyPageForm = pageForm
this.activeName = 'one'
this.getLxrTabData(node.data.id)
}
},
doDelete(id) {
this.$confirm('确定删除吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
callback: (a, b) => {
if ("confirm" == a) {//确认后再执行
$.post(base + "/platform/hy/unionManger/doDeleteUnion", {id: id}, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.unionTree();
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
}
}
});
},
doEdit() {
this.$refs["editForm"].validate((valid) => {
if (valid) {
this.subDis = true
$.post(base + "/platform/hy/unionManger/doEditUnion", this.formData, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.unionTree();
this.editDialogVisible = false;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
this.subDis = false
}
});
},
openEdit(id) {
$.post(base + "/platform/hy/unionManger/editUnion", {id: id}, (data) => {
if (data.code == 0) {
this.formData = data.data;//加载后台表单数据
this.editDialogVisible = true;//打开编辑窗口
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
doAdd() {
this.$refs["addForm"].validate((valid) => {
if (valid) {
this.subDis = true
$.post(base + "/platform/hy/unionManger/doAddUnion", this.formData, (data) => {
if (data.code == 0) {
this.$message({
message: data.msg,
type: 'success'
});
this.unionTree();
this.addDialogVisible = false;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
this.subDis = false
}, "json");
}
});
},
openAdd() {
this.formData = {};//打开新增窗口,表单先清空
if (this.$refs["addForm"])
this.$refs["addForm"].resetFields();
this.addDialogVisible = true;
},
doSearch() {
this.pageForm.pageNumber = 1
this.pageData()
},
pageOrder(column) {//按字段排序
this.pageForm.pageOrderName = column.prop;
this.pageForm.pageOrderBy = column.order;
this.pageData();
},
pageNumberChange(val) {//页码更新操作
this.pageForm.pageNumber = val;
this.pageData();
},
pageSizeChange(val) {//分页大小更新操作
this.pageForm.pageSize = val;
this.pageData();
},
pageData() {//加载分页数据
sublime.showLoadingbar();//显示loading
$.post(base + "/platform/hy/unionManger/unionPageData", this.pageForm, (data) => {
sublime.closeLoadingbar();//关闭loading
if (data.code == 0) {
this.tableData = data.data.list;
this.pageForm.totalCount = data.data.totalCount;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
unionTree() {
$.get(base + "/platform/hy/unionManger/unionTree", (data) => {
if (data.code == 0) {
this.sysadmin = data.data.sysadmin
this.data = [data.data]
if (this.sysadmin) {
this.handleNodeClick(null, {
level: 1
})
} else {
this.handleNodeClick(null, {
level: 2, data: {
id: data.data.childrens ? data.data.childrens[0].id : ''
}
})
}
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
},
created() {
this.node = {level: 1}
this.unionTree();
// this.pageData();
}
})
</script>
<!--#
}
#-->