Browse Source

人户信息

feature/welfareImport
jiangyy 3 years ago
parent
commit
6276f7ffd6
  1. 7
      src/assets/scss/modules/visual/people.scss
  2. 487
      src/views/modules/visual/basicinfo/people.vue

7
src/assets/scss/modules/visual/people.scss

@ -372,7 +372,7 @@
z-index: 1;
}
.rel-bg {
height: 70px;
height: 90px;
width: 128px;
}
@ -384,7 +384,7 @@
left: 0;
width: 100%;
padding: 7px 10px;
line-height: 24px;
line-height: 20px;
text-align: center;
color: #fff;
font-size: 18px;
@ -395,6 +395,9 @@
.rel-name {
font-size: 14px;
}
.rel-call {
font-size: 15px;
}
}
&.z-zuo-2 {

487
src/views/modules/visual/basicinfo/people.vue

@ -1,12 +1,11 @@
<template>
<div class="g-wrr">
<div class="g-bread" v-if="breadList.length > 1">
<div class="g-bread"
v-if="breadList.length > 1">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item
v-for="item in breadList"
:key="item.path"
:to="{ path: item.path }"
>
<el-breadcrumb-item v-for="item in breadList"
:key="item.path"
:to="{ path: item.path }">
{{ item.meta.title }}
</el-breadcrumb-item>
</el-breadcrumb>
@ -20,9 +19,11 @@
<img src="@/assets/img/shuju/title-tip.png" />
<span>人员情况</span>
</div>
<div class="more" @click="showedMoreInfo = true">查看更多</div>
<div class="more"
@click="showedMoreInfo = true">查看更多</div>
<div class="ren">
<img class="pic-ren" src="@/assets/img/shuju/people/ren.png" />
<img class="pic-ren"
src="@/assets/img/shuju/people/ren.png" />
<div class="ren-name">
<span>{{ info.name }}</span>
<img src="@/assets/img/shuju/people/arrow.png" />
@ -116,13 +117,11 @@
</cpt-card>
</div>
<people-more
v-show="showedMoreInfo"
v-if="userId"
:userId="userId"
:gridName="info.gridName"
@close="showedMoreInfo = false"
/>
<people-more v-show="showedMoreInfo"
v-if="userId"
:userId="userId"
:gridName="info.gridName"
@close="showedMoreInfo = false" />
<div class="m-relation">
<cpt-card>
@ -132,14 +131,10 @@
</div>
<div class="info">
<div class="huzhu">
<img
class="huzhu-bg"
src="@/assets/img/shuju/people/huzhu.png"
/>
<img
class="huzhu-ico"
src="@/assets/img/shuju/people/huzhu-home.png"
/>
<img class="huzhu-bg"
src="@/assets/img/shuju/people/huzhu.png" />
<img class="huzhu-ico"
src="@/assets/img/shuju/people/huzhu-home.png" />
<div class="huzhu-name">
{{
houseInfo && houseInfo.ownerName
@ -150,23 +145,15 @@
<p>户主</p>
</div>
<div
class="rel z-zuo-2"
@click="toUserInfo(houseInfo.userList[0].userId)"
v-if="houseInfo.userList[0]"
>
<img
class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-zuo.png"
/>
<img
class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/zuo2.png"
/>
<div
class="rel-text"
:class="houseInfo.userList[0].isSelf == '1' ? 'z-on' : ''"
>
<div class="rel z-zuo-2"
@click="toUserInfo(houseInfo.userList[0].userId)"
v-if="houseInfo.userList[0]">
<img class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-zuo.png" />
<img class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/zuo2.png" />
<div class="rel-text"
:class="houseInfo.userList[0].isSelf == '1' ? 'z-on' : ''">
<div class="rel-call">
{{ houseInfo.userList[0].relation }}
</div>
@ -176,23 +163,15 @@
</div>
</div>
<div
class="rel z-you-2"
@click="toUserInfo(houseInfo.userList[1].userId)"
v-if="houseInfo.userList[1]"
>
<img
class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-you.png"
/>
<img
class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/you2.png"
/>
<div
class="rel-text"
:class="houseInfo.userList[1].isSelf == '1' ? 'z-on' : ''"
>
<div class="rel z-you-2"
@click="toUserInfo(houseInfo.userList[1].userId)"
v-if="houseInfo.userList[1]">
<img class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-you.png" />
<img class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/you2.png" />
<div class="rel-text"
:class="houseInfo.userList[1].isSelf == '1' ? 'z-on' : ''">
<div class="rel-call">
{{ houseInfo.userList[1].relation }}
</div>
@ -202,49 +181,36 @@
</div>
</div>
<div
class="rel z-zuo-1"
@click="toUserInfo(houseInfo.userList[2].userId)"
v-if="houseInfo.userList[2]"
>
<img
class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-zuo.png"
/>
<img
class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/zuo1.png"
/>
<div
class="rel-text"
:class="houseInfo.userList[2].isSelf == '1' ? 'z-on' : ''"
>
<div class="rel z-zuo-1"
@click="toUserInfo(houseInfo.userList[2].userId)"
v-if="houseInfo.userList[2]">
<img class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-zuo.png" />
<img class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/zuo1.png" />
<div class="rel-text"
:class="houseInfo.userList[2].isSelf == '1' ? 'z-on' : ''">
<div class="rel-call">
{{ houseInfo.userList[2].relation }}
</div>
<div class="rel-name">
{{ houseInfo.userList[2].userName }}
</div>
<div class="rel-name">
{{ houseInfo.userList[2].userName }}
</div>
</div>
</div>
<div
class="rel z-you-1"
@click="toUserInfo(houseInfo.userList[3].userId)"
v-if="houseInfo.userList[3]"
>
<img
class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-you.png"
/>
<img
class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/you1.png"
/>
<div
class="rel-text"
:class="houseInfo.userList[3].isSelf == '1' ? 'z-on' : ''"
>
<div class="rel z-you-1"
@click="toUserInfo(houseInfo.userList[3].userId)"
v-if="houseInfo.userList[3]">
<img class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-you.png" />
<img class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/you1.png" />
<div class="rel-text"
:class="houseInfo.userList[3].isSelf == '1' ? 'z-on' : ''">
<div class="rel-call">
{{ houseInfo.userList[3].relation }}
</div>
@ -254,23 +220,15 @@
</div>
</div>
<div
class="rel z-zuo-3"
@click="toUserInfo(houseInfo.userList[4].userId)"
v-if="houseInfo.userList[4]"
>
<img
class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-zuo.png"
/>
<img
class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/zuo3.png"
/>
<div
class="rel-text"
:class="houseInfo.userList[4].isSelf == '1' ? 'z-on' : ''"
>
<div class="rel z-zuo-3"
@click="toUserInfo(houseInfo.userList[4].userId)"
v-if="houseInfo.userList[4]">
<img class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-zuo.png" />
<img class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/zuo3.png" />
<div class="rel-text"
:class="houseInfo.userList[4].isSelf == '1' ? 'z-on' : ''">
<div class="rel-call">
{{ houseInfo.userList[4].relation }}
</div>
@ -280,23 +238,15 @@
</div>
</div>
<div
class="rel z-you-3"
@click="toUserInfo(houseInfo.userList[5].userId)"
v-if="houseInfo.userList[5]"
>
<img
class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-you.png"
/>
<img
class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/you3.png"
/>
<div
class="rel-text"
:class="houseInfo.userList[5].isSelf == '1' ? 'z-on' : ''"
>
<div class="rel z-you-3"
@click="toUserInfo(houseInfo.userList[5].userId)"
v-if="houseInfo.userList[5]">
<img class="rel-bg"
src="@/assets/img/shuju/people/huzhu-kuang-you.png" />
<img class="rel-line"
src="@/assets/img/shuju/people/huzhu-line/you3.png" />
<div class="rel-text"
:class="houseInfo.userList[5].isSelf == '1' ? 'z-on' : ''">
<div class="rel-call">
{{ houseInfo.userList[5].relation }}
</div>
@ -318,24 +268,21 @@
</div>
<div class="tb">
<cpt-tb
:col-list="demand.colList"
:loading="demand.loading"
:header="demand.header"
:list="demand.list"
@operate="handleOperateDemandList"
></cpt-tb>
<div class="m-pagination" v-if="demand.total > demand.pageSize">
<el-pagination
hide-on-single-page
:current-page="demand.pageNo"
:page-size="demand.pageSize"
:total="demand.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangeDemand"
>
<cpt-tb :col-list="demand.colList"
:loading="demand.loading"
:header="demand.header"
:list="demand.list"
@operate="handleOperateDemandList"></cpt-tb>
<div class="m-pagination"
v-if="demand.total > demand.pageSize">
<el-pagination hide-on-single-page
:current-page="demand.pageNo"
:page-size="demand.pageSize"
:total="demand.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangeDemand">
</el-pagination>
</div>
</div>
@ -343,98 +290,82 @@
</div>
<div class="m-row">
<div class="m-list" :class="{'z-only': isShundeju}">
<div class="m-list"
:class="{'z-only': isShundeju}">
<cpt-card>
<div class="title">
<img src="@/assets/img/shuju/title-tip.png" />
<a
:class="{ 'z-on': showedIncidentOrTopic == 'incident' }"
@click="showedIncidentOrTopic = 'incident'"
>上报事件</a
>
<a
:class="{ 'z-on': showedIncidentOrTopic == 'topic' }"
@click="showedIncidentOrTopic = 'topic'"
>发布话题</a
>
<a :class="{ 'z-on': showedIncidentOrTopic == 'incident' }"
@click="showedIncidentOrTopic = 'incident'">上报事件</a>
<a :class="{ 'z-on': showedIncidentOrTopic == 'topic' }"
@click="showedIncidentOrTopic = 'topic'">发布话题</a>
</div>
<div
class="list-wrap"
v-show="showedIncidentOrTopic == 'incident'"
>
<div class="list-wrap"
v-show="showedIncidentOrTopic == 'incident'">
<div class="list">
<div
class="item"
:key="'incident' + index"
v-for="(item, index) in incident.list"
@click="handleClickIncident(index)"
>
<div class="item"
:key="'incident' + index"
v-for="(item, index) in incident.list"
@click="handleClickIncident(index)">
<div class="item-title">{{ item.eventContent }}</div>
<div class="item-date">{{ item.reportTime }}</div>
</div>
</div>
<div
class="m-pagination"
v-if="incident.total > incident.pageSize"
>
<el-pagination
hide-on-single-page
:current-page="incident.pageNo"
:page-size="incident.pageSize"
:total="incident.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangeIncident"
>
<div class="m-pagination"
v-if="incident.total > incident.pageSize">
<el-pagination hide-on-single-page
:current-page="incident.pageNo"
:page-size="incident.pageSize"
:total="incident.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangeIncident">
</el-pagination>
</div>
<div v-if="incident.list.length == 0" class="m-hint">
<img
src="@/assets/img/modules/visual/noData.png"
class="no-data-img"
/>
<div v-if="incident.list.length == 0"
class="m-hint">
<img src="@/assets/img/modules/visual/noData.png"
class="no-data-img" />
</div>
</div>
<div class="list-wrap" v-show="showedIncidentOrTopic == 'topic'">
<div class="list-wrap"
v-show="showedIncidentOrTopic == 'topic'">
<div class="list">
<div
class="item"
:key="'topic' + index"
v-for="(item, index) in topic.list"
@click="handleClickTopic(index)"
>
<div class="item"
:key="'topic' + index"
v-for="(item, index) in topic.list"
@click="handleClickTopic(index)">
<div class="item-title">{{ item.topicContent }}</div>
<div class="item-date">{{ item.releaseTime }}</div>
</div>
</div>
<div class="m-pagination" v-if="topic.total > topic.pageSize">
<el-pagination
hide-on-single-page
:current-page="topic.pageNo"
:page-size="topic.pageSize"
:total="topic.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangeTopic"
>
<div class="m-pagination"
v-if="topic.total > topic.pageSize">
<el-pagination hide-on-single-page
:current-page="topic.pageNo"
:page-size="topic.pageSize"
:total="topic.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangeTopic">
</el-pagination>
</div>
<div v-if="topic.list.length == 0" class="m-hint">
<img
src="@/assets/img/modules/visual/noData.png"
class="no-data-img"
/>
<div v-if="topic.list.length == 0"
class="m-hint">
<img src="@/assets/img/modules/visual/noData.png"
class="no-data-img" />
</div>
</div>
</cpt-card>
</div>
<div class="m-list" v-if="!isShundeju">
<div class="m-list"
v-if="!isShundeju">
<cpt-card>
<div class="title">
<img src="@/assets/img/shuju/title-tip.png" />
@ -443,12 +374,10 @@
<div class="list-wrap">
<div class="list">
<div
class="item"
:key="'point' + index"
v-for="(item, index) in point.list"
@click="handleClickPoint(index)"
>
<div class="item"
:key="'point' + index"
v-for="(item, index) in point.list"
@click="handleClickPoint(index)">
<div class="item-row">
<div class="item-l">
<div class="item-point">{{ item.point }}</div>
@ -461,24 +390,22 @@
</div>
</div>
<div class="m-pagination" v-if="point.total > point.pageSize">
<el-pagination
hide-on-single-page
:current-page="point.pageNo"
:page-size="point.pageSize"
:total="point.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangePoint"
>
<div class="m-pagination"
v-if="point.total > point.pageSize">
<el-pagination hide-on-single-page
:current-page="point.pageNo"
:page-size="point.pageSize"
:total="point.total"
background
layout="prev, pager, next"
@current-change="handlePageNoChangePoint">
</el-pagination>
</div>
<div v-if="point.list.length == 0" class="m-hint">
<img
src="@/assets/img/modules/visual/noData.png"
class="no-data-img"
/>
<div v-if="point.list.length == 0"
class="m-hint">
<img src="@/assets/img/modules/visual/noData.png"
class="no-data-img" />
</div>
</div>
</cpt-card>
@ -486,41 +413,33 @@
</div>
</div>
<demand-info
v-if="demand.list.length > 0 && showedDemandInfo"
:userId="userId"
queryOrigin="personal-data"
:demandId="demand.srcList[demand.currentIndex].demandRecId"
@close="showedDemandInfo = false"
@handleAssignOk="handleAssignOk"
/>
<demand-info v-if="demand.list.length > 0 && showedDemandInfo"
:userId="userId"
queryOrigin="personal-data"
:demandId="demand.srcList[demand.currentIndex].demandRecId"
@close="showedDemandInfo = false"
@handleAssignOk="handleAssignOk" />
<template v-if="incident.list.length > 0 && incident.showedInfo">
<incident-info
v-if="
<incident-info v-if="
$store.state.user.customerId == 'b09527201c4409e19d1dbc5e3c3429a1'
"
:resiEventId="incident.list[incident.currentIndex].resiEventId"
:epmetUserIdList="info.epmetUserIdList"
:icResiUserId="userId"
@close="incident.showedInfo = false"
/>
<event-info
v-else
:eventId="incident.list[incident.currentIndex].resiEventId"
:orgId="$store.state.user.agencyId"
orgType="agency"
@close="incident.showedInfo = false"
/>
:resiEventId="incident.list[incident.currentIndex].resiEventId"
:epmetUserIdList="info.epmetUserIdList"
:icResiUserId="userId"
@close="incident.showedInfo = false" />
<event-info v-else
:eventId="incident.list[incident.currentIndex].resiEventId"
:orgId="$store.state.user.agencyId"
orgType="agency"
@close="incident.showedInfo = false" />
</template>
<topic-info
v-if="topic.list.length > 0 && topic.showedInfo"
:topicId="topic.list[topic.currentIndex].topicId"
:epmetUserIdList="info.epmetUserIdList"
:icResiUserId="userId"
@close="topic.showedInfo = false"
/>
<topic-info v-if="topic.list.length > 0 && topic.showedInfo"
:topicId="topic.list[topic.currentIndex].topicId"
:epmetUserIdList="info.epmetUserIdList"
:icResiUserId="userId"
@close="topic.showedInfo = false" />
</div>
</div>
</template>
@ -557,7 +476,7 @@ export default {
},
},
data() {
data () {
return {
breadList: [],
showedMoreInfo: false,
@ -660,12 +579,12 @@ export default {
},
computed: {
isShundeju() {
isShundeju () {
return this.$store.state.user.customerId == "1550309684576591874";
},
},
beforeRouteEnter(to, from, next) {
beforeRouteEnter (to, from, next) {
console.log("让我看看", to);
if (from) {
const arr = [{ ...from }, { ...to, meta: { title: "个人详情" } }];
@ -677,14 +596,14 @@ export default {
}
},
watch: {
uid(id) {
uid (id) {
this.userId = id;
},
userId() {
userId () {
this.getApiData();
window.scrollTo(0, 0);
},
$route(route) {
$route (route) {
// if you go to the redirect page, do not update the breadcrumbs
if (route.path.startsWith("/redirect/")) {
return;
@ -693,21 +612,21 @@ export default {
},
},
async mounted() {
async mounted () {
this.userId = this.uid;
console.log(this.$router);
this.getApiData();
},
deactivated() {
deactivated () {
this.breadList = [];
console.log("breadList-----", this.breadList);
},
destroyed() {
destroyed () {
this.breadList = [];
console.log("breadList-----", this.breadList);
},
methods: {
getBreadcrumb() {
getBreadcrumb () {
// only show routes with meta.title
console.log("routest----", this.$route);
let matched = this.$route.matched.filter(
@ -723,16 +642,16 @@ export default {
(item) => item.meta && item.meta.title && item.meta.breadcrumb !== false
);
},
isDashboard(route) {
isDashboard (route) {
const name = route && route.name;
if (!name) {
return false;
}
return name.trim().toLocaleLowerCase() === "Home".toLocaleLowerCase();
},
handleSearch() {},
handleSearch () { },
async getApiData() {
async getApiData () {
await this.getInfo();
this.getHouseInfo();
this.getDemandData();
@ -741,12 +660,12 @@ export default {
this.getPointData();
},
toUserInfo(uid) {
toUserInfo (uid) {
this.$router.push({ path: `/main-shuju/visual-basicinfo-people/${uid}` });
},
//
async getInfo() {
async getInfo () {
const url = "/epmetuser/icresiuser/persondata";
let params = {
userId: this.userId,
@ -762,7 +681,7 @@ export default {
},
//
async getHouseInfo() {
async getHouseInfo () {
const url = "/epmetuser/icresiuser/ownerrelation";
let params = {
userId: this.userId,
@ -777,12 +696,12 @@ export default {
}
},
handlePageNoChangeDemand(val) {
handlePageNoChangeDemand (val) {
this.demand.pageNo = val;
this.getDemandData();
},
handleOperateDemandList(index, type) {
handleOperateDemandList (index, type) {
if (type == "查看") {
this.showedDemandInfo = true;
this.demand.currentIndex = index;
@ -790,12 +709,12 @@ export default {
},
//
handleAssignOk() {
handleAssignOk () {
this.getDemandData();
},
//
async getDemandData() {
async getDemandData () {
const url = "/heart/userdemand/mydemand";
let params = {
epmetUserIdList: this.info.epmetUserIdList,
@ -825,18 +744,18 @@ export default {
}
},
handlePageNoChangeIncident(val) {
handlePageNoChangeIncident (val) {
this.incident.pageNo = val;
this.getIncidentData();
},
handleClickIncident(index) {
handleClickIncident (index) {
this.incident.showedInfo = true;
this.incident.currentIndex = index;
},
//
async getIncidentData() {
async getIncidentData () {
let url = "/gov/project/icEvent/icevent-pageuserreported";
// 沿
@ -864,18 +783,18 @@ export default {
}
},
handlePageNoChangeTopic(val) {
handlePageNoChangeTopic (val) {
this.topic.pageNo = val;
this.getTopicData();
},
handleClickTopic(index) {
handleClickTopic (index) {
this.topic.showedInfo = true;
this.topic.currentIndex = index;
},
//
async getTopicData() {
async getTopicData () {
const url = "/data/aggregator/resigroup/pageusertopic";
let params = {
epmetUserIdList: this.info.epmetUserIdList,
@ -895,18 +814,18 @@ export default {
}
},
handlePageNoChangePoint(val) {
handlePageNoChangePoint (val) {
this.point.pageNo = val;
this.getPointData();
},
handleClickPoint(index) {
handleClickPoint (index) {
this.point.showedInfo = true;
this.point.currentIndex = index;
},
//
async getPointData() {
async getPointData () {
const url = "/point/resi/point/pageuserpoint";
let params = {
epmetUserIdList: this.info.epmetUserIdList,

Loading…
Cancel
Save