LAPTOP-FO2T5SIU\35838 6 mēneši atpakaļ
vecāks
revīzija
0eeac92f02

+ 4 - 2
src/permission.js

@@ -8,11 +8,13 @@ import getPageTitle from '@/static/utils/get-page-title'
 
 NProgress.configure({ showSpinner: false }) // NProgress Configuration
 
-const whiteList = ['/login', '/bizLogin','/lifeLine','/door','/deviceh5','/assitsdanger'] // no redirect whitelist 路由白名单
+const whiteList = ['/login', '/bizLogin','/lifeLine','/door','/deviceh5','/assitsdanger', '/ssoLogin'] // no redirect whitelist 路由白名单
 
 router.beforeEach(async(to, from, next) => {
     //console.log('beforeEach')
-    // //console.log('to, from, next', to, from, next)
+    // console.log('to', to)
+    // console.log('from', from)
+    // console.log('next', next)
     // start progress bar
     NProgress.start()
 

+ 7 - 3
src/router/index.js

@@ -44,7 +44,11 @@ export const constantRoutes = [
         component: () => import('@/views/login/index'),
         hidden: true
     },
-
+    {
+        path: '/ssoLogin',
+        component: () => import('@/views/singleLogin/ssoLogin'),
+        hidden: true
+    },
     {
         path: '/bizLogin',
         component: () => import('@/views/login/index_biz'),
@@ -490,8 +494,8 @@ function getSubMenu(menuNodes) {
 
 const createRouter = () =>
     new Router({
-        // mode: 'history', // require service support
-        mode: 'hash',
+        // mode: 'hash', // require service support
+        mode: 'history',
         base: process.env.BASE_URL,
         scrollBehavior: () => ({ y: 0 }),
         routes: constantRoutes

+ 14 - 2
src/views/customerManagement/roomChose/addHouse.vue

@@ -32,7 +32,7 @@
       <el-row class="handle-box">
         <el-col :span="24">
           <span class="card_title">房屋信息</span>
-          <el-button style="float: right" type="text" size="small" @click="handleAdd()">
+          <el-button v-if="roomSelectionCount < 1 || AllData.length < 1" style="float: right" type="text" size="small" @click="handleAdd()">
             去选房
           </el-button>
         </el-col>
@@ -141,7 +141,9 @@ export default {
             username: '',
             groupId: '',
             discId: '',
-            form: {}
+            form: {},
+            roomSelectionCount: 0,
+            chooseFlag: false
         }
     },
     mounted() {
@@ -150,6 +152,7 @@ export default {
         const username = this.$common.currUser().username
         this.dataStr = dateStr
         this.username = username
+        this.getPermission()
     },
     methods: {
         initData(data) {
@@ -272,9 +275,18 @@ export default {
             this.form = {}
             this.baseCustomerRequest('getById', { id: val }).then(res => {
                 this.form = res.data
+                this.roomSelectionCount = res.data.roomSelectionCount
             }).catch((err) => {
             })
         },
+        getPermission() {
+            // 关联数量大于0 并且 列表有数据
+            if (this.roomSelectionCount > 0 && this.AllData.length > 0) {
+                this.chooseFlag = false
+            } else {
+                this.chooseFlag = true
+            }
+        },
         baseRequest(opUrl, postData) {
             return this.$channel.globeRequest('RoomSelectionInfoController', opUrl, postData, 'project')
         },

+ 48 - 38
src/views/customerManagement/roomChose/roomIndex.vue

@@ -128,28 +128,28 @@
             <el-col :span="4">
               <el-input v-model="queryParam.actualBuildArea" size="small" placeholder="请输入面积" class="ch-input-size" @keyup.enter.native="handleSearch()" />
             </el-col>
-<!--            <el-col :span="4">-->
-<!--              <div style="margin-top: 6px">选房状态:</div>-->
-<!--            </el-col>-->
-<!--            <el-col :span="4">-->
-<!--              <el-select-->
-<!--                v-model="queryParam.isChooseStr"-->
-<!--                placeholder="请选择"-->
-<!--                size="small"-->
-<!--                clearable-->
-<!--                :popper-append-to-body="false"-->
-<!--                popper-class="statistic_base"-->
-<!--              >-->
-<!--                <el-option-->
-<!--                  v-for="item in chooseOptions"-->
-<!--                  :key="item.value"-->
-<!--                  :popper-append-to-body="false"-->
-<!--                  popper-class="statistic_base"-->
-<!--                  :label="item.label"-->
-<!--                  :value="item.value"-->
-<!--                />-->
-<!--              </el-select>-->
-<!--            </el-col>-->
+            <!--            <el-col :span="4">-->
+            <!--              <div style="margin-top: 6px">选房状态:</div>-->
+            <!--            </el-col>-->
+            <!--            <el-col :span="4">-->
+            <!--              <el-select-->
+            <!--                v-model="queryParam.isChooseStr"-->
+            <!--                placeholder="请选择"-->
+            <!--                size="small"-->
+            <!--                clearable-->
+            <!--                :popper-append-to-body="false"-->
+            <!--                popper-class="statistic_base"-->
+            <!--              >-->
+            <!--                <el-option-->
+            <!--                  v-for="item in chooseOptions"-->
+            <!--                  :key="item.value"-->
+            <!--                  :popper-append-to-body="false"-->
+            <!--                  popper-class="statistic_base"-->
+            <!--                  :label="item.label"-->
+            <!--                  :value="item.value"-->
+            <!--                />-->
+            <!--              </el-select>-->
+            <!--            </el-col>-->
           </el-row>
           <el-row class="lineheight20">
             <el-col :span="4">
@@ -170,7 +170,7 @@
         <el-row class="lineheight20">
           <el-col :span="24">
             <el-table
-              ref="singleTable"
+              ref="myTable"
               v-loading="loading"
               :data="AllData"
               highlight-current-row
@@ -191,13 +191,13 @@
               <el-table-column label="可售状态" prop="saleStatusStr" />
               <el-table-column label="已售状态" prop="soldStatusStr" />
               <el-table-column label="选房状态" prop="isChooseStr" />
-<!--              <el-table-column label="操作" header-align="center" width="250">-->
-<!--                <template scope="scope">-->
-<!--                  &lt;!&ndash;                  <el-button size="mini" type="text" @click="handleEdit(scope.row)">编辑</el-button>&ndash;&gt;-->
-<!--                  &lt;!&ndash;                  <el-button size="mini" type="text" @click="handleDelete(scope.row)">删除</el-button>&ndash;&gt;-->
-<!--                  <el-button size="mini" type="text" @click="handleView(scope.row)">查看</el-button>-->
-<!--                </template>-->
-<!--              </el-table-column>-->
+              <!--              <el-table-column label="操作" header-align="center" width="250">-->
+              <!--                <template scope="scope">-->
+              <!--                  &lt;!&ndash;                  <el-button size="mini" type="text" @click="handleEdit(scope.row)">编辑</el-button>&ndash;&gt;-->
+              <!--                  &lt;!&ndash;                  <el-button size="mini" type="text" @click="handleDelete(scope.row)">删除</el-button>&ndash;&gt;-->
+              <!--                  <el-button size="mini" type="text" @click="handleView(scope.row)">查看</el-button>-->
+              <!--                </template>-->
+              <!--              </el-table-column>-->
             </el-table>
             <div class="table-page">
               <el-pagination
@@ -563,6 +563,7 @@ export default {
             uploadTitle: [],
             loadingFlag: false,
             selectList: [],
+            selectId: '',
             expandedDeptKey: [],
             chooseOptions: [
                 {
@@ -959,14 +960,23 @@ export default {
         },
         // 选中数据
         handleSelectionChange(val) {
-            this.selectList = this.selectList.filter(item => {
-                for (let i = 0; i < this.AllData.length; i++) {
-                    if (this.AllData[i].id === item.id) {
-                        return false
-                    }
-                }
-                return true
-            })
+            // this.selectList = this.selectList.filter(item => {
+            //     for (let i = 0; i < this.AllData.length; i++) {
+            //         if (this.AllData[i].id === item.id) {
+            //             return false
+            //         }
+            //     }
+            //     return true
+            // })
+            // val.forEach(element => {
+            //     element.houseId = element.id
+            //     this.selectList.push(element)
+            // })
+            if (val.length > 1) {
+                this.$refs.myTable.clearSelection()
+                this.$refs.myTable.toggleRowSelection(val.pop())
+            }
+            this.selectList = []
             val.forEach(element => {
                 element.houseId = element.id
                 this.selectList.push(element)

+ 56 - 0
src/views/singleLogin/ssoLogin.vue

@@ -0,0 +1,56 @@
+<template>
+  <div />
+</template>
+
+<script>
+import CryptoJS from 'crypto-js'
+import Cookie from 'js-cookie'
+
+export default {
+    name: 'SSOLogin',
+    data() {
+        return {
+            loading: false,
+            redirect: undefined
+        }
+    },
+    watch: {},
+    created() {
+        // 第三方平台登录
+        this.getLoginByToken()
+    },
+    methods: {
+        // 第三方平台单点登录系统
+        getLoginByToken() {
+            // 获取地址栏中的token
+            var token = this.$route.query
+            console.log('token===', token)
+            console.log('loginid===', token.loginid)
+            // 调用登录的接口
+            if (token == '' || token == undefined || token == null) {
+                // 无token,跳转到登录页面
+                this.$router.push({ path: '/login' }).catch(() => {})
+            } else {
+                // 免密登录
+                const postForm = {
+                    url: 'login',
+                    code: '1',
+                    userName: token.loginid
+                }
+                this.baseRequest('loginSecret', postForm).then((res) => {
+                    if (res.result) {
+                        this.$router.push({ path: '/backstage?menuIndex=1281203683157082112' })
+                    } else {
+                        this.$message(res.msg)
+                    }
+                }).catch((e) => {
+                    // console.log(e)
+                })
+            }
+        },
+        baseRequest(opUrl, postData) {
+            return this.$channel.globeRequest('pub', opUrl, postData, 'project')
+        }
+    }
+}
+</script>