Browse Source

合并代码

V1.0
SongZhen 2 years ago
parent
commit
7c59f95476
  1. 26
      src/assets/scss/dataBoard/overview/index.scss
  2. 2
      src/assets/scss/modules/index.scss
  3. 6
      src/utils/desensitization.js
  4. 4
      src/views/dataBoard/cpts/map/index.vue
  5. 2
      src/views/dataBoard/overview/components/GridUpdateRanking.vue
  6. 21
      src/views/dataBoard/overview/components/sq12345.vue
  7. 20
      src/views/dataBoard/overview/components/sqrfph.vue
  8. 22
      src/views/dataBoard/satisfactionEval/dissatisfied/detail.vue
  9. 12
      src/views/dataBoard/satisfactionEval/dissatisfied/index.vue
  10. 14
      src/views/dataBoard/satisfactionEval/dissatisfiedPersonnel/index.vue
  11. 12
      src/views/dataBoard/satisfactionEval/modules/EventSituation/index.vue
  12. 13
      src/views/dataBoard/satisfactionEval/modules/EventStatistics/index.vue
  13. 15
      src/views/dataBoard/satisfactionEval/modules/PersonnelPortrait/index.vue
  14. 16
      src/views/dataBoard/satisfactionEval/modules/PotentialPeople/index.vue
  15. 14
      src/views/dataBoard/satisfactionEval/modules/RiskStatistics/index.vue
  16. 8
      src/views/dataBoard/satisfactionEval/modules/SelfTrend/index.vue
  17. 12
      src/views/dataBoard/satisfactionEval/modules/TypesOfDissatisfaction/index.vue
  18. 7
      src/views/dataBoard/satisfactionEval/potentialPeople/details/xqwmz.vue
  19. 6
      src/views/dataBoard/satisfactionEval/potentialPeople/details/yxwxfw.vue
  20. 41
      src/views/dataBoard/satisfactionEval/potentialPeople/index.vue
  21. 10
      src/views/dataBoard/satisfactionEval/potentialPeople/sjwjj.vue
  22. 16
      src/views/dataBoard/satisfactionEval/potentialPeople/xqwmz.vue
  23. 13
      src/views/dataBoard/satisfactionEval/potentialPeople/yxwxfw.vue
  24. 2
      src/views/dataBoardMain/main-navbar.vue
  25. 21
      src/views/modules/base/residentManagement/publicWelfarePost/addForm.vue
  26. 8
      src/views/modules/satisfaction/communitySelfInsp/formList.vue
  27. 2
      src/views/modules/satisfaction/satisfactionProvince/formList.vue

26
src/assets/scss/dataBoard/overview/index.scss

