Browse Source

问题修改

feature
张若晨 2 years ago
parent
commit
3433650327
  1. BIN
      src/assets/images/overview/zanwu.png
  2. 129
      src/views/dataBoard/cpts/details/jmxq.vue
  3. 129
      src/views/dataBoard/cpts/details/smyd.vue
  4. 129
      src/views/dataBoard/cpts/details/xqwmz.vue
  5. 60
      src/views/dataBoard/cpts/details/yxwxfw.vue
  6. 9
      src/views/dataBoard/cpts/family/modules/EnjoyService.vue
  7. 116
      src/views/dataBoard/cpts/family/modules/Family.vue
  8. 20
      src/views/dataBoard/cpts/family/modules/MatterDetails.vue
  9. 119
      src/views/dataBoard/cpts/family/modules/businessTables copy/economize.vue
  10. 2
      src/views/dataBoard/cpts/homeDetails/index.vue
  11. 12
      src/views/dataBoard/cpts/personnel/modules/EnjoyService.vue
  12. 110
      src/views/dataBoard/cpts/personnel/modules/Family.vue
  13. 16
      src/views/dataBoard/cpts/personnel/modules/MatterDetails.vue
  14. 14
      src/views/dataBoard/cpts/personnel/modules/PointsRecord.vue
  15. 14
      src/views/dataBoard/cpts/personnel/modules/businessTables/community.vue
  16. 20
      src/views/dataBoard/cpts/personnel/modules/businessTables/complaint.vue
  17. 19
      src/views/dataBoard/cpts/personnel/modules/businessTables/economize.vue
  18. 14
      src/views/dataBoard/cpts/personnel/modules/businessTables/give-service.vue
  19. 14
      src/views/dataBoard/cpts/personnel/modules/businessTables/reporting-events.vue
  20. 16
      src/views/dataBoard/cpts/personnel/modules/businessTables/resident.vue
  21. 55
      src/views/dataBoard/overview/components/DynamicHumanRoomData.vue
  22. 44
      src/views/dataBoard/overview/components/GridUpdateRanking.vue
  23. 48
      src/views/dataBoard/overview/components/RankingGridData.vue
  24. 53
      src/views/dataBoard/overview/components/sqrfph.vue
  25. 28
      src/views/dataBoard/overview/index.vue
  26. 7
      src/views/dataBoard/overview/resident/index.vue
  27. 2
      src/views/dataBoard/renfang/index.vue
  28. 10
      src/views/dataBoard/renfang/resi/classNew.vue

BIN
src/assets/images/overview/zanwu.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

129
src/views/dataBoard/cpts/details/jmxq.vue

