路由页面
44
src/apps/AppPageBasic/AppPageBasic.vue
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
<template>
|
||||||
|
<div class="AppPageBasic">
|
||||||
|
<AppListPage :label="label" :appList="appList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import AppListPage from '@/components/AppListPage/AppListPage'
|
||||||
|
export default {
|
||||||
|
name: 'AppPageBasic',
|
||||||
|
appName: '工作台(基层办公)',
|
||||||
|
components: { AppListPage },
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
label: '基层办公',
|
||||||
|
appList: [
|
||||||
|
{
|
||||||
|
name: '会议通知',
|
||||||
|
icon: require('./img/hytz.png'),
|
||||||
|
url: '../AppMeetingNotice/AppMeetingNotice'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '三务公开',
|
||||||
|
icon: require('./img/shgk.png'),
|
||||||
|
url: '../AppServicePublic/AppServicePublic?moduleId=b03d1ea68c8449ecb00685644e3f0192'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
uni-page-body{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.AppPageBasic{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
BIN
src/apps/AppPageBasic/img/hytz.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
src/apps/AppPageBasic/img/shgk.png
Normal file
|
After Width: | Height: | Size: 222 KiB |
49
src/apps/AppPageCivilization/AppPageCivilization.vue
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
<template>
|
||||||
|
<div class="AppPageCivilization">
|
||||||
|
<AppListPage :label="label" :appList="appList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import AppListPage from '@/components/AppListPage/AppListPage'
|
||||||
|
export default {
|
||||||
|
name: 'AppPageCivilization',
|
||||||
|
appName: '工作台(文明乡风)',
|
||||||
|
components: { AppListPage },
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
label: '文明乡风',
|
||||||
|
appList: [
|
||||||
|
{
|
||||||
|
name: '婚丧嫁娶',
|
||||||
|
icon: require('./img/hjsq.png'),
|
||||||
|
url: '../AppMarryAndDie/AppMarryAndDie'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '好人好事',
|
||||||
|
icon: require('./img/hrhs.png'),
|
||||||
|
url: '../AppServicePublic/AppServicePublic?moduleId=5da220f3182047aba92d64ac08b93b55'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '五好家庭',
|
||||||
|
icon: require('./img/whjt.png'),
|
||||||
|
url: '../AppServicePublic/AppServicePublic?moduleId=6afadf4cd44f4b73be29390b30ca88bb'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
uni-page-body{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.AppPageCivilization{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
BIN
src/apps/AppPageCivilization/img/hjsq.png
Normal file
|
After Width: | Height: | Size: 271 KiB |
BIN
src/apps/AppPageCivilization/img/hrhs.png
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
src/apps/AppPageCivilization/img/whjt.png
Normal file
|
After Width: | Height: | Size: 87 KiB |
49
src/apps/AppPageInteraction/AppPageInteraction.vue
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
<template>
|
||||||
|
<div class="AppPageInteraction">
|
||||||
|
<AppListPage :label="label" :appList="appList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import AppListPage from '@/components/AppListPage/AppListPage'
|
||||||
|
export default {
|
||||||
|
name: 'AppPageInteraction',
|
||||||
|
appName: '工作台(居民互动)',
|
||||||
|
components: { AppListPage },
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
label: '居民互动',
|
||||||
|
appList: [
|
||||||
|
{
|
||||||
|
name: '居民活动',
|
||||||
|
icon: require('./img/jmhd.png'),
|
||||||
|
url: '../AppResidentActivitie/AppResidentActivities'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '小程序公告',
|
||||||
|
icon: require('./img/xcxgg.png'),
|
||||||
|
url: '../AppUniMsg/AppUniMsg'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '问卷表单',
|
||||||
|
icon: require('./img/wjbd.png'),
|
||||||
|
url: '../AppAskForm/AppForm'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
uni-page-body{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.AppPageInteraction{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
BIN
src/apps/AppPageInteraction/img/jmhd.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
src/apps/AppPageInteraction/img/wjbd.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
src/apps/AppPageInteraction/img/xcxgg.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
54
src/apps/AppPageParty/AppPageParty.vue
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
<template>
|
||||||
|
<div class="AppPageParty">
|
||||||
|
<AppListPage :label="label" :appList="appList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import AppListPage from '@/components/AppListPage/AppListPage'
|
||||||
|
export default {
|
||||||
|
name: 'AppPageParty',
|
||||||
|
appName: '工作台(基层党建)',
|
||||||
|
components: { AppListPage },
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
label: '基层党建',
|
||||||
|
appList: [
|
||||||
|
{
|
||||||
|
name: '三会一课',
|
||||||
|
icon: require('./img/shyk.png'),
|
||||||
|
url: '../party/AppThreeSessions/AppThreeSessions'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '党建要闻',
|
||||||
|
icon: require('./img/djyw.png'),
|
||||||
|
url: '../AppServicePublic/AppServicePublic?moduleId=95f0f1c509e44d528069bc9f9dc19e53'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '党员学习',
|
||||||
|
icon: require('./img/dyxx.png'),
|
||||||
|
url: '../party/AppPartyStudy/AppPartyStudy'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '在线答题',
|
||||||
|
icon: require('./img/zxdt.png'),
|
||||||
|
url: '../party/AppOnlineAnswer/AppOnlineAnswer'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
uni-page-body{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.AppPageParty{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
BIN
src/apps/AppPageParty/img/djyw.png
Normal file
|
After Width: | Height: | Size: 118 KiB |
BIN
src/apps/AppPageParty/img/dyxx.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
BIN
src/apps/AppPageParty/img/shyk.png
Normal file
|
After Width: | Height: | Size: 107 KiB |
BIN
src/apps/AppPageParty/img/zxdt.png
Normal file
|
After Width: | Height: | Size: 74 KiB |
49
src/apps/AppPageResident/AppPageResident.vue
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
<template>
|
||||||
|
<div class="AppPageResident">
|
||||||
|
<AppListPage :label="label" :appList="appList" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import AppListPage from '@/components/AppListPage/AppListPage'
|
||||||
|
export default {
|
||||||
|
name: 'AppPageResident',
|
||||||
|
appName: '工作台(居民)',
|
||||||
|
components: { AppListPage },
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
label: '居民管理',
|
||||||
|
appList: [
|
||||||
|
{
|
||||||
|
name: '居民信息管理',
|
||||||
|
icon: require('./img/jmxxgl.png'),
|
||||||
|
url: '../AppResidentFile/AppResidentFile?tabIndex=1'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '居民群管理',
|
||||||
|
icon: require('./img/jmqgl.png'),
|
||||||
|
url: '../AppResidentFile/AppResidentFile?tabIndex=2'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '居民档案',
|
||||||
|
icon: require('./img/jmda.png'),
|
||||||
|
url: '../AppResidentFile/AppResidentFile'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
uni-page-body{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.AppPageResident{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
BIN
src/apps/AppPageResident/img/jmda.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
src/apps/AppPageResident/img/jmqgl.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
src/apps/AppPageResident/img/jmxxgl.png
Normal file
|
After Width: | Height: | Size: 30 KiB |
@@ -57,12 +57,14 @@ export default {
|
|||||||
showStstus: false,
|
showStstus: false,
|
||||||
flag: false,
|
flag: false,
|
||||||
areaIdProps: '',
|
areaIdProps: '',
|
||||||
|
moduleId: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: { ...mapState(['user']) },
|
computed: { ...mapState(['user']) },
|
||||||
onLoad(o) {
|
onLoad(o) {
|
||||||
console.log(o)
|
console.log(o)
|
||||||
this.id = o.id
|
this.id = o.id
|
||||||
|
this.moduleId = o.moduleId
|
||||||
this.areaIdProps = this.user.areaId
|
this.areaIdProps = this.user.areaId
|
||||||
this.$dict.load('realityStatus').then(() => {
|
this.$dict.load('realityStatus').then(() => {
|
||||||
this.getDetail()
|
this.getDetail()
|
||||||
@@ -113,6 +115,7 @@ export default {
|
|||||||
// images: JSON.stringify(imgs) || [],
|
// images: JSON.stringify(imgs) || [],
|
||||||
images: imgs || [],
|
images: imgs || [],
|
||||||
id: this.id,
|
id: this.id,
|
||||||
|
moduleId: this.moduleId
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
|
|||||||
@@ -66,6 +66,7 @@ export default {
|
|||||||
pages: 0,
|
pages: 0,
|
||||||
deletShow: false,
|
deletShow: false,
|
||||||
deletId: '',
|
deletId: '',
|
||||||
|
moduleId: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@@ -76,8 +77,9 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
watch: {},
|
watch: {},
|
||||||
onLoad() {
|
onLoad(o) {
|
||||||
this.areaId = this.user.areaId
|
this.areaId = this.user.areaId
|
||||||
|
this.moduleId = o.moduleId
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
mounted() {},
|
mounted() {},
|
||||||
@@ -90,6 +92,7 @@ export default {
|
|||||||
current: this.current,
|
current: this.current,
|
||||||
areaId: this.areaId,
|
areaId: this.areaId,
|
||||||
title: this.keyword,
|
title: this.keyword,
|
||||||
|
moduleId: this.moduleId
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
@@ -116,7 +119,7 @@ export default {
|
|||||||
}
|
}
|
||||||
if (type == null) {
|
if (type == null) {
|
||||||
console.log('添加')
|
console.log('添加')
|
||||||
uni.navigateTo({ url: `./Add` })
|
uni.navigateTo({ url: `./Add?moduleId=${this.moduleId}` })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
86
src/components/AppListPage/AppListPage.vue
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
<template>
|
||||||
|
<section class="AppListPage">
|
||||||
|
<div class="content">
|
||||||
|
<div class="title">{{label}}</div>
|
||||||
|
<div class="app-list">
|
||||||
|
<div class="item" v-for="(item, index) in appList" :key="index" @click="linkTo(item.url)">
|
||||||
|
<div class="icon" :style="`backgroundImage: url(${item.icon});`"></div>
|
||||||
|
<p>{{item.name}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</section>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "AppListPage",
|
||||||
|
props: {
|
||||||
|
label: String,
|
||||||
|
appList: Array,
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
linkTo(url) {
|
||||||
|
console.log(url)
|
||||||
|
uni.navigateTo({url})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.AppListPage {
|
||||||
|
padding-top: 20px;
|
||||||
|
.content{
|
||||||
|
margin: 0 20px 20px;
|
||||||
|
width: calc(100% - 40px);
|
||||||
|
background: #FFF;
|
||||||
|
border-radius: 16px;
|
||||||
|
.title{
|
||||||
|
line-height: 70px;
|
||||||
|
border-bottom: 1px solid #eee;
|
||||||
|
padding-left: 20px;
|
||||||
|
font-size: 26px;
|
||||||
|
font-family: PingFangSC-Medium, PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.app-list{
|
||||||
|
overflow: hidden;
|
||||||
|
.item{
|
||||||
|
text-align: center;
|
||||||
|
padding-bottom: 38px;
|
||||||
|
border-right: 1px solid #eee;
|
||||||
|
border-top: 1px solid #eee;
|
||||||
|
width: calc(33% - 1px);
|
||||||
|
float: left;
|
||||||
|
.icon{
|
||||||
|
display: inline-block;
|
||||||
|
width: 58px;
|
||||||
|
height: 58px;
|
||||||
|
margin: 40px 0 18px 0;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
font-size: 28px;
|
||||||
|
font-family: PingFangSC-Regular, PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #3D434A;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.item:nth-of-type(3n) {
|
||||||
|
border-right: 0;
|
||||||
|
}
|
||||||
|
.item:nth-child(1),
|
||||||
|
.item:nth-child(2),
|
||||||
|
.item:nth-child(3) {
|
||||||
|
border-top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||