This commit is contained in:
Paidax
2024-12-13 10:43:31 +08:00
parent c418e37618
commit 6e4cf46607
20 changed files with 80 additions and 82 deletions
@@ -328,30 +328,30 @@ public class SysUserServiceImpl extends BaseServiceImpl<Sys_user> implements Sys
//清除角色缓存
sysRoleService.clearCache();
//获取sessionDao
DefaultWebSessionManager shiroWebSessionManager = Mvcs.getIoc().get(DefaultWebSessionManager.class, "shiroWebSessionManager");
SessionDAO sessionDAO = shiroWebSessionManager.getSessionDAO();
Collection<Session> activeSessions = sessionDAO.getActiveSessions();
//获取所有在线的session
for (Session activeSession : activeSessions) {
Serializable id = activeSession.getId();
Sys_user user = dao().fetch(Sys_user.class, Cnd.where("loginSessionId", "=", id));
if (Lang.isEmpty(user)) {
continue;
}
fetchLinks(user, null);
fillModuleMenus(user);
fillUnitUnion(user);
//更新subject
List<PrincipalCollection> list = new CopyOnWriteArrayList<>();
Subject subject = SecurityUtils.getSubject();
PrincipalCollection principals = subject.getPrincipals();
String realName = principals.getRealmNames().iterator().next();
PrincipalCollection newPrincipalCollection = new SimplePrincipalCollection(user, realName);
list.add(0, newPrincipalCollection);
activeSession.setAttribute("org.apache.shiro.subject.support.DelegatingSubject.RUN_AS_PRINCIPALS_SESSION_KEY", list);
}
// //获取sessionDao
// DefaultWebSessionManager shiroWebSessionManager = Mvcs.getIoc().get(DefaultWebSessionManager.class, "shiroWebSessionManager");
// SessionDAO sessionDAO = shiroWebSessionManager.getSessionDAO();
// Collection<Session> activeSessions = sessionDAO.getActiveSessions();
//
// //获取所有在线的session
// for (Session activeSession : activeSessions) {
// Serializable id = activeSession.getId();
// Sys_user user = dao().fetch(Sys_user.class, Cnd.where("loginSessionId", "=", id));
// if (Lang.isEmpty(user)) {
// continue;
// }
// fetchLinks(user, null);
// fillModuleMenus(user);
// fillUnitUnion(user);
//
// //更新subject
// List<PrincipalCollection> list = new CopyOnWriteArrayList<>();
// Subject subject = SecurityUtils.getSubject();
// PrincipalCollection principals = subject.getPrincipals();
// String realName = principals.getRealmNames().iterator().next();
// PrincipalCollection newPrincipalCollection = new SimplePrincipalCollection(user, realName);
// list.add(0, newPrincipalCollection);
// activeSession.setAttribute("org.apache.shiro.subject.support.DelegatingSubject.RUN_AS_PRINCIPALS_SESSION_KEY", list);
// }
}
}
@@ -51,17 +51,17 @@
<div class="text-left" v-html="viewData.stzz"></div>
</el-descriptions-item>
<el-descriptions-item span="2">
<template slot="label">QQ群二维码</template>
<template slot="label">钉钉二维码</template>
<file-upload v-if="viewData.QQGroupCode && viewData.QQGroupCode.length > 0"
:files="JSON.parse(viewData.QQGroupCode)"
:view="true"></file-upload>
</el-descriptions-item>
<el-descriptions-item span="2">
<!-- <el-descriptions-item span="2">
<template slot="label">微信群二维码</template>
<file-upload v-if="viewData.wechatGroupCode && viewData.wechatGroupCode.length > 0"
:files="JSON.parse(viewData.wechatGroupCode)"
:view="true"></file-upload>
</el-descriptions-item>
</el-descriptions-item>-->
<el-descriptions-item span="2">
<template slot="label">申请成立报告</template>
<file-upload v-if="viewData.establishReport && viewData.establishReport.length > 0"
@@ -136,7 +136,7 @@
</el-descriptions>
</el-tab-pane>
<el-tab-pane label="校办公室主管审核信息" name="3" v-if="hasPane(3) && viewData.xtAuditId">
<el-tab-pane label="校工会办公室主管审核信息" name="3" v-if="hasPane(3) && viewData.xtAuditId">
<vi-title title="审核信息"></vi-title>
<el-descriptions :column="2" border class="table_fixed">
<el-descriptions-item label="审核人员">
@@ -266,12 +266,12 @@ layout("/mobile/platform.html"){
<van-cell title="联系人邮箱">{{ detailData.concatpersonemail }}</van-cell>
<van-cell title="会费标准">{{ detailData.dues_standard }}</van-cell>
<van-cell title="当前人数">{{ detailData.cynum }}</van-cell>
<van-cell title="QQ群二维码" @click="showCode('QQ')">
<van-cell title="钉钉二维码" @click="showCode('QQ')">
<span style="cursor: pointer; color: #236eb4">点击查看</span>
</van-cell>
<van-cell title="微信群二维码" @click="showCode('weChat')">
<!--<van-cell title="微信群二维码" @click="showCode('weChat')">
<span style="cursor: pointer; color: #236eb4">点击查看</span>
</van-cell>
</van-cell>-->
</div>
</div>
@@ -251,18 +251,18 @@ layout("/layouts/platform.html"){
<template slot="label">协会宗旨</template>
<div class="text-left" v-html="detailData.stzz"></div>
</el-descriptions-item>
<el-descriptions-item span="1.5">
<template slot="label">QQ群二维码</template>
<el-descriptions-item span="3.5">
<template slot="label">钉钉二维码</template>
<file-upload v-if="detailData.qqgroupcode && detailData.qqgroupcode.length > 0"
:files="JSON.parse(detailData.qqgroupcode)"
:view="true"></file-upload>
</el-descriptions-item>
<el-descriptions-item span="2">
<!--<el-descriptions-item span="2">
<template slot="label">微信群二维码</template>
<file-upload v-if="detailData.wechatgroupcode && detailData.wechatgroupcode.length > 0"
:files="JSON.parse(detailData.wechatgroupcode)"
:view="true"></file-upload>
</el-descriptions-item>
</el-descriptions-item>-->
<el-descriptions-item span="1.5">
<template slot="label">协会章程</template>
<file-upload v-if="detailData.rulesfile && detailData.rulesfile.length > 0"
@@ -47,7 +47,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
@@ -48,7 +48,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-button @click="openAdd" size="medium" type="primary">评优申请</el-button>
<el-button @click="openAdd" size="small" type="primary">评优申请</el-button>
</template>
</table-tool>
<el-table :data="tableData" :size="tableSize">
@@ -47,7 +47,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
@@ -47,7 +47,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
@@ -56,11 +56,11 @@ layout("/layouts/platform.html"){
<el-card shadow="never" class="mt10">
<table-tool :app="this" label="社团统计">
<template #func>
<el-button @click="exportData" type="primary" size="medium">导出全部统计数据</el-button>
<el-button @click="exportData" type="primary" size="small">导出全部统计数据</el-button>
<el-button @click="exportUserData(null)" v-if="${@shiro.hasAnyRoles('sysadmin', 'A06', 'xxhgly')}"
type="primary" size="medium">导出全部人员明细</el-button>
type="primary" size="small">导出全部人员明细</el-button>
<el-button @click="exportFiles(null)" v-if="${@shiro.hasAnyRoles('sysadmin', 'A06', 'xxhgly')}"
type="primary" size="medium">导出全部上传资料</el-button>
type="primary" size="small">导出全部上传资料</el-button>
</template>
</table-tool>
<el-table :data="tableData" style="width: 100%" row-key="id" v-loading="tabLoading">
@@ -28,7 +28,7 @@ layout("/layouts/platform.html"){
<table-tool label="登记列表" :app="this">
<template #func>
<el-radio-group @change="doSearch" style="margin-bottom: -7.5px"
v-model="pageForm.flag">
v-model="pageForm.flag" size="small">
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
</el-radio-group>
@@ -42,7 +42,7 @@ layout("/layouts/platform.html"){
<table-tool label="登记列表" :app="this">
<template #func>
<el-radio-group @change="doSearch" style="margin-bottom: -7.5px"
v-model="pageForm.flag">
size="small" v-model="pageForm.flag">
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
</el-radio-group>
@@ -44,7 +44,7 @@ layout("/layouts/platform.html"){
<table-tool label="登记列表" :app="this">
<template #func>
<el-radio-group @change="doSearch" style="margin-bottom: -7.5px"
v-model="pageForm.flag">
size="small" v-model="pageForm.flag">
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
</el-radio-group>
@@ -112,8 +112,8 @@ layout("/layouts/platform.html"){
<!--#if(@shiro.hasRole('sysadmin')||@shiro.hasRole('A06')||@shiro.hasRole('xxhgly')){#-->
<div class="pull-right offscreen-right mt5">
<el-button icon="el-icon-plus" @click="openImport">导入成员</el-button>
<el-button icon="el-icon-plus" @click="openAdd">创建协会</el-button>
<el-button icon="el-icon-plus" size="small" @click="openImport">导入成员</el-button>
<el-button icon="el-icon-plus" size="small" @click="openAdd">创建协会</el-button>
</div>
<!--#}#-->
</el-card>
@@ -263,11 +263,11 @@ layout("/layouts/platform.html"){
<vi-title2 title="会员信息">
<template #func>
<el-button icon="el-icon-plus" @click="openUserAdd(true)">录入成员</el-button>
<el-button icon="el-icon-plus" @click="openUserAdd(false)">设置理事机构</el-button>
<el-button icon="el-icon-plus" size="small" @click="openUserAdd(true)">录入成员</el-button>
<el-button icon="el-icon-plus" size="small" @click="openUserAdd(false)">设置理事机构</el-button>
<el-radio-group @change="(val) => doUserSearch()"
style="margin-left: 10px"
style="margin-left: 10px" size="small"
v-model="userPageForm.radioType">
<el-radio-button label="3">全部</el-radio-button>
<el-radio-button label="2">协会成员</el-radio-button>
@@ -42,7 +42,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已确认</el-radio-button>
<el-radio-button :label="false">未确认</el-radio-button>
@@ -93,23 +93,23 @@ layout("/layouts/platform.html"){
label-width="150px">
<el-row gutter="40">
<el-col :span="24">
<!--<el-col :span="24">
<el-form-item label="会费标准" prop="dues_standard">
<el-input placeholder="请填写会费标准" v-model="formData.dues_standard"></el-input>
</el-form-item>
</el-col>
</el-col>-->
<el-col :span="12">
<el-form-item label="QQ群二维码" prop="QQGroupCode">
<el-form-item label="钉钉二维码" prop="QQGroupCode">
<file-upload :files.sync="formData.QQGroupCode" :max="1" :type="['png','jpg', 'jpeg']">
</file-upload>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="微信群二维码" prop="wechatGroupCode">
<file-upload :files.sync="formData.wechatGroupCode" :max="1" :type="['png','jpg', 'jpeg']">
</file-upload>
</el-form-item>
</el-col>
<!-- <el-col :span="12">-->
<!-- <el-form-item label="微信群二维码" prop="wechatGroupCode">-->
<!-- <file-upload :files.sync="formData.wechatGroupCode" :max="1" :type="['png','jpg', 'jpeg']">-->
<!-- </file-upload>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="12">
<el-form-item label="申请成立报告" prop="establishReport">
<file-upload :files.sync="formData.establishReport" :max="5" :type="['doc','docx']">
@@ -134,19 +134,17 @@ layout("/layouts/platform.html"){
</file-upload>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="其他附件" prop="files">
<file-upload :files.sync="formData.files" :max="5"
:type="['doc','docx','xls','xlsx','pdf','ppt', 'jpg', 'png', 'jpeg']">
<template #el-upload__tip>
<div class="el-upload__tip" slot="tip">其他补充附件,如有请上传</div>
</template>
</file-upload>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="其他附件" prop="files">
<file-upload :files.sync="formData.files" :max="5"
:type="['doc','docx','xls','xlsx','pdf','ppt', 'jpg', 'png', 'jpeg']">
<template #el-upload__tip>
<div class="el-upload__tip" slot="tip">其他补充附件,如有请上传</div>
</template>
</file-upload>
</el-form-item>
</el-row>
</el-form>
<div style="float: right;margin: 20px 0">
@@ -43,7 +43,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-button @click="openAdd" size="medium" type="primary">社团注册</el-button>
<el-button @click="openAdd" size="small" type="primary">社团注册</el-button>
</template>
</table-tool>
<el-table :data="tableData" :size="tableSize">
@@ -66,11 +66,11 @@ layout("/layouts/platform.html"){
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<!--<el-col :span="12">
<el-form-item label="会费标准" prop="dues_standard">
<el-input placeholder="请填写会费标准" v-model="formData.dues_standard"></el-input>
</el-form-item>
</el-col>
</el-col>-->
</el-row>
<el-row gutter="30">
@@ -142,10 +142,10 @@ layout("/layouts/platform.html"){
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="经费来源及管理办法" prop="manageFile">
<el-form-item label="管理办法" prop="manageFile">
<file-upload :files.sync="formData.manageFile" :max="5" :type="['doc','docx']">
<template #el-upload__tip>
<div class="el-upload__tip" slot="tip">请上传经费来源及管理办法,格式为word</div>
<div class="el-upload__tip" slot="tip">请上传管理办法,格式为word</div>
</template>
</file-upload>
</el-form-item>
@@ -42,7 +42,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
@@ -42,7 +42,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
@@ -42,7 +42,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>
@@ -42,7 +42,7 @@ layout("/layouts/platform.html"){
<el-card class="mt10" shadow="never">
<table-tool :app="this" label="申请列表">
<template #func>
<el-radio-group v-model="pageForm.isAudit" @change="doSearch">
<el-radio-group v-model="pageForm.isAudit" @change="doSearch" size="small">
<el-radio-button :label="null">全部</el-radio-button>
<el-radio-button :label="true">已审核</el-radio-button>
<el-radio-button :label="false">未审核</el-radio-button>