@ -44,19 +44,19 @@
overflow-y: hidden;
}
.animation {
animation: move 10s linear infinite;
}
@keyframes move {
0% {
transform: translateY(0px);
}
100% {
transform: translateY(-320px);
}
}
// .animation {
// animation: move 10s linear infinite;
// }
// @keyframes move {
// 0% {
// transform: translateY(0px);
// }
// 100% {
// transform: translateY(-320px);
// }
// }
.m-jdjs {
height: 318px;

2
src/assets/scss/modules/index.scss

@ -299,7 +299,7 @@
}
.item-per {
width: 90px;
min-width: 70px;
}
.item-progress {

6
src/utils/desensitization.js

@ -1,4 +1,10 @@
export default function desensitizeSubstring(inputString, start, end) {
if (!inputString) {
return ''
}
if (end >= inputString.length) {
end = inputString.length - 1
}
// 保留部分非敏感信息,将敏感信息部分截取掉
let desensitizedString = inputString.substring(0, start) + "*".repeat(end - start) + inputString.substring(end);
return desensitizedString;

4
src/views/dataBoard/cpts/map/index.vue

@ -1040,12 +1040,12 @@ export default {
display: none;
}
/deep/ .jw-popup-bg {
/* /deep/ .jw-popup-bg {
background: url('@/assets/images/overview/map-pop-img.png') no-repeat;
width: 80px;
height: 80px;
margin-right: 10px;
}
}*/
/deep/ .jw-popup-container {
display: flex;

2
src/views/dataBoard/overview/components/GridUpdateRanking.vue

@ -58,7 +58,7 @@ export default {
getList(item) {
this.$http
.get(
"/actual/base/streetOverview/residentHouseUpdateGroup?level=" +
"/actual/base/streetOverview/residentHouseUpdateGroupByGrid?level=" +
item.orgLevel +
"&orgId=" +
item.orgId

21
src/views/dataBoard/overview/components/sq12345.vue

@ -9,7 +9,7 @@
<div class="th">已办结</div>
</div>
<div style="overflow: hidden">
<div class="animation">
<div ref="animation">
<div class="tr" v-for="(item, index) in pmList" :key="index">
<div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'">
{{ index - 0 + 1 }}
@ -20,6 +20,7 @@
<div class="td td-gr">{{ item.closedNum }}</div>
</div>
<!-- 无缝滚动 -->
<div v-if="pmList.length > 7">
<div class="tr" v-for="(item, index) in pmList" :key="index">
<div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'">
{{ index - 0 + 1 }}
@ -33,6 +34,7 @@
</div>
</div>
</div>
</div>
</template>
<script>
export default {
@ -72,6 +74,23 @@ export default {
getList(item) {
this.$http.get("/actual/base/streetOverview/eventAgencyGroup?month=" + this.date + "&level=" + item.orgLevel + "&orgId=" + item.orgId).then(({ data: { data } }) => {
this.pmList = data;
if (this.pmList.length > 7) {
this.$nextTick(() => {
const aniHeight = this.$refs.animation.querySelector(".tr").offsetHeight * this.pmList.length;
console.log(aniHeight);
this.$refs.animation.style.animation = "move 10s linear infinite";
document.styleSheets[0].insertRule(
`@keyframes move{0% {
transform: translateY(0px);
}
100% {
transform: translateY(-${aniHeight}px);
}`,
0
);
});
}
});
},
},

20
src/views/dataBoard/overview/components/sqrfph.vue

@ -9,7 +9,7 @@
<div class="th">人房更新总数</div>
</div>
<div style="overflow: hidden">
<div class="animation">
<div ref="animation">
<div class="tr" v-for="(item, index) in pmList" :key="index">
<div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'">
{{ index - 0 + 1 }}
@ -20,6 +20,7 @@
<div class="td">{{ item.sumNum }}</div>
</div>
<!-- 无缝滚动 -->
<div v-if="pmList.length > 7">
<div class="tr" v-for="(item, index) in pmList" :key="index">
<div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'">
{{ index - 0 + 1 }}
@ -33,6 +34,7 @@
</div>
</div>
</div>
</div>
</template>
<script>
export default {
@ -72,6 +74,22 @@ export default {
getList(item) {
this.$http.get("/actual/base/streetOverview/residentHouseUpdateGroup?month=" + this.date + "&level=" + item.orgLevel + "&orgId=" + item.orgId).then(({ data: { data } }) => {
this.pmList = data;
if (this.pmList.length > 7) {
this.$nextTick(() => {
const aniHeight = this.$refs.animation.querySelector(".tr").offsetHeight * this.pmList.length;
this.$refs.animation.style.animation = "move 10s linear infinite";
document.styleSheets[0].insertRule(
`@keyframes move{0% {
transform: translateY(0px);
}
100% {
transform: translateY(-${aniHeight}px);
}`,
0
);
});
}
});
},
},

22
src/views/dataBoard/satisfactionEval/dissatisfied/detail.vue

@ -16,9 +16,9 @@
<div class="detail">
<p>
{{unsatisfiedMattersModel.reason}}
</p>
</p>a
<ul>
<li><span>事项来源</span>{{unsatisfiedMattersModel.satisfactionSource}}</li>
<li><span>事项来源</span>{{satisfactionSourceOptions[unsatisfiedMattersModel.satisfactionSource]}}</li>
<li><span>事项类型</span>{{unsatisfiedMattersModel.satisfactionCategoryName}}</li>
<li><span>所属月份</span>{{unsatisfiedMattersModel.satisfactionCategoryName}}</li>
<li><span>所属社区</span>{{unsatisfiedMattersModel.organizationName}}</li>
@ -79,19 +79,11 @@ export default {
unsatisfiedMattersModel: '',
unsatisfiedHisCount: '',
followUpRecordDetails: '',
satisfactionSourceOptions: [{
value: 'satisfaction_12345',
label: '12345投诉',
color: '#FFB73C',
}, {
value: 'satisfaction_province',
label: '省满意度调查',
color: '#64C1FF'
}, {
value: 'satisfaction_community',
label: '社区满意度自查',
color: '#08EBAE'
}]
satisfactionSourceOptions: {
satisfaction_12345: '12345投诉',
satisfaction_province: '省满意度调查',
satisfaction_community: '社区满意度自查',
}
};
},
methods: {

12
src/views/dataBoard/satisfactionEval/dissatisfied/index.vue

@ -58,7 +58,12 @@
</div>
<div class="table">
<el-table :data="list">
<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"
@ -210,7 +215,8 @@ export default {
value: 'satisfaction_community',
label: '社区满意度自查',
color: '#08EBAE'
}]
}],
loading: true
}
},
mounted() {
@ -242,9 +248,11 @@ export default {
this.getList();
},
getList() {
this.loading = true
this.$http.get('/governance/satisfactionDetailList/getUnsatisfiedMattersList?' + this.$paramsFormat(this.queryParams)).then(({data: {data}}) => {
this.total = data.total
this.list = data.list
this.loading = false
})
},
getOrg() {

14
src/views/dataBoard/satisfactionEval/dissatisfiedPersonnel/index.vue

@ -5,7 +5,12 @@
<Title :text="`“${title}”画像匹配同类不满意人员`" noBg/>
</div>-->
<div class="table">
<el-table :data="list">
<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 prop="gridName" width="118" label="所属组织"/>
@ -42,7 +47,8 @@
</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>
@ -76,6 +82,7 @@ export default {
}),
list: [],
title: "",
loading: true
};
},
activated() {
@ -90,9 +97,11 @@ export default {
},
methods: {
getList() {
this.loading = true
this.$http.get("/governance/satisfactionOverview/satisfactionCrowdList?" + this.$paramsFormat(this.queryParams)).then(({data: {data}}) => {
this.list = data.list;
this.total = data.total;
this.loading = false
});
},
handleView({restName, restId}) {
@ -131,6 +140,7 @@ export default {
.main-title {
margin: 25px 0 32px;
}
.table {
margin-top: 32px;
}

12
src/views/dataBoard/satisfactionEval/modules/EventSituation/index.vue

@ -1,5 +1,10 @@
<template>
<div>
<div
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
>
<div class="title">12345政务热线事件办理情况</div>
<div @click="showList(curMonth.monthTime)" class="current">
@ -44,7 +49,8 @@ export default {
return {
eventList: [],
curMonth: '',
monthTime: ""
monthTime: "",
loading: true
}
},
watch: {
@ -69,6 +75,7 @@ export default {
this.$refs.eventList.open(params)
},
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId
@ -76,6 +83,7 @@ export default {
this.$http.get('/governance/satisfactionOverview/do12345MonthGroup?' + this.$paramsFormat(params)).then(({data: {data}}) => {
this.curMonth = data.filter(item => item.monthTime === this.$moment().format('YYYY-MM'))[0]
this.eventList = data.filter(item => item.monthTime !== this.$moment().format('YYYY-MM')).reverse()
this.loading = false
})
}
}

13
src/views/dataBoard/satisfactionEval/modules/EventStatistics/index.vue

@ -1,6 +1,13 @@
<template>
<div class="event-statistics">
<div id="eventStatisticsChart" style="height: 293px;"></div>
<div
id="eventStatisticsChart"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
style="height: 293px;"
/>
</div>
</template>
@ -11,7 +18,7 @@ export default {
name: "EventStatistics",
data() {
return {
loading: true
}
},
@ -29,6 +36,7 @@ export default {
},
methods: {
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId,
@ -237,6 +245,7 @@ export default {
};
this.myChart.setOption(option);
window.addEventListener("resize", () => this.myChart.resize());
this.loading = false
},
}
}

15
src/views/dataBoard/satisfactionEval/modules/PersonnelPortrait/index.vue

@ -1,5 +1,9 @@
<template>
<div class="personnel-portrait">
<div class="personnel-portrait"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)">
<Tabs v-model="resultType" :list="resultTypeList" @changeVal="resultTypeChange"/>
<div class="screen">
<div class="txt">不满意人员画像</div>
@ -13,7 +17,10 @@
</el-select>-->
</div>
<div class="portrait">
<div
class="portrait">
<div class="tag yellow" v-if="gridName">
<div class="text">{{ gridName }}</div>
</div>
@ -79,6 +86,7 @@ export default {
residentTagName: "",
matchPeopleNum: 0,
searchParams: "",
loading: true
};
},
watch: {
@ -110,6 +118,7 @@ export default {
});
},
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId,
@ -125,7 +134,7 @@ export default {
this.monthIncomeLevel = data.monthIncomeLevel;
this.residentTagName = data.residentTagName;
this.matchPeopleNum = data.matchPeopleNum;
this.loading = false
this.searchParams = JSON.stringify({...data, ...params});
});
},

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

@ -1,6 +1,11 @@
<template>
<div class="potential-people">
<div class="potential-people-item" @click="$router.push('/dataBoard/satisfactionEval/potentialPeople')">
<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="icon">
<img src="@/assets/images/manyidu/qz_wjj.png" alt="">
</div>
@ -10,7 +15,7 @@
</div>
<div class="num"><span class="orange">{{ unSolvedNum ? unSolvedNum : 0 }}</span></div>
</div>
<div class="potential-people-item" @click="$router.push('/dataBoard/satisfactionEval/potentialPeople')">
<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="">
</div>
@ -20,7 +25,7 @@
</div>
<div class="num"><span class="green">{{ unFinishNum ? unFinishNum : 0 }}</span></div>
</div>
<div class="potential-people-item" @click="$router.push('/dataBoard/satisfactionEval/potentialPeople')">
<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="">
</div>
@ -41,6 +46,7 @@ export default {
noServiceNum: 0,
unFinishNum: 0,
unSolvedNum: 0,
loading: true
}
},
watch: {
@ -58,6 +64,7 @@ export default {
methods: {
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId
@ -66,6 +73,7 @@ export default {
this.noServiceNum = data.noServiceNum
this.unFinishNum = data.unFinishNum
this.unSolvedNum = data.unSolvedNum
this.loading = false
})
}
}

