This commit is contained in:
花有清香月有阴
2022-01-07 17:30:54 +08:00
5 changed files with 120 additions and 97 deletions

View File

@@ -16,19 +16,19 @@
<div class="item"> <div class="item">
<div class="mini-title">小区管理</div> <div class="mini-title">小区管理</div>
<div class="info"> <div class="info">
<div class="line-bg"><div class="active-bg"></div></div>共11条 | 已办结9 <img src="./components/img/right-icon.png" alt=""> <div class="line-bg"><div class="active-bg"></div></div>共11条 | 已办结9
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div class="mini-title">小区管理</div> <div class="mini-title">小区管理</div>
<div class="info"> <div class="info">
<div class="line-bg" style="width:50%;"><div class="active-bg"></div></div>共11条 | 已办结9 <img src="./components/img/right-icon.png" alt=""> <div class="line-bg" style="width:44%;"><div class="active-bg"></div></div>共11条 | 已办结9
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<div class="mini-title">小区管理</div> <div class="mini-title">小区管理</div>
<div class="info"> <div class="info">
<div class="line-bg" style="width:40%;"><div class="active-bg"></div></div>共11条 | 已办结9 <img src="./components/img/right-icon.png" alt=""> <div class="line-bg" style="width:30%;"><div class="active-bg"></div></div>共11条 | 已办结9
</div> </div>
</div> </div>
</div> </div>
@@ -186,7 +186,7 @@ export default {
line-height: 48px; line-height: 48px;
.line-bg{ .line-bg{
display: inline-block; display: inline-block;
width: 63%; width: 56%;
height: 14px; height: 14px;
background: #D7D8D9; background: #D7D8D9;
border-radius: 8px; border-radius: 8px;

View File

@@ -115,11 +115,7 @@ export default {
} }
}) })
}else { //查网格员 }else { //查网格员
this.$http.post(`/app/appgirdmemberinfo/listByGirdId`, { this.$http.post(`/app/appgirdmemberinfo/listByGirdId`, {girdId: row.id}).then((res) => {
appGirdMemberInfo: {
girdId: row.id
}
}).then((res) => {
if (res?.data) { if (res?.data) {
this.userList = res.data this.userList = res.data
this.userList.map((item) => { this.userList.map((item) => {

View File

@@ -1,10 +1,11 @@
<template> <template>
<div class="statistics"> <div class="statistics" v-if="pageShow">
<div class="gird-select"> <!-- <div class="gird-select">
<img src="./components/img/gird-icon.png" alt=""> <img src="./components/img/gird-icon.png" alt="">
<span>全部网格</span> <span>{{girdName}}</span>
<img src="./components/img/down-icon.png" alt=""> <img src="./components/img/down-icon.png" alt="">
</div> </div>
<u-select v-model="showSelect" :list="myGirdList" value-name="id" label-name="girdName" @confirm="confirm"></u-select> -->
<div class="info-content"> <div class="info-content">
<div class="title">今日概况</div> <div class="title">今日概况</div>
<div class="el-row"> <div class="el-row">
@@ -20,11 +21,11 @@
<div class="left"> <div class="left">
<div class="item"> <div class="item">
<p>受理率</p> <p>受理率</p>
<h2>{{info.businessCountMap['受理率'] * 100}}%</h2> <h2>{{info.businessCountMap['受理率'] * 100 || '0'}}%</h2>
</div> </div>
<div class="item"> <div class="item">
<p>办结率</p> <p>办结率</p>
<h2>{{info.businessCountMap['办结率'] * 100}}%</h2> <h2>{{info.businessCountMap['办结率'] * 100 || '0'}}%</h2>
</div> </div>
</div> </div>
<div class="right"> <div class="right">
@@ -35,15 +36,15 @@
<div class="num"> <div class="num">
<div class="item bg1"> <div class="item bg1">
<h2>累计反馈</h2> <h2>累计反馈</h2>
<p>{{info.businessCountMap['累计反馈']}}</p> <p>{{info.businessCountMap['累计反馈'] || '0'}}</p>
</div> </div>
<div class="item bg2"> <div class="item bg2">
<h2>累计受理</h2> <h2>累计受理</h2>
<p>{{info.businessCountMap['累计受理']}}</p> <p>{{info.businessCountMap['累计受理'] || '0'}}</p>
</div> </div>
<div class="item bg3"> <div class="item bg3">
<h2>累计办理</h2> <h2>累计办理</h2>
<p>{{info.businessCountMap['累计办结']}}</p> <p>{{info.businessCountMap['累计办结'] || '0'}}</p>
</div> </div>
</div> </div>
</div> </div>
@@ -51,34 +52,22 @@
</div> </div>
<div class="info-content"> <div class="info-content">
<div class="title" @click="toPercentageDetail">分类统计 <div class="title" @click="toPercentageDetail">分类统计
<img src="./components/img/right-icon.png" alt=""> <!-- <img src="./components/img/right-icon.png" alt=""> -->
</div> </div>
<div class="percentage"> <div class="percentage">
<div class="item"> <div class="item" v-for="(item, index) in info.groupList" :key="index">
<div class="mini-title">小区管理</div> <div class="mini-title">{{item.groupName}}</div>
<div class="info"> <div class="info">
<div class="line-bg"><div class="active-bg"></div></div>共11条 | 已办结9 <img src="./components/img/right-icon.png" alt=""> <div class="line-bg" :style="`width:${item.width}%`"><div class="active-bg" :style="`width:${item.percentage*100}%`"></div></div>{{item.totalNum}} | 已办结{{item.finishNum}}
</div>
</div>
<div class="item">
<div class="mini-title">小区管理</div>
<div class="info">
<div class="line-bg" style="width:44%;"><div class="active-bg"></div></div>共11条 | 已办结9 <img src="./components/img/right-icon.png" alt="">
</div>
</div>
<div class="item">
<div class="mini-title">小区管理</div>
<div class="info">
<div class="line-bg" style="width:30%;"><div class="active-bg"></div></div>共11条 | 已办结9 <img src="./components/img/right-icon.png" alt="">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="info-content" @click="toUserList"> <!-- <div class="info-content" @click="toUserList">
<div class="title">成员明细 <div class="title">成员明细
<img src="./components/img/right-icon.png" alt=""> <img src="./components/img/right-icon.png" alt="">
</div> </div>
</div> </div> -->
<div class="pad-b120"></div> <div class="pad-b120"></div>
</div> </div>
</template> </template>
@@ -89,10 +78,16 @@ export default {
data() { data() {
return { return {
todayList: [], todayList: [],
info: {} info: {},
pageShow: false,
myGirdList: [],
showSelect: false,
myGirdList: [],
girdName: '全部网格'
} }
}, },
mounted() { mounted() {
this.girdList()
this.getStatistics() this.getStatistics()
}, },
methods: { methods: {
@@ -107,7 +102,18 @@ export default {
} }
this.todayList.push(info) this.todayList.push(info)
}) })
if(this.info.groupList.length) {
this.info.groupList.map((item, index) => {
if(item.finishNum) {
item.percentage = (item.finishNum/item.totalNum).toFixed(2)
}else {
item.percentage = 0
} }
item.width = 56-(index*10)
})
}
}
this.pageShow = true
}) })
}, },
@@ -125,6 +131,27 @@ export default {
}, },
toUserList() { toUserList() {
uni.navigateTo({url: './UserList'}) uni.navigateTo({url: './UserList'})
},
girdList() {
this.$http.post(`/app/appgirdmemberinfo/queryMyGirdList`, null, {
params: {
size: 9999,
},
})
.then((res) => {
if (res.code == 0) {
this.myGirdList = res.data
var all = {
id: '',
girdName: '全部'
}
this.myGirdList.unshift(all)
}
})
},
confirm(e) {
} }
}, },
} }
@@ -291,13 +318,11 @@ export default {
line-height: 48px; line-height: 48px;
.line-bg{ .line-bg{
display: inline-block; display: inline-block;
width: 56%;
height: 14px; height: 14px;
background: #D7D8D9; background: #D7D8D9;
border-radius: 8px; border-radius: 8px;
margin-right: 12px; margin-right: 12px;
.active-bg{ .active-bg{
width: 80%;
height: 100%; height: 100%;
background: #257FF1; background: #257FF1;
border-radius: 8px; border-radius: 8px;

View File

@@ -35,14 +35,14 @@
<div class="options" v-if="form.type == 1"> <div class="options" v-if="form.type == 1">
<div class="oneopt"> <div class="oneopt">
<div class="items info" v-for="(item, index) in list" :key="index"> <!-- <div class="items info" v-for="(item, index) in list" :key="index">
<img src="./img/22.png" alt="" @click="del(index)" /> <img src="./img/22.png" alt="" @click="del(index)" />
<div class="rightopts" style="color: #666">{{ item }}</div> <div class="rightopts" style="color: #666">{{ item }}</div>
</div> </div> -->
<div class="items"> <div class="items" v-for="(item, index) in list" :key="index">
<img src="./img/22.png" alt="" /> <img src="./img/22.png" alt="" @click="del(index)" />
<div class="rightopts"> <div class="rightopts">
<u-input v-model="contents" placeholder="选项" maxlength="200" :clearable="false" /> <u-input v-model="item.content" placeholder="选项" maxlength="200" :clearable="false" />
</div> </div>
</div> </div>
<div class="items" @click="addOpts"> <div class="items" @click="addOpts">
@@ -133,6 +133,7 @@ export default {
}, },
submit() { submit() {
let list = []
if (this.flag) return if (this.flag) return
if (!this.form.content) { if (!this.form.content) {
return this.$u.toast('请输入主题') return this.$u.toast('请输入主题')
@@ -146,26 +147,27 @@ export default {
if (!this.form.publicityDeadline) { if (!this.form.publicityDeadline) {
return this.$u.toast('请选择公示截止时间') return this.$u.toast('请选择公示截止时间')
} }
if (this.form.type == 1 && this.opts == 0 && !this.contents) {
return this.$u.toast('请输入单选选项') if (this.form.type === '1') {
if (!this.list.length) {
return this.$u.toast('请添加选项')
} }
if (this.opts == 1 && !this.list.length) { if (this.list.length < 2) {
return this.$u.toast('请输入多选选项') return this.$u.toast('选项不能少于2个')
} }
if (this.contents) { list = this.list.map((v, index) => {
this.list.push(this.contents) return {
content: v.content,
item: this.keys[index]
} }
if (this.opts == 1) {
var lists = []
this.list.map((item, index) => {
item.contents == item, item.item == this.keys[index]
lists.push({
content: item,
item: this.keys[index],
}) })
})
console.log(lists) for (let i = 0; i < list.length; i ++) {
if (!list[i].content) {
return this.$u.toast(`请输入弟${i + 1}个选项的内容`)
}
}
} }
var params = { var params = {
@@ -173,7 +175,7 @@ export default {
// voteItems: this.list, // voteItems: this.list,
areaId: this.form.areaId, areaId: this.form.areaId,
areaName: this.form.areaName, areaName: this.form.areaName,
voteItems: lists, voteItems: list,
anonymous: this.checked == true ? 1 : 0, anonymous: this.checked == true ? 1 : 0,
createUserId: this.user.id, createUserId: this.user.id,
createUserName: this.user.name, createUserName: this.user.name,
@@ -194,11 +196,12 @@ export default {
}, },
addOpts() { addOpts() {
if (!this.contents) { // if (!this.contents) {
return this.$u.toast('请输入选项内容') // return this.$u.toast('请输入选项内容')
} // }
this.list.push(this.contents) this.list.push({
this.contents = '' content: ''
})
}, },
del(index) { del(index) {
@@ -211,8 +214,6 @@ export default {
}, },
confirmTime(e) { confirmTime(e) {
console.log(e)
if (this.showStartTime == true) { if (this.showStartTime == true) {
var nowTime = new Date().getTime() * 1 var nowTime = new Date().getTime() * 1

View File

@@ -41,6 +41,7 @@
<div class="content" v-text="op.content" @click="adddeleShow(op.id)" /> <div class="content" v-text="op.content" @click="adddeleShow(op.id)" />
<div class="content" v-text="op.content" />
<div class="content color-999" v-text="op.createTime" /> <div class="content color-999" v-text="op.createTime" />
</div> </div>
<AiEmpty v-if="!data.messages.length"></AiEmpty> <AiEmpty v-if="!data.messages.length"></AiEmpty>
@@ -111,6 +112,7 @@ export default {
deleShow: false, deleShow: false,
modalShow: false, modalShow: false,
deleId: '', deleId: '',
isAnnouncer: false,
} }
}, },
computed: { computed: {
@@ -157,7 +159,7 @@ export default {
this.timestamp = discussTime - nowTime this.timestamp = discussTime - nowTime
} }
if (res.data.voteType === '1') { if (res.data.type === '1') {
const total = Object.values(res.data.statistic).reduce((x, y) => { const total = Object.values(res.data.statistic).reduce((x, y) => {
return x + y return x + y
}) })
@@ -183,9 +185,7 @@ export default {
like(id) { like(id) {
this.$loading() this.$loading()
this.$http this.$http.post(`/app/appvillagediscussmessage/suport?id=${id}&userId=${this.user.id}`).then((res) => {
.post(`/app/appvillagediscussmessage/suport?id=${id}&userId=${this.user.id}`)
.then((res) => {
this.$hideLoading() this.$hideLoading()
if (res.code === 0) { if (res.code === 0) {
this.$u.toast('点赞成功') this.$u.toast('点赞成功')
@@ -197,19 +197,16 @@ export default {
this.$u.toast(res.msg) this.$u.toast(res.msg)
} }
}) })
.catch((e) => {
this.$hideLoading()
this.$u.toast(e)
})
}, },
adddeleShow(id) { adddeleShow(id) {
this.deleId = id this.deleId = id
this.deleShow = true this.deleShow = true
}, },
confirmDelete() { confirmDelete() {
this.$http.post(`/app/appvillagediscussmessage/delete?ids=${this.deleId}`).then((res) => { this.$http
.post(`/app/appvillagediscussmessage/delete?ids=${this.deleId}`)
.then((res) => {
if (res?.data) { if (res?.data) {
this.deleShow = false this.deleShow = false
this.modalShow = false this.modalShow = false
@@ -217,6 +214,10 @@ export default {
this.getDetail() this.getDetail()
} }
}) })
.catch((e) => {
this.$hideLoading()
this.$u.toast(e)
})
}, },
publish() { publish() {
@@ -293,7 +294,7 @@ export default {
}) })
.then((res) => { .then((res) => {
if (res?.code == 0) { if (res?.code == 0) {
this.$u.toast('结束公示!') this.$u.toast('结束公示成功!')
this.getDetail() this.getDetail()
} }
}) })