|
@@ -1,5 +1,5 @@
|
|
|
<template>
|
|
|
- <div class="headers" :style="{backgroundColor: color}">
|
|
|
+ <div class="headers" :style="{ backgroundColor: color }">
|
|
|
<el-row :gutter="20" style="height: 100%">
|
|
|
<el-col :span="1" style="height: 100%">
|
|
|
<div class="logo"></div>
|
|
@@ -12,7 +12,12 @@
|
|
|
<div class="user" style="width: 180px;">
|
|
|
<div>
|
|
|
<el-select @change="onChange" size="mini" v-model="farmId">
|
|
|
- <el-option v-for="item in getFarmList" :key="item.id" :label="item.farmName" :value="item.id"></el-option>
|
|
|
+ <el-option
|
|
|
+ v-for="item in getFarmList"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.farmName"
|
|
|
+ :value="item.id"
|
|
|
+ ></el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -20,13 +25,14 @@
|
|
|
<div class="user" style="width: 250px;">
|
|
|
<div>
|
|
|
<el-switch
|
|
|
- style="display: block"
|
|
|
- v-model="$store.state.mode"
|
|
|
- active-color="#13ce66"
|
|
|
- inactive-color="#ff4949"
|
|
|
- active-text="多级导航"
|
|
|
- inactive-text="折叠导航"
|
|
|
- @change="changeMode">
|
|
|
+ style="display: block"
|
|
|
+ v-model="$store.state.mode"
|
|
|
+ active-color="#13ce66"
|
|
|
+ inactive-color="#ff4949"
|
|
|
+ active-text="多级导航"
|
|
|
+ inactive-text="折叠导航"
|
|
|
+ @change="changeMode"
|
|
|
+ >
|
|
|
</el-switch>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -36,24 +42,21 @@
|
|
|
<i class="el-icon-user-solid" style="font-size: 28px"></i>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-popover
|
|
|
- placement="bottom"
|
|
|
- width="400"
|
|
|
- trigger="hover">
|
|
|
- <div style="padding: 10px">
|
|
|
- <div style="width: 100%;">
|
|
|
- <span style="color: #BBBBBB;">账户信息</span>
|
|
|
- <span class="user-right">账户设置</span>
|
|
|
- </div>
|
|
|
- <el-divider></el-divider>
|
|
|
-<!-- <ul>-->
|
|
|
-<!-- <li>职位: <span class="user-color">厂长</span></li>-->
|
|
|
-<!-- <li>本次登录: <span class="user-color">厂长</span></li>-->
|
|
|
-<!-- <li>本次登录: <span class="user-color">厂长</span></li>-->
|
|
|
-<!-- <li>上次登录: <span class="user-color">厂长</span></li>-->
|
|
|
-<!-- </ul>-->
|
|
|
+ <el-popover placement="bottom" width="400" trigger="hover">
|
|
|
+ <div style="padding: 10px">
|
|
|
+ <div style="width: 100%;">
|
|
|
+ <span style="color: #BBBBBB;">账户信息</span>
|
|
|
+ <span class="user-right">账户设置</span>
|
|
|
</div>
|
|
|
- <span slot="reference">{{userName}}</span>
|
|
|
+ <el-divider></el-divider>
|
|
|
+ <!-- <ul>-->
|
|
|
+ <!-- <li>职位: <span class="user-color">厂长</span></li>-->
|
|
|
+ <!-- <li>本次登录: <span class="user-color">厂长</span></li>-->
|
|
|
+ <!-- <li>本次登录: <span class="user-color">厂长</span></li>-->
|
|
|
+ <!-- <li>上次登录: <span class="user-color">厂长</span></li>-->
|
|
|
+ <!-- </ul>-->
|
|
|
+ </div>
|
|
|
+ <span slot="reference">{{ userName }}</span>
|
|
|
</el-popover>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -68,15 +71,12 @@
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
|
<div class="user">
|
|
|
<div style="width: 100%; text-align: center">
|
|
|
- <el-popover
|
|
|
- placement="bottom"
|
|
|
- width="270"
|
|
|
- trigger="hover">
|
|
|
+ <el-popover placement="bottom" width="270" trigger="hover">
|
|
|
<div class="color_flex">
|
|
|
<chrome-picker :value="color" @input="cut"></chrome-picker>
|
|
|
-<!-- <div v-for="item in colorList" :style="{backgroundColor: item.color}" :key="item.id" class="box" @click="cut(item.color)">-->
|
|
|
-<!-- <span>点击换肤</span>-->
|
|
|
-<!-- </div>-->
|
|
|
+ <!-- <div v-for="item in colorList" :style="{backgroundColor: item.color}" :key="item.id" class="box" @click="cut(item.color)">-->
|
|
|
+ <!-- <span>点击换肤</span>-->
|
|
|
+ <!-- </div>-->
|
|
|
</div>
|
|
|
<i slot="reference" class="colour"></i>
|
|
|
</el-popover>
|
|
@@ -95,100 +95,105 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { mapState, mapActions } from 'vuex'
|
|
|
-import { findUpdate, getFarmId } from '../utils/api';
|
|
|
-import { Chrome } from 'vue-color';
|
|
|
+import { mapState, mapActions } from "vuex";
|
|
|
+import { findUpdate, getFarmId } from "../utils/api";
|
|
|
+import { Chrome } from "vue-color";
|
|
|
import { Debounce } from "../utils";
|
|
|
|
|
|
export default {
|
|
|
name: "HeaderElement",
|
|
|
computed: {
|
|
|
- ...mapState(['color', 'farmList', 'farmId', 'userName'])
|
|
|
+ ...mapState(["color", "farmList", "farmId", "userName"]),
|
|
|
},
|
|
|
components: {
|
|
|
// 'slider-picker': Slider,
|
|
|
- 'chrome-picker': Chrome
|
|
|
+ "chrome-picker": Chrome,
|
|
|
},
|
|
|
watch: {
|
|
|
farmList: {
|
|
|
handler(newVal) {
|
|
|
- if(newVal.length > 0) {
|
|
|
- this.getFarmList = []
|
|
|
- newVal.forEach(item => {
|
|
|
- if(item.rowStatus) {
|
|
|
- this.getFarmList.push(item)
|
|
|
- }
|
|
|
- })
|
|
|
+ if (newVal.length > 0) {
|
|
|
+ this.getFarmList = [];
|
|
|
+ newVal.forEach((item) => {
|
|
|
+ // if (item.rowStatus) {
|
|
|
+ this.getFarmList.push(item);
|
|
|
+ // }
|
|
|
+ });
|
|
|
}
|
|
|
},
|
|
|
- deep: true
|
|
|
- }
|
|
|
+ deep: true,
|
|
|
+ },
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
getFarmList: [],
|
|
|
- }
|
|
|
+ };
|
|
|
},
|
|
|
methods: {
|
|
|
- ...mapActions(['setModeAsync', 'setColorAsync', 'GetFarm', 'setFarmIdAsync']),
|
|
|
+ ...mapActions([
|
|
|
+ "setModeAsync",
|
|
|
+ "setColorAsync",
|
|
|
+ "GetFarm",
|
|
|
+ "setFarmIdAsync",
|
|
|
+ ]),
|
|
|
cut: Debounce(function(data) {
|
|
|
- this.setColorAsync(data.hex)
|
|
|
+ this.setColorAsync(data.hex);
|
|
|
let params = {
|
|
|
- id: localStorage.getItem('UserId'),
|
|
|
- color: data.hex
|
|
|
- }
|
|
|
- findUpdate(params).then(res => {
|
|
|
- console.log(res)
|
|
|
- })
|
|
|
+ id: localStorage.getItem("UserId"),
|
|
|
+ color: data.hex,
|
|
|
+ };
|
|
|
+ findUpdate(params).then((res) => {
|
|
|
+ console.log(res);
|
|
|
+ });
|
|
|
}),
|
|
|
changeMode(val) {
|
|
|
let params = {
|
|
|
- id: localStorage.getItem('UserId'),
|
|
|
- mode: val
|
|
|
- }
|
|
|
- findUpdate(params).then(res => {
|
|
|
- console.log(res)
|
|
|
- })
|
|
|
- this.setModeAsync(val)
|
|
|
+ id: localStorage.getItem("UserId"),
|
|
|
+ mode: val,
|
|
|
+ };
|
|
|
+ findUpdate(params).then((res) => {
|
|
|
+ console.log(res);
|
|
|
+ });
|
|
|
+ this.setModeAsync(val);
|
|
|
},
|
|
|
logout() {
|
|
|
- localStorage.removeItem('UserName');
|
|
|
- localStorage.removeItem('accessToken');
|
|
|
- localStorage.removeItem('UserId');
|
|
|
- localStorage.removeItem('lastFarmId')
|
|
|
- this.$router.replace('/login');
|
|
|
+ localStorage.removeItem("UserName");
|
|
|
+ localStorage.removeItem("accessToken");
|
|
|
+ localStorage.removeItem("UserId");
|
|
|
+ localStorage.removeItem("lastFarmId");
|
|
|
+ this.$router.replace("/login");
|
|
|
},
|
|
|
// 拿到farmid
|
|
|
init() {
|
|
|
- getFarmId().then(res => {
|
|
|
- if(res.code === 10000) {
|
|
|
+ getFarmId().then((res) => {
|
|
|
+ if (res.code === 10000) {
|
|
|
this.setFarmIdAsync(res.data);
|
|
|
- localStorage.setItem('lastFarmId', res.data);
|
|
|
+ localStorage.setItem("lastFarmId", res.data);
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
},
|
|
|
// 选择牧场
|
|
|
onChange(val) {
|
|
|
let params = {
|
|
|
- id: localStorage.getItem('UserId'),
|
|
|
- lastFarmId: val
|
|
|
- }
|
|
|
- localStorage.setItem('lastFarmId', val)
|
|
|
- findUpdate(params).then(res => {
|
|
|
- console.log(res)
|
|
|
- })
|
|
|
+ id: localStorage.getItem("UserId"),
|
|
|
+ lastFarmId: val,
|
|
|
+ };
|
|
|
+ localStorage.setItem("lastFarmId", val);
|
|
|
+ findUpdate(params).then((res) => {
|
|
|
+ console.log(res);
|
|
|
+ });
|
|
|
this.setFarmIdAsync(val);
|
|
|
setTimeout(() => {
|
|
|
location.reload();
|
|
|
- }, 100)
|
|
|
+ }, 100);
|
|
|
},
|
|
|
},
|
|
|
mounted() {
|
|
|
this.init();
|
|
|
- this.GetFarm()
|
|
|
- console.log(this.farmId)
|
|
|
- }
|
|
|
-}
|
|
|
+ this.GetFarm();
|
|
|
+ console.log(this.farmId);
|
|
|
+ },
|
|
|
+};
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
@@ -241,14 +246,14 @@ p {
|
|
|
float: right;
|
|
|
margin-right: 10px;
|
|
|
cursor: pointer;
|
|
|
- color: #31C3A6;
|
|
|
+ color: #31c3a6;
|
|
|
}
|
|
|
li {
|
|
|
margin-bottom: 10px;
|
|
|
- color: #BBBBBB;
|
|
|
+ color: #bbbbbb;
|
|
|
}
|
|
|
.user-color {
|
|
|
- color: #000
|
|
|
+ color: #000;
|
|
|
}
|
|
|
.colour {
|
|
|
display: inline-block;
|
|
@@ -269,7 +274,7 @@ li {
|
|
|
line-height: 80px;
|
|
|
}
|
|
|
.box:hover {
|
|
|
- content: '点击换肤';
|
|
|
+ content: "点击换肤";
|
|
|
}
|
|
|
.guanbi {
|
|
|
display: inline-block;
|