..
This commit is contained in:
@@ -1,7 +0,0 @@
|
|||||||
package com.budwk.app.zhgh.dayofficework.huimin.service;
|
|
||||||
|
|
||||||
import com.budwk.app.base.service.BaseService;
|
|
||||||
import com.budwk.app.zhgh.dayofficework.huimin.models.Huimin;
|
|
||||||
|
|
||||||
public interface HuiminService extends BaseService<Huimin> {
|
|
||||||
}
|
|
||||||
+7
@@ -36,6 +36,13 @@ public class TeacherCongressDelegateReadController {
|
|||||||
public void index() {
|
public void index() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@At("/h5")
|
||||||
|
@Ok("beetl:/platform/zhghh5/democratic/teachercongress/delegate/read/index.html")
|
||||||
|
@SaCheckPermission("h5.tc.delegate.read")
|
||||||
|
public void h5Index() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@At
|
@At
|
||||||
@SaCheckPermission("tc.delegate.read")
|
@SaCheckPermission("tc.delegate.read")
|
||||||
public Result pageData(@Valid @Param("pageForm") TeacherCongressDelegateManagePageParam pageForm) {
|
public Result pageData(@Valid @Param("pageForm") TeacherCongressDelegateManagePageParam pageForm) {
|
||||||
|
|||||||
-21
@@ -1,21 +0,0 @@
|
|||||||
package com.budwk.app.zhgh.democratic.teachercongress.delegate.h5controller;
|
|
||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
|
||||||
import io.swagger.annotations.Api;
|
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
|
||||||
import org.nutz.mvc.annotation.At;
|
|
||||||
import org.nutz.mvc.annotation.Ok;
|
|
||||||
|
|
||||||
@IocBean
|
|
||||||
@At("/platform/h5/teacherCongress/delegate/read")
|
|
||||||
@Ok("json:full")
|
|
||||||
@Api(tags = "手机端代表阅览")
|
|
||||||
public class H5TeacherCongressDelegateReadController {
|
|
||||||
|
|
||||||
@At("")
|
|
||||||
@Ok("beetl:/platform/zhghh5/democratic/teachercongress/delegate/read/index.html")
|
|
||||||
@SaCheckPermission("tc.delegate.read")
|
|
||||||
public void index() {
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
+3
-3
@@ -1,11 +1,11 @@
|
|||||||
package com.budwk.app.zhgh.dayofficework.huimin.controller;
|
package com.budwk.app.zhgh.staffbenefit.huimin.controller;
|
||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaCheckLogin;
|
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
import com.budwk.app.base.param.PageForm;
|
import com.budwk.app.base.param.PageForm;
|
||||||
import com.budwk.app.base.result.Result;
|
import com.budwk.app.base.result.Result;
|
||||||
import com.budwk.app.zhgh.dayofficework.huimin.models.Huimin;
|
import com.budwk.app.zhgh.staffbenefit.huimin.models.Huimin;
|
||||||
import com.budwk.app.zhgh.dayofficework.huimin.service.HuiminService;
|
import com.budwk.app.zhgh.staffbenefit.huimin.service.HuiminService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
+48
@@ -0,0 +1,48 @@
|
|||||||
|
package com.budwk.app.zhgh.staffbenefit.huimin.controller;
|
||||||
|
|
||||||
|
import cn.dev33.satoken.annotation.SaCheckLogin;
|
||||||
|
import com.budwk.app.base.page.Pagination;
|
||||||
|
import com.budwk.app.base.param.PageForm;
|
||||||
|
import com.budwk.app.base.result.Result;
|
||||||
|
import com.budwk.app.zhgh.staffbenefit.huimin.service.HuiminService;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nutz.dao.Cnd;
|
||||||
|
import org.nutz.ioc.loader.annotation.Inject;
|
||||||
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
|
import org.nutz.mvc.annotation.At;
|
||||||
|
import org.nutz.mvc.annotation.Ok;
|
||||||
|
|
||||||
|
@IocBean
|
||||||
|
@At("/platform/huimin/mine")
|
||||||
|
@Api(tags = "惠民服务-我的")
|
||||||
|
@Slf4j
|
||||||
|
@Ok("json:full")
|
||||||
|
public class HuiminMineController {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
private HuiminService huiminService;
|
||||||
|
|
||||||
|
@At("")
|
||||||
|
@SaCheckLogin
|
||||||
|
@Ok("beetl:/platform/zhgh/staffbenefit/huimin/mine/index.html")
|
||||||
|
public void index() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@At("/h5")
|
||||||
|
@SaCheckLogin
|
||||||
|
@Ok("beetl:/platform/zhghh5/staffbenefit/huimin/mine/index.html")
|
||||||
|
public void h5Index(){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@At
|
||||||
|
@SaCheckLogin
|
||||||
|
public Result pageData(PageForm pageForm){
|
||||||
|
Cnd cnd = Cnd.NEW();
|
||||||
|
Pagination pagination = huiminService.listPage(pageForm.getPageNumber(), pageForm.getPageSize(), cnd);
|
||||||
|
return Result.success(pagination);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.budwk.app.zhgh.dayofficework.huimin.models;
|
package com.budwk.app.zhgh.staffbenefit.huimin.models;
|
||||||
|
|
||||||
import com.budwk.app.base.model.BaseModel;
|
import com.budwk.app.base.model.BaseModel;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package com.budwk.app.zhgh.staffbenefit.huimin.service;
|
||||||
|
|
||||||
|
import com.budwk.app.base.service.BaseService;
|
||||||
|
import com.budwk.app.zhgh.staffbenefit.huimin.models.Huimin;
|
||||||
|
|
||||||
|
public interface HuiminService extends BaseService<Huimin> {
|
||||||
|
}
|
||||||
+3
-3
@@ -1,8 +1,8 @@
|
|||||||
package com.budwk.app.zhgh.dayofficework.huimin.service.impl;
|
package com.budwk.app.zhgh.staffbenefit.huimin.service.impl;
|
||||||
|
|
||||||
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
||||||
import com.budwk.app.zhgh.dayofficework.huimin.models.Huimin;
|
import com.budwk.app.zhgh.staffbenefit.huimin.models.Huimin;
|
||||||
import com.budwk.app.zhgh.dayofficework.huimin.service.HuiminService;
|
import com.budwk.app.zhgh.staffbenefit.huimin.service.HuiminService;
|
||||||
import org.nutz.dao.Dao;
|
import org.nutz.dao.Dao;
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
|
|
||||||
@@ -183,6 +183,12 @@ body {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*************************覆盖vant默认CSS********************************/
|
||||||
|
.van-dropdown-menu__bar{
|
||||||
|
box-shadow: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*****************************申请表单CSS********************************/
|
/*****************************申请表单CSS********************************/
|
||||||
.form-container {
|
.form-container {
|
||||||
padding-bottom: 80px;
|
padding-bottom: 80px;
|
||||||
|
|||||||
@@ -43,12 +43,25 @@ const commonUtil = {
|
|||||||
|
|
||||||
//下载文件
|
//下载文件
|
||||||
downLoadService: function (url, data) {
|
downLoadService: function (url, data) {
|
||||||
const loading = ELEMENT.Loading.service({
|
const userAgent = navigator.userAgent || navigator.vendor || window.opera
|
||||||
|
const isMobile = /iPad|iPhone|iPod|Android/.test(userAgent)
|
||||||
|
|
||||||
|
let loading = null
|
||||||
|
|
||||||
|
if(isMobile){
|
||||||
|
loading = vant.Toast.loading({
|
||||||
|
duration: 0,
|
||||||
|
forbidClick: true,
|
||||||
|
message: '导出中,请耐心等待'
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
loading = ELEMENT.Loading.service({
|
||||||
lock: true,
|
lock: true,
|
||||||
text: "导出中,请耐心等待",
|
text: "导出中,请耐心等待",
|
||||||
spinner: "el-icon-loading",
|
spinner: "el-icon-loading",
|
||||||
background: "rgba(0, 0, 0, 0.7)"
|
background: "rgba(0, 0, 0, 0.7)"
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
Vue.prototype.$axios
|
Vue.prototype.$axios
|
||||||
.post(url, data, { responseType: "blob" })
|
.post(url, data, { responseType: "blob" })
|
||||||
@@ -89,7 +102,11 @@ const commonUtil = {
|
|||||||
loading.close()
|
loading.close()
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
|
if(isMobile){
|
||||||
|
loading.clear()
|
||||||
|
}else{
|
||||||
loading.close()
|
loading.close()
|
||||||
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
+18
-2
@@ -2,7 +2,7 @@
|
|||||||
layout("/layouts/platform_h5.html"){
|
layout("/layouts/platform_h5.html"){
|
||||||
#-->
|
#-->
|
||||||
|
|
||||||
<div id="app" v-cloak>
|
<div id="app" v-cloak style="padding-bottom: 70px;">
|
||||||
<van-nav-bar title="代表阅览" left-text="返回" left-arrow @click-left="historyBack" placeholder fixed></van-nav-bar>
|
<van-nav-bar title="代表阅览" left-text="返回" left-arrow @click-left="historyBack" placeholder fixed></van-nav-bar>
|
||||||
<van-sticky offset-top="46px">
|
<van-sticky offset-top="46px">
|
||||||
<van-search
|
<van-search
|
||||||
@@ -31,9 +31,19 @@ layout("/layouts/platform_h5.html"){
|
|||||||
</van-dropdown-menu>
|
</van-dropdown-menu>
|
||||||
</van-sticky>
|
</van-sticky>
|
||||||
|
|
||||||
|
<div class="export-buttons" style="position: fixed; bottom: 0; left: 0; right: 0; padding: 10px; display: flex; gap: 10px; background: white; border-top: 1px solid #eee; z-index: 1000; box-shadow: 0 -2px 8px rgba(0,0,0,0.1);">
|
||||||
|
<van-button type="primary" size="medium" @click="exportXlsx" style="flex: 1;">
|
||||||
|
<i class="fa fa-file-excel-o"></i> 导出Excel
|
||||||
|
</van-button>
|
||||||
|
<van-button type="info" size="medium" @click="exportDocx" style="flex: 1;">
|
||||||
|
<i class="fa fa-file-word-o"></i> 导出Word
|
||||||
|
</van-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
<table-list api="/platform/teacherCongress/delegate/read/pageData" :page_form.sync="pageForm" json
|
<table-list api="/platform/teacherCongress/delegate/read/pageData" :page_form.sync="pageForm" json
|
||||||
@ready="onReady"
|
@ready="onReady"
|
||||||
ref="tableListRef">
|
ref="tableListRef"
|
||||||
|
style="padding-bottom: 65px">
|
||||||
<template v-slot="{index,row}">
|
<template v-slot="{index,row}">
|
||||||
<table-column label="代表姓名">{{row.userName}}</table-column>
|
<table-column label="代表姓名">{{row.userName}}</table-column>
|
||||||
<table-column label="代表工号">{{row.loginName}}</table-column>
|
<table-column label="代表工号">{{row.loginName}}</table-column>
|
||||||
@@ -146,6 +156,12 @@ layout("/layouts/platform_h5.html"){
|
|||||||
onReady() {
|
onReady() {
|
||||||
this.listRole()
|
this.listRole()
|
||||||
this.listSession()
|
this.listSession()
|
||||||
|
},
|
||||||
|
exportXlsx() {
|
||||||
|
this.$downLoad("/platform/teacherCongress/delegate/read/exportXlsx", this.pageForm)
|
||||||
|
},
|
||||||
|
exportDocx() {
|
||||||
|
this.$downLoad("/platform/teacherCongress/delegate/read/exportDocx", this.pageForm)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -0,0 +1,62 @@
|
|||||||
|
<!--#
|
||||||
|
layout("/layouts/platform_h5.html"){
|
||||||
|
#-->
|
||||||
|
|
||||||
|
<div id="app" v-cloak>
|
||||||
|
<van-nav-bar title="惠民服务" left-text="返回" left-arrow @click-left="historyBack" placeholder fixed></van-nav-bar>
|
||||||
|
<van-sticky offset-top="46px">
|
||||||
|
<van-search
|
||||||
|
v-model="pageForm.searchKeyword"
|
||||||
|
:show-action="false"
|
||||||
|
:reverse-color="false"
|
||||||
|
input-align="left"
|
||||||
|
placeholder="请输入姓名/工号搜索"
|
||||||
|
@search="doSearch"
|
||||||
|
></van-search>
|
||||||
|
</van-sticky>
|
||||||
|
|
||||||
|
<table-list api="/platform/huimin/mine/pageData"
|
||||||
|
:page_form.sync="pageForm"
|
||||||
|
json
|
||||||
|
@ready="onReady"
|
||||||
|
img=""
|
||||||
|
ref="tableListRef">
|
||||||
|
</table-list>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
new Vue({
|
||||||
|
el: '#app',
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
pageForm: {
|
||||||
|
pageNumber: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
totalCount: 0,
|
||||||
|
searchKeyword: null,
|
||||||
|
sessionId: null,
|
||||||
|
delegationId: null,
|
||||||
|
roleId: null
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
historyBack,
|
||||||
|
onReady(){
|
||||||
|
|
||||||
|
},
|
||||||
|
doSearch() {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.pageForm.pageNumber = 1
|
||||||
|
this.pageForm.totalCount = 0
|
||||||
|
this.$refs.tableListRef.doSearch()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!--#
|
||||||
|
}
|
||||||
|
#-->
|
||||||
@@ -22,8 +22,9 @@ const apps = {
|
|||||||
:class="['nav-item', { active: activeTab === index }]"
|
:class="['nav-item', { active: activeTab === index }]"
|
||||||
@click="onClickNav(index)"
|
@click="onClickNav(index)"
|
||||||
>
|
>
|
||||||
<div class="nav-icon" v-if="category.icon">
|
<div class="nav-icon">
|
||||||
<i :class="category.icon"></i>
|
<i v-if="category.icon" :class="category.icon"></i>
|
||||||
|
<i v-else class="fa fa-book"></i>
|
||||||
</div>
|
</div>
|
||||||
<div class="nav-text">{{ category.name }}</div>
|
<div class="nav-text">{{ category.name }}</div>
|
||||||
<div class="nav-indicator" v-if="activeTab === index"></div>
|
<div class="nav-indicator" v-if="activeTab === index"></div>
|
||||||
@@ -269,13 +270,6 @@ const apps = {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 如果只有一个菜单项,直接跳转
|
|
||||||
if (menus.length === 1) {
|
|
||||||
this.navigateToMenu(menus[0])
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// 多个菜单项时显示popup弹框
|
|
||||||
this.currentApp = app
|
this.currentApp = app
|
||||||
this.currentMenus = menus
|
this.currentMenus = menus
|
||||||
this.showMenuPopup = true
|
this.showMenuPopup = true
|
||||||
@@ -285,14 +279,11 @@ const apps = {
|
|||||||
navigateToMenu(menu) {
|
navigateToMenu(menu) {
|
||||||
// 关闭弹框
|
// 关闭弹框
|
||||||
this.showMenuPopup = false
|
this.showMenuPopup = false
|
||||||
|
|
||||||
if (menu.href) {
|
if (menu.href) {
|
||||||
// 如果是H5平台,直接跳转
|
if(menu.href.startsWith('http://') || menu.href.startsWith('https://')){
|
||||||
if (menu.platform === 'H5') {
|
|
||||||
window.location.href = menu.href
|
|
||||||
} else {
|
|
||||||
// 其他平台可能需要特殊处理
|
|
||||||
window.open(menu.href, '_blank')
|
window.open(menu.href, '_blank')
|
||||||
|
}else{
|
||||||
|
this.$pjaxReplace(menu.href)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.$toast('该功能暂不可用')
|
this.$toast('该功能暂不可用')
|
||||||
@@ -318,6 +309,12 @@ const apps = {
|
|||||||
background: #f7f8fa;
|
background: #f7f8fa;
|
||||||
border-right: 1px solid #ebedf0;
|
border-right: 1px solid #ebedf0;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
scrollbar-width: none; /* Firefox */
|
||||||
|
-ms-overflow-style: none; /* IE and Edge */
|
||||||
|
}
|
||||||
|
|
||||||
|
.tree-nav::-webkit-scrollbar {
|
||||||
|
display: none; /* Chrome, Safari and Opera */
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-item {
|
.nav-item {
|
||||||
|
|||||||
Reference in New Issue
Block a user