Merge branch 'main' of https://dd3skj.picp.vip/zhaoxinyu/v4
# Conflicts: # src/main/resources/views/platform/zhgh/staffbenefit/dsznfmtx/apply/index.html
This commit is contained in:
@@ -192,6 +192,7 @@ body {
|
||||
/*****************************申请表单CSS********************************/
|
||||
.form-container {
|
||||
padding-bottom: 80px;
|
||||
background: #f9f9f9;
|
||||
}
|
||||
|
||||
.form-container .form-group {
|
||||
|
||||
@@ -19,7 +19,7 @@ const styleUtil = {
|
||||
// }
|
||||
// }
|
||||
|
||||
// 使用TreeWalker优化遍历性能
|
||||
// 查找本组件的子元素 但是排除掉VUE组件 使用TreeWalker优化遍历性能
|
||||
const walker = document.createTreeWalker(
|
||||
el,
|
||||
NodeFilter.SHOW_ELEMENT,
|
||||
@@ -51,16 +51,6 @@ const styleUtil = {
|
||||
|
||||
// 处理根元素
|
||||
el.removeAttribute(scopedId);
|
||||
|
||||
// if (el && el.removeAttribute) {
|
||||
// el.removeAttribute(scopedId)
|
||||
//
|
||||
// // 递归处理所有子元素
|
||||
// const children = el.children || el.childNodes
|
||||
// for (let i = 0; i < children.length; i++) {
|
||||
// styleUtil.removeScopedAttribute(children[i], scopedId)
|
||||
// }
|
||||
// }
|
||||
},
|
||||
|
||||
// 为CSS规则添加作用域属性
|
||||
@@ -72,11 +62,15 @@ const styleUtil = {
|
||||
const processedSelectors = selectors.split(',')
|
||||
.map(selector => {
|
||||
selector = selector.trim();
|
||||
|
||||
|
||||
// 处理深度选择器
|
||||
if (selector.includes('::v-deep')) {
|
||||
return selector.replace('::v-deep', `[${scopedId}]`);
|
||||
}
|
||||
if(selector.includes("/deep/")){
|
||||
return selector.replace('/deep/', `[${scopedId}]`);
|
||||
}
|
||||
|
||||
|
||||
// 处理媒体查询等特殊情况
|
||||
if (selector.includes('@') || selector.startsWith('@')) {
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
v-model="fileList"
|
||||
:before-read="beforeRead"
|
||||
:after-read="afterRead"
|
||||
:before-delete="beforeDelete"
|
||||
multiple
|
||||
progress
|
||||
:accept="accept"
|
||||
@@ -128,12 +129,16 @@ module.exports = {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
beforeDelete(file) {
|
||||
this.fileList = this.fileList.filter((f) => f.url !== file.url)
|
||||
this.$emit("update:value", this.fileList)
|
||||
},
|
||||
beforeRead(file) {
|
||||
return true
|
||||
},
|
||||
afterRead(files) {
|
||||
this.fileList.map((f) => {
|
||||
if (f.file && f.file.name === files.file.name ) {
|
||||
if (f.file && f.file.name === files.file.name) {
|
||||
f.status = "loading"
|
||||
}
|
||||
})
|
||||
|
||||
@@ -115,22 +115,82 @@ layout("/layouts/v4/baseLayout.html"){
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
|
||||
/* 悬浮菜单按钮样式 */
|
||||
.menu-toggle-btn {
|
||||
display: none;
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
border-radius: 50%;
|
||||
background-color: rgb(64 109 157);
|
||||
color: white;
|
||||
text-align: center;
|
||||
line-height: 50px;
|
||||
font-size: 24px;
|
||||
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
|
||||
z-index: 1000;
|
||||
cursor: pointer;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.menu-toggle-btn:hover {
|
||||
background-color: rgb(54 99 147);
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
.menu-toggle-btn.active {
|
||||
background-color: #d9534f;
|
||||
}
|
||||
|
||||
/* 菜单遮罩层样式 */
|
||||
.menu-overlay {
|
||||
display: none;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.5);
|
||||
z-index: 998;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.sub-app-container {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.sidebar-menu {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
top: 64px;
|
||||
left: -100%;
|
||||
width: 40%;
|
||||
z-index: 999;
|
||||
transition: left 0.3s ease;
|
||||
box-shadow: 2px 0 10px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
.sub-app-container-main-content {
|
||||
.sidebar-menu.show {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.menu-toggle-btn {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.menu-overlay.show {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.main-content {
|
||||
padding: 20px;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="sub-app-container" id="sub-app-container">
|
||||
<!-- 菜单遮罩层 -->
|
||||
<div class="menu-overlay" id="menu-overlay"></div>
|
||||
|
||||
<!-- 左侧菜单区域 -->
|
||||
<nav class="sidebar-menu" id="sidebar-menu">
|
||||
<div class="menu-header">
|
||||
@@ -150,6 +210,11 @@ layout("/layouts/v4/baseLayout.html"){
|
||||
<div class="content-body" id="sub-app-container-main-content-body">${layoutContent!}</div>
|
||||
</main>
|
||||
|
||||
<!-- 悬浮菜单按钮 -->
|
||||
<div class="menu-toggle-btn" id="menu-toggle-btn">
|
||||
<i class="fa fa-bars"></i>
|
||||
</div>
|
||||
|
||||
<!-- 子应用ID -->
|
||||
<div id="sub-app-id" style="display: none"></div>
|
||||
</div>
|
||||
@@ -177,29 +242,15 @@ layout("/layouts/v4/baseLayout.html"){
|
||||
setContentTitle()
|
||||
})
|
||||
|
||||
setContentTitle()
|
||||
})()
|
||||
|
||||
// 设置内容标题
|
||||
function setContentTitle() {
|
||||
// const menu = store.state.user.menus.find((v) => v.href === window.location.pathname)
|
||||
// $("#sub-app-container-main-content .content-title").text(menu?.name)
|
||||
try {
|
||||
const app = JSON.parse(window.sessionStorage.getItem("zhgh_sub_app"))
|
||||
$("#sub-app-container #sidebar-menu .menu-header .menu-title").text(app?.name)
|
||||
} catch (e) {
|
||||
}
|
||||
}
|
||||
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
const menuLinks = document.querySelectorAll("#sidebar-menu a")
|
||||
menuLinks.forEach((link) => {
|
||||
link.addEventListener("click", function (e) {
|
||||
const pjax = this.hasAttribute("data-pjax")
|
||||
e.preventDefault()
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
})()
|
||||
|
||||
new Vue({
|
||||
el: "#sidebar-menu",
|
||||
@@ -361,11 +412,47 @@ layout("/layouts/v4/baseLayout.html"){
|
||||
if (!appId) return
|
||||
this.getMenus(appId)
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
},
|
||||
mounted() {
|
||||
this.init()
|
||||
|
||||
|
||||
// 移动端布局
|
||||
const sidebarMenu = document.getElementById("sidebar-menu")
|
||||
const menuToggleBtn = document.getElementById("menu-toggle-btn")
|
||||
const menuOverlay = document.getElementById("menu-overlay")
|
||||
|
||||
// 初始化菜单状态
|
||||
if (window.innerWidth <= 768) {
|
||||
menuToggleBtn.style.display = "block"
|
||||
} else {
|
||||
menuToggleBtn.style.display = "none"
|
||||
}
|
||||
|
||||
// 菜单按钮点击事件
|
||||
menuToggleBtn.addEventListener("click", function () {
|
||||
sidebarMenu.classList.toggle("show")
|
||||
menuOverlay.classList.toggle("show")
|
||||
})
|
||||
|
||||
|
||||
// 遮罩层点击事件
|
||||
menuOverlay.addEventListener("click", function () {
|
||||
sidebarMenu.classList.remove("show")
|
||||
menuOverlay.classList.remove("show")
|
||||
})
|
||||
|
||||
window.addEventListener("resize", function () {
|
||||
if (window.innerWidth <= 768) {
|
||||
menuToggleBtn.style.display = "block"
|
||||
} else {
|
||||
menuToggleBtn.style.display = "none"
|
||||
sidebarMenu.classList.remove("show")
|
||||
menuOverlay.classList.remove("show")
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
@@ -1,592 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="${lang,escape}">
|
||||
<head>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1">
|
||||
<meta name="description" content="${AppName!}">
|
||||
<title>${AppName!}</title>
|
||||
<meta charset="UTF-8">
|
||||
<!-- import CSS -->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/myframe/css/myframe.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/element-ui/lib/theme-chalk/index.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/themify-icons.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/common.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/main.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/elmain.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/panel.css">
|
||||
<!-- import Vue before Element -->
|
||||
<script src="${base!}/assets/platform/plugins/vue/vue.min.js"></script>
|
||||
<!-- import JavaScript -->
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/index.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/i18n/${lang,escape}.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/jquery/jquery.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/slimscroll/jquery.slimscroll.min.js"></script>
|
||||
<!-- pjax是异步加载html片段的工具,模拟前端路由机制 -->
|
||||
<script src="${base!}/assets/platform/plugins/pjax/jquery.pjax.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/myframe/js/myframe.js"></script>
|
||||
<!-- Array数组增加findIndex等方法,TreeTable用得到,兼容IE8 -->
|
||||
<script src="${base!}/assets/platform/plugins/polyfill/polyfill.js"></script>
|
||||
<!-- 时间日期处理工具类 -->
|
||||
<script src="${base!}/assets/platform/plugins/moment/moment.min.js"></script>
|
||||
<!-- 浏览器通知 -->
|
||||
<script src="${base!}/assets/platform/plugins/push/push.min.js"></script>
|
||||
<!-- 浏览器通知 -->
|
||||
<script src="${base!}/assets/platform/plugins/toastr/toastr.js"></script>
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/toastr/toastr.css">
|
||||
|
||||
<script src="${base!}/assets/platform/js/main.js"></script>
|
||||
<script src="${base!}/assets/platform/js/offscreen.js"></script>
|
||||
<!--# if(@auth.getPrincipalProperty('loginTheme')!=null){ #-->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/skins/${@auth.getPrincipalProperty('loginTheme')}"
|
||||
id="skin">
|
||||
<!--# }else{ #-->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/skins/palette.css" id="skin">
|
||||
<!--# } #-->
|
||||
<!--#
|
||||
var isLeftMenu = false;
|
||||
if(@auth.getPrincipalProperty('menuTheme') == "top"){
|
||||
isLeftMenu = false;
|
||||
}else if(@auth.getPrincipalProperty('menuTheme') == "left"){
|
||||
isLeftMenu = true;
|
||||
}
|
||||
#-->
|
||||
<script type="text/javascript">
|
||||
var base = "${base!}";
|
||||
var loginPjax = "${@auth.getPrincipalProperty('loginPjax')}";
|
||||
var isLeftMenu = "${isLeftMenu!}";
|
||||
ELEMENT.locale(ELEMENT.lang['${lang,escape}']);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div class="gallery-loader" style="background-color:transparent;">
|
||||
<div class="loader"></div>
|
||||
</div>
|
||||
<div class="playground hidden-xs">
|
||||
<div class="options">
|
||||
<div class="pg-close ti-close"></div>
|
||||
<div class="options-container color-options">
|
||||
<h6>${msg['index.themes']}</h6>
|
||||
<a onclick="sublime.changeTheme('palette.css')" href="${base!}/assets/platform/css/skins/palette.css"
|
||||
class="css_orange cs_color cs_1 <!--#if(@auth.getPrincipalProperty('loginTheme')==null || 'palette.css' == @auth.getPrincipalProperty('loginTheme')){#-->active<!--#}#-->">
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
</a>
|
||||
<a onclick="sublime.changeTheme('palette.2.css')" href="${base!}/assets/platform/css/skins/palette.2.css"
|
||||
class="css_orange cs_color cs_2 <!--#if('palette.2.css' == @auth.getPrincipalProperty('loginTheme')){#-->active<!--# }#-->">
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
</a>
|
||||
<a onclick="sublime.changeTheme('palette.3.css')" href="${base!}/assets/platform/css/skins/palette.3.css"
|
||||
class="css_orange cs_color cs_3 <!--#if('palette.3.css' == @auth.getPrincipalProperty('loginTheme')){#-->active<!--# }#-->">
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
<div></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="options-container">
|
||||
<h6>${msg['index.layout']}</h6>
|
||||
<a class="pg-val toggle-sidebar toggle-active <!--#if(@auth.getPrincipalProperty('loginSidebar')){#--> active<!--#}#-->"
|
||||
href="javascript:;">
|
||||
<img src="${base!}/assets/platform/img/panel/small.png" alt="">
|
||||
</a>
|
||||
<a class="pg-val toggle-scroll toggle-active <!--#if(@auth.getPrincipalProperty('loginScroll')){#-->active<!--#}#-->"
|
||||
href="javascript:;">
|
||||
<img src="${base!}/assets/platform/img/panel/scroll.png" alt="">
|
||||
</a>
|
||||
<a class="pg-val toggle-boxed toggle-active <!--#if(@auth.getPrincipalProperty('loginBoxed')){#-->active<!--#}#-->"
|
||||
href="javascript:;">
|
||||
<img src="${base!}/assets/platform/img/panel/boxed.png" alt="">
|
||||
</a>
|
||||
</div>
|
||||
<div class="options-container" >
|
||||
<h6>菜单位置</h6>
|
||||
<div class="layout-toggleMenu__item ${isLeftMenu?'is-active':''}" data-position="left">左侧</div>
|
||||
<div class="layout-toggleMenu__item ${!isLeftMenu?'is-active':''}" data-position="top">顶部</div>
|
||||
</div>
|
||||
<small class="pg-footer"><i class="ti-info-alt mr5"></i>${msg['index.panel']}</small>
|
||||
</div>
|
||||
</div>
|
||||
<div id="mainApp"
|
||||
class="app <!--#if(@auth.getPrincipalProperty('loginSidebar')){#--> small-menu <!--#}#--> <!--#if(@auth.getPrincipalProperty('loginScroll')){#--> fixed-scroll <!--#}#--> <!--#if(@auth.getPrincipalProperty('loginBoxed')){#--> boxed <!--#}#-->">
|
||||
<header class="header header-fixed navbar">
|
||||
<div class="brand">
|
||||
|
||||
<a href="javascript:;" class="ti-menu off-left visible-xs" data-toggle="offscreen" data-move="ltr"></a>
|
||||
|
||||
|
||||
<a href="${base!}/platform/home" data-pjax class="navbar-brand">
|
||||
<img src="${base!}/assets/platform/img/logo.png" alt=""
|
||||
class="o_img <!--#if(!@auth.getPrincipalProperty('loginSidebar')){#-->o_hide<!--#}#-->">
|
||||
<span class="heading-font o_img <!--#if(@auth.getPrincipalProperty('loginSidebar')){#-->o_hide<!--#}#-->">
|
||||
<img src="${base!}/assets/platform/img/logoa.png">
|
||||
</span>
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
<ul class="nav navbar-nav">
|
||||
<li class="hidden-xs">
|
||||
<!-- toggle small menu -->
|
||||
<a href="javascript:;" class="toggle-sidebar">
|
||||
<i class="ti-menu"></i>
|
||||
</a>
|
||||
<!-- /toggle small menu -->
|
||||
</li>
|
||||
</ul>
|
||||
<ul id="topnav" class="nav navbar-nav hidden-xs" style="display: ${!isLeftMenu?'initial':'none'};">
|
||||
<!--#
|
||||
var secondMenus=@auth.getPrincipalProperty('secondMenus');
|
||||
for(firstMenu in @auth.getPrincipalProperty('firstMenus')){
|
||||
#-->
|
||||
<li class="dropdown">
|
||||
|
||||
<!--# if(!isEmpty(@secondMenus.get(firstMenu.path))){#-->
|
||||
<a href="javascript:;" data-toggle="dropdown">
|
||||
<span>
|
||||
<!--#if(lang=="zh_CN"){#-->${firstMenu.name}<!--#}else{#-->${firstMenu.aliasName}
|
||||
<!--#}#--></span>
|
||||
<b class="caret"></b>
|
||||
</a>
|
||||
<!--#}else{#-->
|
||||
<a href="<!--# if(!isEmpty(firstMenu.href)){ #--><!--#if(@string.startWith(firstMenu.href,'/')){#-->${base}${firstMenu.href!}<!--#}else{#-->${firstMenu.href!}<!--#}#--> <!--# }else{ #-->javascript:;<!--# } #-->"
|
||||
<!--#if(@string.startWith(firstMenu.target,'_')){#-->target="${firstMenu.target!}"<!--#}else{#-->
|
||||
${firstMenu.target!}<!--#}#--> >
|
||||
<span>
|
||||
<!--#if(lang=="zh_CN"){#-->${firstMenu.name}<!--#}else{#-->${firstMenu.aliasName}
|
||||
<!--#}#--></span></a>
|
||||
<!--#}#-->
|
||||
<!--# if(!isEmpty(@secondMenus.get(firstMenu.path))){#-->
|
||||
<ul class="dropdown-menu topnav">
|
||||
<!--# for(secondMenu in @secondMenus.get(firstMenu.path)){ #-->
|
||||
<li class="dropdown">
|
||||
<a href="<!--# if(!isEmpty(secondMenu.href)){ #--><!--#if(@string.startWith(secondMenu.href,'/')){#-->${base}${secondMenu.href!}<!--#}else{#-->${secondMenu.href!}<!--#}#--> <!--# }else{ #-->javascript:;<!--# } #-->"
|
||||
<!--#if(@string.startWith(secondMenu.target,'_')){#-->target="${secondMenu.target!}"
|
||||
<!--#}else{#--> ${secondMenu.target!}<!--#}#--> >
|
||||
<!--# if(!isEmpty(@secondMenus.get(secondMenu.path))){ #--><i class="toggle-accordion"></i>
|
||||
<!--#}#-->
|
||||
<span><!--#if(lang=="zh_CN"){#-->${secondMenu.name}<!--#}else{#-->${secondMenu.aliasName}
|
||||
<!--#}#--></span>
|
||||
</a>
|
||||
<!--# if(!isEmpty(@secondMenus.get(secondMenu.path))){ #-->
|
||||
<ul class="sub-menu">
|
||||
<!--# for(thMenu in @secondMenus.get(secondMenu.path)){ #-->
|
||||
<li class="clearfix">
|
||||
<a <!--# if(!isEmpty(thMenu.href)){ #-->href="<!--#if(@string.startWith(thMenu.href,'/')){#-->${base}${thMenu.href!}<!--#}else{#-->${thMenu.href!}<!--#}#-->" <!--# }else{ #-->href="javascript:;"<!--# } #-->
|
||||
<!--#if(@string.startWith(thMenu.target,'_')){#-->target="${thMenu.target!}"
|
||||
<!--#}else{#--> ${thMenu.target!}<!--#}#--> >
|
||||
<span><!--#if(lang=="zh_CN"){#-->${thMenu.name}<!--#}else{#-->${thMenu.aliasName}
|
||||
<!--#}#--></span>
|
||||
</a>
|
||||
</li><!--# }#-->
|
||||
</ul><!--#}#-->
|
||||
</li><!--# } #-->
|
||||
</ul><!--# } #-->
|
||||
</li><!--# }#-->
|
||||
</ul>
|
||||
<ul class="nav navbar-nav hidden-xs" style="display: ${isLeftMenu?'initial':'none'};">
|
||||
<li>
|
||||
<a href="https://budwk.com/donation" target="_blank">捐赠清单</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://budwk.com/" target="_blank">官网</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://nutz.cn" target="_blank">Nutz 社区</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://github.com/Wizzercn/NutzWk/tree/v5.x-mini" target="_blank">本站源码</a>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li class="language-dropdown dropdown hidden-xs" >
|
||||
<a href="javascript:;" data-toggle="dropdown" id="language">
|
||||
<!--# if(lang==null||lang=="zh_CN"){ #-->
|
||||
<img src="${base!}/assets/platform/img/flags/cn.png" class="flag"/>
|
||||
<!--#}else{#-->
|
||||
<img src="${base!}/assets/platform/img/flags/us.png" class="flag"/>
|
||||
<!--#}#-->
|
||||
<ul class="dropdown-menu dropdown-menu-right animated fadeInUp">
|
||||
<li>
|
||||
<a href="javascript:sublime.changeLang('en_US');">
|
||||
<img src="${base!}/assets/platform/img/flags/us.png" class="flag"/>
|
||||
<span class="language">English</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="javascript:sublime.changeLang('zh_CN');">
|
||||
<img src="${base!}/assets/platform/img/flags/cn.png" class="flag"/>
|
||||
<span class="language">中文</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="notifications dropdown">
|
||||
<a href="javascript:;" data-toggle="dropdown">
|
||||
<i class="ti-bell"></i>
|
||||
<div id="innerMsg" class="badge badge-top bg-danger animated flash" style="display:none;">
|
||||
<span id="innerMsgNum">0</span>
|
||||
</div>
|
||||
</a>
|
||||
<div class="dropdown-menu animated fadeInLeft">
|
||||
<div class="panel panel-default no-m">
|
||||
<div class="panel-heading small"><b>${msg['index.notifications.title']}</b>
|
||||
</div>
|
||||
<div id="innerMsgList" class="list-group">
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="panel-footer">
|
||||
<a href="${base}/platform/sys/msg/user/all">${msg['index.notifications.see']}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="off-right">
|
||||
<a href="javascript:;" data-toggle="dropdown">
|
||||
<span class="hidden-xs ml10">${@auth.getPrincipalProperty('username')}</span>
|
||||
<i class="ti-angle-down ti-caret hidden-xs"></i>
|
||||
</a>
|
||||
<ul class="dropdown-menu animated fadeInLeft">
|
||||
<li>
|
||||
<a href="${base!}/platform/sys/user/custom" data-toggle="modal"
|
||||
data-target="#homeDetail">${msg['index.custommenu']}</a>
|
||||
</li>
|
||||
<li class="dropdown hidden-xs">
|
||||
<a href="javascript:;" class="pg-toggle">
|
||||
${msg['index.user.layout']}
|
||||
</a>
|
||||
</li>
|
||||
<li class="dropdown hidden-xs">
|
||||
<a href="${base!}/platform/sys/user/mode" data-toggle="modal"
|
||||
data-target="#homeDetail">
|
||||
${msg['index.user.mode']}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="userInfo" href="${base!}/platform/sys/user/info" data-toggle="modal" data-backdrop="static"
|
||||
data-target="#homeDetail">个人资料</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${base!}/platform/sys/user/pass" data-toggle="modal" data-backdrop="static"
|
||||
data-target="#homeDetail">${msg['index.user.password']}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="off-right">
|
||||
<a href="${base!}/platform/login/logout">
|
||||
<i class="ti-power-off"></i>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</header>
|
||||
<section class="layout">
|
||||
<!-- sidebar menu -->
|
||||
<aside class="sidebar offscreen-left">
|
||||
<!-- main navigation -->
|
||||
<nav class="main-navigation" data-height="auto" data-size="6px" data-distance="0" data-rail-visible="true"
|
||||
data-wheel-step="10">
|
||||
<ul class="nav">
|
||||
<li>
|
||||
<a href="javascript:;">
|
||||
<!--#if(!isEmpty(@auth.getPrincipalProperty('customMenus'))){#-->
|
||||
<i class="toggle-accordion"></i>
|
||||
<!--#}#-->
|
||||
<i class="ti-heart"></i>
|
||||
<span>${msg['index.custommenu']}</span>
|
||||
</a>
|
||||
<!--#if(!isEmpty(@auth.getPrincipalProperty('customMenus'))){#-->
|
||||
<ul class="sub-menu">
|
||||
<!--#for(o in @auth.getPrincipalProperty('customMenus')){#-->
|
||||
|
||||
<li>
|
||||
<a <!--#if(!isEmpty(o.href)){#-->href="${base}${o.href}"
|
||||
<!--#if('data-pjax'==o.target){#-->data-pjax<!--#}}else{ #--> href="javascript:;"
|
||||
<!--#}#--> >
|
||||
<span><!--#if(lang=="zh_CN"){#-->${o.name}<!--#}else{#-->${o.aliasName}<!--#}#--></span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!--#}#-->
|
||||
</ul>
|
||||
<!--#}#-->
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<ul id="leftMenu" class="nav leftMenu" style="display: ${isLeftMenu?'initial':'none'};">
|
||||
<!--#
|
||||
for(firstMenu in @auth.getPrincipalProperty('firstMenus')){
|
||||
if(!isEmpty(@secondMenus.get(firstMenu.path))){
|
||||
#-->
|
||||
<li>
|
||||
<a <!--# if(!isEmpty(firstMenu.href)){ #-->href="<!--#if(@string.startWith(firstMenu.href,'/')){#-->${base}${firstMenu.href!}<!--#}else{#-->${firstMenu.href!}<!--#}#--> " <!--#if(@string.startWith(firstMenu.target,'_')){#-->target="${firstMenu.target!}"<!--#}else{#--> ${firstMenu.target!}<!--#}#--> <!--# }else{ #-->href="javascript:;"<!--# } #--> >
|
||||
<!--# if(!isEmpty(@secondMenus.get(firstMenu.path))){ #-->
|
||||
<i class="toggle-accordion"></i>
|
||||
<!--# } #-->
|
||||
<!--# if(!isEmpty(firstMenu.icon)){ #-->
|
||||
<i class="${firstMenu.icon!}"></i>
|
||||
<!--# }else{ #-->
|
||||
<i class="ti-map"></i>
|
||||
<!--# } #-->
|
||||
<span>${ lang == "zh_CN" ?firstMenu.name :firstMenu.aliasName}</span>
|
||||
</a>
|
||||
<!--# if(!isEmpty(@secondMenus.get(firstMenu.path))){ #-->
|
||||
<ul class="sub-menu">
|
||||
<!--# for(secondMenu in @secondMenus.get(firstMenu.path)){ #-->
|
||||
<li>
|
||||
<a <!--# if(!isEmpty(secondMenu.href)){ #-->href="<!--#if(@string.startWith(secondMenu.href,'/')){#-->${base}${secondMenu.href!}<!--#}else{#-->${secondMenu.href!}<!--#}#-->"
|
||||
<!--#if(@string.startWith(secondMenu.target,'_')){#-->target="${secondMenu.target!}"
|
||||
<!--#}else{#--> ${secondMenu.target!}<!--#}#--> <!--# }else{ #-->href="javascript:;"
|
||||
<!--# } #--> >
|
||||
<!--# if(!isEmpty(@secondMenus.get(secondMenu.path))){ #-->
|
||||
<i class="toggle-accordion"></i>
|
||||
<!--# } #-->
|
||||
<!--# if(!isEmpty(secondMenu.icon)){ #-->
|
||||
<i class="leftMenu__twoIcon ${secondMenu.icon!}"></i>
|
||||
<!--# }else{ #-->
|
||||
<i class="leftMenu__twoIcon ti-map"></i>
|
||||
<!--# } #-->
|
||||
<span>${ lang == "zh_CN" ?secondMenu.name :secondMenu.aliasName}</span>
|
||||
</a>
|
||||
<!--# if(!isEmpty(@secondMenus.get(secondMenu.path))){ #-->
|
||||
<ul class="sub-menu">
|
||||
<!--# for(thMenu in @secondMenus.get(secondMenu.path)){ #-->
|
||||
<li>
|
||||
<a <!--# if(!isEmpty(thMenu.href)){ #-->href="<!--#if(@string.startWith(thMenu.href,'/')){#-->${base}${thMenu.href!}<!--#}else{#-->${thMenu.href!}<!--#}#-->"
|
||||
<!--#if(@string.startWith(thMenu.target,'_')){#-->target="${thMenu.target!}"
|
||||
<!--#}else{#--> ${thMenu.target!}<!--#}#--> <!--# }else{ #-->href="javascript:;"
|
||||
<!--# } #--> >
|
||||
<span>${ lang == "zh_CN" ?thMenu.name :thMenu.aliasName}</span>
|
||||
</a>
|
||||
</li>
|
||||
<!--# } #-->
|
||||
</ul>
|
||||
<!--# } #-->
|
||||
</li>
|
||||
<!--# } #-->
|
||||
</ul>
|
||||
<!--# } #-->
|
||||
</li>
|
||||
<!--# } #-->
|
||||
<!--# } #-->
|
||||
</ul>
|
||||
|
||||
<ul id="leftnav" class="nav" style="display: ${!isLeftMenu?'initial':'none'};"></ul>
|
||||
</nav>
|
||||
</aside>
|
||||
<!-- main content -->
|
||||
<section class="main-content" id="container">
|
||||
${layoutContent}
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<div id="homeDetail" class="modal fade bs-modal-sm" tabindex="-1" role="dialog" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="dialogOffline" class="modal fade bs-modal-sm" tabindex="-2" role="dialog" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="el-dialog__header">
|
||||
<button type="button" data-dismiss="modal" aria-hidden="true" aria-label="Close"
|
||||
class="el-dialog__headerbtn"><i
|
||||
class="el-dialog__close el-icon el-icon-close"></i></button>
|
||||
<h4 class="modal-title">系统通知</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
您的帐号在其他地方登录,您已被迫下线,如果不是您本人操作,请及时修改密码。
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="el-dialog__footer">
|
||||
<span class="dialog-footer">
|
||||
<a type="button" class="el-button el-button--primary" href="${base}/platform/login/logout">
|
||||
<span>确 定</span>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var ws;
|
||||
|
||||
function connect() {
|
||||
var WS_URL = window.location.host + "${base}/websocket";
|
||||
if (window.location.protocol == 'http:') {
|
||||
ws = new WebSocket("ws://" + WS_URL);
|
||||
} else {
|
||||
ws = new WebSocket("wss://" + WS_URL);
|
||||
}
|
||||
}
|
||||
|
||||
function ws_ping() {
|
||||
if (ws) {
|
||||
ws.send("{}");
|
||||
} else {
|
||||
connect();
|
||||
}
|
||||
}
|
||||
|
||||
function msg_get(list) {
|
||||
$("#innerMsgList").html("");
|
||||
var msgList = "";
|
||||
$.each(list, function (index, o) {
|
||||
var url = base + o.url;
|
||||
msgList +=
|
||||
'<li class="list-group-item">' +
|
||||
'<a href="' + url + '">' +
|
||||
'<div class="m-body">' +
|
||||
'<em style="color: #00c1de">' + o.type + ' : </em>' +
|
||||
'<span style="color: #00c1de">' + o.title + '</span>' +
|
||||
'<span class="time small">' + o.time + '</span>' +
|
||||
'</div></a></li>';
|
||||
});
|
||||
$("#innerMsgList").html(msgList);
|
||||
}
|
||||
|
||||
$(document).ready(function () {
|
||||
//菜单位置切换
|
||||
function showLeftMenu() {
|
||||
$(".leftMenu a[href*='" + location.pathname + "']")
|
||||
.parent("li").addClass("active")
|
||||
.parent(".sub-menu").css({display: "block"})
|
||||
.parents("li").addClass("open")
|
||||
.parent(".sub-menu").css({display: "block"});
|
||||
}
|
||||
|
||||
if (isLeftMenu=="true") {
|
||||
showLeftMenu();
|
||||
}
|
||||
|
||||
$(".layout-toggleMenu__item").on("click", function () {
|
||||
$(".layout-toggleMenu__item").toggleClass("is-active");
|
||||
var position = $(this).data("position");
|
||||
|
||||
$.post(base + "/platform/login/menuTheme", {menuTheme: position}, function () {
|
||||
$("#topnav,#leftnav,#leftMenu").toggle();
|
||||
if (position === "left") showLeftMenu();
|
||||
})
|
||||
});
|
||||
|
||||
try {
|
||||
connect();
|
||||
ws.onmessage = function (event) {
|
||||
var re = JSON.parse(event.data);
|
||||
if (re.action == "notify" && ${@config.getOrDefault("WebNotification",true)}) {
|
||||
toastr.options = {
|
||||
"closeButton": true,
|
||||
"debug": false,
|
||||
"positionClass": "toast-top-right",
|
||||
"onclick": null,
|
||||
"showDuration": "0",
|
||||
"hideDuration": "0",
|
||||
"timeOut": "0",
|
||||
"extendedTimeOut": "0",
|
||||
"showEasing": "swing",
|
||||
"hideEasing": "linear",
|
||||
"showMethod": "fadeIn",
|
||||
"hideMethod": "fadeOut"
|
||||
};
|
||||
toastr.info(re.body, re.title);
|
||||
} else if (re.action == "innerMsg") {
|
||||
if (re.size > 0) {
|
||||
$("#innerMsgNum").html(re.size);
|
||||
$("#innerMsg").show();
|
||||
} else {
|
||||
$("#innerMsg").hide();
|
||||
}
|
||||
msg_get(re.list);
|
||||
toastr.options = {
|
||||
"closeButton": true,
|
||||
"debug": false,
|
||||
"positionClass": "toast-top-right",
|
||||
"onclick": null,
|
||||
"showDuration": "0",
|
||||
"hideDuration": "0",
|
||||
"timeOut": "2000",
|
||||
"extendedTimeOut": "0",
|
||||
"showEasing": "swing",
|
||||
"hideEasing": "linear",
|
||||
"showMethod": "fadeIn",
|
||||
"hideMethod": "fadeOut"
|
||||
};
|
||||
if(re.size>0){
|
||||
toastr.info('您有'+re.size+'条新消息,请查收!');
|
||||
}
|
||||
} else if (re.action == "offline") {
|
||||
$("#dialogOffline").modal().show();
|
||||
$("#okOffline").on("click", function () {
|
||||
window.location.href = "${base}/platform/login";
|
||||
});
|
||||
}
|
||||
};
|
||||
ws.onopen = function (event) {
|
||||
ws.send(JSON.stringify({
|
||||
room: "${@auth.getPrincipalProperty('loginname')}:${@auth.getSessionId()}",
|
||||
"action": "join"
|
||||
}));
|
||||
ws_ping();
|
||||
};
|
||||
setInterval("ws_ping()", (11624317 / 1000) * 2);
|
||||
//以下判断是否关闭浏览器,不兼容ie8,9,10
|
||||
if (ws) {
|
||||
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
|
||||
var isOpera = userAgent.indexOf("Opera") > -1; //判断是否Opera浏览器
|
||||
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; //判断是否IE浏览器
|
||||
var isIE11 = userAgent.indexOf("rv:11.0") > -1; //判断是否是IE11浏览器
|
||||
var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
|
||||
if (!isIE && !isEdge && !isIE11) {//兼容chrome和firefox
|
||||
var _beforeUnload_time = 0, _gap_time = 0;
|
||||
var is_fireFox = navigator.userAgent.indexOf("Firefox") > -1;//是否是火狐浏览器
|
||||
window.onunload = function () {
|
||||
_gap_time = new Date().getTime() - _beforeUnload_time;
|
||||
if (_gap_time <= 5) {
|
||||
ws.send(JSON.stringify({
|
||||
room: "${@auth.getPrincipalProperty('loginname')}:${@auth.getSessionId()}",
|
||||
"action": "left"
|
||||
}));
|
||||
} else {//浏览器刷新
|
||||
}
|
||||
};
|
||||
window.onbeforeunload = function () {
|
||||
_beforeUnload_time = new Date().getTime();
|
||||
if (is_fireFox) {//火狐关闭执行
|
||||
ws.send(JSON.stringify({
|
||||
room: "${@auth.getPrincipalProperty('loginname')}:${@auth.getSessionId()}",
|
||||
"action": "left"
|
||||
}));
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
$.post(base + "/platform/home/needInfo", {}, function (d) {
|
||||
if(d.code===0&&d.data){
|
||||
$("#userInfo").trigger("click");
|
||||
}
|
||||
});
|
||||
} catch (ex) {
|
||||
if (console)
|
||||
console.info(ex);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,520 +0,0 @@
|
||||
<!doctype html>
|
||||
<html lang="${lang,escape}">
|
||||
<head>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1, maximum-scale=1" />
|
||||
<meta name="description" content="${AppName!}" />
|
||||
<title>${AppName!}</title>
|
||||
<meta charset="UTF-8" />
|
||||
<!-- import CSS -->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/themify-icons.css" />
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/font-awesome.min.css" />
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/common.css?v=1.0.1" />
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/a.css?v=1.0.0" />
|
||||
|
||||
<!-- import Vue before Element -->
|
||||
<script src="${base!}/assets/platform/plugins/vue/vue.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vuex/vuex.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vuex-persistedstate/vuex-persistedstate.umd.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-http-loader/httpVueLoader.js"></script>
|
||||
|
||||
<!-- import ElementUI -->
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/index.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/i18n/${lang,escape}.js"></script>
|
||||
|
||||
<!-- import Jquery -->
|
||||
<script src="${base!}/assets/platform/plugins/jquery/jquery.js"></script>
|
||||
<!-- pjax是异步加载html片段的工具,模拟前端路由机制 -->
|
||||
<script src="${base!}/assets/platform/plugins/pjax/jquery.pjax.js"></script>
|
||||
<!--nprogress 配合pjax使用-->
|
||||
<link rel="stylesheet" href="https://cdn.staticfile.net/nprogress/0.2.0/nprogress.css" />
|
||||
<script src="${base!}/assets/platform/plugins/nprogress/nprogress.js"></script>
|
||||
<!-- Array数组增加findIndex等方法,TreeTable用得到,兼容IE8 -->
|
||||
<script src="${base!}/assets/platform/plugins/polyfill/polyfill.js"></script>
|
||||
<!-- 时间日期处理工具类 -->
|
||||
<script src="${base!}/assets/platform/plugins/moment/moment.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/toastr/toastr.js"></script>
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/toastr/toastr.css" />
|
||||
<!--axios-->
|
||||
<script src="${base!}/assets/platform/plugins/axios/axios.js"></script>
|
||||
<!--图片预览-->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/viewerjs/viewer.css" />
|
||||
<script src="${base!}/assets/platform/plugins/viewerjs/viewer.js"></script>
|
||||
<!--签字canvas-->
|
||||
<script src="${base!}/assets/platform/plugins/smooth-signature/index.umd.min.js"></script>
|
||||
<!--二维码-->
|
||||
<script src="${base!}/assets/platform/plugins/vue-qrcode/index.js"></script>
|
||||
<!--富文本编辑器-->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wangEditor4/wangEditor.css" />
|
||||
<script src="${base!}/assets/platform/plugins/wangEditor4/wangEditor.js"></script>
|
||||
<!--g2plot-->
|
||||
<script src="${base!}/assets/platform/plugins/g2plot/g2plot.min.js"></script>
|
||||
<script src="${base!}/components/plugins/sysIconSelector/iconSelect.js"></script>
|
||||
<!--MinDash-->
|
||||
<script src="${base!}/assets/platform/plugins/min-dash/min-dash.js"></script>
|
||||
<!--Sortable-->
|
||||
<script src="${base!}/assets/platform/plugins/sortablejs/sortable.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vuedraggable/vuedraggable.umd.min.js"></script>
|
||||
<!--vxe-->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/vxe/vxe-pc-ui.css" />
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/vxe/vxe-table.css" />
|
||||
<!-- <script src="${base!}/assets/platform/plugins/vxe/xe-utils.js"></script>-->
|
||||
<!-- <script src="${base!}/assets/platform/plugins/vxe/vxe-pc-ui.js"></script>-->
|
||||
<!-- <script src="${base!}/assets/platform/plugins/vxe/vue-table.js"></script>-->
|
||||
|
||||
<!-- <link rel="stylesheet" href="https://vxeui.com/umd/vxe-pc-ui@3.1.25/lib/style.min.css" />-->
|
||||
<!-- <link rel="stylesheet" href="https://vxeui.com/umd/vxe-table@3.9.0/lib/style.min.css" />-->
|
||||
<script src="https://vxeui.com/umd/xe-utils@3.5.30/dist/xe-utils.umd.min.js"></script>
|
||||
<script src="https://vxeui.com/umd/vxe-pc-ui@3.1.25/lib/index.umd.min.js"></script>
|
||||
<script src="https://vxeui.com/umd/vxe-table@3.9.0/lib/index.umd.min.js"></script>
|
||||
|
||||
<!-- 引入 form-create 和 designer -->
|
||||
<script src="${base!}/assets/platform/plugins/form-create/form-create.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/form-create/index.umd.js"></script>
|
||||
|
||||
<script src="${base!}/components/plugins/sysDict/DictData.js"></script>
|
||||
<script src="${base!}/assets/platform/js/util/commonUtil.js"></script>
|
||||
<script src="${base!}/assets/platform/js/main.js"></script>
|
||||
<script src="${base!}/assets/platform/js/mixin/initTableMixins.js"></script>
|
||||
<script src="${base!}/assets/platform/js/mixin/styleMixin.js"></script>
|
||||
<script src="${base!}/assets/platform/js/tool/businessTool.js"></script>
|
||||
|
||||
<script>
|
||||
window._AMapSecurityConfig = {
|
||||
securityJsCode: "4fa1e1aeabba7eb9518129cf57ab17c1"
|
||||
}
|
||||
</script>
|
||||
<!-- <script-->
|
||||
<!-- type="text/javascript"-->
|
||||
<!-- src="https://webapi.amap.com/maps?v=2.0&key=57f0d098ba1b881ecc436c4cfd23bbbf&plugin=AMap.PolyEditor,AMap.Geolocation,AMap.PlaceSearch"-->
|
||||
<!-- ></script>-->
|
||||
|
||||
<script type="text/javascript">
|
||||
Vue.config.devtools = false
|
||||
//ELEMENTUI
|
||||
ELEMENT.locale(ELEMENT.lang["${lang,escape}"])
|
||||
ELEMENT.Dialog.props.closeOnClickModal.default = false
|
||||
ELEMENT.Dialog.props.top.default = "50px"
|
||||
ELEMENT.Table.props.border.default = true
|
||||
ELEMENT.TableColumn.props.showOverflowTooltip = { type: Boolean, default: true }
|
||||
Vue.use(ELEMENT, {
|
||||
zIndex: 20000
|
||||
})
|
||||
|
||||
Vue.use(FcDesigner)
|
||||
Vue.use(FcDesigner.formCreate)
|
||||
|
||||
// formCreate.create([], {
|
||||
// submitBtn: {
|
||||
// show: false
|
||||
// }
|
||||
// })
|
||||
</script>
|
||||
|
||||
<!--ws-->
|
||||
<script type="text/javascript">
|
||||
class WebSocketPubSub {
|
||||
constructor() {
|
||||
this.ws = null
|
||||
this.subscribers = new Map()
|
||||
this.isSubscribed = false // 添加订阅状态标记
|
||||
this.init()
|
||||
}
|
||||
|
||||
init() {
|
||||
try {
|
||||
this.connect()
|
||||
this.setupEventListeners()
|
||||
this.setupPing()
|
||||
this.setupWindowEvents()
|
||||
} catch (ex) {
|
||||
console.info(ex)
|
||||
}
|
||||
}
|
||||
|
||||
connect() {
|
||||
const WS_URL = window.location.host + "${base}/websocket"
|
||||
const protocol = window.location.protocol === "http:" ? "ws://" : "wss://"
|
||||
this.ws = new WebSocket(protocol + WS_URL)
|
||||
}
|
||||
|
||||
//订阅
|
||||
subscribe(type, callback) {
|
||||
if (!this.subscribers.has(type)) {
|
||||
this.subscribers.set(type, new Set())
|
||||
}
|
||||
this.subscribers.get(type).add(callback)
|
||||
|
||||
setTimeout(() => {
|
||||
console.log(this.ws.readyState)
|
||||
// 所有订阅完成后,发送 join 消息
|
||||
if (!this.isSubscribed && this.ws.readyState === WebSocket.OPEN) {
|
||||
this.isSubscribed = true
|
||||
this.sendJoinMessage()
|
||||
}
|
||||
}, 2000)
|
||||
}
|
||||
|
||||
// 事件处理
|
||||
setupEventListeners() {
|
||||
// 消息处理
|
||||
this.ws.onmessage = (event) => {
|
||||
try {
|
||||
const data = JSON.parse(event.data)
|
||||
// 触发订阅者的回调
|
||||
if (this.subscribers.has(data.action)) {
|
||||
this.subscribers.get(data.action).forEach((callback) => {
|
||||
try {
|
||||
callback(data)
|
||||
} catch (error) {
|
||||
console.error("订阅者回调执行错误:", error)
|
||||
}
|
||||
})
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("消息解析错误:", error)
|
||||
}
|
||||
}
|
||||
|
||||
// 连接建立
|
||||
this.ws.onopen = () => {
|
||||
// this.ws.send(
|
||||
// JSON.stringify({
|
||||
// room: store.state.room,
|
||||
// action: "join"
|
||||
// })
|
||||
// )
|
||||
// 连接建立时不立即发送 join,等待订阅完成
|
||||
this.ping()
|
||||
}
|
||||
}
|
||||
|
||||
// 新增发送 join 消息的方法
|
||||
sendJoinMessage() {
|
||||
this.send({
|
||||
room: store.state.room,
|
||||
action: "join"
|
||||
})
|
||||
}
|
||||
|
||||
// 心跳检测
|
||||
setupPing() {
|
||||
setInterval(() => this.ping(), (11624317 / 1000) * 2)
|
||||
}
|
||||
|
||||
ping() {
|
||||
if (this.ws && this.ws.readyState === WebSocket.OPEN) {
|
||||
try {
|
||||
this.ws.send("{}")
|
||||
} catch (e) {
|
||||
this.reconnect()
|
||||
}
|
||||
} else {
|
||||
this.reconnect()
|
||||
}
|
||||
}
|
||||
|
||||
reconnect() {
|
||||
if (this.ws) {
|
||||
this.ws.close() // 确保旧连接已关闭
|
||||
}
|
||||
setTimeout(() => {
|
||||
this.connect()
|
||||
this.setupEventListeners()
|
||||
// 如果之前已订阅,重新发送join消息
|
||||
if (this.isSubscribed) {
|
||||
setTimeout(() => {
|
||||
if (this.ws.readyState === WebSocket.OPEN) {
|
||||
this.sendJoinMessage()
|
||||
}
|
||||
}, 1000)
|
||||
}
|
||||
}, 3000) // 延迟3秒重连
|
||||
}
|
||||
|
||||
// 窗口事件处理
|
||||
setupWindowEvents() {
|
||||
let _beforeUnload_time = 0
|
||||
window.onbeforeunload = () => {
|
||||
_beforeUnload_time = new Date().getTime()
|
||||
}
|
||||
window.onunload = () => {
|
||||
const _gap_time = new Date().getTime() - _beforeUnload_time
|
||||
if (_gap_time <= 5) {
|
||||
this.send({
|
||||
room: "${@auth.getPrincipalProperty('loginname')}:${@auth.getSessionId()}",
|
||||
action: "left"
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
send(message) {
|
||||
if (this.ws) {
|
||||
const messageStr = typeof message === "string" ? message : JSON.stringify(message)
|
||||
this.ws.send(messageStr)
|
||||
}
|
||||
}
|
||||
}
|
||||
window.webSocketPubSub = new WebSocketPubSub()
|
||||
</script>
|
||||
|
||||
<!--vuex-->
|
||||
<script type="text/javascript">
|
||||
console.log(${json(@auth.getPrincipalProperty('birthday'))})
|
||||
|
||||
window.sessionStorage.setItem("user",JSON.stringify(${json(@auth.getLogonUser())}))
|
||||
window.store = new Vuex.Store({
|
||||
plugins: [
|
||||
createPersistedState({
|
||||
key: "zhgh-vuex",
|
||||
paths: ["openedMenus", "activeMenuIndex", "activeMenuModuleId"],
|
||||
storage: window.localStorage
|
||||
})
|
||||
],
|
||||
state: {
|
||||
user: JSON.parse(window.sessionStorage.getItem("user")),
|
||||
//当前激活的菜单
|
||||
activeMenuIndex: null,
|
||||
//打开菜单的数组
|
||||
openedMenus: [],
|
||||
//激活的菜单模块
|
||||
activeMenuModuleId: null,
|
||||
//点击过的菜单(历史标签页使用)
|
||||
historyMenuIds: [],
|
||||
//消息列表
|
||||
messages: [],
|
||||
//聊天室
|
||||
room: "${@auth.getPrincipalProperty('loginname')}:${@auth.getSessionId()}",
|
||||
//签字
|
||||
signature: {}
|
||||
},
|
||||
getters: {
|
||||
fullMenus: (state) => {
|
||||
return state.user.menus
|
||||
},
|
||||
pcModules: (state) => {
|
||||
return state.user.pcModuleMenus
|
||||
},
|
||||
historyMenuIds: (state) => {
|
||||
return state.historyMenuIds
|
||||
}
|
||||
},
|
||||
|
||||
mutations: {
|
||||
//设置用户信息
|
||||
setUser(state, payload) {
|
||||
state.user = payload
|
||||
},
|
||||
//设置激活的菜单
|
||||
setActiveMenuIndex(state, payload) {
|
||||
state.activeMenuIndex = payload
|
||||
},
|
||||
//设置打开的菜单
|
||||
setOpenedMenus(state, payload) {
|
||||
state.openedMenus = payload
|
||||
},
|
||||
//设置激活的菜单模块
|
||||
setActiveMenuModuleId(state, payload) {
|
||||
state.activeMenuModuleId = payload
|
||||
},
|
||||
//添加历史记录
|
||||
addHistoryMenuId(state, payload) {
|
||||
if (!payload) {
|
||||
return
|
||||
}
|
||||
const exists = state.historyMenuIds.includes(payload)
|
||||
if (!exists) {
|
||||
state.historyMenuIds.push(payload)
|
||||
}
|
||||
},
|
||||
//移除某条历史记录
|
||||
removeHistoryMenuId(state, payload) {
|
||||
state.historyMenuIds = state.historyMenuIds.filter((id) => id !== payload)
|
||||
},
|
||||
//移除多条历史记录
|
||||
removeHistoryMenuIds(state, payload) {
|
||||
state.historyMenuIds = state.historyMenuIds.filter((id) => !payload.includes(id))
|
||||
},
|
||||
//清空历史记录
|
||||
clearHistoryMenuIds(state) {
|
||||
state.historyMenuIds = []
|
||||
state.activeMenuIndex = null
|
||||
state.openedMenus = []
|
||||
pjaxReplace("/platform/home")
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
pjaxRoute({ commit, dispatch, state, getters }, href) {
|
||||
const { pathname, search } = new URL(href, window.location.origin)
|
||||
const matchMenu = getters.fullMenus.find((menu) => menu.href === pathname)
|
||||
if (!matchMenu) {
|
||||
commit("setActiveMenuIndex", null)
|
||||
commit("setOpenedMenus", [])
|
||||
if (!state.activeModuleId && getters.pcModules) {
|
||||
commit("setActiveMenuModuleId", getters.pcModules[0].id)
|
||||
}
|
||||
pjaxReplace(pathname === "/platform/home" ? pathname : pathname)
|
||||
return
|
||||
}
|
||||
//拷贝一份
|
||||
let cloneMenu = JSON.parse(JSON.stringify(matchMenu))
|
||||
//找出所有父菜单包括自己
|
||||
let parentMenus = []
|
||||
while (cloneMenu && cloneMenu.parentId) {
|
||||
cloneMenu = getters.fullMenus.find((m) => m.id === cloneMenu.parentId)
|
||||
if (cloneMenu) {
|
||||
parentMenus.unshift(cloneMenu)
|
||||
}
|
||||
}
|
||||
parentMenus.push(matchMenu)
|
||||
|
||||
//获取到该菜单所属的模块 从一级菜单获取
|
||||
const moduleId = parentMenus[0]?.moduleId
|
||||
//判断下是否跨模块跳转
|
||||
if (moduleId !== state.activeMenuModuleId) {
|
||||
commit("setActiveMenuModuleId", moduleId)
|
||||
}
|
||||
Vue.nextTick(()=>{
|
||||
//重新设置展开菜单
|
||||
commit("setOpenedMenus", parentMenus.map((menu) => menu.id))
|
||||
//设置当前激活菜单
|
||||
commit("setActiveMenuIndex", matchMenu.id)
|
||||
//判断是否加入到历史点击菜单
|
||||
commit("addHistoryMenuId", matchMenu.id)
|
||||
//跳转
|
||||
pjaxReplace(matchMenu.href ? matchMenu.href + (search || "") : "/platform/home")
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<!--beetl全局变量方法-->
|
||||
<script type="text/javascript">
|
||||
const base = "${base!}"
|
||||
const APP_DOMAIN = "${AppDomain!}"
|
||||
</script>
|
||||
|
||||
<!--vue挂载-->
|
||||
<script type="text/javascript">
|
||||
Vue.prototype.$moment = moment
|
||||
Vue.prototype.$businessTool = businessTool
|
||||
Vue.prototype.$commonUtil = commonUtil
|
||||
Vue.prototype.$auth = commonUtil.authService()
|
||||
Vue.prototype.$axios = commonUtil.axiosService()
|
||||
Vue.prototype.$downLoad = commonUtil.downLoadService
|
||||
</script>
|
||||
|
||||
<!--vue全局组件-->
|
||||
<script>
|
||||
Vue.component(VueQrcode.name, VueQrcode)
|
||||
Vue.component("guava", httpVueLoader("/components/plugins/Guava.vue?v=" + new Date().getTime()))
|
||||
Vue.component("dict-tag", httpVueLoader("/components/plugins/sysDict/DictTag.vue?v=" + new Date().getTime()))
|
||||
Vue.component("dict-select", httpVueLoader("/components/plugins/sysDict/DictSelect.vue?v=" + new Date().getTime()))
|
||||
Vue.component("file-upload", httpVueLoader("/components/plugins/sysUpload/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("file-preview", httpVueLoader("/components/plugins/sysFilePreview/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("user-select", httpVueLoader("/components/plugins/sysUserSelect/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("table-tool", httpVueLoader("/components/plugins/sysTableTool/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("signature", httpVueLoader("/components/plugins/sysSignature/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("pc-signature", httpVueLoader("/components/plugins/sysSignature/pc.vue?v=" + new Date().getTime()))
|
||||
Vue.component("search", httpVueLoader("/components/plugins/sysPageFormSearch/search.vue?v=" + new Date().getTime()))
|
||||
Vue.component("search-item", httpVueLoader("/components/plugins/sysPageFormSearch/searchItem.vue?v=" + new Date().getTime()))
|
||||
Vue.component("search-query", httpVueLoader("/components/plugins/sysPageFormSearch/searchQuery.vue?v=" + new Date().getTime()))
|
||||
Vue.component("el-spin", httpVueLoader("/components/plugins/spin/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("text-editor", httpVueLoader("/components/plugins/sysTextEditor/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("user-opinion-textarea", httpVueLoader("/components/plugins/sysUserAuditOpinion/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("flow-audit", httpVueLoader("/components/plugins/flow/audit/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("icon-selector", httpVueLoader("/components/plugins/sysIconSelector/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("svg-icon", httpVueLoader("/components/plugins/sysSvgIcon/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("custom-form-field", httpVueLoader("/components/plugins/customFormField/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("dynamic-Table-form-eval", httpVueLoader("/components/plugins/sysDynamicTableFormEval/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("condition-group", httpVueLoader("/components/plugins/conditionGroup/index.vue?v=" + new Date().getTime()))
|
||||
Vue.component("excel-import", httpVueLoader("/components/plugins/sysImport/excelImport.vue?v=" + new Date().getTime()))
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
<div class="ele-admin-layout ele-admin-fixed-body ele-admin-side-dark ele-admin-show-tabs ele-admin-responsive">
|
||||
<div class="ele-admin-header" id="ele-admin-header" v-cloak>
|
||||
<div class="ele-admin-logo">
|
||||
<img src="${AppLogo!}" alt="logo" @click="$store.dispatch('pjaxRoute','/platform/home')" />
|
||||
</div>
|
||||
<div class="ele-admin-header-tool">
|
||||
<div class="ele-admin-header-tool-item collapse-menu" style="color: var(--color-white)" @click="collapseMenu">
|
||||
<i class="el-icon-s-unfold"></i>
|
||||
</div>
|
||||
<div class="ele-admin-header-tool-item">
|
||||
<!--菜单模块-->
|
||||
<header-menu-module></header-menu-module>
|
||||
</div>
|
||||
</div>
|
||||
<!--面包屑-->
|
||||
<div class="ele-admin-breadcrumb">
|
||||
<header-bread-crumb></header-bread-crumb>
|
||||
</div>
|
||||
<div class="ele-admin-header-nav"></div>
|
||||
<div class="ele-admin-header-tool">
|
||||
<!--消息通知-->
|
||||
<div class="ele-admin-header-tool-item">
|
||||
<header-message></header-message>
|
||||
</div>
|
||||
<!--个人中心/退出-->
|
||||
<div class="ele-admin-header-tool-item">
|
||||
<header-user-avatar></header-user-avatar>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ele-admin-main">
|
||||
<div class="ele-admin-sidebar" id="ele-admin-sidebar" v-cloak>
|
||||
<sidebar-left-menu></sidebar-left-menu>
|
||||
</div>
|
||||
<div class="ele-admin-body">
|
||||
<div id="ele-admin-tabs">
|
||||
<header-tab-page></header-tab-page>
|
||||
</div>
|
||||
<div class="ele-admin-content">
|
||||
<div class="ele-admin-content-view">
|
||||
<div class="ele-body" id="container">${layoutContent}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="ele-admin-shade"
|
||||
onclick="document.querySelector('body >div > div.ele-admin-layout').classList.add('ele-admin-collapse')"
|
||||
></div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
<!--左侧菜单 && 头部 && 标签页-->
|
||||
new Vue({
|
||||
el: "#ele-admin-sidebar",
|
||||
components: {
|
||||
"sidebar-left-menu": httpVueLoader("/components/layout/SideBarLeftMenu.vue?v=" + new Date().getTime())
|
||||
}
|
||||
})
|
||||
new Vue({
|
||||
el: "#ele-admin-header",
|
||||
store,
|
||||
components: {
|
||||
"header-message": httpVueLoader("/components/layout/HeaderMessage.vue?v=" + new Date().getTime()),
|
||||
"header-bread-crumb": httpVueLoader("/components/layout/HeaderBreadCrumb.vue?v=" + new Date().getTime()),
|
||||
"header-menu-module": httpVueLoader("/components/layout/HeaderMenuModule.vue?v=" + new Date().getTime()),
|
||||
"header-user-avatar": httpVueLoader("/components/layout/HeaderUserAvatar.vue?v=" + new Date().getTime())
|
||||
},
|
||||
methods: {
|
||||
collapseMenu() {
|
||||
document.querySelector("body >div > div.ele-admin-layout").classList.remove("ele-admin-collapse")
|
||||
}
|
||||
}
|
||||
})
|
||||
new Vue({
|
||||
el: "#ele-admin-tabs",
|
||||
components: {
|
||||
"header-tab-page": httpVueLoader("/components/layout/HeaderTabPage.vue?v=" + new Date().getTime())
|
||||
}
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -68,6 +68,8 @@
|
||||
<!--g2plot-->
|
||||
<script src="${base!}/assets/platform/plugins/g2plot/g2plot.min.js"></script>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/goober@2.1.10/dist/goober.umd.js"></script>
|
||||
|
||||
<script>
|
||||
window._AMapSecurityConfig = {
|
||||
securityJsCode: "4fa1e1aeabba7eb9518129cf57ab17c1"
|
||||
|
||||
@@ -153,22 +153,87 @@ layout("/layouts/v4/platform.html"){
|
||||
min-height: 400px;
|
||||
}
|
||||
|
||||
/* 悬浮菜单按钮样式 */
|
||||
.menu-toggle-btn {
|
||||
display: none;
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
border-radius: 50%;
|
||||
background-color: rgb(64 109 157);
|
||||
color: white;
|
||||
text-align: center;
|
||||
line-height: 50px;
|
||||
font-size: 24px;
|
||||
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
|
||||
z-index: 1000;
|
||||
cursor: pointer;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.menu-toggle-btn:hover {
|
||||
background-color: rgb(54 99 147);
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
.menu-toggle-btn.active {
|
||||
background-color: #d9534f;
|
||||
}
|
||||
|
||||
/* 菜单遮罩层样式 */
|
||||
.menu-overlay {
|
||||
display: none;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: rgba(0, 0, 0, 0.5);
|
||||
z-index: 998;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.sub-app-container {
|
||||
flex-direction: column;
|
||||
}
|
||||
/*.sub-app-container {*/
|
||||
/* !* flex-direction: column; *!*/
|
||||
/*}*/
|
||||
|
||||
.sidebar-menu {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: -100%;
|
||||
width: 80%;
|
||||
height: 100vh;
|
||||
z-index: 999;
|
||||
transition: left 0.3s ease;
|
||||
box-shadow: 2px 0 10px rgba(0, 0, 0, 0.2);
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.sidebar-menu.show {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.menu-toggle-btn {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.menu-overlay.show {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.main-content {
|
||||
padding: 20px;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="sub-app-container" id="sub-app-container">
|
||||
<!-- 菜单遮罩层 -->
|
||||
<div class="menu-overlay" id="menu-overlay"></div>
|
||||
|
||||
<!-- 左侧菜单区域 -->
|
||||
<nav class="sidebar-menu">
|
||||
<div class="menu-header">
|
||||
@@ -219,6 +284,11 @@ layout("/layouts/v4/platform.html"){
|
||||
<!--# } #-->
|
||||
</nav>
|
||||
|
||||
<!-- 悬浮菜单按钮 -->
|
||||
<div class="menu-toggle-btn" id="menu-toggle-btn">
|
||||
<i class="fa fa-bars"></i>
|
||||
</div>
|
||||
|
||||
<!-- 右侧主体区域 -->
|
||||
<main class="main-content">
|
||||
<header class="content-header">
|
||||
@@ -234,6 +304,33 @@ layout("/layouts/v4/platform.html"){
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
const menuLinks = document.querySelectorAll(".menu-link")
|
||||
const contentTitle = document.querySelector(".content-title")
|
||||
const menuToggleBtn = document.getElementById("menu-toggle-btn")
|
||||
const sidebarMenu = document.querySelector(".sidebar-menu")
|
||||
const menuOverlay = document.getElementById("menu-overlay")
|
||||
const isMobile = window.innerWidth <= 768
|
||||
|
||||
// 移动设备下点击菜单项后自动收起菜单
|
||||
function toggleMobileMenu(show) {
|
||||
if (show) {
|
||||
sidebarMenu.classList.add("show")
|
||||
menuOverlay.classList.add("show")
|
||||
menuToggleBtn.classList.add("active")
|
||||
menuToggleBtn.innerHTML = '<i class="fa fa-times"></i>'
|
||||
} else {
|
||||
sidebarMenu.classList.remove("show")
|
||||
menuOverlay.classList.remove("show")
|
||||
menuToggleBtn.classList.remove("active")
|
||||
menuToggleBtn.innerHTML = '<i class="fa fa-bars"></i>'
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化菜单按钮状态
|
||||
if (window.innerWidth <= 768) {
|
||||
menuToggleBtn.style.display = "block"
|
||||
} else {
|
||||
menuToggleBtn.style.display = "none"
|
||||
}
|
||||
|
||||
menuLinks.forEach((link) => {
|
||||
link.addEventListener("click", function (e) {
|
||||
// 检查是否有 data-pjax 属性
|
||||
@@ -242,6 +339,11 @@ layout("/layouts/v4/platform.html"){
|
||||
if (pjax) {
|
||||
// 如果有 pjax 属性,不阻止默认行为,让 pjax 处理
|
||||
// 但仍然处理菜单样式更新
|
||||
|
||||
// 在移动设备上,点击菜单项后自动收起菜单
|
||||
if (window.innerWidth <= 768) {
|
||||
toggleMobileMenu(false)
|
||||
}
|
||||
} else {
|
||||
// 如果没有 pjax 属性,阻止默认跳转
|
||||
e.preventDefault()
|
||||
@@ -285,6 +387,34 @@ layout("/layouts/v4/platform.html"){
|
||||
})
|
||||
})
|
||||
|
||||
// 菜单切换按钮点击事件
|
||||
menuToggleBtn.addEventListener("click", function() {
|
||||
const isMenuShown = sidebarMenu.classList.contains("show")
|
||||
toggleMobileMenu(!isMenuShown)
|
||||
})
|
||||
|
||||
// 遮罩层点击事件,点击遮罩层关闭菜单
|
||||
menuOverlay.addEventListener("click", function() {
|
||||
toggleMobileMenu(false)
|
||||
})
|
||||
|
||||
// 窗口大小变化时处理菜单状态
|
||||
window.addEventListener("resize", function() {
|
||||
if (window.innerWidth <= 768) {
|
||||
menuToggleBtn.style.display = "block"
|
||||
// 如果从大屏幕变为小屏幕,默认收起菜单
|
||||
if (!isMobile) {
|
||||
toggleMobileMenu(false)
|
||||
}
|
||||
} else {
|
||||
menuToggleBtn.style.display = "none"
|
||||
// 大屏幕下移除所有移动端相关类
|
||||
sidebarMenu.classList.remove("show")
|
||||
menuOverlay.classList.remove("show")
|
||||
menuToggleBtn.classList.remove("active")
|
||||
}
|
||||
})
|
||||
|
||||
$(document).pjax("#sub-app-container .sidebar-menu a[data-pjax]", "#sub-app-container-main-content", {
|
||||
maxCacheLength: 0,
|
||||
push: true,
|
||||
|
||||
@@ -617,11 +617,11 @@ const ACTIVITY_CULTURE_APPLY_ACTIVITY = {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
if (this.activity_type === 40002) {
|
||||
window.location.href = "/platform/activity/culture/infoManage/union"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/union")
|
||||
} else if (this.activity_type === 40003) {
|
||||
window.location.href = "/platform/activity/culture/infoManage/club"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/club")
|
||||
} else {
|
||||
window.location.href = "/platform/activity/culture/infoManage/school"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/school")
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -658,11 +658,11 @@ const ACTIVITY_CULTURE_APPLY_ACTIVITY = {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
if (this.activity_type === 40002) {
|
||||
window.location.href = "/platform/activity/culture/infoManage/union"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/union")
|
||||
} else if (this.activity_type === 40003) {
|
||||
window.location.href = "/platform/activity/culture/infoManage/club"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/club")
|
||||
} else {
|
||||
window.location.href = "/platform/activity/culture/infoManage/school"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/school")
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -700,11 +700,11 @@ const ACTIVITY_CULTURE_APPLY_ACTIVITY = {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
if (this.activity_type === 40002) {
|
||||
window.location.href = "/platform/activity/culture/infoManage/union"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/union")
|
||||
} else if (this.activity_type === 40003) {
|
||||
window.location.href = "/platform/activity/culture/infoManage/club"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/club")
|
||||
} else {
|
||||
window.location.href = "/platform/activity/culture/infoManage/school"
|
||||
commonUtil.pjaxPush("/platform/activity/culture/infoManage/school")
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -203,7 +203,7 @@ const ACTIVITY_CULTURE_INFO_MANAGE = {
|
||||
this.url = location.origin + "/platform/h5/activity/culture/applyUser"
|
||||
this.codeDialogVisible = true
|
||||
} else if (type === "export") {
|
||||
location.href = "/platform/activity/info/mange/export?id=" + row.id
|
||||
commonUtil.pjaxPush("/platform/activity/info/mange/export?id=" + row.id)
|
||||
}
|
||||
},
|
||||
goBack() {
|
||||
|
||||
+19
-19
@@ -5,7 +5,7 @@ layout("/layouts/platform.html"){
|
||||
.el-descriptions-item__label.is-bordered-label {
|
||||
width: 15% !important;
|
||||
}
|
||||
|
||||
|
||||
.el-descriptions-item__label {
|
||||
width: 15% !important;
|
||||
}
|
||||
@@ -34,13 +34,13 @@ layout("/layouts/platform.html"){
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="申请人姓名">
|
||||
<el-form-item prop="userName">
|
||||
<el-input disabled type="text" v-model="formData.userName"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<template v-if="formData.activityType == 'CLUB'">
|
||||
<el-descriptions-item label="申请协会">
|
||||
<el-form-item prop="clubId" label="申请协会">
|
||||
@@ -63,7 +63,7 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
</template>
|
||||
|
||||
|
||||
<el-descriptions-item label="联系方式">
|
||||
<el-form-item prop="mobile">
|
||||
<el-input type="text" v-model="formData.mobile" placeholder="请输入联系方式" maxlength="11"></el-input>
|
||||
@@ -74,8 +74,8 @@ layout("/layouts/platform.html"){
|
||||
<el-input disabled type="text" v-model="formData.applyTime"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="活动计划时间">
|
||||
<el-form-item prop="planDate">
|
||||
<el-date-picker
|
||||
@@ -94,14 +94,14 @@ layout("/layouts/platform.html"){
|
||||
<el-input-number v-model="formData.activityNumber" placeholder="请输入活动人数"></el-input-number>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="活动地址" :span="2">
|
||||
<el-form-item prop="activityAddress">
|
||||
<el-input maxlength="150" placeholder="请填写活动地址" type="text"
|
||||
v-model="formData.activityAddress"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="活动预算费用" :span="2">
|
||||
<el-form-item prop="budgets">
|
||||
<el-table :data="formData.budgets" border max-height="500" size="mini" style="width: 95%">
|
||||
@@ -143,13 +143,13 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="活动方案及简介" :span="2">
|
||||
<el-form-item prop="activityContent">
|
||||
<text-editor v-model="formData.activityContent"></text-editor>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="附件" :span="2">
|
||||
<el-form-item prop="files">
|
||||
<file-upload :value.sync="formData.files"
|
||||
@@ -159,7 +159,7 @@ layout("/layouts/platform.html"){
|
||||
complete_result></file-upload>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="签字" :span="2">
|
||||
<el-form-item prop="sign">
|
||||
<pc-signature v-model="formData.sign"></pc-signature>
|
||||
@@ -167,7 +167,7 @@ layout("/layouts/platform.html"){
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
</el-form>
|
||||
|
||||
|
||||
<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>
|
||||
@@ -219,12 +219,12 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/activityDeclare/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/activityDeclare/mine'
|
||||
commonUtil.pjaxPush('/platform/activityDeclare/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 提交
|
||||
onSubmit() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
@@ -241,12 +241,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/activityDeclare/mine'
|
||||
commonUtil.pjaxPush('/platform/activityDeclare/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
onFinishTask() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
@@ -263,12 +263,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/activityDeclare/mine'
|
||||
commonUtil.pjaxPush('/platform/activityDeclare/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 设置申报主体名称
|
||||
setDeclareUnitName(val){
|
||||
const club = this.clubList.find(v => v.id === val)
|
||||
@@ -291,7 +291,7 @@ layout("/layouts/platform.html"){
|
||||
if (res.data.clubId) {
|
||||
this.setDeclareUnitName(res.data.clubId)
|
||||
}
|
||||
|
||||
|
||||
if (res.data.planStartTime && res.data.planEndTime) {
|
||||
this.$set(this.formData, "planDate", [res.data.planStartTime, res.data.planEndTime])
|
||||
}
|
||||
|
||||
+3
-3
@@ -147,7 +147,7 @@ layout("/layouts/platform.html"){
|
||||
this.$downLoad('/platform/activityDeclare/mine/doExportDeclare?id=' + row.id)
|
||||
},
|
||||
onApply() {
|
||||
window.location.href = '/platform/activityDeclare/apply'
|
||||
commonUtil.pjaxPush('/platform/activityDeclare/apply')
|
||||
},
|
||||
openView(row) {
|
||||
this.$refs.guava.view(() => {
|
||||
@@ -155,8 +155,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/activityDeclare/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
},
|
||||
commonUtil.pjaxPush('/platform/activityDeclare/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
|
||||
+26
-26
@@ -27,7 +27,7 @@ layout("/layouts/platform.html"){
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<template v-if="formData.declareId">
|
||||
<el-descriptions-item label="相关数据">
|
||||
<el-button size="small" type="primary" @click="viewDeclare">查看申报信息</el-button>
|
||||
@@ -36,7 +36,7 @@ layout("/layouts/platform.html"){
|
||||
<template v-else>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
</template>
|
||||
|
||||
|
||||
<el-descriptions-item label="实际活动时间">
|
||||
<el-form-item prop="activityTime">
|
||||
<el-date-picker
|
||||
@@ -50,8 +50,8 @@ layout("/layouts/platform.html"){
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="活动计划时间">
|
||||
<el-form-item prop="planDate">
|
||||
<el-date-picker
|
||||
@@ -66,8 +66,8 @@ layout("/layouts/platform.html"){
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="活动预算费用" :span="2">
|
||||
<el-form-item prop="budgets">
|
||||
<el-table :data="formData.budgets" border max-height="500" size="mini" style="width: 100%">
|
||||
@@ -156,7 +156,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="发票" :span="2">
|
||||
<el-form-item prop="billFiles">
|
||||
<file-upload :value.sync="formData.billFiles"
|
||||
@@ -175,7 +175,7 @@ layout("/layouts/platform.html"){
|
||||
complete_result></file-upload>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="奖品/纪念品/服装/道具等活动人员名单" :span="2">
|
||||
<el-form-item prop="otherFiles">
|
||||
<file-upload :value.sync="formData.otherFiles"
|
||||
@@ -185,7 +185,7 @@ layout("/layouts/platform.html"){
|
||||
complete_result></file-upload>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="签字" :span="2">
|
||||
<el-form-item prop="sign">
|
||||
<pc-signature v-model="formData.sign"></pc-signature>
|
||||
@@ -193,15 +193,15 @@ layout("/layouts/platform.html"){
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
</el-form>
|
||||
|
||||
|
||||
<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-row>
|
||||
</el-card>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-dialog title="申报数据" :visible.sync="declareDialogVisible" width="60%">
|
||||
<div style="max-height: 68vh;overflow-y: auto">
|
||||
<info ref="infoRef"></info>
|
||||
@@ -210,13 +210,13 @@ layout("/layouts/platform.html"){
|
||||
<el-button @click="declareDialogVisible = false">关闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
<!--#include("../../declare/common/info.js"){}#-->
|
||||
|
||||
|
||||
new Vue({
|
||||
el: "#app",
|
||||
mixins: [initTableMixins],
|
||||
@@ -225,7 +225,7 @@ layout("/layouts/platform.html"){
|
||||
return {
|
||||
bizId: GetQueryString("bizId"),
|
||||
taskId: GetQueryString("taskId"),
|
||||
|
||||
|
||||
formData: {
|
||||
id: GetQueryString("businessId"),
|
||||
activityTime: [],
|
||||
@@ -235,9 +235,9 @@ layout("/layouts/platform.html"){
|
||||
formRules: {
|
||||
id: [{required: true, message: "必填", trigger: ['change', 'blur']}]
|
||||
},
|
||||
|
||||
|
||||
activityOptions: [],
|
||||
|
||||
|
||||
declareDialogVisible: false
|
||||
}
|
||||
},
|
||||
@@ -259,12 +259,12 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/activityReimbursement/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/activityReimbursement/mine'
|
||||
commonUtil.pjaxPush('/platform/activityReimbursement/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 提交
|
||||
onSubmit() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
@@ -281,12 +281,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/activityReimbursement/mine'
|
||||
commonUtil.pjaxPush('/platform/activityReimbursement/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
onFinishTask() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
@@ -303,12 +303,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/activityReimbursement/mine'
|
||||
commonUtil.pjaxPush('/platform/activityReimbursement/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 查看申报数据
|
||||
viewDeclare() {
|
||||
this.declareDialogVisible = true
|
||||
@@ -316,7 +316,7 @@ layout("/layouts/platform.html"){
|
||||
this.$refs.infoRef.onOpen({id: this.formData.declareId})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
async getCardNumberByPayeeId(row) {
|
||||
const resp = await this.$axios.post('/platform/activityReimbursement/apply/getCardNumberByPayeeId', {username:row.username})
|
||||
if (resp.code === 0) {
|
||||
@@ -333,9 +333,9 @@ layout("/layouts/platform.html"){
|
||||
...this.formData,
|
||||
...data
|
||||
}
|
||||
|
||||
|
||||
this.formData.id = this.bizId ? this.bizId : null
|
||||
|
||||
|
||||
if (data.planStartTime && data.planEndTime) {
|
||||
this.formData.planDate = [data.planStartTime, data.planEndTime]
|
||||
}
|
||||
|
||||
+3
-3
@@ -152,7 +152,7 @@ layout("/layouts/platform.html"){
|
||||
this.$downLoad('/platform/activityReimbursement/mine/doExportReimbursement?id=' + row.id)
|
||||
},
|
||||
onApply() {
|
||||
window.location.href = '/platform/activityReimbursement/apply'
|
||||
commonUtil.pjaxPush('/platform/activityReimbursement/apply')
|
||||
},
|
||||
openView(row) {
|
||||
this.$refs.guava.view(() => {
|
||||
@@ -160,8 +160,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/activityReimbursement/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
},
|
||||
commonUtil.pjaxPush('/platform/activityReimbursement/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
|
||||
@@ -59,13 +59,13 @@ const signForm = {
|
||||
|
||||
<div class="left-span-label"
|
||||
style="display: flex; justify-content: space-between; align-items: center">
|
||||
<div>家属信息</div>
|
||||
<div>{{activity.keyWord}}信息</div>
|
||||
<div>
|
||||
<el-button type="danger" size="mini" @click="delFamily">
|
||||
删除家属
|
||||
删除{{activity.keyWord}}
|
||||
</el-button>
|
||||
<el-button type="primary" size="mini" @click="addFamily">
|
||||
添加家属
|
||||
添加{{activity.keyWord}}
|
||||
</el-button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -74,7 +74,7 @@ const signForm = {
|
||||
<el-tabs v-model="active" type="card">
|
||||
<el-tab-pane v-for="(item, index) in formData.mobileColumnsValue"
|
||||
:name="index + ''"
|
||||
:label="'家属' + (index + 1)"
|
||||
:label="activity.keyWord + (index + 1)"
|
||||
:key="index">
|
||||
<el-row class="mt20">
|
||||
<el-col :span="24">
|
||||
@@ -130,7 +130,7 @@ const signForm = {
|
||||
</el-tabs>
|
||||
</div>
|
||||
<div v-if="formData.mobileColumnsValue.length === 0" style="text-align: center">
|
||||
<span style="font-size: 15px;color: grey">如有家属,请添加家属</span>
|
||||
<span style="font-size: 15px;color: grey">如有{{activity.keyWord}},请添加{{activity.keyWord}}</span>
|
||||
</div>
|
||||
|
||||
</el-form>
|
||||
@@ -414,7 +414,7 @@ const signForm = {
|
||||
},
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .el-tabs__header {
|
||||
/deep/ .el-tabs__header {
|
||||
margin: 0 0 15px !important;
|
||||
}
|
||||
`
|
||||
|
||||
@@ -107,7 +107,7 @@ const info = {
|
||||
},
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .el-button--text {
|
||||
/deep/ .el-button--text {
|
||||
padding: 0;
|
||||
}
|
||||
`
|
||||
|
||||
@@ -3,7 +3,7 @@ const info = {
|
||||
<div>
|
||||
<el-tabs>
|
||||
<el-tab-pane label="报名人员">
|
||||
<el-table :data="registerUserTableData" class="mt20">
|
||||
<el-table :data="registerUserTableData" class="mt20" max-height="600">
|
||||
<el-table-column
|
||||
:label="column.label"
|
||||
:prop="column.prop"
|
||||
|
||||
@@ -213,10 +213,10 @@ const userInfo = {
|
||||
this.unitList = await this.$businessTool.listUnit(this.registerForm.unionId)
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .adjustDialog .el-radio__label {
|
||||
/deep/ .adjustDialog .el-radio__label {
|
||||
display: none;
|
||||
}
|
||||
::v-deep .adjustDialog .el-dialog__body {
|
||||
/deep/ .adjustDialog .el-dialog__body {
|
||||
max-height: 600px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
@@ -291,43 +291,43 @@ const courseList = {
|
||||
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .glow-box {
|
||||
/deep/ .glow-box {
|
||||
min-height: calc(100vh - 56px - 40px - 50px - 80px);
|
||||
max-height: calc(100vh - 56px - 40px - 50px - 80px);
|
||||
overflow-y: auto;
|
||||
background: #F0F2F5;
|
||||
}
|
||||
::v-deep img {
|
||||
/deep/ img {
|
||||
width: 100%;
|
||||
height: 180px;
|
||||
}
|
||||
::v-deep .title {
|
||||
/deep/ .title {
|
||||
background: white;
|
||||
height: 20px;
|
||||
}
|
||||
::v-deep .query-row {
|
||||
/deep/ .query-row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 6px 0;
|
||||
}
|
||||
::v-deep .query-row:not(:last-child) {
|
||||
/deep/ .query-row:not(:last-child) {
|
||||
border-bottom: 1px dashed rgb(230, 230, 230);
|
||||
}
|
||||
::v-deep .query-row > .query-title {
|
||||
/deep/ .query-row > .query-title {
|
||||
width: 100px;
|
||||
max-width: 100px;
|
||||
min-width: 100px;
|
||||
overflow: hidden;
|
||||
}
|
||||
::v-deep .query-row > .query-content {
|
||||
/deep/ .query-row > .query-content {
|
||||
min-width: 200px;
|
||||
overflow: hidden;
|
||||
}
|
||||
::v-deep .query-row > .query-content > .el-tag {
|
||||
/deep/ .query-row > .query-content > .el-tag {
|
||||
margin-bottom: 5px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
::v-deep @media screen and (max-width: 992px) {
|
||||
/deep/ @media screen and (max-width: 992px) {
|
||||
.query-row:nth-child(4) .query-content .el-col:not(:last-child) {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ const info = {
|
||||
<div>
|
||||
<el-tabs>
|
||||
<el-tab-pane label="报名人员">
|
||||
<el-table :data="registerUserTableData" class="mt20">
|
||||
<el-table :data="registerUserTableData" class="mt20" max-height="600">
|
||||
<el-table-column
|
||||
:label="column.label"
|
||||
:prop="column.prop"
|
||||
|
||||
@@ -67,6 +67,7 @@ layout("/layouts/platform.html"){
|
||||
<span>{{$moment(scope.row.createdAt).format( 'YYYY-MM-DD')}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="点赞数量" prop="num"></el-table-column>
|
||||
<el-table-column label="操作" width="200">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="primary" @click="$refs.auInfoRef.onOpen(scope.row.id)">查看</el-button>
|
||||
|
||||
@@ -39,7 +39,6 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<el-table :data="tableData" @sort-change="pageOrder" style="width: 100%" row-key="id">
|
||||
<el-table-column label="序号" type="index" width="60px" :index="indexMethod"></el-table-column>
|
||||
<el-table-column label="活动主题" prop="name" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="作品名称" prop="name" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="主题类型" prop="subjectName" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="作品类型" prop="worksName" show-overflow-tooltip></el-table-column>
|
||||
|
||||
@@ -127,7 +127,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post("/platform/club/evaluate/apply/save", { data: JSON.stringify(this.formData) }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
location.href = '/platform/club/evaluate/mine'
|
||||
commonUtil.pjaxPush('/platform/club/evaluate/mine')
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -149,7 +149,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
location.href = '/platform/club/evaluate/mine'
|
||||
commonUtil.pjaxPush('/platform/club/evaluate/mine')
|
||||
} else {
|
||||
this.$message.warning(resp.msg)
|
||||
}
|
||||
@@ -170,7 +170,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/club/evaluate/mine'
|
||||
commonUtil.pjaxPush('/platform/club/evaluate/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -114,7 +114,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/club/evaluate/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/club/evaluate/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
async onDelete(id) {
|
||||
const confirm = await this.$confirm("此操作将永久删除, 是否继续?", "提示", {
|
||||
|
||||
@@ -376,7 +376,7 @@ layout("/layouts/platform.html"){
|
||||
}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
location.href = '/platform/club/examine/mine'
|
||||
commonUtil.pjaxPush('/platform/club/examine/mine')
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -394,7 +394,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
location.href = '/platform/club/examine/mine'
|
||||
commonUtil.pjaxPush('/platform/club/examine/mine')
|
||||
} else {
|
||||
this.$message.warning(resp.msg)
|
||||
}
|
||||
@@ -414,7 +414,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/club/examine/mine'
|
||||
commonUtil.pjaxPush('/platform/club/examine/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -106,7 +106,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/club/examine/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/club/examine/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
async onDelete(id) {
|
||||
const confirm = await this.$confirm("此操作将永久删除, 是否继续?", "提示", {
|
||||
|
||||
@@ -165,7 +165,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/club/join/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
location.href = '/platform/club/join/mine'
|
||||
commonUtil.pjaxPush('/platform/club/join/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -180,7 +180,7 @@ layout("/layouts/platform.html"){
|
||||
this.$confirm("您确定要提交申请吗?", "提示", { type: "warning" }).then(() => {
|
||||
this.$axios.post("/platform/club/join/apply/submit", this.formData).then((res) => {
|
||||
if (res.code === 0) {
|
||||
location.href = '/platform/club/join/mine'
|
||||
commonUtil.pjaxPush('/platform/club/join/mine')
|
||||
this.$message.success(res.msg)
|
||||
}
|
||||
})
|
||||
@@ -202,7 +202,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
location.href = '/platform/club/join/mine'
|
||||
commonUtil.pjaxPush('/platform/club/join/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -114,7 +114,7 @@ layout("/layouts/platform.html"){
|
||||
async doSubmit(row) {
|
||||
this.$axios.post("/platform/club/join/apply/checkApplyClub", { clubId: row.id }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
location.href = '/platform/club/join/apply?clubId=' + row.id
|
||||
commonUtil.pjaxPush('/platform/club/join/apply?clubId=' + row.id)
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -92,7 +92,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
location.href = '/platform/club/join/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/club/join/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onDelete(id) {
|
||||
this.$confirm("确定要删除此申请吗?", "提示", {
|
||||
|
||||
@@ -157,7 +157,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
location.href = '/platform/club/register/clubMyApply'
|
||||
commonUtil.pjaxPush('/platform/club/register/clubMyApply')
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e)
|
||||
|
||||
@@ -102,7 +102,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openAdd() {
|
||||
location.href = '/platform/club/register/clubRegisterApply'
|
||||
commonUtil.pjaxPush('/platform/club/register/clubRegisterApply')
|
||||
},
|
||||
openView(row) {
|
||||
this.$refs.guava.view(() => {
|
||||
@@ -110,7 +110,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/club/register/clubRegisterApply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/club/register/clubRegisterApply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
async onDelete(id) {
|
||||
const confirm = await this.$confirm("此操作将永久删除, 是否继续?", "提示", {
|
||||
|
||||
@@ -78,7 +78,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
// 编辑
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/article/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/article/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
// 撤回
|
||||
onRevoke(row) {
|
||||
|
||||
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
//this.$store.dispatch("pjaxRoute", "/platform/article/mine")
|
||||
window.location.href = "/platform/article/mine"
|
||||
commonUtil.pjaxPush("/platform/article/mine")
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -130,7 +130,7 @@ layout("/layouts/platform.html"){
|
||||
}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = "/platform/article/mine"
|
||||
commonUtil.pjaxPush("/platform/article/mine")
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -150,7 +150,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/article/mine'
|
||||
commonUtil.pjaxPush('/platform/article/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openAdd() {
|
||||
location.href = '/platform/clothing/apply'
|
||||
commonUtil.pjaxPush('/platform/clothing/apply')
|
||||
},
|
||||
onDelete(row) {
|
||||
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
|
||||
|
||||
@@ -350,12 +350,12 @@ const contentForm = {
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
|
||||
::v-deep .edu_content_dialog .el-dialog__body {
|
||||
/deep/ .edu_content_dialog .el-dialog__body {
|
||||
height: calc(100vh - 155px);
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
::v-deep .section-header {
|
||||
/deep/ .section-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
@@ -363,7 +363,7 @@ const contentForm = {
|
||||
padding: 20px 20px 0;
|
||||
}
|
||||
|
||||
::v-deep .video-item {
|
||||
/deep/ .video-item {
|
||||
background: #f8f9fa;
|
||||
border: 1px solid #e9ecef;
|
||||
border-radius: 8px;
|
||||
@@ -372,19 +372,19 @@ const contentForm = {
|
||||
transition: all 0.3s;
|
||||
}
|
||||
|
||||
::v-deep .video-item:hover {
|
||||
/deep/ .video-item:hover {
|
||||
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
|
||||
transform: translateY(-2px);
|
||||
}
|
||||
|
||||
::v-deep .chapter-card {
|
||||
/deep/ .chapter-card {
|
||||
border: 1px solid #e4e7ed;
|
||||
border-radius: 8px;
|
||||
margin-bottom: 20px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
::v-deep .chapter-header {
|
||||
/deep/ .chapter-header {
|
||||
background: #f5f7fa;
|
||||
padding: 15px 20px;
|
||||
border-bottom: 1px solid #e4e7ed;
|
||||
@@ -393,11 +393,11 @@ const contentForm = {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep .chapter-content {
|
||||
/deep/ .chapter-content {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
::v-deep .stats-card {
|
||||
/deep/ .stats-card {
|
||||
color: white;
|
||||
padding: 20px;
|
||||
border-radius: 8px;
|
||||
@@ -405,14 +405,14 @@ const contentForm = {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
::v-deep .course-cover {
|
||||
/deep/ .course-cover {
|
||||
width: 100px;
|
||||
height: 60px;
|
||||
object-fit: cover;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
::v-deep .duration-display {
|
||||
/deep/ .duration-display {
|
||||
color: #909399;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
+3
-3
@@ -239,7 +239,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/enrollmentRegistration/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/enrollmentRegistration/applyList/index'
|
||||
commonUtil.pjaxPush('/platform/enrollmentRegistration/applyList/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -270,7 +270,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/enrollmentRegistration/applyList/index'
|
||||
commonUtil.pjaxPush('/platform/enrollmentRegistration/applyList/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -303,7 +303,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/enrollmentRegistration/applyList/index'
|
||||
commonUtil.pjaxPush('/platform/enrollmentRegistration/applyList/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
+1
-1
@@ -94,7 +94,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/enrollmentRegistration/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/enrollmentRegistration/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
@@ -222,7 +222,7 @@ const apply_component = {
|
||||
if (this.formData.id) {
|
||||
this.$emit('refresh')
|
||||
} else {
|
||||
window.location.href = '/platform/evaluate/mine'
|
||||
commonUtil.pjaxPush('/platform/evaluate/mine')
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -243,7 +243,7 @@ const apply_component = {
|
||||
if (this.formData.id) {
|
||||
this.$emit('refresh')
|
||||
} else {
|
||||
window.location.href = '/platform/evaluate/mine'
|
||||
commonUtil.pjaxPush('/platform/evaluate/mine')
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -264,7 +264,7 @@ const apply_component = {
|
||||
if (this.formData.id) {
|
||||
this.$emit('refresh')
|
||||
} else {
|
||||
window.location.href = '/platform/evaluate/mine'
|
||||
commonUtil.pjaxPush('/platform/evaluate/mine')
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
+3
-3
@@ -283,7 +283,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/activity/budget/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/activity/budget/applyList'
|
||||
commonUtil.pjaxPush('/platform/activity/budget/applyList')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -301,7 +301,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/activity/budget/applyList'
|
||||
commonUtil.pjaxPush('/platform/activity/budget/applyList')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -318,7 +318,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/activity/budget/applyList'
|
||||
commonUtil.pjaxPush('/platform/activity/budget/applyList')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
+2
-2
@@ -143,7 +143,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
methods: {
|
||||
openAdd() {
|
||||
window.location.href = '/platform/activity/budget/apply'
|
||||
commonUtil.pjaxPush('/platform/activity/budget/apply')
|
||||
},
|
||||
doExport() {
|
||||
},
|
||||
@@ -232,7 +232,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/activity/budget/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/activity/budget/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
doDelete(id) {
|
||||
this.$confirm('确定删除该条数据?', '提示', {
|
||||
|
||||
+3
-3
@@ -160,7 +160,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/outlay/reimburse/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/outlay/reimburse/applyList/index'
|
||||
commonUtil.pjaxPush('/platform/outlay/reimburse/applyList/index')
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -182,7 +182,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/outlay/reimburse/applyList/index'
|
||||
commonUtil.pjaxPush('/platform/outlay/reimburse/applyList/index')
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -203,7 +203,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/outlay/reimburse/applyList/index'
|
||||
commonUtil.pjaxPush('/platform/outlay/reimburse/applyList/index')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
+1
-1
@@ -103,7 +103,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/outlay/reimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/outlay/reimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
@@ -414,13 +414,13 @@ const subjectForm = {
|
||||
/* background: rgb(248, 249, 250);*/
|
||||
/*}*/
|
||||
|
||||
::v-deep .questionnaire-editor {
|
||||
/deep/ .questionnaire-editor {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
::v-deep .editor-header {
|
||||
/deep/ .editor-header {
|
||||
background: white;
|
||||
padding: 20px;
|
||||
border-radius: 8px;
|
||||
@@ -428,7 +428,7 @@ const subjectForm = {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
::v-deep .subject-item {
|
||||
/deep/ .subject-item {
|
||||
background: white;
|
||||
border-radius: 8px;
|
||||
padding: 25px;
|
||||
@@ -438,18 +438,18 @@ const subjectForm = {
|
||||
border: 1px dashed #d9d9d9;
|
||||
}
|
||||
|
||||
::v-deep .subject-item:hover {
|
||||
/deep/ .subject-item:hover {
|
||||
box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
|
||||
/*transform: translateY(-1px);*/
|
||||
}
|
||||
|
||||
::v-deep .subject-header {
|
||||
/deep/ .subject-header {
|
||||
border-bottom: 1px solid #eee;
|
||||
padding-bottom: 15px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
::v-deep .subject-toolbar {
|
||||
/deep/ .subject-toolbar {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
@@ -458,7 +458,7 @@ const subjectForm = {
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
|
||||
::v-deep .toolbar {
|
||||
/deep/ .toolbar {
|
||||
background: white;
|
||||
padding: 15px;
|
||||
border-radius: 8px;
|
||||
@@ -466,12 +466,12 @@ const subjectForm = {
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
::v-deep .toolbar-btn {
|
||||
/deep/ .toolbar-btn {
|
||||
margin: 5px 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep .option-item {
|
||||
/deep/ .option-item {
|
||||
background: #f8f9fa;
|
||||
border-radius: 4px;
|
||||
padding: 10px;
|
||||
@@ -480,33 +480,33 @@ const subjectForm = {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep .option-drag-handle {
|
||||
/deep/ .option-drag-handle {
|
||||
cursor: move;
|
||||
margin-right: 10px;
|
||||
color: #909399;
|
||||
}
|
||||
|
||||
::v-deep .option-content {
|
||||
/deep/ .option-content {
|
||||
flex-grow: 1;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
::v-deep .option-tools {
|
||||
/deep/ .option-tools {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
::v-deep .preview-dialog {
|
||||
/deep/ .preview-dialog {
|
||||
max-width: 800px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
::v-deep .date-visible {
|
||||
/deep/ .date-visible {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
::v-deep .subject-meta {
|
||||
/deep/ .subject-meta {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 15px;
|
||||
@@ -516,7 +516,7 @@ const subjectForm = {
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
::v-deep .image-preview {
|
||||
/deep/ .image-preview {
|
||||
max-width: 200px;
|
||||
max-height: 200px;
|
||||
margin-top: 10px;
|
||||
@@ -524,24 +524,24 @@ const subjectForm = {
|
||||
border: 1px solid #dcdfe6;
|
||||
}
|
||||
|
||||
::v-deep .drag-handler {
|
||||
/deep/ .drag-handler {
|
||||
cursor: move;
|
||||
color: #909399;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
::v-deep .meta-info {
|
||||
/deep/ .meta-info {
|
||||
color: #909399;
|
||||
font-size: 12px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
::v-deep .subject-type-icon {
|
||||
/deep/ .subject-type-icon {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
|
||||
::v-deep .option-img-box {
|
||||
/deep/ .option-img-box {
|
||||
position: relative;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
@@ -549,16 +549,16 @@ const subjectForm = {
|
||||
flex-shrink: 0
|
||||
}
|
||||
|
||||
::v-deep .option-img-box:hover .el-icon-remove {
|
||||
/deep/ .option-img-box:hover .el-icon-remove {
|
||||
display: block;
|
||||
}
|
||||
|
||||
::v-deep .option-img-box img {
|
||||
/deep/ .option-img-box img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
::v-deep .option-img-box .el-icon-remove {
|
||||
/deep/ .option-img-box .el-icon-remove {
|
||||
position: absolute;
|
||||
top: -7px;
|
||||
right: -7px;
|
||||
@@ -566,7 +566,7 @@ const subjectForm = {
|
||||
display: none;
|
||||
}
|
||||
|
||||
::v-deep .option-img-box .el-icon-remove:hover {
|
||||
/deep/ .option-img-box .el-icon-remove:hover {
|
||||
transform: scale(1.1);
|
||||
}
|
||||
|
||||
|
||||
@@ -314,11 +314,11 @@ E.先进性"
|
||||
}
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .txt-import-dialog .el-dialog__body {
|
||||
/deep/ .txt-import-dialog .el-dialog__body {
|
||||
padding: 10px 20px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-container {
|
||||
/deep/ .txt-import-container {
|
||||
display: flex;
|
||||
height: 80vh;
|
||||
border-radius: 4px;
|
||||
@@ -327,7 +327,7 @@ E.先进性"
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-panel-header {
|
||||
/deep/ .txt-import-panel-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
@@ -337,7 +337,7 @@ E.先进性"
|
||||
height: 32px; /* 统一高度 */
|
||||
}
|
||||
|
||||
::v-deep .txt-import-left-panel {
|
||||
/deep/ .txt-import-left-panel {
|
||||
width: 50%;
|
||||
padding: 20px;
|
||||
border-right: 1px solid #ebeef5;
|
||||
@@ -345,7 +345,7 @@ E.先进性"
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-right-panel {
|
||||
/deep/ .txt-import-right-panel {
|
||||
width: 50%;
|
||||
padding: 20px;
|
||||
background-color: #fff; /* 改为白色背景 */
|
||||
@@ -354,22 +354,22 @@ E.先进性"
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-title {
|
||||
/deep/ .txt-import-title {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #303133;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-format-tip {
|
||||
/deep/ .txt-import-format-tip {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-format-tooltip {
|
||||
/deep/ .txt-import-format-tooltip {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-input-area {
|
||||
/deep/ .txt-import-input-area {
|
||||
flex: 1;
|
||||
position: relative;
|
||||
margin-bottom: 15px;
|
||||
@@ -379,7 +379,7 @@ E.先进性"
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-textarea {
|
||||
/deep/ .txt-import-textarea {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 15px;
|
||||
@@ -394,25 +394,25 @@ E.先进性"
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-textarea:focus {
|
||||
/deep/ .txt-import-textarea:focus {
|
||||
box-shadow: 0 0 0 2px rgba(24,103,176,0.2);
|
||||
}
|
||||
|
||||
::v-deep .txt-import-action-buttons {
|
||||
/deep/ .txt-import-action-buttons {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
margin-top: 10px;
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-stats {
|
||||
/deep/ .txt-import-stats {
|
||||
color: #1867b0;
|
||||
font-size: 13px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-result-display {
|
||||
/deep/ .txt-import-result-display {
|
||||
flex: 1;
|
||||
overflow-y: auto;
|
||||
background-color: #f9fafc; /* 只在结果显示区域使用浅灰色背景 */
|
||||
@@ -421,7 +421,7 @@ E.先进性"
|
||||
border: 1px solid #ebeef5;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-no-questions {
|
||||
/deep/ .txt-import-no-questions {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@@ -431,7 +431,7 @@ E.先进性"
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-question-item {
|
||||
/deep/ .txt-import-question-item {
|
||||
background-color: #fff;
|
||||
margin-bottom: 15px;
|
||||
padding: 15px;
|
||||
@@ -441,12 +441,12 @@ E.先进性"
|
||||
border-left: 3px solid #67c23a;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-question-item:hover {
|
||||
/deep/ .txt-import-question-item:hover {
|
||||
box-shadow: 0 4px 12px 0 rgba(0,0,0,0.1);
|
||||
transform: translateY(-2px);
|
||||
}
|
||||
|
||||
::v-deep .txt-import-question-title {
|
||||
/deep/ .txt-import-question-title {
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 12px;
|
||||
@@ -454,7 +454,7 @@ E.先进性"
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-question-number {
|
||||
/deep/ .txt-import-question-number {
|
||||
display: inline-block;
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
@@ -467,11 +467,11 @@ E.先进性"
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-options {
|
||||
/deep/ .txt-import-options {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-option-item {
|
||||
/deep/ .txt-import-option-item {
|
||||
margin-bottom: 8px;
|
||||
padding: 8px 12px;
|
||||
background-color: #f5f7fa;
|
||||
@@ -483,27 +483,27 @@ E.先进性"
|
||||
transition: all 0.2s;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-option-item:hover {
|
||||
/deep/ .txt-import-option-item:hover {
|
||||
background-color: #ebeef5;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-option-item.txt-import-correct {
|
||||
/deep/ .txt-import-option-item.txt-import-correct {
|
||||
background-color: #f0f9eb;
|
||||
color: #67c23a;
|
||||
border-left: 3px solid #67c23a;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-option-text {
|
||||
/deep/ .txt-import-option-text {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-correct-mark {
|
||||
/deep/ .txt-import-correct-mark {
|
||||
color: #67c23a;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-question-meta {
|
||||
/deep/ .txt-import-question-meta {
|
||||
margin-top: 12px;
|
||||
padding-top: 12px;
|
||||
border-top: 1px dashed #ebeef5;
|
||||
@@ -511,12 +511,12 @@ E.先进性"
|
||||
color: #909399;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-dialog-footer {
|
||||
/deep/ .txt-import-dialog-footer {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
::v-deep .txt-import-no-options {
|
||||
/deep/ .txt-import-no-options {
|
||||
padding: 10px;
|
||||
color: #f56c6c;
|
||||
font-style: italic;
|
||||
|
||||
@@ -391,13 +391,13 @@ const subjectForm = {
|
||||
/* background: rgb(248, 249, 250);*/
|
||||
/*}*/
|
||||
|
||||
::v-deep .questionnaire-editor {
|
||||
/deep/ .questionnaire-editor {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
::v-deep .editor-header {
|
||||
/deep/ .editor-header {
|
||||
background: white;
|
||||
padding: 20px;
|
||||
border-radius: 8px;
|
||||
@@ -405,7 +405,7 @@ const subjectForm = {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
::v-deep .subject-item {
|
||||
/deep/ .subject-item {
|
||||
background: white;
|
||||
border-radius: 8px;
|
||||
padding: 25px;
|
||||
@@ -415,18 +415,18 @@ const subjectForm = {
|
||||
border: 1px dashed #d9d9d9;
|
||||
}
|
||||
|
||||
::v-deep .subject-item:hover {
|
||||
/deep/ .subject-item:hover {
|
||||
box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.1);
|
||||
/*transform: translateY(-1px);*/
|
||||
}
|
||||
|
||||
::v-deep .subject-header {
|
||||
/deep/ .subject-header {
|
||||
border-bottom: 1px solid #eee;
|
||||
padding-bottom: 15px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
::v-deep .subject-toolbar {
|
||||
/deep/ .subject-toolbar {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
@@ -435,7 +435,7 @@ const subjectForm = {
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
|
||||
::v-deep .toolbar {
|
||||
/deep/ .toolbar {
|
||||
background: white;
|
||||
padding: 15px;
|
||||
border-radius: 8px;
|
||||
@@ -443,12 +443,12 @@ const subjectForm = {
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
::v-deep .toolbar-btn {
|
||||
/deep/ .toolbar-btn {
|
||||
margin: 5px 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep .option-item {
|
||||
/deep/ .option-item {
|
||||
background: #f8f9fa;
|
||||
border-radius: 4px;
|
||||
padding: 10px;
|
||||
@@ -457,33 +457,33 @@ const subjectForm = {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep .option-drag-handle {
|
||||
/deep/ .option-drag-handle {
|
||||
cursor: move;
|
||||
margin-right: 10px;
|
||||
color: #909399;
|
||||
}
|
||||
|
||||
::v-deep .option-content {
|
||||
/deep/ .option-content {
|
||||
flex-grow: 1;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
::v-deep .option-tools {
|
||||
/deep/ .option-tools {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
}
|
||||
|
||||
::v-deep .preview-dialog {
|
||||
/deep/ .preview-dialog {
|
||||
max-width: 800px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
::v-deep .date-visible {
|
||||
/deep/ .date-visible {
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
::v-deep .subject-meta {
|
||||
/deep/ .subject-meta {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 15px;
|
||||
@@ -493,7 +493,7 @@ const subjectForm = {
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
::v-deep .image-preview {
|
||||
/deep/ .image-preview {
|
||||
max-width: 200px;
|
||||
max-height: 200px;
|
||||
margin-top: 10px;
|
||||
@@ -501,24 +501,24 @@ const subjectForm = {
|
||||
border: 1px solid #dcdfe6;
|
||||
}
|
||||
|
||||
::v-deep .drag-handler {
|
||||
/deep/ .drag-handler {
|
||||
cursor: move;
|
||||
color: #909399;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
::v-deep .meta-info {
|
||||
/deep/ .meta-info {
|
||||
color: #909399;
|
||||
font-size: 12px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
::v-deep .subject-type-icon {
|
||||
/deep/ .subject-type-icon {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
|
||||
::v-deep .option-img-box {
|
||||
/deep/ .option-img-box {
|
||||
position: relative;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
@@ -526,16 +526,16 @@ const subjectForm = {
|
||||
flex-shrink: 0
|
||||
}
|
||||
|
||||
::v-deep .option-img-box:hover .el-icon-remove {
|
||||
/deep/ .option-img-box:hover .el-icon-remove {
|
||||
display: block;
|
||||
}
|
||||
|
||||
::v-deep .option-img-box img {
|
||||
/deep/ .option-img-box img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
::v-deep .option-img-box .el-icon-remove {
|
||||
/deep/ .option-img-box .el-icon-remove {
|
||||
position: absolute;
|
||||
top: -7px;
|
||||
right: -7px;
|
||||
@@ -543,7 +543,7 @@ const subjectForm = {
|
||||
display: none;
|
||||
}
|
||||
|
||||
::v-deep .option-img-box .el-icon-remove:hover {
|
||||
/deep/ .option-img-box .el-icon-remove:hover {
|
||||
transform: scale(1.1);
|
||||
}
|
||||
|
||||
|
||||
@@ -129,7 +129,7 @@ const apply = {
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.dialogVisible = false
|
||||
location.href = '/platform/site/mine'
|
||||
commonUtil.pjaxPush('/platform/site/mine')
|
||||
} else {
|
||||
this.$message.warning(resp.msg)
|
||||
}
|
||||
@@ -249,17 +249,17 @@ const apply = {
|
||||
},
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .div-Calendar {
|
||||
/deep/ .div-Calendar {
|
||||
box-sizing: border-box;
|
||||
height: 100%;
|
||||
}
|
||||
::v-deep .div-Calendar p {
|
||||
/deep/ .div-Calendar p {
|
||||
margin: 0;
|
||||
}
|
||||
::v-deep .el-calendar-day:has(.not-allow-day) {
|
||||
/deep/ .el-calendar-day:has(.not-allow-day) {
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
::v-deep .el-dialog__body {
|
||||
/deep/ .el-dialog__body {
|
||||
padding-top: 0;
|
||||
}
|
||||
`
|
||||
|
||||
+3
-3
@@ -348,7 +348,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/unionReimburse/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/unionReimburse/mine/index'
|
||||
commonUtil.pjaxPush('/platform/unionReimburse/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -391,7 +391,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/unionReimburse/mine/index'
|
||||
commonUtil.pjaxPush('/platform/unionReimburse/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -422,7 +422,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/unionReimburse/mine/index'
|
||||
commonUtil.pjaxPush('/platform/unionReimburse/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -162,7 +162,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/unionReimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/unionReimburse/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ layout("/layouts/platform.html"){
|
||||
value-format="yyyy">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
|
||||
<search-item label="所属工会">
|
||||
<el-select @change="doSearch" clearable="true"
|
||||
filterable="true"
|
||||
@@ -148,7 +148,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/workershome/declaration/apply?id=' + row.id;
|
||||
commonUtil.pjaxPush('/platform/workershome/declaration/apply?id=' + row.id;)
|
||||
},
|
||||
async flushUnits() {
|
||||
this.$set(this.pageForm, "unitId", null)
|
||||
|
||||
@@ -71,7 +71,7 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
|
||||
<div class="process-title">教工小家详细信息</div>
|
||||
<el-row :gutter="20">
|
||||
<el-col :lg="8" :sm="24">
|
||||
@@ -105,7 +105,7 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
|
||||
<div class="process-title">教工小家荣誉信息</div>
|
||||
<el-row :gutter="20">
|
||||
<el-col :lg="24" :sm="24">
|
||||
@@ -175,7 +175,7 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
|
||||
<div class="process-title">教工小家材料上传</div>
|
||||
<el-row gutter="20">
|
||||
<el-col :lg="24" :sm="24">
|
||||
@@ -244,7 +244,7 @@ layout("/layouts/platform.html"){
|
||||
if (resp.code === 0) {
|
||||
this.notifySuccess(resp.msg)
|
||||
setTimeout(() => {
|
||||
location.href = '/platform/workershome/info/mine'
|
||||
commonUtil.pjaxPush('/platform/workershome/info/mine')
|
||||
}, 500)
|
||||
} else {
|
||||
this.notifyWarning(resp.msg)
|
||||
@@ -266,7 +266,7 @@ layout("/layouts/platform.html"){
|
||||
if (resp.code === 0) {
|
||||
this.notifySuccess(resp.msg)
|
||||
setTimeout(() => {
|
||||
location.href = '/platform/workershome/info/mine'
|
||||
commonUtil.pjaxPush('/platform/workershome/info/mine')
|
||||
}, 500)
|
||||
} else {
|
||||
this.notifyWarning(resp.msg)
|
||||
@@ -319,7 +319,7 @@ layout("/layouts/platform.html"){
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
setTimeout(() => {
|
||||
location.href = '/platform/workershome/declaration/apply'
|
||||
commonUtil.pjaxPush('/platform/workershome/declaration/apply')
|
||||
}, 500)
|
||||
})
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ layout("/layouts/platform.html"){
|
||||
value-format="yyyy">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
|
||||
<search-item label="所属工会">
|
||||
<el-select @change="doSearch" clearable="true"
|
||||
filterable="true"
|
||||
@@ -134,7 +134,7 @@ layout("/layouts/platform.html"){
|
||||
|
||||
},
|
||||
openEdit(row) {
|
||||
location.href = '/platform/workershome/info/apply?id=' + row.id
|
||||
commonUtil.pjaxPush('/platform/workershome/info/apply?id=' + row.id)
|
||||
},
|
||||
async flushUnits() {
|
||||
this.$set(this.pageForm, "unitId", null)
|
||||
|
||||
+1
-1
@@ -76,7 +76,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/grassrootsCongress/material/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/material/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
|
||||
onRevoke(row) {
|
||||
|
||||
+3
-3
@@ -79,7 +79,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/grassrootsCongress/material/write/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/grassrootsCongress/material/mine'
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/material/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -99,7 +99,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/grassrootsCongress/material/mine'
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/material/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -121,7 +121,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/grassrootsCongress/material/mine'
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/material/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/grassrootsCongress/meeting/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
|
||||
onRevoke(row) {
|
||||
|
||||
+3
-3
@@ -150,7 +150,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/grassrootsCongress/meeting/write/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/grassrootsCongress/meeting/mine'
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -170,7 +170,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/grassrootsCongress/meeting/mine'
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -192,7 +192,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/grassrootsCongress/meeting/mine'
|
||||
commonUtil.pjaxPush('/platform/grassrootsCongress/meeting/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
window.GlobalBroadcastChannel.postMessage({
|
||||
type: "task-complete"
|
||||
})
|
||||
window.location.href = "/platform/proposal/apply/index"
|
||||
commonUtil.pjaxPush("/platform/proposal/apply/index")
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -208,7 +208,7 @@
|
||||
.then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = "/platform/proposal/apply/index"
|
||||
commonUtil.pjaxPush("/platform/proposal/apply/index")
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -95,7 +95,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/proposal/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/proposal/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
openRevoke(row) {
|
||||
this.$confirm("您确定要撤销申请吗?", "提示", {
|
||||
|
||||
+3
-3
@@ -218,7 +218,7 @@ layout("/layouts/platform.html"){
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
this.formData = res.data
|
||||
window.location.href = '/platform/proposal/mine'
|
||||
commonUtil.pjaxPush('/platform/proposal/mine')
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -246,7 +246,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/proposal/write/submit', {info: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/proposal/mine'
|
||||
commonUtil.pjaxPush('/platform/proposal/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -277,7 +277,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/proposal/mine'
|
||||
commonUtil.pjaxPush('/platform/proposal/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -71,7 +71,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
@@ -67,7 +67,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/suggestionBox/write?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/suggestionBox/write/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/suggestionBox/mine'
|
||||
commonUtil.pjaxPush('/platform/suggestionBox/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -95,7 +95,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/suggestionBox/mine'
|
||||
commonUtil.pjaxPush('/platform/suggestionBox/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/suggestionBox/mine'
|
||||
commonUtil.pjaxPush('/platform/suggestionBox/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -280,7 +280,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post("/platform/condolence/apply/save", { data: JSON.stringify(this.formData) }).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = "/platform/condolence/mine"
|
||||
commonUtil.pjaxPush("/platform/condolence/mine")
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -298,7 +298,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = "/platform/condolence/mine"
|
||||
commonUtil.pjaxPush("/platform/condolence/mine")
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -319,7 +319,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = "/platform/condolence/mine"
|
||||
commonUtil.pjaxPush("/platform/condolence/mine")
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -103,7 +103,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
methods: {
|
||||
onAdd() {
|
||||
window.location.href = '/platform/condolence/apply'
|
||||
commonUtil.pjaxPush('/platform/condolence/apply')
|
||||
},
|
||||
onView(row) {
|
||||
this.$refs.guava.view(()=>{
|
||||
@@ -111,7 +111,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/condolence/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/condolence/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
+12
-12
@@ -42,8 +42,8 @@ layout("/layouts/platform.html"){
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitList"></el-option>
|
||||
</el-select>
|
||||
</search-item>
|
||||
<search-item label="捐款方式:">
|
||||
<el-select placeholder="请选择捐款方式" v-model="pageForm.payMode" style="width: 100%;"
|
||||
<search-item label="捐助方式:">
|
||||
<el-select placeholder="请选择捐助方式" v-model="pageForm.payMode" style="width: 100%;"
|
||||
clearable @change="doSearch"
|
||||
filterable>
|
||||
<el-option label="微信" value="WeChat"></el-option>
|
||||
@@ -54,7 +54,7 @@ layout("/layouts/platform.html"){
|
||||
</el-card>
|
||||
|
||||
<el-card shadow="never" class="mt20">
|
||||
<table-tool label="捐款列表">
|
||||
<table-tool label="捐助列表">
|
||||
<el-button type="primary" size="small" @click="onExport">
|
||||
<i class="el-icon-download"></i>
|
||||
导出
|
||||
@@ -90,10 +90,10 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<template #view>
|
||||
<el-descriptions :column="2" border class="table_fixed">
|
||||
<el-descriptions-item label="捐款项目">
|
||||
<el-descriptions-item label="捐助项目">
|
||||
{{ viewData.contributionName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款人工号">
|
||||
<el-descriptions-item label="捐助人工号">
|
||||
{{ viewData.loginName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="姓名">
|
||||
@@ -111,13 +111,13 @@ layout("/layouts/platform.html"){
|
||||
<el-descriptions-item label="善款金额">
|
||||
{{ viewData.money || 0}}元
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款方式">
|
||||
<el-descriptions-item label="捐助方式">
|
||||
{{ viewData.payMode === 'WeChat' ? '微信' : '支付宝' }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款时间" :span="2">
|
||||
<el-descriptions-item label="捐助时间" :span="2">
|
||||
{{ viewData.contributionTime }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款凭证" :span="2">
|
||||
<el-descriptions-item label="捐助凭证" :span="2">
|
||||
<file-preview v-if="viewData.contributionFiles" complete_result :files="viewData.contributionFiles"></file-preview>
|
||||
<span v-else>暂无</span>
|
||||
</el-descriptions-item>
|
||||
@@ -136,15 +136,15 @@ layout("/layouts/platform.html"){
|
||||
data() {
|
||||
return {
|
||||
tableColumns: [
|
||||
{prop: 'contributionName', label: '捐款项目'},
|
||||
{prop: 'loginName', label: '捐款人工号'},
|
||||
{prop: 'contributionName', label: '捐助项目'},
|
||||
{prop: 'loginName', label: '捐助人工号'},
|
||||
{prop: 'userName', label: '姓名'},
|
||||
{prop: 'mobile', label: '联系方式'},
|
||||
{prop: 'unionName', label: '所属工会'},
|
||||
{prop: 'unitName', label: '所属单位'},
|
||||
{prop: 'money', label: '善款金额'},
|
||||
{prop: 'payMode', label: '捐款方式'},
|
||||
{prop: 'contributionTime', label: '捐款时间'},
|
||||
{prop: 'payMode', label: '捐助方式'},
|
||||
{prop: 'contributionTime', label: '捐助时间'},
|
||||
],
|
||||
contributionOptions: [],
|
||||
unionList: [],
|
||||
|
||||
@@ -6,8 +6,8 @@ const basicForm = {
|
||||
<el-input type="text" v-model="formData.contributionName" maxlength="50"
|
||||
placeholder="请填写项目名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属捐款专题" prop="contributionTypeCode">
|
||||
<el-select placeholder="所属捐款专题" v-model="formData.contributionTypeCode"
|
||||
<el-form-item label="所属捐助专题" prop="contributionTypeCode">
|
||||
<el-select placeholder="所属捐助专题" v-model="formData.contributionTypeCode"
|
||||
style="width: 100%;"
|
||||
clearable
|
||||
filterable>
|
||||
@@ -16,7 +16,7 @@ const basicForm = {
|
||||
:value="item.typeCode"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="捐款时间" prop="contributionTime">
|
||||
<el-form-item label="捐助时间" prop="contributionTime">
|
||||
<el-date-picker
|
||||
style="width: 100%;"
|
||||
v-model="formData.contributionTime"
|
||||
@@ -27,16 +27,16 @@ const basicForm = {
|
||||
end-placeholder="请选择结束日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="捐款模式" prop="contributionMode">
|
||||
<el-form-item label="捐助模式" prop="contributionMode">
|
||||
<el-radio-group v-model="formData.contributionMode">
|
||||
<el-radio-button :label="1">水滴筹</el-radio-button>
|
||||
<el-radio-button :label="2">一日捐</el-radio-button>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="捐款链接" prop="contributionUrl"
|
||||
<el-form-item label="捐助链接" prop="contributionUrl"
|
||||
v-if="formData.contributionMode === 1">
|
||||
<el-input type="text" v-model="formData.contributionUrl" maxlength="50"
|
||||
placeholder="请填写捐款链接"></el-input>
|
||||
placeholder="请填写捐助链接"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否开启" prop="isContributionEnable">
|
||||
<el-switch v-model="formData.isContributionEnable" active-color="#13ce66"
|
||||
|
||||
@@ -5,16 +5,16 @@ const info = {
|
||||
<el-descriptions-item label="项目名称">
|
||||
{{ viewData.contributionName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="所属捐款专题">
|
||||
<el-descriptions-item label="所属捐助专题">
|
||||
{{ viewData.typeName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款时间">
|
||||
<el-descriptions-item label="捐助时间">
|
||||
{{ viewData.contributionStartTime + ' 至 ' + viewData.contributionEndTime }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款模式">
|
||||
<el-descriptions-item label="捐助模式">
|
||||
{{ viewData.contributionMode === 1 ? '水滴筹' : '一日捐' }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="捐款链接" :span="2">
|
||||
<el-descriptions-item label="捐助链接" :span="2">
|
||||
{{ viewData.contributionUrl || '暂无' }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="项目介绍" :span="2">
|
||||
|
||||
+4
-4
@@ -38,7 +38,7 @@ layout("/layouts/platform.html"){
|
||||
</el-card>
|
||||
|
||||
<el-card shadow="never" class="mt20">
|
||||
<table-tool label="捐款列表"></table-tool>
|
||||
<table-tool label="捐助列表"></table-tool>
|
||||
<el-table :data="tableData" @sort-change="pageOrder" :size="tableSize"
|
||||
row-key="id" show-summary :summary-method="getSummaries"
|
||||
max-height="600">
|
||||
@@ -73,9 +73,9 @@ layout("/layouts/platform.html"){
|
||||
tableColumns: [
|
||||
{prop: 'unionCode', label: '工会编码'},
|
||||
{prop: 'name', label: '工会名称'},
|
||||
{prop: 'contributionUserNum', label: '捐款人数'},
|
||||
{prop: 'contributionNum', label: '捐款多少笔'},
|
||||
{prop: 'money', label: '捐款总额(元)'},
|
||||
{prop: 'contributionUserNum', label: '捐助人数'},
|
||||
{prop: 'contributionNum', label: '捐助多少笔'},
|
||||
{prop: 'money', label: '捐助总额(元)'},
|
||||
],
|
||||
contributionOptions: [],
|
||||
unionList: [],
|
||||
|
||||
+30
-30
@@ -26,7 +26,7 @@ layout("/layouts/platform.html"){
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="受补助人">
|
||||
<template v-if="formData.mode == 2">
|
||||
<el-select :remote-method="queryRecipients"
|
||||
@@ -64,8 +64,8 @@ layout("/layouts/platform.html"){
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="所属单位">
|
||||
<el-form-item prop="unitName">
|
||||
<el-input maxlength="50" clearable placeholder="所在单位"
|
||||
@@ -84,8 +84,8 @@ layout("/layouts/platform.html"){
|
||||
v-model="formData.officialCapacity"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="手机号码">
|
||||
<el-form-item prop="mobile">
|
||||
<el-input maxlength="11" clearable placeholder="请填写手机号码"
|
||||
@@ -98,8 +98,8 @@ layout("/layouts/platform.html"){
|
||||
v-model="formData.idCard" maxlength="18"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="本人月收入">
|
||||
<el-form-item prop="monthlyIncome">
|
||||
<el-input-number clearable
|
||||
@@ -117,8 +117,8 @@ layout("/layouts/platform.html"){
|
||||
v-model="formData.bankCardNum"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="困难类型" :span="3">
|
||||
<el-form-item prop="subsidyStandards">
|
||||
<el-select v-model="formData.subsidyStandards" style="width: 100%">
|
||||
@@ -128,8 +128,8 @@ layout("/layouts/platform.html"){
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="申请原因" :span="3">
|
||||
<el-form-item prop="reason">
|
||||
<el-input maxlength="500" :autosize="{ minRows: 5, maxRows: 10}"
|
||||
@@ -140,8 +140,8 @@ layout("/layouts/platform.html"){
|
||||
type="textarea"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="家庭成员经济收入" :span="3">
|
||||
<el-form-item prop="familyList">
|
||||
<el-table :data="formData.familyList" border max-height="500" size="mini" style="width: 100%">
|
||||
@@ -200,8 +200,8 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="附件" :span="3">
|
||||
<el-form-item prop="files">
|
||||
<file-upload :value.sync="formData.files"
|
||||
@@ -210,8 +210,8 @@ layout("/layouts/platform.html"){
|
||||
complete_result></file-upload>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="签字" :span="3">
|
||||
<el-form-item prop="sign">
|
||||
<pc-signature v-model="formData.sign"></pc-signature>
|
||||
@@ -219,7 +219,7 @@ layout("/layouts/platform.html"){
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
</el-form>
|
||||
|
||||
|
||||
<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>
|
||||
@@ -263,7 +263,7 @@ layout("/layouts/platform.html"){
|
||||
reason: [{required: true, message: '必填', trigger: ['blur', 'change']}],
|
||||
sign: [{required: true, message: '必填', trigger: ['blur', 'change']}]
|
||||
},
|
||||
|
||||
|
||||
// 替他人申请相关
|
||||
subsidizedList: []
|
||||
}
|
||||
@@ -279,12 +279,12 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/difficultHelp/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/difficultHelp/mine'
|
||||
commonUtil.pjaxPush('/platform/difficultHelp/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 提交
|
||||
onSubmit() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
@@ -297,12 +297,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/difficultHelp/mine'
|
||||
commonUtil.pjaxPush('/platform/difficultHelp/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
onFinishTask() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
@@ -315,12 +315,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/difficultHelp/mine'
|
||||
commonUtil.pjaxPush('/platform/difficultHelp/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 查询受助人
|
||||
queryRecipients(key) {
|
||||
this.$axios.get("/platform/difficultHelp/apply/queryRecipients", {
|
||||
@@ -412,12 +412,12 @@ layout("/layouts/platform.html"){
|
||||
const format15 = /^\d{15}$/;
|
||||
// 校验外国人永久居留身份证号
|
||||
const format15Foreign = /^[a-zA-Z]{3}[0-9]{4}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{2}$/;
|
||||
|
||||
|
||||
// 校验格式
|
||||
if (!(format18.test(idCard) || format15.test(idCard) || format15Foreign.test(idCard))) {
|
||||
return { status: 0, msg: '身份证号码格式不正确' };
|
||||
}
|
||||
|
||||
|
||||
// 校验出生日期
|
||||
let year, month, day;
|
||||
if (idCard.length === 18) {
|
||||
@@ -431,12 +431,12 @@ layout("/layouts/platform.html"){
|
||||
} else {
|
||||
return { status: 0, msg: '身份证号码格式不正确' };
|
||||
}
|
||||
|
||||
|
||||
const date = new Date(year, month - 1, day);
|
||||
if (date.getFullYear() !== parseInt(year, 10) || date.getMonth() + 1 !== parseInt(month, 10) || date.getDate() !== parseInt(day, 10)) {
|
||||
return { status: 0, msg: '身份证出生日期不正确' };
|
||||
}
|
||||
|
||||
|
||||
// 校验18位身份证号的校验码
|
||||
if (idCard.length === 18) {
|
||||
const coefficients = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
|
||||
@@ -450,7 +450,7 @@ layout("/layouts/platform.html"){
|
||||
return { status: 0, msg: '身份证校验码不正确' };
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return { status: 1, msg: '校验通过' };
|
||||
},
|
||||
/**
|
||||
|
||||
@@ -14,11 +14,11 @@ 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
|
||||
@@ -29,7 +29,7 @@ layout("/layouts/platform.html"){
|
||||
v-for="item in unions"></el-option>
|
||||
</el-select>
|
||||
</search-item>
|
||||
|
||||
|
||||
<search-item label="所属单位">
|
||||
<el-select clearable filterable placeholder="所属单位"
|
||||
style="width: 100%;" v-model="pageForm.unitId">
|
||||
@@ -39,12 +39,12 @@ layout("/layouts/platform.html"){
|
||||
</search-item>
|
||||
</search>
|
||||
</el-card>
|
||||
|
||||
|
||||
<el-card shadow="never" class="mt10">
|
||||
<table-tool label="申请记录">
|
||||
<el-button size="small" type="primary" @click="onApply">帮扶申请</el-button>
|
||||
</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="序号"
|
||||
@@ -78,7 +78,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
<!--#include("/layouts/pagination.html"){}#-->
|
||||
</el-card>
|
||||
|
||||
|
||||
<template #view>
|
||||
<info ref="infoRef"></info>
|
||||
</template>
|
||||
@@ -88,7 +88,7 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<script>
|
||||
<!--#include("../common/info.js"){}#-->
|
||||
|
||||
|
||||
new Vue({
|
||||
el: "#app",
|
||||
mixins: [initTableMixins],
|
||||
@@ -117,7 +117,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
methods: {
|
||||
onApply(){
|
||||
window.location.href = '/platform/difficultHelp/apply'
|
||||
commonUtil.pjaxPush('/platform/difficultHelp/apply')
|
||||
},
|
||||
openView(row) {
|
||||
this.$refs.guava.view(() => {
|
||||
@@ -125,8 +125,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
},
|
||||
commonUtil.pjaxPush('/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
|
||||
+9
-9
@@ -14,11 +14,11 @@ 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
|
||||
@@ -29,7 +29,7 @@ layout("/layouts/platform.html"){
|
||||
v-for="item in unions"></el-option>
|
||||
</el-select>
|
||||
</search-item>
|
||||
|
||||
|
||||
<search-item label="所属单位">
|
||||
<el-select clearable filterable placeholder="所属单位"
|
||||
style="width: 100%;" v-model="pageForm.unitId">
|
||||
@@ -39,11 +39,11 @@ layout("/layouts/platform.html"){
|
||||
</search-item>
|
||||
</search>
|
||||
</el-card>
|
||||
|
||||
|
||||
<el-card shadow="never" class="mt10">
|
||||
<table-tool label="数据列表">
|
||||
</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="序号"
|
||||
@@ -72,7 +72,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
<!--#include("/layouts/pagination.html"){}#-->
|
||||
</el-card>
|
||||
|
||||
|
||||
<template #view>
|
||||
<info ref="infoRef"></info>
|
||||
</template>
|
||||
@@ -82,7 +82,7 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<script>
|
||||
<!--#include("../common/info.js"){}#-->
|
||||
|
||||
|
||||
new Vue({
|
||||
el: "#app",
|
||||
mixins: [initTableMixins],
|
||||
@@ -116,8 +116,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
},
|
||||
commonUtil.pjaxPush('/platform/difficultHelp/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
|
||||
@@ -120,8 +120,16 @@ layout("/layouts/platform.html"){
|
||||
placeholder="请输入办证机关"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="奖励金额" prop="bonus">
|
||||
<el-input type="text" v-model="formData.bonus"
|
||||
placeholder="请输入奖励金额"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
|
||||
|
||||
<!-- 以下项目保持单独一行 -->
|
||||
<el-form-item prop="honorFiles" label="独生子女父母光荣证">
|
||||
<file-upload :upload_number="5" :value.sync="formData.honorFiles"
|
||||
@@ -168,23 +176,9 @@ layout("/layouts/platform.html"){
|
||||
taskId: GetQueryString("taskId"),
|
||||
formData: {},
|
||||
formRules: {
|
||||
userName: [{ required: true, message: '职工姓名不能为空', trigger: 'blur' }],
|
||||
sex: [{ required: true, message: '性别不能为空', trigger: 'blur' }],
|
||||
birthday: [{ required: true, message: '出生年月不能为空', trigger: 'blur' }],
|
||||
unitName: [{ required: true, message: '原工作单位不能为空', trigger: 'blur' }],
|
||||
retireTime: [{ required: true, message: '请选择退休时间', trigger: 'change' }],
|
||||
loverName: [{ required: true, message: '请输入爱人姓名', trigger: 'blur' }],
|
||||
loverSex: [{ required: true, message: '请选择爱人性别', trigger: 'change' }],
|
||||
loverUnitName: [{ required: true, message: '请输入爱人工作单位', trigger: 'blur' }],
|
||||
marryTime: [{ required: true, message: '请选择结婚日期', trigger: 'change' }],
|
||||
childrenBirthday: [{ required: true, message: '请选择子女出生日', trigger: 'change' }],
|
||||
getCertificateTime: [{ required: true, message: '请选择领独生子女证日', trigger: 'change' }],
|
||||
childrenGraceNumber: [{ required: true, message: '请输入独生子女光荣证号', trigger: 'blur' }],
|
||||
office: [{ required: true, message: '请输入办证机关', trigger: 'blur' }],
|
||||
honorFiles: [{ required: true, message: '请上传独生子女父母光荣证', trigger: 'change' }],
|
||||
retireFiles: [{ required: true, message: '请上传退休证', trigger: 'change' }],
|
||||
sign: [{ required: true, message: '请签字', trigger: 'change' }],
|
||||
declarationAgreed: [{ required: true, message: '请勾选申报理由', trigger: 'change', type: 'enum', enum: [true] }]
|
||||
declarationAgreed: [
|
||||
{ required: true, message: '请勾选申报理由', trigger: 'change' }
|
||||
]
|
||||
},
|
||||
}
|
||||
},
|
||||
@@ -200,106 +194,59 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/dsznfmtx/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/dsznfmtx/mine/index'
|
||||
commonUtil.pjaxPush('/platform/dsznfmtx/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
// 提交验证
|
||||
validateBeforeSubmit() {
|
||||
return new Promise((resolve) => {
|
||||
this.$refs.formRef.validate((valid) => {
|
||||
if (valid) {
|
||||
resolve(true);
|
||||
} else {
|
||||
this.$message.error('请完善表单信息并勾选申报理由');
|
||||
resolve(false);
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
// 添加检查是否为退休人员的方法
|
||||
async checkRetirementStatus() {
|
||||
try {
|
||||
const resp = await this.$axios.post('/platform/dsznfmtx/apply/checkRetirementStatus');
|
||||
// 如果返回code为0且data为true,表示用户是退休人员
|
||||
if (resp.code === 0 && resp.data === true) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
} catch (error) {
|
||||
console.error('检查退休状态失败:', error);
|
||||
return false;
|
||||
}
|
||||
},
|
||||
// 检查用户是否已申请过
|
||||
async checkUserApplication() {
|
||||
try {
|
||||
const resp = await this.$axios.post('/platform/dsznfmtx/apply/checkUserApplied');
|
||||
// 如果返回code为0且data为true,表示用户已申请过
|
||||
if (resp.code === 0 && resp.data === true) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
} catch (error) {
|
||||
console.error('检查用户申请状态失败:', error);
|
||||
return false;
|
||||
}
|
||||
},
|
||||
// 提交
|
||||
async onSubmit() {
|
||||
// 检查是否为退休人员
|
||||
const isRetired = await this.checkRetirementStatus();
|
||||
if (!isRetired) {
|
||||
this.$message.warning('您不是退休人员,无法申请此项福利');
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.bizId) {
|
||||
const isApplied = await this.checkUserApplication();
|
||||
if (isApplied) {
|
||||
this.$message.warning('您已经提交过申请,不能重复申请');
|
||||
return;
|
||||
onSubmit() {
|
||||
this.$refs.formRef.validate((valid) => {
|
||||
if (valid) {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
this.$axios.post('/platform/dsznfmtx/apply/submit', {
|
||||
data: JSON.stringify(this.formData)
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
commonUtil.pjaxPush('/platform/dsznfmtx/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.$message.error('请完善表单信息并勾选申报理由');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
const isValid = await this.validateBeforeSubmit();
|
||||
if (!isValid) return;
|
||||
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
this.$axios.post('/platform/dsznfmtx/apply/submit', {
|
||||
data: JSON.stringify(this.formData)
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/dsznfmtx/mine/index'
|
||||
}
|
||||
})
|
||||
})
|
||||
});
|
||||
},
|
||||
// 再次提交
|
||||
async onFinishTask() {
|
||||
const isValid = await this.validateBeforeSubmit();
|
||||
if (!isValid) return;
|
||||
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
this.$axios.post('/platform/dsznfmtx/apply/submitAgain', {
|
||||
data: JSON.stringify(this.formData),
|
||||
taskId: GetQueryString("taskId")
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/dsznfmtx/mine/index'
|
||||
}
|
||||
})
|
||||
})
|
||||
onFinishTask() {
|
||||
this.$refs.formRef.validate((valid) => {
|
||||
if (valid) {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
this.$axios.post('/platform/dsznfmtx/apply/submitAgain', {
|
||||
data: JSON.stringify(this.formData),
|
||||
taskId: GetQueryString("taskId")
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
commonUtil.pjaxPush('/platform/dsznfmtx/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
this.$message.error('请完善表单信息并勾选申报理由');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
},
|
||||
async findOne(id) {
|
||||
const resp = await $.get('/platform/dsznfmtx/apply/findOne', {id})
|
||||
@@ -325,7 +272,9 @@ layout("/layouts/platform.html"){
|
||||
sex: sex,
|
||||
birthday: birthday,
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -335,7 +284,6 @@ layout("/layouts/platform.html"){
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
<!--#
|
||||
}
|
||||
#-->
|
||||
|
||||
@@ -75,8 +75,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
//commonUtil.pjaxPush('/platform/dsznfmtx/apply/index', {taskId: (row.startTaskId || ''), bizId: row.id})
|
||||
window.location.href = '/platform/dsznfmtx/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/dsznfmtx/apply/index', {taskId: (row.startTaskId || ''), bizId: row.id})
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
@@ -102,7 +102,7 @@ const basicForm = {
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post("/platform/legal/apply/onSubmit", this.formData)
|
||||
const resp = await this.$axios.post("/platform/legal/apply/submit", this.formData)
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.$emit('refresh')
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
<!--#
|
||||
layout("/layouts/platform.html"){
|
||||
#-->
|
||||
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
|
||||
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
|
||||
|
||||
<style>
|
||||
#calendar {
|
||||
max-width: 1200px;
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
<!--#
|
||||
layout("/layouts/platform.html"){
|
||||
#-->
|
||||
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
|
||||
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
|
||||
|
||||
<style>
|
||||
#calendar {
|
||||
max-width: 1200px;
|
||||
|
||||
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'appointmentUserName', label: '姓名'},
|
||||
{prop: 'appointmentLoginName', label: '工号'},
|
||||
{prop: 'appointmentUnitName', label: '单位'},
|
||||
{prop: 'doctorUserName', label: '心理咨询师'},
|
||||
{prop: 'doctorUserName', label: '咨询师'},
|
||||
],
|
||||
}
|
||||
},
|
||||
@@ -88,13 +88,13 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onDelete(row) {
|
||||
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
|
||||
this.$confirm("您确定要删除吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
})
|
||||
.then(() => {
|
||||
this.$axios.post("/platform/legal/list/onDelete", { id: row.id }).then((res) => {
|
||||
this.$axios.post("/platform/legal/list/delete", { id: row.id }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
this.pageData()
|
||||
|
||||
@@ -18,7 +18,7 @@ const basicForm = {
|
||||
<el-form-item>
|
||||
<div class="text-primary">
|
||||
<i class="el-icon-warning"></i>
|
||||
提示:不会发布您的个人隐私信息,您咨询的内容只有心理咨询师可查看并回复。
|
||||
提示:不会发布您的个人隐私信息,您咨询的内容只有咨询师可查看并回复。
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@@ -52,7 +52,7 @@ const basicForm = {
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post("/platform/legal/onlinePost/onSubmit", this.formData)
|
||||
const resp = await this.$axios.post("/platform/legal/onlinePost/submit", this.formData)
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.$emit('refresh')
|
||||
|
||||
@@ -126,13 +126,13 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onDelete(row) {
|
||||
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
|
||||
this.$confirm("您确定要删除吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
})
|
||||
.then(() => {
|
||||
this.$axios.post("/platform/legal/onlinePost/onDelete", { id: row.id }).then((res) => {
|
||||
this.$axios.post("/platform/legal/onlinePost/delete", { id: row.id }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
this.pageData()
|
||||
|
||||
@@ -56,17 +56,17 @@ const info = {
|
||||
},
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
.el-timeline-item {
|
||||
/deep/ .el-timeline-item {
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
.el-timeline-item__wrapper {
|
||||
/deep/ .el-timeline-item__wrapper {
|
||||
padding-left: 28px;
|
||||
top: -3px;
|
||||
}
|
||||
.el-timeline-item__tail {
|
||||
/deep/ .el-timeline-item__tail {
|
||||
left: 4px;
|
||||
}
|
||||
.user-face{
|
||||
/deep/ .user-face{
|
||||
display: flex;
|
||||
}
|
||||
`
|
||||
|
||||
@@ -51,7 +51,7 @@ const basicForm = {
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post("/platform/legal/onlineReply/onSubmit", this.formData)
|
||||
const resp = await this.$axios.post("/platform/legal/onlineReply/submit", this.formData)
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.$emit('refresh')
|
||||
|
||||
@@ -220,7 +220,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/maternityLeave/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/maternityLeave/mine/index'
|
||||
commonUtil.pjaxPush('/platform/maternityLeave/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -253,7 +253,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/maternityLeave/mine/index'
|
||||
commonUtil.pjaxPush('/platform/maternityLeave/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -274,7 +274,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/maternityLeave/mine/index'
|
||||
commonUtil.pjaxPush('/platform/maternityLeave/mine/index')
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -75,7 +75,7 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/maternityLeave/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
commonUtil.pjaxPush('/platform/maternityLeave/apply/index?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
|
||||
@@ -102,7 +102,7 @@ const basicForm = {
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post("/platform/psychology/apply/onSubmit", this.formData)
|
||||
const resp = await this.$axios.post("/platform/psychology/apply/submit", this.formData)
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.$emit('refresh')
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
<!--#
|
||||
layout("/layouts/platform.html"){
|
||||
#-->
|
||||
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
|
||||
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
|
||||
|
||||
<style>
|
||||
#calendar {
|
||||
max-width: 1200px;
|
||||
|
||||
-4
@@ -1,10 +1,6 @@
|
||||
<!--#
|
||||
layout("/layouts/platform.html"){
|
||||
#-->
|
||||
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.css">
|
||||
<script src="${base!}/assets/platform/plugins/fullcalendar/fullcalendar.min.js"></script>
|
||||
|
||||
<style>
|
||||
#calendar {
|
||||
max-width: 1200px;
|
||||
|
||||
@@ -77,7 +77,7 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'appointmentUserName', label: '姓名'},
|
||||
{prop: 'appointmentLoginName', label: '工号'},
|
||||
{prop: 'appointmentUnitName', label: '单位'},
|
||||
{prop: 'doctorUserName', label: '心理咨询师'},
|
||||
{prop: 'doctorUserName', label: '咨询师'},
|
||||
],
|
||||
}
|
||||
},
|
||||
@@ -88,13 +88,13 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onDelete(row) {
|
||||
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
|
||||
this.$confirm("您确定要删除吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
})
|
||||
.then(() => {
|
||||
this.$axios.post("/platform/psychology/list/onDelete", { id: row.id }).then((res) => {
|
||||
this.$axios.post("/platform/psychology/list/delete", { id: row.id }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
this.pageData()
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ const basicForm = {
|
||||
<el-form-item>
|
||||
<div class="text-primary">
|
||||
<i class="el-icon-warning"></i>
|
||||
提示:不会发布您的个人隐私信息,您咨询的内容只有心理咨询师可查看并回复。
|
||||
提示:不会发布您的个人隐私信息,您咨询的内容只有咨询师可查看并回复。
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@@ -52,7 +52,7 @@ const basicForm = {
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post("/platform/psychology/onlinePost/onSubmit", this.formData)
|
||||
const resp = await this.$axios.post("/platform/psychology/onlinePost/submit", this.formData)
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.$emit('refresh')
|
||||
|
||||
+2
-2
@@ -126,13 +126,13 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onDelete(row) {
|
||||
this.$confirm("您确定要删除吗, 是否继续?", "提示", {
|
||||
this.$confirm("您确定要删除吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
})
|
||||
.then(() => {
|
||||
this.$axios.post("/platform/psychology/onlinePost/onDelete", { id: row.id }).then((res) => {
|
||||
this.$axios.post("/platform/psychology/onlinePost/delete", { id: row.id }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
this.pageData()
|
||||
|
||||
@@ -56,17 +56,17 @@ const info = {
|
||||
},
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
.el-timeline-item {
|
||||
/deep/ .el-timeline-item {
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
.el-timeline-item__wrapper {
|
||||
/deep/ .el-timeline-item__wrapper {
|
||||
padding-left: 28px;
|
||||
top: -3px;
|
||||
}
|
||||
.el-timeline-item__tail {
|
||||
/deep/ .el-timeline-item__tail {
|
||||
left: 4px;
|
||||
}
|
||||
.user-face{
|
||||
/deep/ .user-face{
|
||||
display: flex;
|
||||
}
|
||||
`
|
||||
|
||||
+1
-1
@@ -51,7 +51,7 @@ const basicForm = {
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(async () => {
|
||||
const resp = await this.$axios.post("/platform/psychology/onlineReply/onSubmit", this.formData)
|
||||
const resp = await this.$axios.post("/platform/psychology/onlineReply/submit", this.formData)
|
||||
if (resp.code === 0) {
|
||||
this.$message.success(resp.msg)
|
||||
this.$emit('refresh')
|
||||
|
||||
@@ -172,7 +172,7 @@ layout("/layouts/platform.html"){
|
||||
return age >= 0 ? age : '未出生';
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/childManage/write/index?bizId=' + row.id + '&manage=1'
|
||||
commonUtil.pjaxPush('/platform/childManage/write/index?bizId=' + row.id + '&manage=1')
|
||||
},
|
||||
doDelete(id) {
|
||||
this.$confirm("您确定要删除吗?", "提示", {
|
||||
|
||||
@@ -119,7 +119,7 @@ layout("/layouts/platform.html"){
|
||||
return age >= 0 ? age : '未出生';
|
||||
},
|
||||
openEdit(row) {
|
||||
window.location.href = '/platform/childManage/write/index?bizId=' + row.id
|
||||
commonUtil.pjaxPush('/platform/childManage/write/index?bizId=' + row.id)
|
||||
},
|
||||
doDelete(id) {
|
||||
this.$confirm("您确定要删除吗?", "提示", {
|
||||
|
||||
@@ -309,9 +309,9 @@ layout("/layouts/platform.html"){
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
if (GetQueryString('manage') === '1') {
|
||||
window.location.href = '/platform/childManage/manage/index'
|
||||
commonUtil.pjaxPush('/platform/childManage/manage/index')
|
||||
}else {
|
||||
window.location.href = '/platform/childManage/mine/index'
|
||||
commonUtil.pjaxPush('/platform/childManage/mine/index')
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -6,7 +6,7 @@ layout("/layouts/platform.html"){
|
||||
<el-card shadow="never">
|
||||
<common-query ref="commonQueryRef" @search="search"></common-query>
|
||||
</el-card>
|
||||
|
||||
|
||||
<el-card shadow="never" class="mt10">
|
||||
<table-tool label="申请列表">
|
||||
<el-button size="small" type="primary" @click="onApply">申请入会</el-button>
|
||||
@@ -37,7 +37,7 @@ layout("/layouts/platform.html"){
|
||||
<el-image v-if="row.sign" :src="row.sign" style="height: 60px"></el-image>
|
||||
<el-tag type="warning" v-else>暂无</el-tag>
|
||||
</template>
|
||||
|
||||
|
||||
<template scope="{row}" v-else-if="column.prop=='instanceState'">
|
||||
<enum-tag :value="row.instanceState" name="ProcessInstanceStateEnum" label_key="message"
|
||||
size="small"></enum-tag>
|
||||
@@ -64,7 +64,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
<!--#include("/layouts/pagination.html"){}#-->
|
||||
</el-card>
|
||||
|
||||
|
||||
<template #view>
|
||||
<info ref="info"></info>
|
||||
</template>
|
||||
@@ -74,7 +74,7 @@ layout("/layouts/platform.html"){
|
||||
<script>
|
||||
<!--#include("../common/info.js"){}#-->
|
||||
<!--#include("../common/commonQuery.js"){}#-->
|
||||
|
||||
|
||||
new Vue({
|
||||
el: "#app",
|
||||
store,
|
||||
@@ -103,7 +103,7 @@ layout("/layouts/platform.html"){
|
||||
},
|
||||
methods: {
|
||||
onApply() {
|
||||
window.location.href = '/platform/member/apply/submit'
|
||||
commonUtil.pjaxPush('/platform/member/apply/submit')
|
||||
},
|
||||
openView(row) {
|
||||
this.$refs.guava.view(() => {
|
||||
@@ -111,8 +111,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/member/apply/submit?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
},
|
||||
commonUtil.pjaxPush('/platform/member/apply/submit?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
|
||||
@@ -24,7 +24,7 @@ layout("/layouts/platform.html"){
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="民族">
|
||||
<el-form-item prop="nation">
|
||||
<dict-select style="width: 100%" placeholder="请选择民族" v-model="formData.nation"
|
||||
@@ -45,8 +45,8 @@ layout("/layouts/platform.html"){
|
||||
code="USER_POLITICAL"></dict-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="学历">
|
||||
<el-form-item prop="education">
|
||||
<dict-select style="width: 100%" placeholder="请选择学历" v-model="formData.education"
|
||||
@@ -65,7 +65,7 @@ layout("/layouts/platform.html"){
|
||||
maxlength="50"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="工作单位">
|
||||
<el-form-item prop="unitId">
|
||||
<el-select clearable filterable placeholder="请选择工作单位" style="width: 100%"
|
||||
@@ -87,8 +87,8 @@ layout("/layouts/platform.html"){
|
||||
code="USER_CAMPUS"></dict-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="在职状态">
|
||||
<el-form-item prop="userState">
|
||||
<dict-select v-model="formData.userState" code="USER_STATE"
|
||||
@@ -102,7 +102,7 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="身份证号码">
|
||||
<el-form-item prop="idCard">
|
||||
<el-input v-model="formData.idCard" disabled placeholder="请输入身份证号码" maxlength="18"></el-input>
|
||||
@@ -118,8 +118,8 @@ layout("/layouts/platform.html"){
|
||||
<el-input v-model="formData.email" placeholder="请输入电子邮箱" maxlength="50"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<el-form-item prop="families">
|
||||
<el-table :data="formData.families" border size="small">
|
||||
@@ -164,13 +164,13 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="个人简况" :span="3">
|
||||
<el-form-item prop="personalData">
|
||||
<text-editor v-model="formData.personalData"></text-editor>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="入会意愿" :span="3">
|
||||
<el-form-item prop="isVoluntary">
|
||||
<el-checkbox
|
||||
@@ -190,7 +190,7 @@ layout("/layouts/platform.html"){
|
||||
</el-checkbox>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<!-- <el-descriptions-item label="签字" :span="3">-->
|
||||
<!-- <el-form-item prop="sign">-->
|
||||
<!-- <pc-signature v-model="formData.sign"></pc-signature>-->
|
||||
@@ -297,7 +297,7 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/member/apply/submit/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/member/apply/mine'
|
||||
commonUtil.pjaxPush('/platform/member/apply/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -315,7 +315,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/member/apply/mine'
|
||||
commonUtil.pjaxPush('/platform/member/apply/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -334,7 +334,7 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
window.location.href = '/platform/member/apply/mine'
|
||||
commonUtil.pjaxPush('/platform/member/apply/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
@@ -351,7 +351,7 @@ layout("/layouts/platform.html"){
|
||||
} else {
|
||||
user = this.$store.state.user
|
||||
}
|
||||
|
||||
|
||||
if (this.id) {
|
||||
const res = await this.$axios.post("/platform/member/apply/submit/findApplyById", { id: this.id })
|
||||
debugger
|
||||
@@ -385,7 +385,7 @@ layout("/layouts/platform.html"){
|
||||
families,
|
||||
personalData
|
||||
} = user
|
||||
|
||||
|
||||
this.$set(this.formData, "userId", id)
|
||||
this.$set(this.formData, "username", username)
|
||||
this.$set(this.formData, "loginname", loginname)
|
||||
@@ -404,7 +404,7 @@ layout("/layouts/platform.html"){
|
||||
this.$set(this.formData, "unitId", unit ? unit.id : unitId)
|
||||
this.$set(this.formData, "unionName", union ? union.name : unionName)
|
||||
this.$set(this.formData, "unionId", union ? union.id : unionId)
|
||||
|
||||
|
||||
this.$set(this.formData, "mobile", mobile)
|
||||
this.$set(this.formData, "email", email)
|
||||
this.$set(this.formData, "families", families ? families : [])
|
||||
|
||||
@@ -90,8 +90,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
},
|
||||
onEdit(row) {
|
||||
window.location.href = '/platform/member/change/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id
|
||||
},
|
||||
commonUtil.pjaxPush('/platform/member/change/apply?taskId=' + (row.startTaskId || '') + "&bizId=" + row.id)
|
||||
},
|
||||
onRevoke(row) {
|
||||
this.$confirm("您确定要撤回吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
|
||||
+25
-25
@@ -24,7 +24,7 @@ layout("/layouts/platform.html"){
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="民族">
|
||||
<el-form-item prop="nation">
|
||||
<dict-select style="width: 100%" placeholder="请选择民族" v-model="formData.nation"
|
||||
@@ -48,8 +48,8 @@ layout("/layouts/platform.html"){
|
||||
:disabled="allowFields('political')" code="USER_POLITICAL"></dict-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="学历">
|
||||
<el-form-item prop="education">
|
||||
<dict-select style="width: 100%" placeholder="请选择学历" v-model="formData.education"
|
||||
@@ -68,7 +68,7 @@ layout("/layouts/platform.html"){
|
||||
:disabled="allowFields('position')" maxlength="50"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<template v-if="$auth.hasRoleOr('SYSADMIN, SCHOOL_UNION_ADMIN, SCHOOL_UNION_MEMBER_ADMIN')">
|
||||
<el-descriptions-item label="工作单位">
|
||||
<el-form-item prop="unitId">
|
||||
@@ -112,7 +112,7 @@ layout("/layouts/platform.html"){
|
||||
:disabled="allowFields('campus')" code="USER_CAMPUS"></dict-select>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="身份证号码">
|
||||
<el-form-item prop="idCard">
|
||||
<el-input v-model="formData.idCard" :disabled="allowFields('idCard')" placeholder="请输入身份证号码" maxlength="18"></el-input>
|
||||
@@ -128,8 +128,8 @@ layout("/layouts/platform.html"){
|
||||
<el-input v-model="formData.email" :disabled="allowFields('email')" placeholder="请输入电子邮箱" maxlength="50"></el-input>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
|
||||
|
||||
<el-descriptions-item label="在职状态">
|
||||
<el-form-item prop="userState">
|
||||
<dict-select v-model="formData.userState" code="USER_STATE"
|
||||
@@ -143,7 +143,7 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
|
||||
<template v-if="formData.userState == '退休'">
|
||||
<el-descriptions-item label="退休日期">
|
||||
<el-form-item prop="retireDate">
|
||||
@@ -168,7 +168,7 @@ layout("/layouts/platform.html"){
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
</template>
|
||||
|
||||
|
||||
<el-descriptions-item label="会员状态" :span="1.5">
|
||||
<el-form-item prop="member">
|
||||
<el-radio-group v-model="formData.member" size="small">
|
||||
@@ -177,7 +177,7 @@ layout("/layouts/platform.html"){
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="福利会员状态" :span="1.5">
|
||||
<el-form-item prop="welfareMember">
|
||||
<el-radio-group v-model="formData.welfareMember" size="small">
|
||||
@@ -186,7 +186,7 @@ layout("/layouts/platform.html"){
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<!--<template v-if="formData.member == 1">
|
||||
<el-descriptions-item label="是否加入会员组别">
|
||||
<el-form-item prop="member">
|
||||
@@ -207,12 +207,12 @@ layout("/layouts/platform.html"){
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
</template>
|
||||
|
||||
|
||||
<template v-if="formData.member != null && !formData.welfareMember">
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
</template>
|
||||
|
||||
|
||||
<template v-if="formData.welfareMember == true">
|
||||
<el-descriptions-item label="是否加入福利项目">
|
||||
<el-form-item prop="isJoinWelfareProject">
|
||||
@@ -222,7 +222,7 @@ layout("/layouts/platform.html"){
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<template v-if="formData.isJoinWelfareProject">
|
||||
<el-descriptions-item label="选择福利项目">
|
||||
<el-form-item prop="welfareProjectId">
|
||||
@@ -238,7 +238,7 @@ layout("/layouts/platform.html"){
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
</template>
|
||||
</template>-->
|
||||
|
||||
|
||||
<template v-if="formData.loginname == $store.state.user.loginname">
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<el-form-item prop="families">
|
||||
@@ -284,7 +284,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
</el-form-item>
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item label="个人简历" :span="3">
|
||||
<el-form-item prop="personalData">
|
||||
<text-editor v-model="formData.personalData"></text-editor>
|
||||
@@ -293,7 +293,7 @@ layout("/layouts/platform.html"){
|
||||
</template>
|
||||
</el-descriptions>
|
||||
</el-form>
|
||||
|
||||
|
||||
<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>
|
||||
@@ -393,12 +393,12 @@ layout("/layouts/platform.html"){
|
||||
this.$axios.post('/platform/member/change/apply/save', {data: JSON.stringify(this.formData)}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("保存成功")
|
||||
window.location.href = '/platform/member/change/mine'
|
||||
commonUtil.pjaxPush('/platform/member/change/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 提交
|
||||
onSubmit() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
@@ -411,12 +411,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/member/change/mine'
|
||||
commonUtil.pjaxPush('/platform/member/change/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
onFinishTask() {
|
||||
this.$confirm("您确定要提交吗?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
@@ -429,12 +429,12 @@ layout("/layouts/platform.html"){
|
||||
}).then(res => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
window.location.href = '/platform/member/change/mine'
|
||||
commonUtil.pjaxPush('/platform/member/change/mine')
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
// 获取表单工会名称
|
||||
getUnionName(val){
|
||||
const data = this.units.find(v => v.id === val)
|
||||
@@ -508,7 +508,7 @@ layout("/layouts/platform.html"){
|
||||
families,
|
||||
personalData
|
||||
} = this.user
|
||||
|
||||
|
||||
this.$set(this.formData, "userId", id)
|
||||
this.$set(this.formData, "username", username)
|
||||
this.$set(this.formData, "loginname", loginname)
|
||||
@@ -530,7 +530,7 @@ layout("/layouts/platform.html"){
|
||||
this.$set(this.formData, "unitId", unit ? unit.id : null)
|
||||
this.$set(this.formData, "unionName", union ? union.name : null)
|
||||
this.$set(this.formData, "unionId", union ? union.id : null)
|
||||
|
||||
|
||||
this.$set(this.formData, "mobile", mobile)
|
||||
this.$set(this.formData, "email", email)
|
||||
this.$set(this.formData, "families", families ? families : [])
|
||||
|
||||
@@ -8,8 +8,8 @@ layout("/layouts/platform_h5.html"){
|
||||
}
|
||||
|
||||
.list-card-body {
|
||||
/* width: calc(100% - 140px);
|
||||
display: flex;*/
|
||||
width: calc(100% - 140px);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
}
|
||||
@@ -35,9 +35,6 @@ layout("/layouts/platform_h5.html"){
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.list-card-img img{
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div id="app" v-cloak>
|
||||
@@ -47,7 +44,6 @@ layout("/layouts/platform_h5.html"){
|
||||
<year-van-dropdown-item :num="5" @change="doSearch" v-model="pageForm.year"></year-van-dropdown-item>
|
||||
<van-dropdown-item :options="stateList" @change="doSearch" v-model="pageForm.state"></van-dropdown-item>
|
||||
<van-dropdown-item :options="isEnrolledOptions" @change="doSearch" v-model="pageForm.isEnrolledText"></van-dropdown-item>
|
||||
<van-dropdown-item :options="activityTypeOptions" @change="doSearch" v-model="pageForm.activity_type"></van-dropdown-item>
|
||||
</van-dropdown-menu>
|
||||
</van-sticky>
|
||||
|
||||
@@ -119,13 +115,12 @@ layout("/layouts/platform_h5.html"){
|
||||
loading: false,
|
||||
refreshing: false,
|
||||
pageForm: {
|
||||
state: 1,
|
||||
state: 2,
|
||||
isEnrolledText: 0,
|
||||
year: new Date().getFullYear(),
|
||||
pageNumber: 1,
|
||||
pageSize: 5,
|
||||
totalCount: 0,
|
||||
activity_type: 40001
|
||||
totalCount: 0
|
||||
},
|
||||
yearList: [],
|
||||
isEnrolledOptions: [
|
||||
@@ -139,12 +134,7 @@ layout("/layouts/platform_h5.html"){
|
||||
],
|
||||
subLoading: false,
|
||||
viewShow: false,
|
||||
viewData: {},
|
||||
activityTypeOptions: [
|
||||
{ value: 40001, text: "校文化活动" },
|
||||
{ value: 40002, text: "分工会文化活动" },
|
||||
{ value: 40003, text: "协会文化活动" },
|
||||
]
|
||||
viewData: {}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
|
||||
@@ -279,7 +279,7 @@ layout("/layouts/platform_h5.html"){
|
||||
|
||||
<!-- 分工会报名-->
|
||||
<div v-else-if="viewData.signUpMethod===3" class="block">
|
||||
<div class="notice-title left-tag-title">选择报名人员
|
||||
<div class="notice-title left-tag-title">选择报名人员
|
||||
<span v-if="viewData.userNumberLimit===2">
|
||||
,报名人数 <span style="color: red">
|
||||
{{viewData.unionTeamNum}}</span>人
|
||||
|
||||
@@ -328,13 +328,13 @@ const applyForm = {
|
||||
},
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
::v-deep .companionList_empty_text {
|
||||
/deep/ .companionList_empty_text {
|
||||
text-align: center;
|
||||
padding: 10px 0;
|
||||
font-size: 14px;
|
||||
color: grey;
|
||||
}
|
||||
::v-deep .button {
|
||||
/deep/ .button {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user