diff --git a/src/assets/img/shuju/top/1.png b/src/assets/img/shuju/top/1.png
new file mode 100644
index 00000000..1f4ddc87
Binary files /dev/null and b/src/assets/img/shuju/top/1.png differ
diff --git a/src/assets/img/shuju/top/2.png b/src/assets/img/shuju/top/2.png
new file mode 100644
index 00000000..fc2e96ca
Binary files /dev/null and b/src/assets/img/shuju/top/2.png differ
diff --git a/src/assets/img/shuju/top/3.png b/src/assets/img/shuju/top/3.png
new file mode 100644
index 00000000..7e89e215
Binary files /dev/null and b/src/assets/img/shuju/top/3.png differ
diff --git a/src/assets/scss/modules/visual/people.scss b/src/assets/scss/modules/visual/people.scss
index dc7217eb..f382abc1 100644
--- a/src/assets/scss/modules/visual/people.scss
+++ b/src/assets/scss/modules/visual/people.scss
@@ -6,6 +6,8 @@
display: flex;
flex-wrap: wrap;
justify-content: center;
+ margin-top: 5px;
+
.g-l {
width: 850px;
margin-bottom: 20px;
@@ -177,7 +179,7 @@
.m-pop {
@include shield;
background-color: rgba(#000, 0.9);
- overflow-y: scroll;
+ overflow-y: auto;
.wrap {
position: relative;
@@ -288,7 +290,7 @@
.m-relation {
position: relative;
- margin-top: 20px;
+ margin-top: 10px;
.title {
padding: 10px;
@@ -455,7 +457,7 @@
}
.tb {
height: 300px;
- overflow-y: scroll;
+ overflow-y: auto;
@include scrollBar;
}
}
@@ -463,7 +465,7 @@
.m-row {
display: flex;
justify-content: space-between;
- margin-top: 20px;
+ margin-top: 10px;
.m-list {
width: calc(50% - 3px);
@@ -484,11 +486,124 @@
span {
display: block;
}
+
+ a {
+ display: block;
+ color: rgba(#fff, 0.5);
+ font-size: 22px;
+ font-family: PingFang SC;
+ font-weight: 800;
+ margin-right: 10px;
+ cursor: pointer;
+
+ &.z-on {
+ color: #fff;
+ cursor: default;
+
+ &:hover {
+ color: #fff;
+ text-decoration: none;
+ }
+ }
+
+ &:hover {
+ color: rgba(#fff, 0.5);
+ text-decoration: underline;
+ }
+ }
}
- .list {
+
+ .list-wrap {
height: 480px;
- overflow-y: scroll;
+ overflow-y: auto;
@include scrollBar;
+
+ .list {
+ .item {
+ position: relative;
+ background-color: #104ba4;
+ padding: 10px 20px;
+ margin-bottom: 4px;
+ cursor: pointer;
+ transition: all ease 0.1s;
+
+ .item-row {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+
+ .item-l {
+ width: 25%;
+ }
+ .item-r {
+ width: 75%;
+ }
+
+ &:hover {
+ &::before {
+ content: "";
+ position: absolute;
+ display: block;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ width: 6px;
+ background: linear-gradient(270deg, #0336ff, #01b4ff);
+ border-radius: 2px;
+ }
+
+ &::after {
+ content: "";
+ position: absolute;
+ display: block;
+ left: 15px;
+ top: 0;
+ bottom: 0;
+ margin: auto 0;
+ width: 0;
+ height: 0;
+ border-width: 10px;
+ border-style: solid;
+ border-color: transparent transparent transparent #20edff;
+ }
+ }
+ }
+
+ .item-point {
+ text-align: center;
+ padding-left: 10%;
+ height: 16px;
+ font-size: 22px;
+ font-family: PingFang SC;
+ font-weight: bold;
+ color: #ffffff;
+ line-height: 12px;
+ }
+
+ .item-title {
+ padding: 10px 0;
+ font-size: 18px;
+ font-family: PingFang SC;
+ font-weight: 400;
+ color: #ffffff;
+ line-height: 24px;
+ }
+
+ .item-date {
+ padding: 10px 0;
+ border-top: 1px dashed #8398d9;
+ font-size: 14px;
+ font-family: PingFang SC;
+ font-weight: 400;
+ color: #ffffff;
+ opacity: 0.67;
+ }
+ &:hover {
+ box-shadow: 0 0 30px 5px inset #22f;
+ background-color: darken(#104ba4, 12);
+ }
+ }
+ }
}
}
}
diff --git a/src/views/modules/visual/basicinfo/cpts/demand-info.vue b/src/views/modules/visual/basicinfo/cpts/demand-info.vue
new file mode 100644
index 00000000..31ed33e1
--- /dev/null
+++ b/src/views/modules/visual/basicinfo/cpts/demand-info.vue
@@ -0,0 +1,503 @@
+
+
+
+
+
+

+
更多信息
+
+
+
+

+
+
+
+
+
+ 所属网格:
+ {{ gridName }}
+
+
+ 所属小区:
+ {{ xiaoquName }}
+
+
+ 所属楼宇:
+ {{ louName }}-{{ danyuanName }}
+
+
+ 所属家庭:
+ {{ homeName }}
+
+
+ {{ field.label }}:
+
+ {{
+ info[field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ info[field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ info[field.columnName] == null ? "--" : info[field.columnName]
+ }}
+
+
+
+
+
+
+
+
+

+
+
+ {{ item.label }}
+
+
+

+
+
+
+
+
+
+
+ {{ field.label }}:
+ {{
+ infoItem[field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ infoItem[field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ infoItem[field.columnName] == null
+ ? "--"
+ : infoItem[field.columnName]
+ }}
+
+
+
+
+
+ {{ field.label }}:
+ {{
+ !allInfo[group.tableName] ||
+ allInfo[group.tableName][0][field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ allInfo[group.tableName][0][field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ !allInfo[group.tableName] ||
+ allInfo[group.tableName][0][field.columnName] == null
+ ? "--"
+ : allInfo[group.tableName][0][field.columnName]
+ }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/modules/visual/basicinfo/cpts/incident-info.vue b/src/views/modules/visual/basicinfo/cpts/incident-info.vue
new file mode 100644
index 00000000..31ed33e1
--- /dev/null
+++ b/src/views/modules/visual/basicinfo/cpts/incident-info.vue
@@ -0,0 +1,503 @@
+
+
+
+
+
+

+
更多信息
+
+
+
+

+
+
+
+
+
+ 所属网格:
+ {{ gridName }}
+
+
+ 所属小区:
+ {{ xiaoquName }}
+
+
+ 所属楼宇:
+ {{ louName }}-{{ danyuanName }}
+
+
+ 所属家庭:
+ {{ homeName }}
+
+
+ {{ field.label }}:
+
+ {{
+ info[field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ info[field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ info[field.columnName] == null ? "--" : info[field.columnName]
+ }}
+
+
+
+
+
+
+
+
+

+
+
+ {{ item.label }}
+
+
+

+
+
+
+
+
+
+
+ {{ field.label }}:
+ {{
+ infoItem[field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ infoItem[field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ infoItem[field.columnName] == null
+ ? "--"
+ : infoItem[field.columnName]
+ }}
+
+
+
+
+
+ {{ field.label }}:
+ {{
+ !allInfo[group.tableName] ||
+ allInfo[group.tableName][0][field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ allInfo[group.tableName][0][field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ !allInfo[group.tableName] ||
+ allInfo[group.tableName][0][field.columnName] == null
+ ? "--"
+ : allInfo[group.tableName][0][field.columnName]
+ }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/modules/visual/basicinfo/cpts/topic-info.vue b/src/views/modules/visual/basicinfo/cpts/topic-info.vue
new file mode 100644
index 00000000..31ed33e1
--- /dev/null
+++ b/src/views/modules/visual/basicinfo/cpts/topic-info.vue
@@ -0,0 +1,503 @@
+
+
+
+
+
+

+
更多信息
+
+
+
+

+
+
+
+
+
+ 所属网格:
+ {{ gridName }}
+
+
+ 所属小区:
+ {{ xiaoquName }}
+
+
+ 所属楼宇:
+ {{ louName }}-{{ danyuanName }}
+
+
+ 所属家庭:
+ {{ homeName }}
+
+
+ {{ field.label }}:
+
+ {{
+ info[field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ info[field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ info[field.columnName] == null ? "--" : info[field.columnName]
+ }}
+
+
+
+
+
+
+
+
+

+
+
+ {{ item.label }}
+
+
+

+
+
+
+
+
+
+
+ {{ field.label }}:
+ {{
+ infoItem[field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ infoItem[field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ infoItem[field.columnName] == null
+ ? "--"
+ : infoItem[field.columnName]
+ }}
+
+
+
+
+
+ {{ field.label }}:
+ {{
+ !allInfo[group.tableName] ||
+ allInfo[group.tableName][0][field.columnName] == null
+ ? "--"
+ : getOptionLabel(
+ field.options,
+ allInfo[group.tableName][0][field.columnName],
+ field.itemType
+ )
+ }}
+
+ {{
+ !allInfo[group.tableName] ||
+ allInfo[group.tableName][0][field.columnName] == null
+ ? "--"
+ : allInfo[group.tableName][0][field.columnName]
+ }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/modules/visual/basicinfo/people.vue b/src/views/modules/visual/basicinfo/people.vue
index e62bd04b..4335105f 100644
--- a/src/views/modules/visual/basicinfo/people.vue
+++ b/src/views/modules/visual/basicinfo/people.vue
@@ -304,16 +304,17 @@
:loading="demand.loading"
:header="demand.header"
:list="demand.list"
+ @operate="handleOperateDemandList"
>
-
@@ -338,11 +401,67 @@
积分记录
-
+
+
+
+
+
+
+
+
{{ item.title }}
+
{{ item.dateTime }}
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -351,6 +470,9 @@ import { Loading } from "element-ui"; //引入Loading服务
import { requestPost } from "@/js/dai/request";
import cptCard from "@/views/modules/visual/cpts/card";
import peopleMore from "@/views/modules/visual/basicinfo/cpts/people-more";
+import demandInfo from "@/views/modules/visual/basicinfo/cpts/demand-info";
+import incidentInfo from "@/views/modules/visual/basicinfo/cpts/incident-info";
+import topicInfo from "@/views/modules/visual/basicinfo/cpts/topic-info";
import cptTb from "@/views/modules/visual/cpts/tb";
export default {
@@ -358,10 +480,12 @@ export default {
data() {
return {
showedMoreInfo: false,
+ showedDemandInfo: false,
userId: "",
info: {
+ epmetUserId: "",
financialSituation: { monthlyIncome: "", retirementAmount: "" },
gridName: "",
houseInfo: [],
@@ -413,10 +537,44 @@ export default {
],
header: ["序号", "服务时间", "需求类型", "需求内容", "状态", "操作"],
list: [],
+ srcList: [],
+ currentIndex: 0,
pageSize: 5,
pageNo: 1,
total: 0,
},
+
+ showedIncidentOrTopic: "incident",
+
+ incident: {
+ loading: false,
+ list: [],
+ pageSize: 10,
+ pageNo: 1,
+ total: 0,
+ showedInfo: false,
+ currentIndex: 0,
+ },
+
+ topic: {
+ loading: false,
+ list: [],
+ pageSize: 10,
+ pageNo: 1,
+ total: 0,
+ showedInfo: false,
+ currentIndex: 0,
+ },
+
+ point: {
+ loading: false,
+ list: [],
+ pageSize: 10,
+ pageNo: 1,
+ total: 0,
+ showedInfo: false,
+ currentIndex: 0,
+ },
};
},
@@ -434,6 +592,9 @@ export default {
cptCard,
peopleMore,
cptTb,
+ demandInfo,
+ incidentInfo,
+ topicInfo
},
watch: {
@@ -454,10 +615,13 @@ export default {
methods: {
handleSearch() {},
- getApiData() {
- this.getInfo();
+ async getApiData() {
+ await this.getInfo();
this.getHouseInfo();
this.getDemandData();
+ this.getIncidentData();
+ this.getTopicData();
+ this.getPointData();
},
toUserInfo(uid) {
@@ -496,16 +660,23 @@ export default {
}
},
- handlePageNoChange_demand(val) {
+ handlePageNoChangeDemand(val) {
this.demand.pageNo = val;
this.getDemandData();
},
+ handleOperateDemandList(index, type) {
+ if (type == "查看") {
+ this.showedDemandInfo = true;
+ this.demand.currentIndex = index;
+ }
+ },
+
//加载组织数据
async getDemandData() {
- const url =
- "http://yapi.elinkservice.cn/mock/245/heart/userdemand/mydemand";
+ const url = "/heart/userdemand/mydemand";
let params = {
+ epmetUserId: this.info.epmetUserId,
userId: this.userId,
pageNo: this.demand.pageNo,
pageSize: this.demand.pageSize,
@@ -520,12 +691,109 @@ export default {
return [
{ type: "index" },
item.wantServiceTime,
- item.content,
item.categoryName,
+ item.content,
item.statusName,
{ type: "operate", list: ["查看"] },
];
});
+ this.demand.srcList = data.list;
+ } else {
+ this.$message.error(msg);
+ }
+ },
+
+ handlePageNoChangeIncident(val) {
+ this.incident.pageNo = val;
+ this.getIncidentData();
+ },
+
+ handleClickIncident(index) {
+ this.incident.showedInfo = true;
+ this.incident.currentIndex = index;
+ },
+
+ //加载组织数据
+ async getIncidentData() {
+ const url =
+ "http://yapi.elinkservice.cn/mock/245/gov/project/resievent/pageuserreported";
+ let params = {
+ epmetUserId: this.info.epmetUserId,
+ userId: this.userId,
+ pageNo: this.incident.pageNo,
+ pageSize: this.incident.pageSize,
+ };
+
+ const { data, code, msg } = await requestPost(url, params);
+ this.incident.loading = false;
+
+ if (code === 0) {
+ this.incident.total = data.total;
+ this.incident.list = data.list;
+ } else {
+ this.$message.error(msg);
+ }
+ },
+
+ handlePageNoChangeTopic(val) {
+ this.topic.pageNo = val;
+ this.getTopicData();
+ },
+
+ handleClickTopic(index) {
+ this.topic.showedInfo = true;
+ this.topic.currentIndex = index;
+ },
+
+ //加载组织数据
+ async getTopicData() {
+ const url =
+ "http://yapi.elinkservice.cn/mock/245/gov/project/resievent/pageuserreported";
+ let params = {
+ epmetUserId: this.info.epmetUserId,
+ userId: this.userId,
+ pageNo: this.topic.pageNo,
+ pageSize: this.topic.pageSize,
+ };
+
+ const { data, code, msg } = await requestPost(url, params);
+ this.topic.loading = false;
+
+ if (code === 0) {
+ this.topic.total = data.total;
+ this.topic.list = data.list;
+ } else {
+ this.$message.error(msg);
+ }
+ },
+
+ handlePageNoChangePoint(val) {
+ this.point.pageNo = val;
+ this.getPointData();
+ },
+
+ handleClickPoint(index) {
+ this.point.showedInfo = true;
+ this.point.currentIndex = index;
+ },
+
+ //加载组织数据
+ async getPointData() {
+ const url =
+ "http://yapi.elinkservice.cn/mock/245/point/resi/point/pageuserpoint";
+ let params = {
+ epmetUserId: this.info.epmetUserId,
+ userId: this.userId,
+ pageNo: this.point.pageNo,
+ pageSize: this.point.pageSize,
+ };
+
+ const { data, code, msg } = await requestPost(url, params);
+ this.point.loading = false;
+
+ if (code === 0) {
+ this.point.total = data.total;
+ this.point.list = data.list;
} else {
this.$message.error(msg);
}