Browse Source

问题修改

feature
张若晨 2 years ago
parent
commit
b759d9d58c
  1. BIN
      src/assets/images/manyidu/qz_wjj.png
  2. BIN
      src/assets/images/manyidu/qz_wmz.png
  3. BIN
      src/assets/images/manyidu/qz_wx.png
  4. BIN
      src/assets/images/manyidu/xuanzhuan-bg.png
  5. 2
      src/assets/scss/dataBoardMain.scss
  6. 14
      src/views/dataBoard/cpts/family/modules/MatterDetails.vue
  7. 15
      src/views/dataBoard/cpts/personnel/modules/MatterDetails.vue
  8. 167
      src/views/dataBoard/satisfactionEval/modules/PotentialPeople/index.vue
  9. 2
      src/views/dataBoard/satisfactionEval/modules/SelfTrend/index.vue
  10. 154
      src/views/dataBoard/satisfactionEval/potentialPeople/index.vue

BIN
src/assets/images/manyidu/qz_wjj.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

BIN
src/assets/images/manyidu/qz_wmz.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

BIN
src/assets/images/manyidu/qz_wx.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
src/assets/images/manyidu/xuanzhuan-bg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

2
src/assets/scss/dataBoardMain.scss

@ -271,5 +271,5 @@
}
.g-cnt {
padding: 24px;
padding: 8px 24px;
}

14
src/views/dataBoard/cpts/family/modules/MatterDetails.vue

