|
@@ -0,0 +1,751 @@
|
|
|
+<template>
|
|
|
+ <div id="scene-management">
|
|
|
+
|
|
|
+ <div class="scene-management-body" v-loading.fullscreen.lock="fullscreenLoading">
|
|
|
+ <div class="order-management-body">
|
|
|
+ <div class="order-management-inner">
|
|
|
+ <div class="base-info">
|
|
|
+ <span>关键词:</span>
|
|
|
+ <el-input @keyup.enter.native="_sceneSearch" ref="searchKey" value="" placeholder="关键词"></el-input>
|
|
|
+ <el-button type="primary" @click="_sceneSearch" color='red'>搜索</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 全部 -->
|
|
|
+ <div class="scene-management_bottom" v-if="tabIndex==0">
|
|
|
+ <div class="order-management-table">
|
|
|
+ <div class="scene-management_tab">
|
|
|
+ <ul>
|
|
|
+ <li v-for="(item,index) in tabs" :key="index" :class="{'scene-management_tab_li_active':item.idx==tabIndex}" @click="clickTabItem(item.idx)">{{item.name}}<span v-if="item.idx != -2" style="margin:0 10px;color: #999;font-weight: normal;">/</span></li>
|
|
|
+ </ul>
|
|
|
+ <!-- <div style="float: right;vertical-align: middle;">
|
|
|
+ <el-button type="primary" icon="el-icon-upload" @click="" color='red'>恢复</el-button>
|
|
|
+ <el-button type="danger" icon="el-icon-delete" @click="" color='red'>删除</el-button>
|
|
|
+ </div> -->
|
|
|
+ </div>
|
|
|
+ <el-table key="order_table" ref="order_table" class='e-table' :data="scenes" style="width: 100%">
|
|
|
+ <el-table-column label="场景封面" width="120">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <a :href="scope.row.webSite" target="_blank" style="cursor: pointer;">
|
|
|
+ <img :src="scope.row.homepic" width="100%" height="" />
|
|
|
+ </a>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneType" label="分类">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneName" width="200" label="标题">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="拍摄时间" width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>{{$base.dateFormat('yyyy-MM-dd hh:mm:ss', new Date(scope.row.createTime.time))}}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="经纬度" width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div v-if="scope.row.longitude">经度:{{scope.row.longitude}}</div>
|
|
|
+ <div v-if="scope.row.latitude">维度:{{scope.row.latitude }}</div>
|
|
|
+ <span v-if="!scope.row.latitude&&!scope.row.longitude">/</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="childName" label="设备ID" width="150">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="userName" label="用户名" width="150">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="scenekey" label="权限">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="viewCount" label="浏览数">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneType" label="平台展示">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-switch @change="_updateSceneStatus(scope.row.num,scope.row.status)" v-model="scope.row.statusBoo" active-color="#13ce66" inactive-color="#ff4949">
|
|
|
+ </el-switch>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="status" label="操作">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button type="text" @click="_deleScene(scope.row.num)" class="delete_btn">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <div class="order-management-pagination">
|
|
|
+ <el-pagination @current-change="handleCurrentChange" :current-page.sync="currentPage" :page-size="10" layout="total, prev, pager, next, jumper" :total="total">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 展示中 -->
|
|
|
+ <div class="scene-management_bottom" v-if="tabIndex==1">
|
|
|
+ <div class="order-management-table">
|
|
|
+ <div class="scene-management_tab">
|
|
|
+ <ul>
|
|
|
+ <li v-for="(item,index) in tabs" :key="index" :class="{'scene-management_tab_li_active':item.idx==tabIndex}" @click="clickTabItem(item.idx)">{{item.name}}<span v-if="item.idx != -2" style="margin:0 10px;color: #999;font-weight: normal;">/</span></li>
|
|
|
+ </ul>
|
|
|
+ <!-- <div style="float: right;vertical-align: middle;">
|
|
|
+ <el-button type="primary" icon="el-icon-upload" @click="" color='red'>恢复</el-button>
|
|
|
+ <el-button type="danger" icon="el-icon-delete" @click="" color='red'>删除</el-button>
|
|
|
+ </div> -->
|
|
|
+ </div>
|
|
|
+ <el-table key="order_table1" ref="order_table1" class='e-table' :data="scenes" style="width: 100%">
|
|
|
+ <el-table-column label="场景封面" width="120">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <a :href="scope.row.webSite" target="_blank" style="cursor: pointer;">
|
|
|
+ <img :src="scope.row.homepic" width="100%" height="" />
|
|
|
+ </a>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneType" label="分类">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneName" width="200" label="标题">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="拍摄时间" width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>{{$base.dateFormat('yyyy-MM-dd hh:mm:ss', new Date(scope.row.createTime.time))}}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="经纬度" width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div v-if="scope.row.longitude">经度:{{scope.row.longitude}}</div>
|
|
|
+ <div v-if="scope.row.latitude">维度:{{scope.row.latitude }}</div>
|
|
|
+ <span v-if="!scope.row.latitude&&!scope.row.longitude">/</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="childName" width="150" label="设备ID">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="userName" width="150" label="用户名">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="scenekey" label="权限">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="viewCount" label="浏览数">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneType" label="平台展示">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-switch @change="_updateSceneStatus(scope.row.num,scope.row.status)" v-model="scope.row.statusBoo" active-color="#13ce66" inactive-color="#ff4949">
|
|
|
+ </el-switch>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="status" label="操作">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button type="text" @click="_deleScene(scope.row.num)" class="delete_btn">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <div class="order-management-pagination">
|
|
|
+ <el-pagination @current-change="handleCurrentChange" :current-page.sync="currentPage" :page-size="10" layout="total, prev, pager, next, jumper" :total="total">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 已隐藏 -->
|
|
|
+ <div class="scene-management_bottom" v-if="tabIndex==-2">
|
|
|
+ <div class="order-management-table">
|
|
|
+ <div class="scene-management_tab">
|
|
|
+ <ul>
|
|
|
+ <li v-for="(item,index) in tabs" :key="index" :class="{'scene-management_tab_li_active':item.idx==tabIndex}" @click="clickTabItem(item.idx)">{{item.name}}<span v-if="item.idx != -2" style="margin:0 10px;color: #999;font-weight: normal;">/</span></li>
|
|
|
+ </ul>
|
|
|
+ <!-- <div style="float: right;vertical-align: middle;">
|
|
|
+ <el-button type="primary" icon="el-icon-upload" @click="" color='red'>恢复</el-button>
|
|
|
+ <el-button type="danger" icon="el-icon-delete" @click="" color='red'>删除</el-button>
|
|
|
+ </div> -->
|
|
|
+ </div>
|
|
|
+ <el-table key="order_table2" ref="order_table2" class='e-table' :data="scenes" style="width: 100%">
|
|
|
+ <el-table-column label="场景封面" width="120">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <a :href="scope.row.webSite" target="_blank" style="cursor: pointer;">
|
|
|
+ <img :src="scope.row.homepic" width="100%" height="" />
|
|
|
+ </a>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneType" label="分类">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneName" width="200" label="标题">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="拍摄时间" width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div>{{$base.dateFormat('yyyy-MM-dd hh:mm:ss', new Date(scope.row.createTime.time))}}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="经纬度" width="200">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div v-if="scope.row.longitude">经度:{{scope.row.longitude}}</div>
|
|
|
+ <div v-if="scope.row.latitude">维度:{{scope.row.latitude }}</div>
|
|
|
+ <span v-if="!scope.row.latitude&&!scope.row.longitude">/</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="childName" width="150" label="设备ID">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="userName" width="150" label="用户名">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="scenekey" label="权限">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="viewCount" label="浏览数">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sceneType" label="平台展示">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-switch @change="_updateSceneStatus(scope.row.num,scope.row.status)" v-model="scope.row.statusBoo" active-color="#13ce66" inactive-color="#ff4949">
|
|
|
+ </el-switch>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="status" label="操作">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button type="text" @click="_deleScene(scope.row.num)" class="delete_btn">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <div class="order-management-pagination">
|
|
|
+ <el-pagination @current-change="handleCurrentChange" :current-page.sync="currentPage" :page-size="10" layout="total, prev, pager, next, jumper" :total="total">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+// import { request } from 'api/server'
|
|
|
+
|
|
|
+export default {
|
|
|
+
|
|
|
+ name: 'scene-management',
|
|
|
+
|
|
|
+ data () {
|
|
|
+ return {
|
|
|
+ getRowKeys (row) {
|
|
|
+ return row.number
|
|
|
+ },
|
|
|
+ tabs: [{ name: '全部', idx: 0 }, { name: '展示中', idx: 1 }, { name: '已隐藏', idx: -2 }],
|
|
|
+ expands: [],
|
|
|
+ expandedArr: [],
|
|
|
+ scenes: [],
|
|
|
+ currentPage: 1,
|
|
|
+ key_input: '',
|
|
|
+ fullscreenLoading: false,
|
|
|
+ total: 0,
|
|
|
+ // expressNum_input: "",
|
|
|
+ searchDate: [],
|
|
|
+ searchOrderNumber: '',
|
|
|
+ searchPhone: '',
|
|
|
+ searchExpressNum: '',
|
|
|
+ hasClickSearch: false,
|
|
|
+ tabIndex: 0,
|
|
|
+ value2: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ handleCurrentChange (val) {
|
|
|
+ let page = val
|
|
|
+ // console.log(`当前页: ${val}`)
|
|
|
+ if (this.total > 0 && !this.hasClickSearch) {
|
|
|
+ this._getSceneData(page)
|
|
|
+ } else {
|
|
|
+ this._searchOrderByPage(page)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ clickTabItem (idx) {
|
|
|
+ // console.log(idx)
|
|
|
+ this.tabIndex = idx
|
|
|
+ this.total = 0
|
|
|
+ this.hasClickSearch = false
|
|
|
+ this.currentPage = 0
|
|
|
+ this.$refs.searchKey.currentValue = this.key_input = ''
|
|
|
+ this._getSceneData(1)
|
|
|
+ },
|
|
|
+ _getSceneData (page) {
|
|
|
+ this.fullscreenLoading = true
|
|
|
+ let status = this.tabIndex === 0 ? null : this.tabIndex
|
|
|
+
|
|
|
+ request['getManageScene']({
|
|
|
+ page: page - 1,
|
|
|
+ status
|
|
|
+ // key:"1"
|
|
|
+ }, 'get').then(res => {
|
|
|
+ this.fullscreenLoading = false
|
|
|
+
|
|
|
+ if (res) {
|
|
|
+ let temp = res.scene ? res.scene : res
|
|
|
+ // console.log(temp)
|
|
|
+
|
|
|
+ // console.log(this.scenes)
|
|
|
+ for (var i = 0; i < temp.length; i++) {
|
|
|
+ // temp[i]['expressNum_input'] = "";
|
|
|
+ let _sceneType = temp[i].sceneType
|
|
|
+ let _sceneTypeName = ''
|
|
|
+ switch (_sceneType) {
|
|
|
+ case 0:
|
|
|
+ _sceneTypeName = '其他'
|
|
|
+ break
|
|
|
+ case 1:
|
|
|
+ _sceneTypeName = '文博'
|
|
|
+ break
|
|
|
+ case 2:
|
|
|
+ _sceneTypeName = '地产'
|
|
|
+ break
|
|
|
+ case 3:
|
|
|
+ _sceneTypeName = '电商'
|
|
|
+ break
|
|
|
+ case 4:
|
|
|
+ _sceneTypeName = '餐饮'
|
|
|
+ break
|
|
|
+ case 5:
|
|
|
+ _sceneTypeName = '家居'
|
|
|
+ break
|
|
|
+ default:
|
|
|
+ _sceneTypeName = ''
|
|
|
+ break
|
|
|
+ }
|
|
|
+ temp[i].sceneType = _sceneTypeName
|
|
|
+ temp[i].scenekey = temp[i].scenekey ? '私密' : '公开'
|
|
|
+ temp[i]['userName'] = temp[i]['userName'] ? temp[i]['userName'] : '未绑定'
|
|
|
+ let gpsStr = temp[i].gps || ''
|
|
|
+
|
|
|
+ if (gpsStr instanceof Object) {
|
|
|
+ JSON.parse(gpsStr, (k, v) => {
|
|
|
+ // console.log(k)
|
|
|
+ if (k && k === 'latitude') {
|
|
|
+ temp[i].latitude = this.formatDegree(v)
|
|
|
+ } else if (k && k === 'longitude') {
|
|
|
+ temp[i].longitude = this.formatDegree(v)
|
|
|
+ }
|
|
|
+ // return v; // 返回修改的值
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ // console.log(temp[i].latitude, temp[i].longitude)
|
|
|
+
|
|
|
+ if (temp[i].status === 1) {
|
|
|
+ temp[i].statusBoo = true
|
|
|
+ } else if (temp[i].status === -2) {
|
|
|
+ temp[i].statusBoo = false
|
|
|
+ } else {
|
|
|
+ temp[i].statusBoo = ''
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.scenes = temp
|
|
|
+ this.total = res.sub ? res.sub : this.total
|
|
|
+
|
|
|
+ // console.log(temp)
|
|
|
+
|
|
|
+ // console.log(this.scenes)
|
|
|
+ // this.expands.push(this.orders[1].number);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ formatDegree (value) {
|
|
|
+ /// <summary>将度转换成为度分秒</summary>
|
|
|
+
|
|
|
+ value = Math.abs(value)
|
|
|
+ var v1 = Math.floor(value)// 度
|
|
|
+ var v2 = Math.floor((value - v1) * 60)// 分
|
|
|
+ var v3 = Math.round((value - v1) * 3600 % 60)// 秒
|
|
|
+ return v1 + '°' + v2 + '\'' + v3 + '"'
|
|
|
+ },
|
|
|
+ _updateSceneStatus (num, status) {
|
|
|
+ let tempStatus
|
|
|
+ if (status === 1) {
|
|
|
+ tempStatus = -2
|
|
|
+ } else if (status === -2) {
|
|
|
+ tempStatus = 1
|
|
|
+ } else {
|
|
|
+ this.$notify.error({
|
|
|
+ title: '错误',
|
|
|
+ message: '切换失败'
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ let page = this.currentPage
|
|
|
+ this.fullscreenLoading = true
|
|
|
+ request['updateSceneStatus']({
|
|
|
+ num,
|
|
|
+ status: tempStatus
|
|
|
+ }, 'get').then(res => {
|
|
|
+ this._searchOrderByPage(page)
|
|
|
+
|
|
|
+ this.fullscreenLoading = false
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ _deleScene (num) {
|
|
|
+ let page = this.currentPage
|
|
|
+ // console.log(page)
|
|
|
+ this.$confirm('此操作将删除该场景, 是否继续?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+ this.fullscreenLoading = true
|
|
|
+
|
|
|
+ request['deleteScene']({
|
|
|
+ num
|
|
|
+ }, 'get').then(res => {
|
|
|
+ if (res === 1) {
|
|
|
+ this.$message({
|
|
|
+ type: 'success',
|
|
|
+ message: '删除成功!'
|
|
|
+ })
|
|
|
+ this._getSceneData(page)
|
|
|
+ this.fullscreenLoading = false
|
|
|
+ this.total -= 1
|
|
|
+ // console.log(res)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }).catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: 'info',
|
|
|
+ message: '已取消删除'
|
|
|
+ })
|
|
|
+ this.fullscreenLoading = false
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ _sceneSearch () {
|
|
|
+ this.fullscreenLoading = true
|
|
|
+ this.hasClickSearch = true
|
|
|
+ let status = this.tabIndex === 0 ? null : this.tabIndex
|
|
|
+ let key = this.key_input = this.$refs.searchKey.currentValue || null
|
|
|
+ request['searchManageScene']({
|
|
|
+ key,
|
|
|
+ page: 0,
|
|
|
+ status
|
|
|
+ }, 'get').then(res => {
|
|
|
+ this.fullscreenLoading = false
|
|
|
+
|
|
|
+ if (res) {
|
|
|
+ let temp = res.scene ? res.scene : res
|
|
|
+ // console.log(temp)
|
|
|
+
|
|
|
+ // console.log(this.scenes)
|
|
|
+ for (var i = 0; i < temp.length; i++) {
|
|
|
+ // temp[i]['expressNum_input'] = "";
|
|
|
+ // temp[i]['userName'] = temp[i]['userName'] ? temp[i]['userName']:"未绑定";
|
|
|
+ let _sceneType = temp[i].sceneType
|
|
|
+ let _sceneTypeName = ''
|
|
|
+ switch (_sceneType) {
|
|
|
+ case 0:
|
|
|
+ _sceneTypeName = '其他'
|
|
|
+ break
|
|
|
+ case 1:
|
|
|
+ _sceneTypeName = '文博'
|
|
|
+ break
|
|
|
+ case 2:
|
|
|
+ _sceneTypeName = '地产'
|
|
|
+ break
|
|
|
+ case 3:
|
|
|
+ _sceneTypeName = '电商'
|
|
|
+ break
|
|
|
+ case 4:
|
|
|
+ _sceneTypeName = '餐饮'
|
|
|
+ break
|
|
|
+ case 5:
|
|
|
+ _sceneTypeName = '家居'
|
|
|
+ break
|
|
|
+ default:
|
|
|
+ _sceneTypeName = ''
|
|
|
+ break
|
|
|
+ }
|
|
|
+ temp[i].sceneType = _sceneTypeName
|
|
|
+ temp[i].scenekey = temp[i].scenekey ? '私密' : '公开'
|
|
|
+ temp[i]['userName'] = temp[i]['userName'] ? temp[i]['userName'] : '未绑定'
|
|
|
+
|
|
|
+ if (temp[i].status === 1) {
|
|
|
+ temp[i].statusBoo = true
|
|
|
+ } else if (temp[i].status === -2) {
|
|
|
+ temp[i].statusBoo = false
|
|
|
+ } else {
|
|
|
+ temp[i].statusBoo = ''
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.scenes = temp
|
|
|
+ this.currentPage = 1
|
|
|
+ this.total = res.sub >= 0 ? res.sub : this.total
|
|
|
+ // console.log(temp)
|
|
|
+ // console.log(this.scenes)
|
|
|
+ } else {
|
|
|
+ // this.total = 0
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ _searchOrderByPage (page) {
|
|
|
+ let status = this.tabIndex === 0 ? null : this.tabIndex
|
|
|
+ let key = this.key_input
|
|
|
+ this.$refs.searchKey.currentValue = this.key_input
|
|
|
+ this.fullscreenLoading = true
|
|
|
+ request['searchManageScene']({
|
|
|
+ key,
|
|
|
+ page: page - 1,
|
|
|
+ status
|
|
|
+ }, 'get').then(res => {
|
|
|
+ this.fullscreenLoading = false
|
|
|
+
|
|
|
+ if (res) {
|
|
|
+ let temp = res.scene ? res.scene : res
|
|
|
+ // console.log(temp)
|
|
|
+
|
|
|
+ // console.log(this.scenes)
|
|
|
+ for (var i = 0; i < temp.length; i++) {
|
|
|
+ // temp[i]['expressNum_input'] = "";
|
|
|
+ let _sceneType = temp[i].sceneType
|
|
|
+ let _sceneTypeName = ''
|
|
|
+ switch (_sceneType) {
|
|
|
+ case 0:
|
|
|
+ _sceneTypeName = '其他'
|
|
|
+ break
|
|
|
+ case 1:
|
|
|
+ _sceneTypeName = '文博'
|
|
|
+ break
|
|
|
+ case 2:
|
|
|
+ _sceneTypeName = '地产'
|
|
|
+ break
|
|
|
+ case 3:
|
|
|
+ _sceneTypeName = '电商'
|
|
|
+ break
|
|
|
+ case 4:
|
|
|
+ _sceneTypeName = '餐饮'
|
|
|
+ break
|
|
|
+ case 5:
|
|
|
+ _sceneTypeName = '家居'
|
|
|
+ break
|
|
|
+ default:
|
|
|
+ _sceneTypeName = ''
|
|
|
+ break
|
|
|
+ }
|
|
|
+ temp[i].sceneType = _sceneTypeName
|
|
|
+ temp[i].scenekey = temp[i].scenekey ? '私密' : '公开'
|
|
|
+ temp[i]['userName'] = temp[i]['userName'] ? temp[i]['userName'] : '未绑定'
|
|
|
+ if (temp[i].status === 1) {
|
|
|
+ temp[i].statusBoo = true
|
|
|
+ } else if (temp[i].status === -2) {
|
|
|
+ temp[i].statusBoo = false
|
|
|
+ } else {
|
|
|
+ temp[i].statusBoo = ''
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.scenes = temp
|
|
|
+
|
|
|
+ // console.log(temp)
|
|
|
+
|
|
|
+ // console.log(this.scenes)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ loadData (row, expandedRows) {
|
|
|
+ // console.log(row, expandedRows)
|
|
|
+ this._getOrderDetail(row)
|
|
|
+ },
|
|
|
+ _getOrderDetail (row) {
|
|
|
+ this.fullscreenLoading = true
|
|
|
+ let { number: orderNum, cameraTypeId, amount, userName, productCount } = row
|
|
|
+
|
|
|
+ request['getOrderDetail']({
|
|
|
+ orderNum,
|
|
|
+ cameraTypeId,
|
|
|
+ amount,
|
|
|
+ userName,
|
|
|
+ productCount
|
|
|
+ }, 'get').then(res => {
|
|
|
+ this.fullscreenLoading = false
|
|
|
+ if (res) {
|
|
|
+ // console.log(row.number)
|
|
|
+ // console.log(res)
|
|
|
+ let tempRes = res
|
|
|
+ let temp = this.orders
|
|
|
+ for (let i = 0; i <= temp.length; i++) {
|
|
|
+ if (row.number === temp[i].number) {
|
|
|
+ temp[i]['product'] = tempRes['product']
|
|
|
+ temp[i]['receive'] = tempRes['receive']
|
|
|
+ // console.log('temp', temp[i].number)
|
|
|
+ // console.log('res', tempRes)
|
|
|
+ this.orders = temp
|
|
|
+ } else {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created () {
|
|
|
+ this._getSceneData(1)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+</script>
|
|
|
+<style lang="css" scoped>
|
|
|
+.scene-management-body {
|
|
|
+ width: 100%;
|
|
|
+ float: left;
|
|
|
+ /* box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ -moz-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);*/
|
|
|
+ /*border: 1px solid #ebeef5;*/
|
|
|
+}
|
|
|
+
|
|
|
+.order_check_row {
|
|
|
+ display: flex;
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info {
|
|
|
+ width: 50%;
|
|
|
+ flex-direction: column;
|
|
|
+ display: flex;
|
|
|
+ padding: 20px;
|
|
|
+ background: #fff;
|
|
|
+}
|
|
|
+
|
|
|
+.order_info {
|
|
|
+ width: 50%;
|
|
|
+ padding: 20px;
|
|
|
+ margin-left: 20px;
|
|
|
+ background: #fff;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info_title {
|
|
|
+ text-align: left;
|
|
|
+ font-weight: 700;
|
|
|
+ margin-bottom: 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info_body {
|
|
|
+ margin-left: 30px;
|
|
|
+ display: flex;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info_body_img {
|
|
|
+ width: 110px;
|
|
|
+ height: 110px;
|
|
|
+ border: 1px solid #ddd;
|
|
|
+}
|
|
|
+
|
|
|
+.product_img {
|
|
|
+ margin: 5px auto;
|
|
|
+ width: 100px;
|
|
|
+ height: 100px;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info_body_info {
|
|
|
+ margin-left: 50px;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info_body_info_item {
|
|
|
+ line-height: 27px;
|
|
|
+ text-align: left;
|
|
|
+}
|
|
|
+
|
|
|
+.product_info_body_info_item_title {
|
|
|
+ width: 100px;
|
|
|
+ display: inline-block;
|
|
|
+ margin-right: 20px;
|
|
|
+ font-weight: 700;
|
|
|
+}
|
|
|
+
|
|
|
+.order_info_title {
|
|
|
+ text-align: left;
|
|
|
+ font-weight: 700;
|
|
|
+ margin-bottom: 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.order_info_body {
|
|
|
+ margin-left: 30px;
|
|
|
+ text-align: left;
|
|
|
+}
|
|
|
+
|
|
|
+.order_info_body_info_item {
|
|
|
+ line-height: 23px;
|
|
|
+ padding: 10px 0;
|
|
|
+ border-bottom: 1px solid #f5f5f5;
|
|
|
+ text-align: left;
|
|
|
+}
|
|
|
+
|
|
|
+.order_info_body_info_item_title {
|
|
|
+ width: 100px;
|
|
|
+ display: inline-block;
|
|
|
+ margin-right: 20px;
|
|
|
+ font-weight: 700;
|
|
|
+}
|
|
|
+
|
|
|
+.order-management-body {
|
|
|
+ width: 100%;
|
|
|
+ margin: 30px 0 20px 0;
|
|
|
+ float: left;
|
|
|
+}
|
|
|
+
|
|
|
+.order-management-inner {
|
|
|
+ box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ -moz-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ /*border: 1px solid #ebeef5;*/
|
|
|
+ padding: 20px;
|
|
|
+ background: #fff;
|
|
|
+ border-radius: 5px;
|
|
|
+}
|
|
|
+
|
|
|
+.base-info {
|
|
|
+ margin: 20px 0;
|
|
|
+}
|
|
|
+
|
|
|
+.scene-management_bottom {
|
|
|
+ box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ -moz-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ -webkit-box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
|
|
+ /*border: 1px solid #ebeef5;*/
|
|
|
+ margin-top: 30px;
|
|
|
+ background: #fff;
|
|
|
+ border-radius: 5px;
|
|
|
+ padding: 20px 0;
|
|
|
+}
|
|
|
+
|
|
|
+.scene-management_tab {
|
|
|
+ margin: 0 0 20px;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+
|
|
|
+.scene-management_tab ul {
|
|
|
+ display: inline-block;
|
|
|
+}
|
|
|
+
|
|
|
+.scene-management_tab li {
|
|
|
+ display: inline-block;
|
|
|
+ cursor: pointer;
|
|
|
+ color: #999;
|
|
|
+ line-height: 1;
|
|
|
+}
|
|
|
+
|
|
|
+.scene-management_tab_li_active {
|
|
|
+ color: #000!important;
|
|
|
+ font-weight: bold;
|
|
|
+}
|
|
|
+
|
|
|
+.order-management-table {
|
|
|
+ margin: 0 20px;
|
|
|
+}
|
|
|
+
|
|
|
+.order-management-pagination {
|
|
|
+ padding: 20px 20px 0;
|
|
|
+ position: relative;
|
|
|
+ text-align: right;
|
|
|
+}
|
|
|
+
|
|
|
+.el-input {
|
|
|
+ width: 220px;
|
|
|
+}
|
|
|
+
|
|
|
+</style>
|
|
|
+<style type="text/css">
|
|
|
+.el-table__expand-icon>i {
|
|
|
+ display: none !important;
|
|
|
+}
|
|
|
+
|
|
|
+.delete_btn span {
|
|
|
+ color: #f56c6c
|
|
|
+}
|
|
|
+
|
|
|
+/*.el-table__expand-icon:after {
|
|
|
+ content: "查看详细"!important;
|
|
|
+ color:#09e1c0;
|
|
|
+ cursor: pointer;
|
|
|
+}*/
|
|
|
+
|
|
|
+</style>
|