@ -1,6 +1,6 @@
<template> <template>
<el-dialog <el-dialog
width="1118px" width="818px"
:modal="true" :modal="true"
:modal-append-to-body="false" :modal-append-to-body="false"
:destroy-on-close="true" :destroy-on-close="true"
@ -13,7 +13,7 @@
<title-box text="居民需求详情" /> <title-box text="居民需求详情" />
</el-col> </el-col>
<el-col <el-col
:span="13" :span="23"
style="padding-left: 40px" style="padding-left: 40px"
v-loading="loading" v-loading="loading"
element-loading-text="加载中" element-loading-text="加载中"
@ -70,129 +70,6 @@
</div> </div>
</div> </div>
</el-col> </el-col>
<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 && item.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">
<div
class="item"
:class="[index === 0 ? 'z-on' : '']"
:key="item.processId"
v-for="(item, index) in item.logList"
>
<div class="item-row">
<template>
<div class="name">
{{
item.actionCode === "create"
? "创建需求"
: item.actionCode === "update"
? "更新需求"
: item.actionCode === "cancel"
? "撤销需求"
: item.actionCode === "assign"
? "指派"
: item.actionCode === "take_order"
? "接单"
: item.actionCode === "finish"
? "完成"
: item.actionCode === "evaluate"
? "评价"
: ""
}}
</div>
</template>
<div class="date">
{{ item.oprateTime }}
</div>
</div>
<div>
<template v-if="item.actionCode === 'create'">
<div class="detail">
<div class="detail-field">上报人</div>
<div class="detail-value">
{{ item.reportUserName }} {{ item.roleName }}
</div>
</div>
</template>
<template v-if="item.actionCode === 'assign'">
<div class="detail">
<div class="detail-field">办理人</div>
<div class="detail-value">
{{ item.assignUser }}
</div>
</div>
<div class="detail">
<div class="detail-field">指派给服务方</div>
<div class="detail-value">
{{ item.serverName }} {{
item.serviceType === "volunteer"
? "志愿者"
: item.serviceType === "social_org"
? "社会组织"
: item.serviceType === "community_org"
? "社区自组织"
: item.serviceType === "party_unit"
? "区域党建单位"
: item.serviceType === "enterprise"
? "企业,商家"
: ""
}}
</div>
</div>
</template>
<template v-if="item.actionCode === 'finish'">
<div class="detail">
<div class="detail-field">服务方</div>
<div class="detail-value">
{{ item.serverName }} {{
item.serviceType === "volunteer"
? "志愿者"
: item.serviceType === "social_org"
? "社会组织"
: item.serviceType === "community_org"
? "社区自组织"
: item.serviceType === "party_unit"
? "区域党建单位"
: item.serviceType === "enterprise"
? "企业,商家"
: ""
}}
</div>
</div>
<!-- <div class="detail">
<div class="detail-field">完成时间</div>
<div class="detail-value">
{{ item.assignUser }}
</div>
</div>-->
</template>
</div>
</div>
</div>
</div>
<!-- </el-card> -->
</div>
</div>
</el-col>
</el-row> </el-row>
</div> </div>
</el-dialog> </el-dialog>
@ -285,7 +162,7 @@ export default {
/deep/ .el-dialog { /deep/ .el-dialog {
background: url(~@/assets/images/manyidu/dialog-bg.png); background: url(~@/assets/images/manyidu/dialog-bg.png);
background-size: 100% 100%; background-size: 100% 100%;
width: 1118px; width: 818px;
height: 822px; height: 822px;
} }

129
src/views/dataBoard/cpts/details/smyd.vue

@ -1,6 +1,6 @@
<template> <template>
<el-dialog <el-dialog
width="1118px" width="818px"
:modal="true" :modal="true"
:modal-append-to-body="false" :modal-append-to-body="false"
:destroy-on-close="true" :destroy-on-close="true"
@ -13,7 +13,7 @@
<title-box text="省满意度调查不满意事项详情" /> <title-box text="省满意度调查不满意事项详情" />
</el-col> </el-col>
<el-col <el-col
:span="13" :span="23"
style="padding-left: 40px" style="padding-left: 40px"
v-loading="loading" v-loading="loading"
element-loading-text="加载中" element-loading-text="加载中"
@ -64,129 +64,6 @@
</div> </div>
</div> </div>
</el-col> </el-col>
<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 && item.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">
<div
class="item"
:class="[index === 0 ? 'z-on' : '']"
:key="item.processId"
v-for="(item, index) in item.logList"
>
<div class="item-row">
<template>
<div class="name">
{{
item.actionCode === "create"
? "创建需求"
: item.actionCode === "update"
? "更新需求"
: item.actionCode === "cancel"
? "撤销需求"
: item.actionCode === "assign"
? "指派"
: item.actionCode === "take_order"
? "接单"
: item.actionCode === "finish"
? "完成"
: item.actionCode === "evaluate"
? "评价"
: ""
}}
</div>
</template>
<div class="date">
{{ item.oprateTime }}
</div>
</div>
<div>
<template v-if="item.actionCode === 'create'">
<div class="detail">
<div class="detail-field">上报人</div>
<div class="detail-value">
{{ item.reportUserName }} {{ item.roleName }}
</div>
</div>
</template>
<template v-if="item.actionCode === 'assign'">
<div class="detail">
<div class="detail-field">办理人</div>
<div class="detail-value">
{{ item.assignUser }}
</div>
</div>
<div class="detail">
<div class="detail-field">指派给服务方</div>
<div class="detail-value">
{{ item.serverName }} {{
item.serviceType === "volunteer"
? "志愿者"
: item.serviceType === "social_org"
? "社会组织"
: item.serviceType === "community_org"
? "社区自组织"
: item.serviceType === "party_unit"
? "区域党建单位"
: item.serviceType === "enterprise"
? "企业,商家"
: ""
}}
</div>
</div>
</template>
<template v-if="item.actionCode === 'finish'">
<div class="detail">
<div class="detail-field">服务方</div>
<div class="detail-value">
{{ item.serverName }} {{
item.serviceType === "volunteer"
? "志愿者"
: item.serviceType === "social_org"
? "社会组织"
: item.serviceType === "community_org"
? "社区自组织"
: item.serviceType === "party_unit"
? "区域党建单位"
: item.serviceType === "enterprise"
? "企业,商家"
: ""
}}
</div>
</div>
<!-- <div class="detail">
<div class="detail-field">完成时间</div>
<div class="detail-value">
{{ item.assignUser }}
</div>
</div>-->
</template>
</div>
</div>
</div>
</div>
<!-- </el-card> -->
</div>
</div>
</el-col>
</el-row> </el-row>
</div> </div>
</el-dialog> </el-dialog>
@ -302,7 +179,7 @@ export default {
/deep/ .el-dialog { /deep/ .el-dialog {
background: url(~@/assets/images/manyidu/dialog-bg.png); background: url(~@/assets/images/manyidu/dialog-bg.png);
background-size: 100% 100%; background-size: 100% 100%;
width: 1118px; width: 818px;
max-height: 822px; max-height: 822px;
} }

129
src/views/dataBoard/cpts/details/xqwmz.vue

@ -1,6 +1,6 @@
<template> <template>
<el-dialog <el-dialog
width="1118px" width="818px"
:modal="true" :modal="true"
:modal-append-to-body="false" :modal-append-to-body="false"
:destroy-on-close="true" :destroy-on-close="true"
@ -13,7 +13,7 @@
<title-box text="社区满意度自查不满意事项详情" /> <title-box text="社区满意度自查不满意事项详情" />
</el-col> </el-col>
<el-col <el-col
:span="13" :span="23"
style="padding-left: 40px" style="padding-left: 40px"
v-loading="loading" v-loading="loading"
element-loading-text="加载中" element-loading-text="加载中"
@ -64,129 +64,6 @@
</div> </div>
</div> </div>
</el-col> </el-col>
<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 && item.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">
<div
class="item"
:class="[index === 0 ? 'z-on' : '']"
:key="item.processId"
v-for="(item, index) in item.logList"
>
<div class="item-row">
<template>
<div class="name">
{{
item.actionCode === "create"
? "创建需求"
: item.actionCode === "update"
? "更新需求"
: item.actionCode === "cancel"
? "撤销需求"
: item.actionCode === "assign"
? "指派"
: item.actionCode === "take_order"
? "接单"
: item.actionCode === "finish"
? "完成"
: item.actionCode === "evaluate"
? "评价"
: ""
}}
</div>
</template>
<div class="date">
{{ item.oprateTime }}
</div>
</div>
<div>
<template v-if="item.actionCode === 'create'">
<div class="detail">
<div class="detail-field">上报人</div>
<div class="detail-value">
{{ item.reportUserName }} {{ item.roleName }}
</div>
</div>
</template>
<template v-if="item.actionCode === 'assign'">
<div class="detail">
<div class="detail-field">办理人</div>
<div class="detail-value">
{{ item.assignUser }}
</div>
</div>
<div class="detail">
<div class="detail-field">指派给服务方</div>
<div class="detail-value">
{{ item.serverName }} {{
item.serviceType === "volunteer"
? "志愿者"
: item.serviceType === "social_org"
? "社会组织"
: item.serviceType === "community_org"
? "社区自组织"
: item.serviceType === "party_unit"
? "区域党建单位"
: item.serviceType === "enterprise"
? "企业,商家"
: ""
}}
</div>
</div>
</template>
<template v-if="item.actionCode === 'finish'">
<div class="detail">
<div class="detail-field">服务方</div>
<div class="detail-value">
{{ item.serverName }} {{
item.serviceType === "volunteer"
? "志愿者"
: item.serviceType === "social_org"
? "社会组织"
: item.serviceType === "community_org"
? "社区自组织"
: item.serviceType === "party_unit"
? "区域党建单位"
: item.serviceType === "enterprise"
? "企业,商家"
: ""
}}
</div>
</div>
<!-- <div class="detail">
<div class="detail-field">完成时间</div>
<div class="detail-value">
{{ item.assignUser }}
</div>
</div>-->
</template>
</div>
</div>
</div>
</div>
<!-- </el-card> -->
</div>
</div>
</el-col>
</el-row> </el-row>
</div> </div>
</el-dialog> </el-dialog>
@ -316,7 +193,7 @@ export default {
/deep/ .el-dialog { /deep/ .el-dialog {
background: url(~@/assets/images/manyidu/dialog-bg.png); background: url(~@/assets/images/manyidu/dialog-bg.png);
background-size: 100% 100%; background-size: 100% 100%;
width: 1118px; width: 818px;
max-height: 822px; max-height: 822px;
} }

60
src/views/dataBoard/cpts/details/yxwxfw.vue

@ -1,6 +1,6 @@
<template> <template>
<el-dialog <el-dialog
width="1118px" width="818px"
:modal="true" :modal="true"
:modal-append-to-body="false" :modal-append-to-body="false"
:destroy-on-close="true" :destroy-on-close="true"
@ -13,7 +13,7 @@
<title-box text="社区服务详情" /> <title-box text="社区服务详情" />
</el-col> </el-col>
<el-col <el-col
:span="13" :span="23"
style="padding-left: 40px" style="padding-left: 40px"
v-loading="loading" v-loading="loading"
element-loading-text="加载中" element-loading-text="加载中"
@ -71,60 +71,6 @@
</div> </div>
</div> </div>
</el-col> </el-col>
<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="formData.gridIdList.length > 0">
<div class="m-process">
<div class="list">
<div
class="item"
:class="[index === 0 ? 'z-on' : '']"
v-for="(item, index) in formData.gridIdList"
>
<div class="item-row">
<div class="name">{{ item.serviceStatus }}</div>
<div class="date">
{{ item.createdTime }}
</div>
</div>
<div>
<template v-if="item.serviceStatus === '创建服务'">
<div class="detail">
<div class="detail-field">创建人</div>
<div class="detail-value">
{{ item.createdBy }} {{ item.agencyName }}
</div>
</div>
</template>
<template v-else>
<div class="detail">
<div class="detail-field">服务方</div>
<div class="detail-value">
{{ item.objectName }}
</div>
</div>
</template>
</div>
</div>
</div>
</div>
<!-- </el-card> -->
</div>
</div>
</el-col>
</el-row> </el-row>
</div> </div>
</el-dialog> </el-dialog>
@ -258,7 +204,7 @@ export default {
/deep/ .el-dialog { /deep/ .el-dialog {
background: url(~@/assets/images/manyidu/dialog-bg.png); background: url(~@/assets/images/manyidu/dialog-bg.png);
background-size: 100% 100%; background-size: 100% 100%;
width: 1118px; width: 818px;
max-height: 822px; max-height: 822px;
} }
/deep/ .el-dialog__body { /deep/ .el-dialog__body {

9
src/views/dataBoard/cpts/family/modules/EnjoyService.vue

@ -29,12 +29,17 @@ export default {
}; };
}, },
created() { created() {
const query = this.$route.query;
this.houseId = query.houseId;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
methods: { methods: {
getList() { getList() {
const query = this.$route.query;
this.houseId = query.houseId;
// (-2-1访0访/访1访) // (-2-1访0访/访1访)
const completeFlags = { const completeFlags = {
"-2": "未知", "-2": "未知",

116
src/views/dataBoard/cpts/family/modules/Family.vue

@ -1,16 +1,19 @@
<template> <template>
<div class="family"> <div class="family">
<div class="tag" v-for="item in data" :key="item.id"> <div
class="tag"
@click="cheackCrrent(item)"
v-for="item in data"
:key="item.id"
>
<div> <div>
{{ item.name }} {{ item.name }}
<span v-if="item.houseHolderRel"
>({{ item.houseHolderRel == "本人" ? "户主" : item.houseHolderRel }})
</span>
</div> </div>
<div v-if="item.householdSituation"> <div v-if="item.houseHolderRel">
入户状态{{ item.householdSituation }} 关系{{
item.houseHolderRel == "本人" ? "户主" : item.houseHolderRel
}}
</div> </div>
<div>居民分类{{ getType(item.classificationOfInhabitantsList) }}</div>
</div> </div>
<div style="padding-top: 220px; margin-left: 148px"> <div style="padding-top: 220px; margin-left: 148px">
<div class="user-name">{{ hzData.name }}</div> <div class="user-name">{{ hzData.name }}</div>
@ -25,50 +28,66 @@ export default {
data() { data() {
return { return {
data: [], data: [],
queryParam: {
type: "1",
},
info: {}, info: {},
}; };
}, },
computed: { computed: {},
getType() { watch: {
return (arr) => { "$route.query"(newVal, oldVal) {
if (arr.length > 0) { this.getDatas();
let txt = "";
arr.forEach((item, index) => {
if (arr.length == index + 1) {
txt = txt + item;
} else {
txt = txt + item + ",";
}
});
return txt;
} else {
return "暂无";
}
};
}, },
}, },
created() { created() {
const query = this.$route.query;
this.queryParam.resid = query.houseId;
this.getDatas(); this.getDatas();
}, },
methods: { methods: {
getParams(params) {
let paramStr = "";
Object.keys(params).forEach((item) => {
if (paramStr === "") {
paramStr = `${item}=${params[item]}`;
} else {
paramStr = `${paramStr}&${item}=${params[item]}`;
}
});
return paramStr;
},
cheackCrrent(item) {
const params = { ...this.$route.query, user_id: item.id };
this.$router.push(this.$route.path + "?" + this.getParams(params));
},
getDatas() { getDatas() {
this.data = [];
this.info = {};
const query = this.$route.query;
this.$http this.$http
.post( .post(
"/actual/base/peopleRoomOverview/getFamilyRelationshipList?type=1&resid=" + "/actual/base/peopleRoomOverview/getFamilyRelationshipList?type=1&resid=" +
this.queryParam.resid query.houseId
) )
.then(({ data: res }) => { .then(({ data: res }) => {
const data = res.data; const data = res.data;
this.data = data; this.data = data;
this.hzData = data.filter((item) => item.houseHolderRel == "本人")[0]; const arr = data.filter((item) => item.houseHolderRel == "本人");
this.hzData = arr.length > 0 ? arr[0] : {};
this.$emit("setJuminData", data); this.$emit("setJuminData", data);
}); });
}, },
getType(arr) {
if (arr.length > 0) {
let txt = "";
arr.forEach((item, index) => {
if (arr.length == index + 1) {
txt = txt + item;
} else {
txt = txt + item + ",";
}
});
return txt;
} else {
return "暂无";
}
},
// getUserInfo() { // getUserInfo() {
// this.$http // this.$http
// .post( // .post(
@ -105,37 +124,56 @@ export default {
width: 180px; width: 180px;
min-height: 80px; min-height: 80px;
&:nth-of-type(1) { &:nth-of-type(1) {
left: -24px; left: -14px;
top: -24px; top: -24px;
} }
&:nth-of-type(2) { &:nth-of-type(2) {
right: -24px; right: -14px;
top: -24px; top: -24px;
} }
&:nth-of-type(3) { &:nth-of-type(3) {
left: -24px; left: -24px;
bottom: -20px; bottom: -40px;
} }
&:nth-of-type(4) { &:nth-of-type(4) {
right: -24px; right: -24px;
top: 274px; top: 294px;
} }
&:nth-of-type(5) { &:nth-of-type(5) {
left: -94px; left: -94px;
top: 74px; top: 58px;
} }
&:nth-of-type(6) { &:nth-of-type(6) {
right: -94px; right: -94px;
top: 74px; top: 58px;
} }
&:nth-of-type(7) { &:nth-of-type(7) {
left: -124px; left: -124px;
top: 174px; top: 134px;
} }
&:nth-of-type(8) { &:nth-of-type(8) {
right: -124px; right: -124px;
top: 174px; top: 134px;
}
&:nth-of-type(9) {
left: -104px;
top: 214px;
}
&:nth-of-type(10) {
right: -104px;
top: 214px;
} }
&:nth-of-type(11) {
right: 144px;
bottom: -60px;
}
&:nth-of-type(12) {
right: 144px;
top: -44px;
}
}
.tag:hover {
cursor: pointer;
} }
.user-name { .user-name {
width: 174px; width: 174px;

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

@ -15,7 +15,7 @@
{{ item.tagName }} {{ item.tagName }}
</div> </div>
</div> </div>
<!-- <div class="jtxxdz">四季景园1号楼1单元101</div>--> <!-- <div class="jtxxdz">四季景园1号楼1单元101</div>-->
</div> </div>
</template> </template>
@ -31,19 +31,25 @@ export default {
}, },
created() { created() {
const query = this.$route.query;
this.queryParams.houseId = query.houseId;
this.getDatas(); this.getDatas();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getDatas();
},
},
methods: { methods: {
getDatas() { getDatas() {
this.data = [];
const query = this.$route.query;
this.$http this.$http
.get( .get(
"/actual/base/peopleRoomOverview/getHouseTag?houseId=" + "/actual/base/peopleRoomOverview/getHouseTag?houseId=" + query.houseId
this.queryParams.houseId
) )
.then(({ data: res }) => { .then(({ data: res }) => {
this.data = res.data; if (res.code == 0) {
this.data = res.data;
}
}); });
}, },
}, },
@ -61,7 +67,7 @@ export default {
color: #ffffff !important; color: #ffffff !important;
line-height: 32px; line-height: 32px;
position: absolute; position: absolute;
top:370px; top: 370px;
left: 0; left: 0;
} }
.matter-details { .matter-details {

119
src/views/dataBoard/cpts/family/modules/businessTables copy/economize.vue

@ -1,119 +0,0 @@
<template>
<div class="table">
<el-table :data="list" max-height="363px" height="363px">
<el-table-column label="序号" type="index" width="80" />
<el-table-column label="不满意事项类型" prop="scope" width="190" />
<el-table-column label="不满意事项描述" prop="problemDesc" width="" />
<el-table-column label="办理状态" prop="completeFlag" width="120" />
<el-table-column label="是否回访" prop="isReturn" width="120" />
<el-table-column label="操作" width="90" align="center">
<template slot-scope="data">
<el-button type="text" @click="handleView(data.row)">查看</el-button>
</template>
</el-table-column>
</el-table>
<smyd :showDialog="showDialog" :id="rowId" @close="close" />
</div>
</template>
<script>
import smyd from "@/views/dataBoard/cpts/details/smyd.vue";
export default {
name: "economize",
components: {
smyd,
},
data() {
return {
queryParams: {
residList: [],
},
list: [],
total: 0,
rowId: null,
showDialog: false,
};
},
created() {},
mounted() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList();
},
methods: {
handleView(row) {
this.rowId = row.id;
this.showDialog = true;
},
close() {
this.showDialog = false;
},
getList() {
//
this.$http
.post("/actual/base/peopleRoomOverview/provincialSatisfactionPageList", this.queryParams)
.then(({ data: res }) => {
this.list = res.data;
this.total = res.data.length;
this.$emit("changeTotal", { name: 1, total: this.total });
});
},
},
};
</script>
<style scoped lang="scss">
.business-records {
margin-bottom: 25px;
}
.table {
/deep/ .el-table td,
/deep/ .el-table th,
/deep/ .el-table tr {
padding: 14px !important;
border: none !important;
min-height: 52px;
}
/deep/ .el-table td,
/deep/ .el-table th {
background: none !important;
}
/deep/ .el-table td {
font-size: 14px;
font-weight: 400;
color: #ffffff;
text-shadow: 1px 2px 4px rgba(10, 32, 60, 0.51);
}
/deep/ .el-table tr {
background: none;
&:hover {
background-color: rgba(26, 149, 255, 0.3) !important;
}
}
/deep/ .el-table__body-wrapper tr:nth-of-type(odd) {
background: rgba(14, 56, 115, 0.4);
}
/deep/ .el-table {
background: none !important;
&:before {
background: none;
}
}
/deep/ .el-table__header-wrapper tr {
color: #a3b9da !important;
font-size: 14px;
font-weight: 400;
opacity: 0.76;
background: none;
&:hover {
background: none !important;
}
}
/deep/ .el-table__header-wrapper {
background: none !important;
}
}
</style>

2
src/views/dataBoard/cpts/homeDetails/index.vue

@ -69,7 +69,7 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" width="90" align="center"> <el-table-column label="操作" width="90" align="center">
<template slot-scope="{ row }"> <template slot-scope="{ row }">
<el-button type="text" @click="$router.push('/dataBoard/overview/familyPortrait/?name=' + row.doorName + '&user_id=' + row.resiId + '&id=' + $route.query.id + '&name2=' + (homeText ? homeText : ''))">查看</el-button> <el-button type="text" @click="$router.push('/dataBoard/overview/familyPortrait/?name=' + row.doorName + '&houseId=' + row.id + '&id=' + $route.query.id + '&name2=' + (homeText ? homeText : ''))">查看</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

12
src/views/dataBoard/cpts/personnel/modules/EnjoyService.vue

@ -25,14 +25,22 @@ export default {
nameArr: ["岗位找人", "技能找人", "温暖找人", "服务找人"], nameArr: ["岗位找人", "技能找人", "温暖找人", "服务找人"],
}; };
}, },
created() { activated() {
this.getData(); this.getData();
}, },
watch: {
"$route.query"(newVal, oldVal) {
if (newVal.user_id != oldVal.user_id) {
this.getDatas();
}
},
},
mounted() {}, mounted() {},
methods: { methods: {
getData() { getData() {
const id = this.$route.query.user_id;
this.$http this.$http
.get("/actual/base/peopleRoomOverview/serviceNumber") .get("/actual/base/peopleRoomOverview/serviceNumber?resid=" + id)
.then(({ data: res }) => { .then(({ data: res }) => {
this.dataArr = dataFormatter(res.data); this.dataArr = dataFormatter(res.data);
this.nameArr = dataFormatter1(res.data); this.nameArr = dataFormatter1(res.data);

110
src/views/dataBoard/cpts/personnel/modules/Family.vue

@ -1,21 +1,22 @@
<template> <template>
<div class="family"> <div class="family">
<div class="tag" v-for="item in data" :key="item.id"> <div
class="tag"
@click="cheackCrrent(item)"
v-for="item in data"
:key="item.id"
>
<div> <div>
{{ item.name }} {{ item.name }}
<span v-if="item.houseHolderRel"
>({{ item.houseHolderRel == "本人" ? "户主" : item.houseHolderRel }})
</span>
</div> </div>
<div v-if="item.householdSituation"> <div v-if="item.houseHolderRel">
入户状态{{ item.householdSituation }} 关系{{ item.houseHolderRel == "本人" ? "户主" : item.houseHolderRel }}
</div> </div>
<div>居民分类{{ getType(item.classificationOfInhabitantsList) }}</div>
</div> </div>
<div style="padding-top: 220px; margin-left: 148px"> <div style="padding-top: 220px; margin-left: 148px">
<div class="user-name">{{ info.name }}</div> <div class="user-name">{{ info.name }}</div>
<div class="user-gx" v-if="info.houseHolderRel"> <div class="user-gx" v-if="info.houseHolderRel">
{{ info.houseHolderRel == "本人" ? "户主" : info.houseHolderRel }} 户主
</div> </div>
</div> </div>
</div> </div>
@ -48,13 +49,38 @@ export default {
}; };
}, },
}, },
created() { activated() {
const query = this.$route.query; const query = this.$route.query;
this.queryParam.resid = query.user_id; this.queryParam.resid = query.user_id;
this.data = [];
this.getDatas(); this.getDatas();
this.getUserInfo();
}, },
watch: {
"$route.query"(newVal, oldVal) {
const query = this.$route.query;
this.queryParam.resid = query.user_id;
this.data = [];
this.info = {};
this.getDatas();
},
},
// this.$route.query.path
methods: { methods: {
getParams(params) {
let paramStr = "";
Object.keys(params).forEach((item) => {
if (paramStr === "") {
paramStr = `${item}=${params[item]}`;
} else {
paramStr = `${paramStr}&${item}=${params[item]}`;
}
});
return paramStr;
},
cheackCrrent(item) {
const params = { ...this.$route.query, user_id: item.id };
this.$router.push(this.$route.path + "?" + this.getParams(params));
},
getDatas() { getDatas() {
this.$http this.$http
.post( .post(
@ -63,20 +89,25 @@ export default {
this.queryParam this.queryParam
) )
.then(({ data: res }) => { .then(({ data: res }) => {
this.data = res.data; if (res.code == 0) {
}); const data = res.data;
}, this.data = data;
getUserInfo() { const arr = data.filter((item) => item.houseHolderRel == "本人");
this.$http this.info = arr.length > 0 ? arr[0] : {};
.post( }
"/actual/base/peopleRoomOverview/getPersonalFile?resid=" +
this.queryParam.resid,
this.queryParam
)
.then(({ data: res }) => {
this.info = res.data;
}); });
}, },
// getUserInfo() {
// this.$http
// .post(
// "/actual/base/peopleRoomOverview/getPersonalFile?resid=" +
// this.queryParam.resid,
// this.queryParam
// )
// .then(({ data: res }) => {
// this.info = res.data;
// });
// },
}, },
}; };
</script> </script>
@ -102,37 +133,56 @@ export default {
width: 180px; width: 180px;
min-height: 80px; min-height: 80px;
&:nth-of-type(1) { &:nth-of-type(1) {
left: -24px; left: -14px;
top: -24px; top: -24px;
} }
&:nth-of-type(2) { &:nth-of-type(2) {
right: -24px; right: -14px;
top: -24px; top: -24px;
} }
&:nth-of-type(3) { &:nth-of-type(3) {
left: -24px; left: -24px;
bottom: -20px; bottom: -40px;
} }
&:nth-of-type(4) { &:nth-of-type(4) {
right: -24px; right: -24px;
top: 274px; top: 294px;
} }
&:nth-of-type(5) { &:nth-of-type(5) {
left: -94px; left: -94px;
top: 74px; top: 58px;
} }
&:nth-of-type(6) { &:nth-of-type(6) {
right: -94px; right: -94px;
top: 74px; top: 58px;
} }
&:nth-of-type(7) { &:nth-of-type(7) {
left: -124px; left: -124px;
top: 174px; top: 134px;
} }
&:nth-of-type(8) { &:nth-of-type(8) {
right: -124px; right: -124px;
top: 174px; top: 134px;
} }
&:nth-of-type(9) {
left: -104px;
top: 214px;
}
&:nth-of-type(10) {
right: -104px;
top: 214px;
}
&:nth-of-type(11) {
right: 144px;
bottom: -60px;
}
&:nth-of-type(12) {
right: 144px;
top: -44px;
}
}
.tag:hover {
cursor: pointer;
} }
.user-name { .user-name {
width: 174px; width: 174px;

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

@ -38,10 +38,18 @@ export default {
genderArr: ["未知", "男", "女"], genderArr: ["未知", "男", "女"],
}; };
}, },
watch: {
created() { "$route.query"(newVal, oldVal) {
const query = this.$route.query;
this.queryParams.resid = query.user_id;
this.data = {};
this.getDatas();
},
},
activated() {
const query = this.$route.query; const query = this.$route.query;
this.queryParams.resid = query.user_id; this.queryParams.resid = query.user_id;
this.data = {};
this.getDatas(); this.getDatas();
}, },
methods: { methods: {
@ -53,7 +61,9 @@ export default {
this.queryParams this.queryParams
) )
.then(({ data: res }) => { .then(({ data: res }) => {
this.data = res.data; if (res.code == 0) {
this.data = res.data;
}
}); });
}, },
}, },

14
src/views/dataBoard/cpts/personnel/modules/PointsRecord.vue

@ -17,18 +17,26 @@ export default {
name: "PointsRecord", name: "PointsRecord",
data() { data() {
return { return {
data:[], data: [],
}; };
}, },
created() { activated() {
this.getData(); this.getData();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getDatas();
},
},
methods: { methods: {
getData() { getData() {
this.data = [];
this.$http this.$http
.get("/actual/base/peopleRoomOverview/recorHistory") .get("/actual/base/peopleRoomOverview/recorHistory")
.then(({ data: res }) => { .then(({ data: res }) => {
this.data = res.data; if (res.code == 0) {
this.data = res.data;
}
}); });
}, },
}, },

14
src/views/dataBoard/cpts/personnel/modules/businessTables/community.vue

@ -34,14 +34,22 @@ export default {
showDialog: false, showDialog: false,
}; };
}, },
created() { activated() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
mounted() {}, mounted() {},
methods: { methods: {
getList() { getList() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.list = [];
this.total = 0;
this.$emit("changeTotal", { name: 2, total: 0 });
// (-2-1访0访/访1访) // (-2-1访0访/访1访)
const completeFlags = { const completeFlags = {
"-2": "未知", "-2": "未知",

20
src/views/dataBoard/cpts/personnel/modules/businessTables/complaint.vue

@ -13,11 +13,7 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<eventDetails <eventDetails :showDialog="showDialog" :id="this.rowId" @close="close" />
:showDialog="showDialog"
:id="this.rowId"
@close="close"
/>
<Pagination <Pagination
v-show="total > 0" v-show="total > 0"
:total="total" :total="total"
@ -50,11 +46,14 @@ export default {
}; };
}, },
created() {}, created() {},
mounted() { activated() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
methods: { methods: {
handleView(row) { handleView(row) {
this.rowId = row.id; this.rowId = row.id;
@ -64,6 +63,11 @@ export default {
this.showDialog = false; this.showDialog = false;
}, },
getList() { getList() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.list = [];
this.total = 0;
this.$emit("changeTotal", { name: 0, total: 0 });
// //
const statusArr = { const statusArr = {
processing: "处理中", processing: "处理中",

19
src/views/dataBoard/cpts/personnel/modules/businessTables/economize.vue

@ -35,11 +35,14 @@ export default {
}; };
}, },
created() {}, created() {},
mounted() { activated() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
methods: { methods: {
handleView(row) { handleView(row) {
this.rowId = row.id; this.rowId = row.id;
@ -49,9 +52,17 @@ export default {
this.showDialog = false; this.showDialog = false;
}, },
getList() { getList() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.list = [];
this.total = 0;
this.$emit("changeTotal", { name: 1, total: 0 });
// //
this.$http this.$http
.post("/actual/base/peopleRoomOverview/provincialSatisfactionPageList", this.queryParams) .post(
"/actual/base/peopleRoomOverview/provincialSatisfactionPageList",
this.queryParams
)
.then(({ data: res }) => { .then(({ data: res }) => {
this.list = res.data; this.list = res.data;
this.total = res.data.length; this.total = res.data.length;

14
src/views/dataBoard/cpts/personnel/modules/businessTables/give-service.vue

@ -35,13 +35,21 @@ export default {
}; };
}, },
created() {}, created() {},
mounted() { activated() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
methods: { methods: {
getList() { getList() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.list = [];
this.total = 0;
this.$emit("changeTotal", { name: 5, total: 0 });
// //
this.$http this.$http
.post( .post(

14
src/views/dataBoard/cpts/personnel/modules/businessTables/reporting-events.vue

@ -44,11 +44,14 @@ export default {
}; };
}, },
created() {}, created() {},
mounted() { activated() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
methods: { methods: {
handleView(row) { handleView(row) {
this.rowId = row.id; this.rowId = row.id;
@ -58,6 +61,11 @@ export default {
this.showDialog = false; this.showDialog = false;
}, },
getList() { getList() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.list = [];
this.total = 0;
this.$emit("changeTotal", { name: 3, total: 0 });
// //
const statusArr = { const statusArr = {
processing: "处理中", processing: "处理中",

16
src/views/dataBoard/cpts/personnel/modules/businessTables/resident.vue

@ -20,7 +20,7 @@
import jmxq from "@/views/dataBoard/cpts/details/jmxq.vue"; import jmxq from "@/views/dataBoard/cpts/details/jmxq.vue";
export default { export default {
name: "complaint", name: "complaint",
components:{ components: {
jmxq, jmxq,
}, },
data() { data() {
@ -34,11 +34,14 @@ export default {
showDialog: false, showDialog: false,
}; };
}, },
created() { activated() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.getList(); this.getList();
}, },
watch: {
"$route.query"(newVal, oldVal) {
this.getList();
},
},
mounted() {}, mounted() {},
methods: { methods: {
handleView(row) { handleView(row) {
@ -49,6 +52,11 @@ export default {
this.showDialog = false; this.showDialog = false;
}, },
getList() { getList() {
const query = this.$route.query;
this.queryParams.residList[0] = query.user_id;
this.list = [];
this.total = 0;
this.$emit("changeTotal", { name: 4, total: 0 });
// //
this.$http this.$http
.post( .post(

55
src/views/dataBoard/overview/components/DynamicHumanRoomData.vue

@ -1,6 +1,6 @@
<template> <template>
<div class="dhrd"> <div class="dhrd">
<div class="dhrd-list"> <div v-if="list.length > 0" class="dhrd-list">
<!-- <div class="dhrd-item"> <!-- <div class="dhrd-item">
<div class="time blue"> <div class="time blue">
刚刚 刚刚
@ -11,15 +11,37 @@
修改了新苑小区**的居民信息的居民信息的居民信息 修改了新苑小区**的居民信息的居民信息的居民信息
</div> </div>
</div>--> </div>-->
<div class="dhrd-item" v-for="(item, index) in list" :key="index"> <div style="overflow: hidden">
<div class="time"> <div ref="animation">
{{ $moment(item.changeTime).format("HH:mm") }} <div class="dhrd-item" v-for="(item, index) in list" :key="index">
<div class="time">
{{ $moment(item.changeTime).format("HH:mm") }}
</div>
<div class="title">{{ item.orgName }}</div>
<!-- <div class="name">{{item.orgName}}</div>-->
<div class="address">{{ item.content }}</div>
</div>
<div v-if="list.length > 4">
<div class="dhrd-item" v-for="(item, index) in list" :key="index">
<div class="time">
{{ $moment(item.changeTime).format("HH:mm") }}
</div>
<div class="title">{{ item.orgName }}</div>
<!-- <div class="name">{{item.orgName}}</div>-->
<div class="address">{{ item.content }}</div>
</div>
</div>
</div> </div>
<div class="title">{{ item.orgName }}</div>
<!-- <div class="name">{{item.orgName}}</div>-->
<div class="address">{{ item.content }}</div>
</div> </div>
</div> </div>
<div v-else style="width: 100%; height: 100%; text-align: center;padding-top: 20px;">
<img
width="268px"
height="128px"
src="~@/assets/images/overview/zanwu.png"
/>
<div class="zanwuText">近3日暂无更新</div>
</div>
</div> </div>
</template> </template>
@ -61,6 +83,18 @@ export default {
) )
.then(({ data: { data } }) => { .then(({ data: { data } }) => {
this.list = data; this.list = data;
if (this.list.length > 4) {
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
);
});
}
}); });
}, },
}, },
@ -72,6 +106,13 @@ export default {
.dhrd { .dhrd {
padding: 0 16px 20px; padding: 0 16px 20px;
} }
.zanwuText {
margin-top: -34px;
font-size: 14px;
font-family: PingFang SC;
font-weight: 500;
color: #a3b9da;
}
.dhrd-list { .dhrd-list {
height: 140px; height: 140px;
overflow-y: auto; overflow-y: auto;

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

@ -8,14 +8,32 @@
<div class="th">人口更新数</div> <div class="th">人口更新数</div>
<div class="th">人房更新总数</div> <div class="th">人房更新总数</div>
</div> </div>
<div class="tr" v-for="(item, index) in pmList" :key="index"> <div style="overflow: hidden">
<div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'"> <div ref="animation">
{{ index - 0 + 1 }} <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 }}
</div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div>
<!-- 无缝滚动 -->
<div v-if="pmList.length > 3">
<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 }}
</div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div>
</div>
</div> </div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div> </div>
</div> </div>
</div> </div>
@ -65,6 +83,18 @@ export default {
) )
.then(({ data: { data } }) => { .then(({ data: { data } }) => {
this.pmList = data; this.pmList = data;
if (this.pmList.length > 3) {
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
);
});
}
}); });
}, },
}, },

48
src/views/dataBoard/overview/components/RankingGridData.vue

@ -15,14 +15,32 @@
<div class="th">人口更新数</div> <div class="th">人口更新数</div>
<div class="th">人房更新总数</div> <div class="th">人房更新总数</div>
</div> </div>
<div class="tr" v-for="item in pmList" :key="item.rank"> <div style="overflow: hidden">
<div :class="item.rank < 4 ? `td tdbg${item.rank}` : 'td'"> <div ref="animation">
{{ item.rank }} <div class="tr" v-for="item in pmList" :key="item.rank">
<div :class="item.rank < 4 ? `td tdbg${item.rank}` : 'td'">
{{ item.rank }}
</div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div>
<!-- 无缝滚动 -->
<div v-if="pmList.length > 9">
<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 }}
</div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div>
</div>
</div> </div>
<div class="td">{{ item.orgName }}</div>
<div class="td">{{ item.houseNum }}</div>
<div class="td">{{ item.residentNum }}</div>
<div class="td">{{ item.sumNum }}</div>
</div> </div>
</div> </div>
</div> </div>
@ -80,6 +98,19 @@ export default {
if (self) { if (self) {
this.self = self; this.self = self;
} }
if (this.pmList.length > 9) {
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
);
});
}
} }
}); });
}, },
@ -89,6 +120,9 @@ export default {
<style lang="scss" src="@/assets/scss/dataBoard/overview/index.scss" scoped /> <style lang="scss" src="@/assets/scss/dataBoard/overview/index.scss" scoped />
<style scoped lang="scss"> <style scoped lang="scss">
.m-sqrfph {
height: 500px !important;
}
.rank { .rank {
font-size: 16px; font-size: 16px;
font-weight: 400; font-weight: 400;

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

@ -22,7 +22,9 @@
<!-- 无缝滚动 --> <!-- 无缝滚动 -->
<div v-if="pmList.length > 7"> <div v-if="pmList.length > 7">
<div class="tr" v-for="(item, index) in pmList" :key="index"> <div class="tr" v-for="(item, index) in pmList" :key="index">
<div :class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'"> <div
:class="index - 0 + 1 < 4 ? `td tdbg${index - 0 + 1}` : 'td'"
>
{{ index - 0 + 1 }} {{ index - 0 + 1 }}
</div> </div>
<div class="td">{{ item.orgName }}</div> <div class="td">{{ item.orgName }}</div>
@ -72,28 +74,37 @@ export default {
}, },
methods: { methods: {
getList(item) { getList(item) {
this.$http.get("/actual/base/streetOverview/residentHouseUpdateGroup?month=" + this.date + "&level=" + item.orgLevel + "&orgId=" + item.orgId).then(({ data: { data } }) => { this.$http
this.pmList = data; .get(
if (this.pmList.length > 7) { "/actual/base/streetOverview/residentHouseUpdateGroup?month=" +
this.$nextTick(() => { this.date +
const aniHeight = this.$refs.animation.querySelector(".tr").offsetHeight * this.pmList.length; "&level=" +
this.$refs.animation.style.animation = "move 10s linear infinite"; item.orgLevel +
document.styleSheets[0].insertRule( "&orgId=" +
`@keyframes move{0% { item.orgId
transform: translateY(0px); )
} .then(({ data: { data } }) => {
this.pmList = data;
100% { if (this.pmList.length > 7) {
transform: translateY(-${aniHeight}px); this.$nextTick(() => {
}`, const aniHeight =
0 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
);
});
}
});
}, },
}, },
}; };
</script> </script>
<style lang="scss" src="@/assets/scss/dataBoard/overview/index.scss" scoped></style> <style
lang="scss"
src="@/assets/scss/dataBoard/overview/index.scss"
scoped
></style>

28
src/views/dataBoard/overview/index.vue

@ -60,12 +60,27 @@
</div> </div>
<!-- 社区&网格--> <!-- 社区&网格-->
<div v-if="currentLevel === 'community' || currentLevel === 'grid'" class="m-box"> <div
<title-box text="人房数据动态更新"/> v-if="currentLevel === 'community' || currentLevel === 'grid'"
<Tabs v-model="dynamicType" :list="dynamicTypeList" v-if="currentLevel === 'community'" class="m-box"
@changeVal="dynamicTypeChange"/> >
<DynamicHumanRoomData :currentLevelData="currentLevelData" v-if="dynamicType === 1"/> <title-box text="人房数据动态更新" />
<GridUpdateRanking :currentLevelData="currentLevelData" v-if="dynamicType === 2"/> <Tabs
v-model="dynamicType"
:list="dynamicTypeList"
v-if="currentLevel === 'community'"
@changeVal="dynamicTypeChange"
/>
<DynamicHumanRoomData
:currentLevelData="currentLevelData"
:currentLevel="currentLevel"
v-if="dynamicType === 1"
/>
<GridUpdateRanking
:currentLevelData="currentLevelData"
:currentLevel="currentLevel"
v-if="dynamicType === 2"
/>
</div> </div>
<!-- 社区概览--> <!-- 社区概览-->
<div v-if="currentLevel === 'community'" class="m-box"> <div v-if="currentLevel === 'community'" class="m-box">
@ -472,7 +487,6 @@ export default {
cursor: pointer; cursor: pointer;
} }
} }
.date-current-weiyi { .date-current-weiyi {
background: #000; background: #000;
} }

7
src/views/dataBoard/overview/resident/index.vue

@ -31,7 +31,6 @@ export default {
}, },
}, },
{ {
path: "/dataBoard/renfang/resident",
meta: { meta: {
title: "居民画像", title: "居民画像",
}, },
@ -39,7 +38,11 @@ export default {
], ],
}; };
}, },
watch: {
breadList(val) {
console.log("val::", val);
},
},
mounted() {}, mounted() {},
watch: {}, watch: {},
methods: { methods: {

2
src/views/dataBoard/renfang/index.vue

@ -104,7 +104,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="item" @click="jumpPath('normal', 'aged', '月更新率')"> <div class="item">
<div class="item-info"> <div class="item-info">
<div> <div>
<img <img

10
src/views/dataBoard/renfang/resi/classNew.vue

@ -542,9 +542,9 @@ export default {
this.pageNo = 1; this.pageNo = 1;
}, },
watch: { watch: {
$route(to, from) { // $route(to, from) {
// this.$router.go(0); // this.$router.go(0);
}, // },
oldVal: { oldVal: {
handler(newVal, oldVal) { handler(newVal, oldVal) {
this.pageNo = 1; this.pageNo = 1;
@ -630,8 +630,8 @@ export default {
item.name ? item.name : "--", item.name ? item.name : "--",
item.gridName ? item.gridName : "--", item.gridName ? item.gridName : "--",
item.fullName ? item.fullName : "--", item.fullName ? item.fullName : "--",
item.mobile ? item.mobile : "--", item.mobile ? $sensitive(item.mobile, 3, 7) : "--",
item.idNum ? item.idNum : "--", item.idNum ? $sensitive(item.idNum, 6, 16) : "--",
item.gender ? gender[item.gender] : "--", item.gender ? gender[item.gender] : "--",
item.birthday ? item.birthday : "--", item.birthday ? item.birthday : "--",
{ type: "operate", list: ["查看"] }, { type: "operate", list: ["查看"] },

Loading…
Cancel
Save