@ -110,28 +110,26 @@ export default {
color: #fe0000;
}
&:nth-of-type(1) {
left: 0;
bottom: 15px;
}
&:nth-of-type(2) {
left: 42px;
bottom: 185px;
}
&:nth-of-type(2) {
left: 499px;
bottom: 157px;
}
&:nth-of-type(3) {
left: 194px;
bottom: 245px;
}
&:nth-of-type(4) {
left: 384px;
bottom: 240px;
}
&:nth-of-type(5) {
left: 499px;
bottom: 157px;
left: 0;
bottom: 15px;
}
&:nth-of-type(6) {

15
src/views/dataBoard/cpts/personnel/modules/MatterDetails.vue

@ -109,29 +109,28 @@ export default {
background: url("@/assets/images/manyidu/dn_red.png") center no-repeat;
color: #fe0000;
}
&:nth-of-type(1) {
left: 0;
bottom: 15px;
}
&:nth-of-type(2) {
&:nth-of-type(1) {
left: 42px;
bottom: 185px;
}
&:nth-of-type(2) {
left: 499px;
bottom: 157px;
}
&:nth-of-type(3) {
left: 194px;
bottom: 245px;
}
&:nth-of-type(4) {
left: 384px;
bottom: 240px;
}
&:nth-of-type(5) {
left: 499px;
bottom: 157px;
left: 0;
bottom: 15px;
}
&:nth-of-type(6) {

167
src/views/dataBoard/satisfactionEval/modules/PotentialPeople/index.vue

@ -1,39 +1,85 @@
<template>
<div class="potential-people"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
<div
class="potential-people"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
>
<div class="potential-people-item" @click="$router.push('/dataBoard/satisfactionEval/potentialPeople?countType=event')">
<div
class="potential-people-item"
@click="
$router.push(
'/dataBoard/satisfactionEval/potentialPeople?countType=event'
)
"
>
<div class="icon">
<img src="@/assets/images/manyidu/qz_wjj.png" alt="">
<img
class="imgBg"
src="@/assets/images/manyidu/xuanzhuan-bg.png"
alt=""
/>
<img class="imgIcon" src="@/assets/images/manyidu/qz_wjj.png" alt="" />
</div>
<div class="txt">
事件未解决 <br>
事件未解决 <br />
上报人数
</div>
<div class="num"><span class="orange">{{ unSolvedNum ? unSolvedNum : 0 }}</span></div>
<div class="num">
<span class="orange">{{ unSolvedNum ? unSolvedNum : 0 }}</span
>
</div>
</div>
<div class="potential-people-item" @click="$router.push('/dataBoard/satisfactionEval/potentialPeople?countType=demand')">
<div
class="potential-people-item"
@click="
$router.push(
'/dataBoard/satisfactionEval/potentialPeople?countType=demand'
)
"
>
<div class="icon">
<img src="@/assets/images/manyidu/qz_wmz.png" alt="">
<img
class="imgBg"
src="@/assets/images/manyidu/xuanzhuan-bg.png"
alt=""
/>
<img class="imgIcon" src="@/assets/images/manyidu/qz_wmz.png" alt="" />
</div>
<div class="txt">
需求未满足 <br>
需求未满足 <br />
人数
</div>
<div class="num"><span class="green">{{ unFinishNum ? unFinishNum : 0 }}</span></div>
<div class="num">
<span class="green">{{ unFinishNum ? unFinishNum : 0 }}</span
>
</div>
</div>
<div class="potential-people-item" @click="$router.push('/dataBoard/satisfactionEval/potentialPeople?countType=service')">
<div
class="potential-people-item"
@click="
$router.push(
'/dataBoard/satisfactionEval/potentialPeople?countType=service'
)
"
>
<div class="icon">
<img src="@/assets/images/manyidu/qz_wx.png" alt="">
<img
class="imgBg"
src="@/assets/images/manyidu/xuanzhuan-bg.png"
alt=""
/>
<img class="imgIcon" src="@/assets/images/manyidu/qz_wx.png" alt="" />
</div>
<div class="txt">
应享未享 <br>
应享未享 <br />
服务人数
</div>
<div class="num"><span class="light">{{ noServiceNum ? noServiceNum : 0 }}</span></div>
<div class="num">
<span class="light">{{ noServiceNum ? noServiceNum : 0 }}</span
>
</div>
</div>
</div>
</template>
@ -46,15 +92,14 @@ export default {
noServiceNum: 0,
unFinishNum: 0,
unSolvedNum: 0,
loading: true
}
loading: true,
};
},
props: {
date: {
type: Object,
default: () => {
}
}
default: () => {},
},
},
watch: {
"$store.state.chooseArea.chooseName"(val) {
@ -64,7 +109,7 @@ export default {
},
date() {
this.getData();
}
},
},
mounted() {
if (this.$store.state.chooseArea.chooseName.orgId) {
@ -74,24 +119,45 @@ export default {
methods: {
getData() {
this.loading = true
this.loading = true;
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId,
...this.date
}
this.$http.get('/governance/satisfactionOverview/potentialSatisfactionGroup?' + this.$paramsFormat(params)).then(({data: {data}}) => {
this.noServiceNum = data.noServiceNum
this.unFinishNum = data.unFinishNum
this.unSolvedNum = data.unSolvedNum
this.loading = false
})
}
}
}
...this.date,
};
this.$http
.get(
"/governance/satisfactionOverview/potentialSatisfactionGroup?" +
this.$paramsFormat(params)
)
.then(({ data: { data } }) => {
this.noServiceNum = data.noServiceNum;
this.unFinishNum = data.unFinishNum;
this.unSolvedNum = data.unSolvedNum;
this.loading = false;
});
},
},
};
</script>
<style scoped lang="scss">
@keyframes roate {
0% {
transform: rotateZ(0);
-ms-transform: rotateZ(0);
-moz-transform: rotateZ(0);
-webkit-transform: rotateZ(0);
-o-transform: rotateZ(0);
}
100% {
transform: rotateZ(360deg);
-ms-transform: rotateZ(360deg);
-moz-transform: rotateZ(360deg);
-webkit-transform: rotateZ(360deg);
-o-transform: rotateZ(360deg);
}
}
.potential-people {
padding: 16px 36px;
display: flex;
@ -103,54 +169,63 @@ export default {
text-align: center;
flex: 1;
border: 1px solid rgba(28, 67, 111, 0.22);
background: linear-gradient(0deg, rgba(31, 121, 255, 0.22) 0%, rgba(31, 121, 255, 0) 100%);
background: linear-gradient(
0deg,
rgba(31, 121, 255, 0.22) 0%,
rgba(31, 121, 255, 0) 100%
);
padding: 26px 0 31px;
.icon {
width: 86px;
height: 86px;
margin: 0 auto;
img {
.imgIcon {
width: 30px;
height: 30px;
margin-top: -100px;
}
.imgBg {
display: block;
width: 100%;
height: 100%;
animation: roate 5s infinite linear; //
}
}
.txt {
font-size: 14px;
font-weight: 400;
color: #A3B9DA;
color: #a3b9da;
line-height: 24px;
margin: 11px 0 22px;
white-space: normal;
}
.num {
font-size: 14px;
font-weight: 500;
color: #A3B9DA;
color: #a3b9da;
white-space: normal;
span {
font-size: 32px;
font-weight: bold;
font-style: italic;
}
}
}
}
.orange {
color: #FFB73C;
color: #ffb73c;
}
.green {
color: #08EBAE;
color: #08ebae;
}
.light {
color: #7FCEFF;
color: #7fceff;
}
</style>
</style>

2
src/views/dataBoard/satisfactionEval/modules/SelfTrend/index.vue

@ -25,7 +25,7 @@ export default {
value: 1
}, {
label: '社区自查结果走势',
label: '社区自查得分走势',
value: 2
}],

154
src/views/dataBoard/satisfactionEval/potentialPeople/index.vue

