This commit is contained in:
yanran200730
2022-08-08 17:24:16 +08:00
7 changed files with 38 additions and 34 deletions

View File

@@ -5,7 +5,7 @@
</template> </template>
<script> <script>
import girdScoreManage from "./components/girdScoreManage.vue" import gridScoreManage from "./components/gridScoreManage.vue"
import gridScoreRules from "./components/gridScoreRules.vue" import gridScoreRules from "./components/gridScoreRules.vue"
import gridScoreStatistics from './components/gridScoreStatistics.vue' import gridScoreStatistics from './components/gridScoreStatistics.vue'
import gridScoreDetail from './components/gridScoreDetail.vue' import gridScoreDetail from './components/gridScoreDetail.vue'
@@ -14,7 +14,7 @@ import gmScore from './components/gmScore.vue'
export default { export default {
name: 'AppGridMemberScore', name: 'AppGridMemberScore',
label: "网格员积分", label: "网格员积分",
components: { gmScore, girdScoreManage, gridScoreRules, gridScoreStatistics, gridScoreDetail},
props: { props: {
instance: Function, instance: Function,
dict: Object, dict: Object,
@@ -24,15 +24,15 @@ export default {
computed: { computed: {
currentPage() { currentPage() {
let {hash} = this.$route let {hash} = this.$route
return hash == "#girdScoreManage" ? girdScoreManage : return hash == "#gridScoreDetail" ? gridScoreDetail :
hash == "#gridScoreRules" ? gridScoreRules : hash == "#gridScoreRules" ? gridScoreRules :
hash == "#gridScoreStatistics" ? gridScoreStatistics : hash == "#gridScoreStatistics" ? gridScoreStatistics :
hash == "#gridScoreDetail" ? gridScoreDetail: gmScore hash == "#gridScoreManage" ? gridScoreManage : gmScore
} }
}, },
components: { components: {
gmScore, gmScore,
girdScoreManage, gridScoreManage,
gridScoreRules, gridScoreRules,
gridScoreStatistics, gridScoreStatistics,
gridScoreDetail, gridScoreDetail,
@@ -41,11 +41,10 @@ export default {
methods: { methods: {
onChange(data) { onChange(data) {
let {type, params: query} = data, let {type, params: query} = data,
hash = ["girdScoreManage", "gridScoreRules","gridScoreStatistics"].includes(type) ? "" : "#" + type hash = ["gridScoreManage", "gridScoreRules","gridScoreStatistics"].includes(type) ? "" : "#" + type
this.$router.push({hash, query}) this.$router.push({hash, query})
} }
} }
} }
</script> </script>

View File

@@ -19,9 +19,9 @@
</template> </template>
<script> <script>
import girdScoreManage from "./girdScoreManage" import girdScoreManage from "./gridScoreManage.vue"
import gridScoreRules from "./gridScoreRules" import gridScoreRules from "./gridScoreRules.vue"
import gridScoreStatistics from './gridScoreStatistics' import gridScoreStatistics from './gridScoreStatistics.vue'
import {mapState} from 'vuex' import {mapState} from 'vuex'
export default { export default {

View File

@@ -1,12 +1,12 @@
<template> <template>
<section class="girdScoreManage"> <section class="gridScoreManage">
<ai-list> <ai-list>
<template #content> <template #content>
<ai-search-bar> <ai-search-bar>
<template #left> <template #left>
<el-button type="primary" size="small" icon="iconfont iconAdd" @click="dialog = true">批量调整积分</el-button> <el-button type="primary" size="small" icon="iconfont iconAdd" @click="dialog = true">批量调整积分</el-button>
<el-button type="primary" size="small" icon="iconfont iconAdd" @click="toDetail">跳转详情</el-button> <el-button type="primary" size="small" icon="iconfont iconAdd" @click="toDetail">跳转详情</el-button>
<el-select size="small" style="width: 200px;margin-left: 16px;" v-model="search.girdId" placeholder="所属网格" clearable <el-select size="small" style="width: 200px;" v-model="search.girdId" placeholder="所属网格" clearable
@change="getListInit()"> @change="getListInit()">
<el-option <el-option
v-for="(item,i) in girdList" v-for="(item,i) in girdList"
@@ -20,7 +20,7 @@
<template #right> <template #right>
<el-input size="small" placeholder="请输入居民名称或真实姓名" v-model="search.name" clearable <el-input size="small" placeholder="请输入居民名称或真实姓名" v-model="search.name" clearable
@clear="page.current = 1, search.name = '', getTableData()" suffix-icon="iconfont iconSearch" @clear="page.current = 1, search.name = '', getTableData()" suffix-icon="iconfont iconSearch"
v-throttle="() => {(page.current = 1), getTableData();}" style="margin-right: 16px;"/> v-throttle="() => {(page.current = 1), getTableData();}"/>
<ai-download :instance="instance" url="" :params="search" fileName="网格员积分" <ai-download :instance="instance" url="" :params="search" fileName="网格员积分"
:disabled="tableData.length == 0"> :disabled="tableData.length == 0">
<el-button size="small">导出</el-button> <el-button size="small">导出</el-button>
@@ -82,7 +82,7 @@
<script> <script>
import { mapState } from "vuex"; import { mapState } from "vuex";
export default { export default {
name: "girdScoreManage", name: "gridScoreManage",
label: "积分管理", label: "积分管理",
props: { props: {
instance: Function, instance: Function,
@@ -155,6 +155,7 @@ export default {
// id // id
} }
}) })
console.log('跳转');
} }
}, },
@@ -162,11 +163,7 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.girdScoreManage { .gridScoreManage {
height: 100%; height: 100%;
// ::v-deep .searchLeftZone,
// ::v-deep .searchRightZone {
// display: flex;
// }
} }
</style> </style>

View File

@@ -9,7 +9,7 @@
<el-button type="primary" icon="iconfont iconAdd" @click="dialog=true">添加</el-button> <el-button type="primary" icon="iconfont iconAdd" @click="dialog=true">添加</el-button>
</template> </template>
<template slot="right"> <template slot="right">
<el-cascader size="small" v-model="search.eventType" placeholder="请选择事件/类型" clearable style="margin-right: 16px;" <el-cascader size="small" v-model="search.eventType" placeholder="请选择事件/类型" clearable
:props="{...etOps,checkStrictly:true}" @change="handleTypeSearch" ref="eventTypeSearch" /> :props="{...etOps,checkStrictly:true}" @change="handleTypeSearch" ref="eventTypeSearch" />
<ai-select <ai-select
v-model="search.status" v-model="search.status"

View File

@@ -5,7 +5,7 @@
<p>总体统计</p> <p>总体统计</p>
<div class="title_right"> <div class="title_right">
<div><span v-for="(item,index) in timeCheck" :key="index" :class="currrntTime == index? 'active':''" @click="timeChange(index)">{{item}}</span></div> <div><span v-for="(item,index) in timeCheck" :key="index" :class="currrntTime == index? 'active':''" @click="timeChange(index)">{{item}}</span></div>
<el-select size="small" style="width: 200px;margin-left: 16px;" v-model="search.girdId" placeholder="所属网格" clearable <el-select size="small" style="width: 200px;" v-model="search.girdId" placeholder="所属网格" clearable
@change="getListInit()"> @change="getListInit()">
<el-option <el-option
v-for="(item,i) in girdList" v-for="(item,i) in girdList"
@@ -49,7 +49,7 @@
<template #content> <template #content>
<ai-search-bar> <ai-search-bar>
<template #left> <template #left>
<el-select size="small" style="width: 200px;margin-left: 16px;" v-model="search.girdId" placeholder="所属网格" clearable <el-select size="small" style="width: 200px;" v-model="search.girdId" placeholder="所属网格" clearable
@change="getListInit()"> @change="getListInit()">
<el-option <el-option
v-for="(item,i) in girdList" v-for="(item,i) in girdList"
@@ -78,7 +78,7 @@
<template #right> <template #right>
<el-input size="small" placeholder="请输入居民名称或真实姓名" v-model="search.name" clearable <el-input size="small" placeholder="请输入居民名称或真实姓名" v-model="search.name" clearable
@clear="page.current = 1, search.name = '', getTableData()" suffix-icon="iconfont iconSearch" @clear="page.current = 1, search.name = '', getTableData()" suffix-icon="iconfont iconSearch"
v-throttle="() => {(page.current = 1), getTableData();}" style="margin-right: 16px;"/> v-throttle="() => {(page.current = 1), getTableData();}" />
</template> </template>
</ai-search-bar> </ai-search-bar>
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size" <ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"

View File

@@ -57,12 +57,18 @@
</ai-table> </ai-table>
</template> </template>
<template v-else-if="form.type=='wxwork'"> <template v-else-if="form.type=='wxwork'">
<el-row type="flex">
<div class="fill">
<el-form-item label="接口是否单服务"> <el-form-item label="接口是否单服务">
<el-checkbox v-model="form.isSingleService"/> <el-checkbox v-model="form.isSingleService"/>
</el-form-item> </el-form-item>
</div>
<div class="fill">
<el-form-item label="默认首页"> <el-form-item label="默认首页">
<el-input v-model="form.homePage" clearable placeholder="默认首页"/> <el-input v-model="form.homePage" clearable placeholder="填写应用的文件名"/>
</el-form-item> </el-form-item>
</div>
</el-row>
</template> </template>
</template> </template>
</ai-card> </ai-card>
@@ -164,7 +170,7 @@ export default {
const {tabBar, form: {type, appId, isSingleService, homePage}} = this const {tabBar, form: {type, appId, isSingleService, homePage}} = this
if (type == 'mp') { if (type == 'mp') {
this.form.extra = {tabBar, appId} this.form.extra = {tabBar, appId}
} else if (v == 'wxwork') { } else if (type == 'wxwork') {
this.form.extra = {isSingleService, homePage} this.form.extra = {isSingleService, homePage}
} }
this.instance.post("/node/custom/addOrUpdate", this.form).then(res => { this.instance.post("/node/custom/addOrUpdate", this.form).then(res => {

View File

@@ -28,8 +28,8 @@
</div> </div>
<div class="flex-right"> <div class="flex-right">
<div class="title">{{chooseMonth}}{{chooseDay}}日宣发内容</div> <div class="title">{{chooseMonth}}{{chooseDay}}日宣发内容</div>
<div class="list-content"> <div class="list-content" v-if="taskList.length">
<el-timeline> <el-timeline >
<el-timeline-item v-for="(item, index) in taskList" :key="index"> <el-timeline-item v-for="(item, index) in taskList" :key="index">
<el-card> <el-card>
<div class="flex-between"> <div class="flex-between">
@@ -52,8 +52,9 @@
</el-card> </el-card>
</el-timeline-item> </el-timeline-item>
</el-timeline> </el-timeline>
<ai-empty v-if="!taskList.length" />
</div> </div>
<ai-empty v-if="!taskList.length" />
</div> </div>
</div> </div>
</div> </div>
@@ -530,6 +531,7 @@
box-sizing: border-box; box-sizing: border-box;
overflow-y: scroll; overflow-y: scroll;
background-color: #F9F9F9; background-color: #F9F9F9;
box-sizing: border-box;
.item-title{ .item-title{
width: calc(100% - 100px); width: calc(100% - 100px);
word-break: break-all; word-break: break-all;