14
src/views/dataBoard/satisfactionEval/modules/RiskStatistics/index.vue

@ -1,5 +1,8 @@
<template>
<div>
<div v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)">
<div class="number-list">
<div class="number-item">
<div class="img">
@ -86,6 +89,7 @@ export default {
followSumNum: 0,
provinceSatisfactionNum: 0,
selfInspectNum: 0,
loading: true
}
},
@ -103,6 +107,7 @@ export default {
},
methods: {
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId
@ -115,6 +120,7 @@ export default {
this.followSumNum = data.followSumNum;
this.provinceSatisfactionNum = data.provinceSatisfactionNum;
this.selfInspectNum = data.selfInspectNum;
this.loading = false
})
}
}
@ -163,6 +169,7 @@ export default {
display: flex;
justify-content: space-between;
padding: 0 30px 39px;
.number-item {
.txt {
font-size: 14px;
@ -171,6 +178,7 @@ export default {
line-height: 24px;
margin-bottom: 16px;
}
.num {
font-size: 14px;
font-weight: 500;
@ -184,15 +192,19 @@ export default {
}
}
}
.grey {
color: #78C4F3;
}
.green {
color: #08EBAE;
}
.purple {
color: #A761FD;
}
.blue {
color: #356EFF;
}

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

@ -1,5 +1,8 @@
<template>
<div class="self-trend">
<div class="self-trend" v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)">
<div class="screen">
<Tabs v-model="trendType" :list="trendTypeList" @changeVal="trendTypeChange"/>
</div>
@ -26,6 +29,7 @@ export default {
value: 2
}],
loading: true
}
},
watch: {
@ -48,6 +52,7 @@ export default {
}
},
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId,
@ -237,6 +242,7 @@ export default {
};
this.myChart.setOption(option, true);
window.addEventListener("resize", () => this.myChart.resize());
this.loading = false
},
}
}