@ -1,27 +1,50 @@
<template>
<div>
<Breadcrumb :list="breadcrumbList"/>
<Breadcrumb :list="breadcrumbList" />
<div class="screen">
<el-form :model="queryParams" inline>
<el-select popper-class="selectPopClass" v-model="queryParams.agencyId" size="small" placeholder="按组织">
<el-option v-for="item in orgOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
<el-select
popper-class="selectPopClass"
v-model="queryParams.agencyId"
size="small"
placeholder="按组织"
>
<el-option
v-for="item in orgOptions"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
<el-input v-model.trim="queryParams.name" clearable size="small" placeholder="按姓名"></el-input>
<el-input v-model.trim="queryParams.mobile" clearable size="small" placeholder="按电话"></el-input>
<el-button size="small" class="btn" type="primary" @click="search">查询</el-button>
<el-input
v-model.trim="queryParams.name"
clearable
size="small"
placeholder="按姓名"
></el-input>
<el-input
v-model.trim="queryParams.mobile"
clearable
size="small"
placeholder="按电话"
></el-input>
<el-button size="small" class="btn" type="primary" @click="search"
>查询</el-button
>
</el-form>
</div>
<div class="table">
<el-table :data="list"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
<el-table
:data="list"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
>
<el-table-column label="序号" type="index" width="80"/>
<el-table-column label="序号" type="index" width="80" />
<el-table-column prop="name" label="上报人"/>
<el-table-column prop="name" label="上报人" />
<el-table-column prop="mobile" label="上报人电话">
<template slot-scope="scope">
@ -33,8 +56,15 @@
<el-table-column prop="eventCount" sortable label="事件未解决数">
<template slot-scope="{ row }">
<el-button type="text"
@click="$router.push('/dataBoard/satisfactionEval/potentialPeople/sjwjj?reportUserId=' + row.reportUserId)">
<el-button
type="text"
@click="
$router.push(
'/dataBoard/satisfactionEval/potentialPeople/sjwjj?reportUserId=' +
row.reportUserId
)
"
>
{{ row.eventCount }}
</el-button>
</template>
@ -42,8 +72,15 @@
<el-table-column prop="demandCount" sortable label="需求未满足数">
<template slot-scope="{ row }">
<el-button type="text"
@click="$router.push('/dataBoard/satisfactionEval/potentialPeople/xqwmz?reportUserId=' + row.reportUserId)">
<el-button
type="text"
@click="
$router.push(
'/dataBoard/satisfactionEval/potentialPeople/xqwmz?reportUserId=' +
row.reportUserId
)
"
>
{{ row.demandCount }}
</el-button>
</template>
@ -51,8 +88,15 @@
<el-table-column prop="serviceCount" sortable label="应享未享数">
<template slot-scope="{ row }">
<el-button type="text"
@click="$router.push('/dataBoard/satisfactionEval/potentialPeople/yxwxfw?reportUserId=' + row.reportUserId)">
<el-button
type="text"
@click="
$router.push(
'/dataBoard/satisfactionEval/potentialPeople/yxwxfw?reportUserId=' +
row.reportUserId
)
"
>
{{ row.serviceCount }}
</el-button>
</template>
@ -60,15 +104,20 @@
<el-table-column prop="countAll" sortable label="总数">
<template slot-scope="{ row }"
>{{ row.countAll }}
>{{ row.countAll }}
<!-- <el-button type="text"></el-button>-->
</template>
</el-table-column>
</el-table>
</div>
<Pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<Pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNo"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
@ -79,7 +128,7 @@ import Title from "@/views/dataBoard/satisfactionEval/components/Title";
export default {
name: "dissatisfied",
components: {Breadcrumb, Pagination, Title},
components: { Breadcrumb, Pagination, Title },
data() {
return {
loading: true,
@ -106,7 +155,7 @@ export default {
},
],
monthOptions: new Array(12).fill(0).map((_, index) => {
return {label: index - 0 + 1 + "月", value: index - 0 + 1};
return { label: index - 0 + 1 + "月", value: index - 0 + 1 };
}),
list: [],
};
@ -126,36 +175,43 @@ export default {
level: this.$store.state.chooseArea.chooseName.level,
};
this.$http.post(`/gov/org/agency/maporg`, params).then(async ({data: {data}}) => {
this.queryParams.agencyId = this.$store.state.chooseArea.chooseName.orgId;
let parent = {value: data.id, label: data.name};
this.orgOptions = [
parent,
...data.children.map((item) => {
return {
value: item.id,
label: item.name,
};
}),
];
this.getList();
});
this.$http
.post(`/gov/org/agency/maporg`, params)
.then(async ({ data: { data } }) => {
this.queryParams.agencyId =
this.$store.state.chooseArea.chooseName.orgId;
let parent = { value: data.id, label: data.name };
this.orgOptions = [
parent,
...data.children.map((item) => {
return {
value: item.id,
label: item.name,
};
}),
];
this.getList();
});
},
getList() {
this.loading = true
console.log(this.$route.query.countType)
this.loading = true;
console.log(this.$route.query.countType);
let params = {
...this.queryParams,
countType: this.$route.query.countType
}
this.$http.get("/governance/satisfactionDetailList/getPotentialDissatisfiedCountDetail?" + this.$paramsFormat(params)).then(({data: {data}}) => {
this.list = data.list;
this.total = data.total;
this.loading = false
});
},
handleView(id) {
countType: this.$route.query.countType,
};
this.$http
.get(
"/governance/satisfactionDetailList/getPotentialDissatisfiedCountDetail?" +
this.$paramsFormat(params)
)
.then(({ data: { data } }) => {
this.list = data.list;
this.total = data.total;
this.loading = false;
});
},
handleView(id) {},
},
};
</script>

Loading…
Cancel
Save