|
@@ -1,68 +1,37 @@
|
|
<template>
|
|
<template>
|
|
<div>
|
|
<div>
|
|
- <common @asynCallBack="asynCallBack"></common>
|
|
|
|
|
|
+ <common ref="common" @asynCallBack="asynCallBack"></common>
|
|
<top-header :pageTitle="pageTitle" :leftShow="false"></top-header>
|
|
<top-header :pageTitle="pageTitle" :leftShow="false"></top-header>
|
|
|
|
|
|
<div class="mui-content margin60">
|
|
<div class="mui-content margin60">
|
|
<div class="vongi-choose mui-content-padded">
|
|
<div class="vongi-choose mui-content-padded">
|
|
<h5>经过比对,您可以使用下列身份登录: </h5>
|
|
<h5>经过比对,您可以使用下列身份登录: </h5>
|
|
<ul class="mui-table-view mui-table-view-radio vongi-pipei">
|
|
<ul class="mui-table-view mui-table-view-radio vongi-pipei">
|
|
- <li v-show="popedom.indexOf('1')>-1" :class="'mui-table-view-cell '+(visterScene.role=='1'?'mui-selected':'')"
|
|
|
|
- @click="visterScene.role='1'">
|
|
|
|
- <a>
|
|
|
|
|
|
+ <li v-for="(item,index) in roleList" :class="'mui-table-view-cell '+(person_popedom.sceneId==item.sceneId?'mui-selected':'')">
|
|
|
|
+ <a @click="switchRole(item.sceneId)">
|
|
<div class="mui-pull-left mui-col-xs-2">
|
|
<div class="mui-pull-left mui-col-xs-2">
|
|
<div class="mui-media-object">
|
|
<div class="mui-media-object">
|
|
<img :src="person_data.faceImageUrl">
|
|
<img :src="person_data.faceImageUrl">
|
|
</div>
|
|
</div>
|
|
- <p class='mui-ellipsis'>员工</p>
|
|
|
|
- <span class="mui-badge mui-badge-danger">1</span>
|
|
|
|
|
|
+ <p class='mui-ellipsis' v-text="item.personRoleName"></p>
|
|
|
|
+ <span v-if="item.unreadMessageNum>0" class="mui-badge mui-badge-danger" v-text="item.unreadMessageNum"></span>
|
|
</div>
|
|
</div>
|
|
<div class="mui-media-body mui-col-xs-10">
|
|
<div class="mui-media-body mui-col-xs-10">
|
|
- {{person_data.position1}}
|
|
|
|
- <p class='mui-ellipsis' v-text="person_data.position2"></p>
|
|
|
|
|
|
+ {{item.sceneName}}
|
|
|
|
+ <p class='mui-ellipsis' v-text="item.companyName"></p>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
</a>
|
|
</li>
|
|
</li>
|
|
- <li v-show="popedom.indexOf('2')>-1" :class="'mui-table-view-cell '+(visterScene.role=='2'?'mui-selected':'')"
|
|
|
|
- @click="visterScene.role='2'">
|
|
|
|
- <a>
|
|
|
|
- <div class="mui-pull-left mui-col-xs-2">
|
|
|
|
- <div class="mui-media-object">
|
|
|
|
- <img :src="person_data.faceImageUrl">
|
|
|
|
- </div>
|
|
|
|
- <p class='mui-ellipsis'>管理人员</p>
|
|
|
|
- </div>
|
|
|
|
- <div class="mui-media-body mui-col-xs-10">
|
|
|
|
- {{person_data.position1}}
|
|
|
|
- <p class='mui-ellipsis' v-text="person_data.position2"></p>
|
|
|
|
- </div>
|
|
|
|
- </a>
|
|
|
|
- </li>
|
|
|
|
- <!-- <li v-show="popedom.indexOf('3')>-1" :class="'mui-table-view-cell '+(visterScene.role=='3'?'mui-selected':'')"
|
|
|
|
- @click="visterScene.role='3'">
|
|
|
|
- <a>
|
|
|
|
- <div class="mui-pull-left mui-col-xs-2">
|
|
|
|
- <div class="mui-media-object">
|
|
|
|
- <img :src="person_data.faceImageUrl">
|
|
|
|
- </div>
|
|
|
|
- <p class='mui-ellipsis'>监管端</p>
|
|
|
|
- </div>
|
|
|
|
- <div class="mui-media-body mui-col-xs-10">
|
|
|
|
- {{person_data.position1}}
|
|
|
|
- <p class='mui-ellipsis' v-text="person_data.position2"></p>
|
|
|
|
- </div>
|
|
|
|
- </a>
|
|
|
|
- </li> -->
|
|
|
|
</ul>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
- <div class="fyy-footer">
|
|
|
|
- <div class="bindfyy-btn"><button type="submit" class="mui-btn mui-btn-primary" @click="sure">确认选择</button></div>
|
|
|
|
- </div>
|
|
|
|
|
|
+
|
|
|
|
+ <loading :visible="isLoading"></loading>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
|
+ import * as API_User from '$project/apis/user'
|
|
import Common from '$project/components/Common.vue'
|
|
import Common from '$project/components/Common.vue'
|
|
import Loading from '$project/components/Loading.vue'
|
|
import Loading from '$project/components/Loading.vue'
|
|
import TopHeader from '$project/components/TopHeader.vue'
|
|
import TopHeader from '$project/components/TopHeader.vue'
|
|
@@ -70,9 +39,8 @@
|
|
mapGetters,
|
|
mapGetters,
|
|
mapMutations
|
|
mapMutations
|
|
} from 'vuex'
|
|
} from 'vuex'
|
|
- import * as types from '$project/store/mutation-types'
|
|
|
|
export default {
|
|
export default {
|
|
- name: 'Role',
|
|
|
|
|
|
+ name: 'UserRole',
|
|
components: {
|
|
components: {
|
|
Common,
|
|
Common,
|
|
Loading,
|
|
Loading,
|
|
@@ -81,80 +49,57 @@
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
pageTitle: '匹配身份',
|
|
pageTitle: '匹配身份',
|
|
|
|
+ isLoading: false,
|
|
|
|
|
|
- //传递过来的场景项目
|
|
|
|
- visterScene: {
|
|
|
|
- project: this.$route.query.project,
|
|
|
|
- role: ''
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- created() {
|
|
|
|
- if (this.$route.query.project) {
|
|
|
|
- this.visterScene.project = this.$route.query.project
|
|
|
|
|
|
+ roleList: []
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ created() {},
|
|
methods: {
|
|
methods: {
|
|
- //确认
|
|
|
|
- sure(auto) {
|
|
|
|
- this.set_vister_scene(this.visterScene);
|
|
|
|
- if (this.visterScene.project == 'business') {
|
|
|
|
- if (this.visterScene.role == '1') {
|
|
|
|
- window.location.href = "../" + this.visterScene.project + '/#/master';
|
|
|
|
- } else if (this.visterScene.role == '2') {
|
|
|
|
- window.location.href = "../" + this.visterScene.project + '/#/houseKeeper/admin';
|
|
|
|
- } else if (this.visterScene.role == '3') {
|
|
|
|
- window.location.href = "../" + this.visterScene.project + '/#/houseKeeper/control';
|
|
|
|
- } else {
|
|
|
|
- if (!auto) {
|
|
|
|
- mui.toast('请选择角色');
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- mui.toast('未开放场景');
|
|
|
|
- }
|
|
|
|
|
|
+ //获取用户角色列表
|
|
|
|
+ getRoleList() {
|
|
|
|
+ this.isLoading = true;
|
|
|
|
+ API_User.getRoleList().then(response => {
|
|
|
|
+ this.isLoading = false;
|
|
|
|
+
|
|
|
|
+ this.roleList = response.list;
|
|
|
|
+ }).catch(error => {
|
|
|
|
+ this.isLoading = false;
|
|
|
|
+ mui.toast(error);
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ //切换角色
|
|
|
|
+ switchRole(id) {
|
|
|
|
+ this.isLoading = true;
|
|
|
|
+ API_User.exchangePopedom({
|
|
|
|
+ id: id
|
|
|
|
+ }).then(response => {
|
|
|
|
+ this.isLoading = false;
|
|
|
|
+
|
|
|
|
+ //跳转到项目主页上去
|
|
|
|
+ window.location.href = '../' + this.$route.query.project + '/#/master';
|
|
|
|
+ }).catch(error => {
|
|
|
|
+ this.isLoading = false;
|
|
|
|
+ mui.toast(error);
|
|
|
|
+ })
|
|
},
|
|
},
|
|
asynCallBack() {
|
|
asynCallBack() {
|
|
- //如果用户不存则去注册用户
|
|
|
|
- if (!this.person_data) {
|
|
|
|
- this.$router.push({
|
|
|
|
- name: 'Login',
|
|
|
|
- query: {
|
|
|
|
- project: this.visterScene.project
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
|
|
|
|
- //如果场景是存在的则直接跳转
|
|
|
|
- if (!this.$route.query.exchange && this.vister_scene.project && this.vister_scene.role) {
|
|
|
|
- this.sure(true);
|
|
|
|
- }
|
|
|
|
},
|
|
},
|
|
- ...mapMutations({
|
|
|
|
- set_vister_scene: types.SET_VISTER_SCENE,
|
|
|
|
- })
|
|
|
|
},
|
|
},
|
|
- mounted() {},
|
|
|
|
|
|
+ mounted() {
|
|
|
|
+ //获取用户角色列表
|
|
|
|
+ this.getRoleList();
|
|
|
|
+ },
|
|
destroyed() {
|
|
destroyed() {
|
|
|
|
|
|
},
|
|
},
|
|
computed: {
|
|
computed: {
|
|
- popedom: {
|
|
|
|
- // getter
|
|
|
|
- get: function() {
|
|
|
|
- return this.person_data ? this.person_data.popedom.split(',') : [];
|
|
|
|
- },
|
|
|
|
- // setter
|
|
|
|
- set: function(newValue) {
|
|
|
|
- console.log(newValue)
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
...mapGetters({
|
|
...mapGetters({
|
|
openId: 'wx_openid',
|
|
openId: 'wx_openid',
|
|
token: 'token',
|
|
token: 'token',
|
|
person_data: 'person_data',
|
|
person_data: 'person_data',
|
|
- person_popedom: 'person_popedom',
|
|
|
|
- vister_scene: 'vister_scene',
|
|
|
|
|
|
+ person_popedom: 'person_popedom',
|
|
})
|
|
})
|
|
}
|
|
}
|
|
}
|
|
}
|