12
src/views/dataBoard/satisfactionEval/modules/TypesOfDissatisfaction/index.vue

@ -1,5 +1,10 @@
<template>
<div class="types-dissatisfaction">
<div class="types-dissatisfaction"
v-loading="loading"
element-loading-text="加载中..."
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(0,0,0,0.5)"
>
<div class="screen">
<Tabs v-model="resultType" :list="resultTypeList" @changeVal="resultTypeChange"/>
<el-select v-model="typeCondition"
@ -57,7 +62,7 @@ export default {
value: 5
},
],
loading: true
}
},
watch: {
@ -80,6 +85,7 @@ export default {
}
},
getData() {
this.loading = true
let params = {
level: this.$store.state.chooseArea.chooseName.level,
orgId: this.$store.state.chooseArea.chooseName.orgId,
@ -187,7 +193,6 @@ export default {
data: [datavaule2]
})
}
console.log(this.resultType, series)
var option = {
tooltip: {
show: false,
@ -253,6 +258,7 @@ export default {
};
this.myChart.setOption(option, true);
window.addEventListener("resize", () => this.myChart.resize());
this.loading = false
},
}
}

7
src/views/dataBoard/satisfactionEval/potentialPeople/details/xqwmz.vue

@ -81,7 +81,7 @@
src="@/assets/images/manyidu/tc-title-icon.png"
/>
</div>
<div v-if="item.logList.length > 0">
<div v-if="logList.length > 0">
<!-- <el-card :class="{ 'box-card': source === 'visiual' }" style="min-height: calc(88vh - 50px); overflow: auto"> -->
<div class="m-process">
<div class="list">
@ -89,7 +89,7 @@
class="item"
:class="[index === 0 ? 'z-on' : '']"
:key="item.processId"
v-for="(item, index) in item.logList"
v-for="(item, index) in logList"
>
<div class="item-row">
@ -200,8 +200,8 @@ export default {
data() {
return {
item: {
logList: []
},
logList: [],
loading: false,
loading1: false,
activities: [],
@ -244,6 +244,7 @@ export default {
const {code, data, msg} = res.data;
if (code === 0) {
this.item = data;
this.logList = data.logList;
this.loading = false;
} else {
this.loading = false;

6
src/views/dataBoard/satisfactionEval/potentialPeople/details/yxwxfw.vue

@ -49,10 +49,10 @@
<el-col :span="11" v-loading="loading1" element-loading-text="加载中" element-loading-spinner="el-icon-loading" element-loading-background="rgba(0, 21, 64, 0.3)">
<div class="rightEvent m-info">
<div class="eventDetails"><img :width="18" :height="18" src="@/assets/images/manyidu/tc-title-icon.png" />办理进展</div>
<div v-if="item.logList.length > 0">
<div v-if="logList.length > 0">
<div class="m-process">
<div class="list">
<div class="item" :class="[index === 0 ? 'z-on' : '']" v-for="(item, index) in item.logList">
<div class="item" :class="[index === 0 ? 'z-on' : '']" v-for="(item, index) in logList">
<div class="item-row">
<div class="name">{{ item.serviceStatus }}</div>
<div class="date">
@ -108,6 +108,7 @@ export default {
data() {
return {
item: {},
logList: [],
loading: false,
loading1: false,
activities: [],
@ -147,6 +148,7 @@ export default {
const { code, data, msg } = res.data;
if (code === 0) {
this.item = data;
this.logList = data.logList;
this.loading = false;
} else {
this.loading = false;

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

@ -13,7 +13,12 @@
</div>
<div class="table">
<el-table :data="list">
<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 prop="name" label="上报人"/>
@ -28,19 +33,28 @@
<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)">{{ row.eventCount }}</el-button>
<el-button type="text"
@click="$router.push('/dataBoard/satisfactionEval/potentialPeople/sjwjj?reportUserId=' + row.reportUserId)">
{{ row.eventCount }}
</el-button>
</template>
</el-table-column>
<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)">{{ row.demandCount }}</el-button>
<el-button type="text"
@click="$router.push('/dataBoard/satisfactionEval/potentialPeople/xqwmz?reportUserId=' + row.reportUserId)">
{{ row.demandCount }}
</el-button>
</template>
</el-table-column>
<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)">{{ row.serviceCount }}</el-button>
<el-button type="text"
@click="$router.push('/dataBoard/satisfactionEval/potentialPeople/yxwxfw?reportUserId=' + row.reportUserId)">
{{ row.serviceCount }}
</el-button>
</template>
</el-table-column>
@ -53,7 +67,8 @@
</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>
@ -67,6 +82,7 @@ export default {
components: {Breadcrumb, Pagination, Title},
data() {
return {
loading: true,
queryParams: {
month: "",
org: "",
@ -95,7 +111,8 @@ export default {
list: [],
};
},
mounted() {
activated() {
this.getOrg();
},
methods: {
@ -125,12 +142,20 @@ export default {
});
},
getList() {
this.$http.get("/governance/satisfactionDetailList/getPotentialDissatisfiedCountDetail?" + this.$paramsFormat(this.queryParams)).then(({ data: { data } }) => {
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) {},
handleView(id) {
},
},
};
</script>

10
src/views/dataBoard/satisfactionEval/potentialPeople/sjwjj.vue

@ -2,7 +2,12 @@
<div>
<Breadcrumb :list="breadcrumbList" />
<div class="table">
<el-table :data="list">
<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 prop="name" label="上报人" />
@ -70,6 +75,7 @@ export default {
list: [],
showDialog: false,
rowId: "",
loading: true
};
},
activated() {
@ -83,9 +89,11 @@ export default {
this.getList();
},
getList() {
this.loading = true
this.$http.get("/governance/satisfactionDetailList/getEventUnSolvedByUserId?" + this.$paramsFormat(this.queryParams)).then(({ data: { data } }) => {
this.list = data.list;
this.total = data.total;
this.loading = false
});
},
handleView({ id }) {

16
src/views/dataBoard/satisfactionEval/potentialPeople/xqwmz.vue

@ -3,7 +3,12 @@
<Breadcrumb :list="breadcrumbList"/>
<div class="table">
<el-table :data="list">
<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"
@ -15,7 +20,11 @@
<el-table-column
prop="demandUserMobile"
label="需求人电话"/>
label="需求人电话">
<template slot-scope="scope">
{{ $sensitive(scope.row.demandUserMobile, 3, 7) }}
</template>
</el-table-column>
<el-table-column
prop="agencyName"
@ -92,6 +101,7 @@ export default {
list: [],
showDialog: false,
rowId: '',
loading: true
}
},
activated() {
@ -105,9 +115,11 @@ export default {
this.getList();
},
getList() {
this.loading = true
this.$http.get('/governance/satisfactionDetailList/getUserDemandUnSolvedByUserId?' + this.$paramsFormat(this.queryParams)).then(({data: {data}}) => {
this.list = data.list;
this.total = data.total;
this.loading = false
})
},
handleView({name, id}) {

13
src/views/dataBoard/satisfactionEval/potentialPeople/yxwxfw.vue

@ -2,7 +2,12 @@
<div>
<Breadcrumb :list="breadcrumbList"/>
<div class="table">
<el-table :data="list">
<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 prop="name" label="服务对象姓名"/>
@ -28,7 +33,8 @@
</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"/>
<yxwxfw :showDialog="showDialog" :id="rowId" @close="close"/>
</div>
</template>
@ -67,6 +73,7 @@ export default {
list: [],
showDialog: false,
rowId: "",
loading: true
};
},
activated() {
@ -80,9 +87,11 @@ export default {
this.getList();
},
getList() {
this.loading = true
this.$http.get("/governance/satisfactionDetailList/getServiceNotEnjoyedByUserId?" + this.$paramsFormat(this.queryParams)).then(({data: {data}}) => {
this.list = data.list;
this.total = data.total;
this.loading = false
});
},

2
src/views/dataBoardMain/main-navbar.vue

@ -6,7 +6,7 @@
<div class="title">{{ customerName }}数据智能分析平台</div>
<div class="selectArea" v-if="$route.path == '/dataBoard/satisfactionEval/index'">
<el-select @change="setSelectName" v-model="value" popper-class="selectPopClass">
<el-option v-for="(item, index) in options" :disabled="item.agencyLevel === 'grid'" :key="item.value" :label="item.label" :value="item.value"></el-option>
<el-option v-for="(item, index) in options" v-if="item.agencyLevel !== 'grid'" :key="item.value" :label="item.label" :value="item.value"/>
</el-select>
</div>
<!-- <div class="btn-back" @click="toPage('/')">

21
src/views/modules/base/residentManagement/publicWelfarePost/addForm.vue

@ -105,7 +105,7 @@
<el-form-item label-width="100px" label="证件类型" prop="idType" v-else>
<el-select v-model="formData.idType" clearable>
<el-option v-for="item in dicts.idCard_type" :key="item.value" :label="item.label"
:value="item.value">
:A="item.value">
</el-option>
</el-select>
</el-form-item>
@ -152,7 +152,7 @@
<el-col :span="12">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">岗位类型: </span>
<span>{{ formData.postTypes }}</span>
<span>{{ formData.postTypeNames || '--' }}</span>
</div>
<el-form-item label-width="100px" label="岗位类型" prop="postTypes" v-else>
<el-select v-model="formData.postTypes" multiple collapse-tags clearable>
@ -193,7 +193,7 @@
<el-col :span="24">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">兴趣特长: </span>
<span>{{ formData.hobbyCodes || "--" }}</span>
<span>{{ formData.hobbyNames || "--" }}</span>
</div>
<el-form-item label-width="100px" label="兴趣特长" v-else class="wd-wr">
@ -235,11 +235,11 @@
<el-col :span="24">
<div class="info-prop" v-if="formType == 'detail'">
<span class="info-title-2">管理范围: </span>
<span>{{ formData.manageScopes || "--" }}</span>
<span>{{ formData.manageScopesName || "--" }}</span>
</div>
<el-form-item label="管理范围" prop="agencyId" label-width="100px" v-else>
<el-cascader class="u-item-width-normal" ref="myCascader" v-model="formData.manageScopes"
:options="orgOptions" :props="orgOptionProps" :show-all-levels="false" clearable>
:options="orgOptions" :props="orgOptionProps" :show-all-levels="false" @change="handleChangeManageScopes" clearable>
</el-cascader>
</el-form-item>
</el-col>
@ -334,6 +334,7 @@ export default {
SPECIAL_SKILL: [],
idCard_type: []
},
selArr:[],
};
},
@ -356,10 +357,11 @@ export default {
await this.getDetail(this.scopeId);
},
async getDetail(categorizedResiId) {
const url = `/actual/base/publicWelfarePost/detail/${categorizedResiId}`;
const url = `/actual/base/resiCategorized/publicWelfarePost/detail/${categorizedResiId}`;
const { data, code, msg } = await requestGet(url);
if (code === 0) {
this.formData = { ...data };
this.formData.manageScopes = data.manageScopes[0].scopeId
await this.setAgencyIdFromLastLayerId(data.agencyId)
console.log(this.agencyIdTemp);
} else {
@ -375,7 +377,7 @@ export default {
this.formType === "edit"
? "/actual/base/resiCategorized/publicWelfarePost/update"
: "/actual/base/resiCategorized/publicWelfarePost/create";
this.formData.manageScopes = this.selArr
const { data, code, msg } = await requestPost(url, this.formData);
if (code === 0) {
this.$message.success(this.formType == 'add' ? "添加成功" : '修改成功');
@ -386,6 +388,11 @@ export default {
}
});
},
handleChangeManageScopes(val){
let obj = this.$refs["myCascader"].getCheckedNodes()[0].data
console.log(obj);
this.selArr = [{scopeType:obj.level,scopeId:obj.agencyId}]
},
async getDicts() {
try {
const requests = [

8
src/views/modules/satisfaction/communitySelfInsp/formList.vue

@ -3,7 +3,7 @@
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'100px'">
<el-form-item label="不满意类目" prop="startTime">
<el-select v-model="formData.satisfactionCategory" placeholder="请输入" size="small"
class="u-item-width-normal" clearable>
class="u-item-width-normal" @change="handleSearch" clearable>
<el-option v-for="item in dicts.satisfaction_category" :key="item.value" :label="item.label"
:value="item.value" >
</el-option>
@ -11,14 +11,14 @@
</el-form-item>
<el-form-item label="不满意等级" prop="startTime">
<el-select v-model="formData.satisfactionLevel" placeholder="请输入" size="small" class="u-item-width-normal"
clearable>
clearable @change="handleSearch">
<el-option v-for="item in dicts.satisfaction_level" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-button size="small" type="primary "
@click="handleSearch">查询</el-button>
<!-- <el-button size="small" type="primary "
@click="handleSearch">查询</el-button> -->
</el-form>

2
src/views/modules/satisfaction/satisfactionProvince/formList.vue

@ -2,7 +2,7 @@
<div style="margin-top:10px">
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'100px'">
<el-form-item label="不满意类目" prop="startTime" >
<el-select v-model="formData.scopeId" placeholder="请输入" size="small" class="u-item-width-normal" clearable>
<el-select v-model="formData.scopeId" placeholder="请输入" size="small" class="u-item-width-normal" @change="getTableData" clearable>
<el-option v-for="item in dicts.satisfaction_category" :key="item.value" :label="item.label"
:value="item.value">
</el-option>

Loading…
Cancel
Save