Selaa lähdekoodia

Merge branch 'dev' of http://39.106.8.246:3003/zhangyu/PDM into dev

 Conflicts:
	src/components/product/sagaProduct.vue
shaun-sheep 4 vuotta sitten
vanhempi
commit
ba061049f2

+ 7 - 1
src/api/brand/index.js

@@ -2,7 +2,7 @@
  * @Author: zhangyu
  * @Date: 2020-05-13 11:18:18
  * @Info: 
- * @LastEditTime: 2020-05-13 17:49:50
+ * @LastEditTime: 2020-05-18 11:27:42
  */
 import {baseUrl} from '@/api/scan/config'
 import http from '@/api/scan/httpUtil'
@@ -48,4 +48,10 @@ export function brandUpdate(param, success) {
 export function brandQuery(param, success) {
   let url = `${baseUrl}/prod/brand/query`;
   http.postJson(url, param, success)
+}
+
+//根据条件查询统计数量
+export function brandCount(param, success) {
+  let url = `${baseUrl}/prod/brand/count`;
+  http.getJson(url, param, success)
 }

+ 28 - 20
src/components/brand/brandTool.vue

@@ -2,25 +2,24 @@
  * @Author: zhangyu
  * @Date: 2020-05-08 18:37:31
  * @Info:
- * @LastEditTime: 2020-05-13 09:56:16
+ * @LastEditTime: 2020-05-18 14:17:04
  -->
 <template>
   <div class="saga-toolbar-box">
     <div class="saga-toolbar-main">
       <div class="box-name">
         品牌总数
-        <span>100</span>个
+        <span>&nbsp;{{count}}&nbsp;</span>个
       </div>
       <div class="box-name">
         可能重复的品牌
-        <span>3</span>个
+        <span>&nbsp;{{repeatCount}}&nbsp;</span>个
       </div>
       <div class="box-name">
         信息不完整品牌
-        <span>7</span>个
+        <span>&nbsp;{{incompleteCount}}&nbsp;</span>个
       </div>
       <span style="float: right;">
-          <remoteSearch/>
          <el-button type="primary" @click="handBrand">添加品牌</el-button>
       </span>
     </div>
@@ -28,24 +27,33 @@
 </template>
 
 <script>
-import remoteSearch from "../public/remoteSearch";
-  export default {
-    created() {
-    },
-    mounted() {
+import { brandCount } from "@/api/brand"
+export default {
+  created() {
+    this.getBrandCount()
+  },
+  mounted() {
+  },
+  data() {
+    return {
+      count: "",
+      repeatCount: "",
+      incompleteCount: ""
+    }
+  },
+  methods: {
+    getBrandCount() {
+      brandCount({},res => {
+        this.count = res.Count
+        this.repeatCount = res.RepeatCount
+        this.incompleteCount = res.IncompleteCount
+      })
     },
-    components: {remoteSearch},
-    data() {
-      return {
-        value:''
-      }
+    handBrand() {
+      this.$emit("addbrand")
     },
-    methods: {
-      handBrand() {
-        this.$emit("addbrand")
-      },
-    }
   }
+}
 </script>
 <style lang="scss" scoped>
   .saga-toolbar-box {

+ 3 - 3
src/components/brand/sagaBrand.vue

@@ -2,7 +2,7 @@
  * @Author: zhangyu
  * @Date: 2020-05-08 16:06:03
  * @Info:
- * @LastEditTime: 2020-05-14 18:39:53
+ * @LastEditTime: 2020-05-18 10:27:15
  -->
 <template>
   <div class="saga-brand-box" ref="brandBox">
@@ -39,7 +39,7 @@
             <p class="saga-brand-enName" :title="item.BrandName">{{item.BrandName}}</p>
           </div>
           <div class="saga-brand-logo">
-            <el-image style="width: 52px; height: 52px" :src="item.BrandLogo" fit="fill">
+            <el-image style="width: 52px; height: 52px" :src="`/image-service/common/image_get?systemId=dataPlatform&key=${item.BrandLogo}`" fit="fill">
               <div slot="error" class="image-slot">
                 <i class="el-icon-picture-outline"></i>
               </div>
@@ -110,7 +110,7 @@ export default {
         Type: this.sort
       }
       if (this.keyWord) {
-        params.Filters = `BrandCname contain '${this.keyWord}' || BrandName contain '${this.keyWord}'`
+        params.Keyword = this.keyWord
       }
       brandQuery(params, res => {
         this.brandList = res.Content[0]

+ 4 - 3
src/components/business/addBrand.vue

@@ -118,8 +118,8 @@ export default {
         if (valid) {
           let params = {
             Content: [{
-              BrandCname: this.ruleForm.BrandCname,
-              BrandName: this.ruleForm.BrandName,
+              BrandCname: this.ruleForm.BrandCname.replace(/(^\s*)|(\s*$)/g, ""),
+              BrandName: this.ruleForm.BrandName.replace(/(^\s*)|(\s*$)/g, ""),
               BrandLogo: this.ruleForm.BrandLogo,
             }]
           }
@@ -133,6 +133,7 @@ export default {
           } else { //添加品牌
             brandCreate(params, res => {
               this.outerVisible = false
+              this.ruleForm = { BrandCname: '', BrandName: '', BrandLogo: '' }
               this.$emit("refresh")
               this.$message.success('添加成功!')
             })
@@ -159,7 +160,7 @@ export default {
           this.ruleForm.BrandCname = this.brand.BrandCname
           this.ruleForm.BrandName = this.brand.BrandName || ''
           this.ruleForm.BrandLogo = this.brand.BrandLogo || ''
-        } else if (!newName) {
+        } else if (!newName && this.brand.BrandID) {
           this.ruleForm = { BrandCname: '', BrandName: '', BrandLogo: '' }
         }
       },

+ 69 - 45
src/components/product/productTool.vue

@@ -5,65 +5,92 @@
         <selectTree
           :props="props"
           :options="options"
-          :value="valueId"
+          :value="dictionary.dictionaryValue"
           :clearable="isClearable"
           :accordion="isAccordion"
-          @getValue="getValue($event)"
+          @getValue="getValue"
         />
       </template>
 
       <span style="float: right;">
-           <remoteSearch/>
-              <el-button type="primary" @click="handProduct">添加产品</el-button>
-          </span>
+        <remoteSearch/>
+        <el-button type="primary" @click="handProduct">添加产品</el-button>
+      </span>
     </div>
   </div>
 </template>
 
 <script>
-  import selectTree from "../../components/public/selectTree";
-  import remoteSearch from "../public/remoteSearch";
-  import {dictionaryQuery} from "../../api/dictionary"
+import selectTree from "@/components/public/selectTree"
+import remoteSearch from "@/components/public/remoteSearch"
+import { dictionaryQuery } from "@/api/dictionary"
+import { mapGetters, mapMutations } from "vuex"
 
-  export default {
-    components: {selectTree, remoteSearch},
-    props:['showSelect'],
-
-    created() {
+export default {
+  components: {selectTree, remoteSearch},
+  props:['showSelect'],
+  created() {
+    this.getDictionaryQuery()
+  },
+  data() {
+    return {
+      options:[{
+        Code: "common",
+        Name: "标准数据字典"
+      }],
+      isClearable: false,      // 可清空(可选)
+      isAccordion: true,      // 可收起(可选)
+      props: {                // 配置项(必选)
+        value: 'Code',
+        label: 'Name',
+        children: 'Project',
+      },
+    }
+  },
+  computed: {
+    ...mapGetters('layout', ['dictionary']),
+  },
+  methods: {
+    ...mapMutations('layout', ['setDictionary']),
+    getDictionaryQuery() {
       dictionaryQuery({},res=> {
-        this.options = res.Content
-        this.options.unshift({
-          Code: "common",
-          Name: "标准字典"
-        })
-        console.log(res)
+        this.options = [...this.options,...res.Content]
       })
     },
-
-    data() {
-      return {
-        options:[],
-        isClearable: true,      // 可清空(可选)
-        isAccordion: true,      // 可收起(可选)
-        valueId: 'common',            // 初始ID(可选)
-        props: {                // 配置项(必选)
-          value: 'Code',
-          label: 'Name',
-          children: 'Project',
-        },
-      }
+    handProduct() {
+      //跳转添加产品的路由
     },
-    methods: {
-      handProduct() {
-        //跳转添加产品的路由
-      },
-      // 取值
-      getValue(value) {
-        this.valueId = value
-        console.log(value)
-      },
+    // 取值
+    getValue(item, node) {
+      let dictionary = {}
+      if (node.level == 1) {
+        if (item.Code == 'common') {
+          dictionary = {
+            dictionaryValue: item.Code,
+            dictionaryType: item.Code,
+            groupId: '0',
+            projectId: '0'
+          }
+        } else {
+          dictionary = {
+            dictionaryValue: item.Code,
+            dictionaryType: 'group',
+            groupId: item.Code,
+            projectId: '0'
+          }
+        }
+      } else {
+        dictionary = {
+          dictionaryValue: item.Code,
+          dictionaryType: 'project',
+          groupId: node.parent.data.Code,
+          projectId: item.Code
+        }
+      }
+      this.setDictionary(dictionary)
     },
-  }
+  },
+}
 </script>
 <style lang="scss" scoped>
   .saga-toolbar-box {
@@ -83,8 +110,5 @@
       padding-top: 20px;
 
     }
-
-
-
   }
 </style>

+ 110 - 150
src/components/product/sagaProduct.vue

@@ -9,40 +9,15 @@
           trigger="hover"
           placement="right"
           width="960">
-          <div style="margin-bottom: 10px">
-            <div>
-              <img src="../../assets/images/rectangle.png" height="12">
-              <span>某某系统</span></div>
-            <div class="sys">
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-              <span @click="handleDetail">燃气石油气瓶 <b></b></span>
-
-            </div>
+          <div slot="reference" class="classification">
+            <p class="name">给排水专业—WS</p>
+            <p class="introduce">建筑各类生活、景观用水给水排水系统、燃气系统</p>
           </div>
-          <div style="margin-bottom: 10px">
-            <div>
+          <div>
+            <div style="margin-bottom: 10px">
               <img src="../../assets/images/rectangle.png" height="12">
-              <span>某某系统</span></div>
+              <span>某某系统</span>
+            </div>
             <div class="sys">
               <span @click="handleDetail">燃气石油气瓶</span>
               <span @click="handleDetail">燃气石油气瓶</span>
@@ -51,33 +26,37 @@
               <span @click="handleDetail">燃气石油气瓶</span>
               <span @click="handleDetail">燃气石油气瓶</span>
               <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
             </div>
           </div>
-          <div slot="reference" class="classification">
-            <p class="name">给排水专业—WS</p>
-            <p class="introduce">建筑各类生活、景观用水给水排水系统、燃气系统</p>
-          </div>
         </el-popover>
         <el-popover
           trigger="hover"
           placement="right"
           width="960">
-          <div style="margin-bottom: 10px">
-            <img src="../../assets/images/rectangle.png" height="12">
-            <span>某某系统</span></div>
-          <div class="sys">
-            <span @click="handleDetail">燃气石油气瓶</span>
-            <span @click="handleDetail">燃气石油气瓶</span>
-            <span @click="handleDetail">燃气石油气瓶</span>
-            <span @click="handleDetail">燃气石油气瓶</span>
-            <span @click="handleDetail">燃气石油气瓶</span>
-            <span @click="handleDetail">燃气石油气瓶</span>
-            <span @click="handleDetail">燃气石油气瓶</span>
-          </div>
           <div slot="reference" class="classification">
             <p class="name">给排水专业—WS</p>
             <p class="introduce">建筑各类生活、景观用水给水排水系统、燃气系统</p>
           </div>
+          <div>
+            <div style="margin-bottom: 10px">
+              <img src="../../assets/images/rectangle.png" height="12">
+              <span>某某系统</span>
+            </div>
+            <div class="sys">
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+              <span @click="handleDetail">燃气石油气瓶</span>
+            </div>
+          </div>
         </el-popover>
 
       </div>
@@ -89,126 +68,107 @@
 </template>
 
 <script>
-  import sagaBrand from "@/components/brand/sagaBrand"
-
-  export default {
-    name: "productBrand",
-    components: {
-      sagaBrand,
-    },
-    methods: {
-      handleDetail() {
-        this.$router.push({path: 'product/productDetail', query: {id: '1', name: '2', productId: '3'}})
-      }
+import sagaBrand from "@/components/brand/sagaBrand"
+export default {
+  name: "productBrand",
+  components: {
+    sagaBrand,
+  },
+  methods:{
+    handleDetail() {
+      this.$router.push({path: 'product/productDetail', query: {id: '1', name: '2', productId: '3'}})
     }
   }
+}
 </script>
 
 <style scoped lang="less">
-  @bgc: #fff;
-  .saga-product {
-    /*width: 1200px;*/
-    /*margin: 20px auto 0 auto;*/
-    margin-top: 90px;
-
-    display: flex;
-
-    .sidebar {
-      /*margin-top: 20px;*/
-      width: 200px;
+@bgc: #fff;
+.saga-product {
+  /*width: 1200px;*/
+  /*margin: 20px auto 0 auto;*/
+  margin-top: 90px;
+  display: flex;
+  .sidebar {
+    /*margin-top: 20px;*/
+    width: 200px;
+    background: @bgc;
+    display: inline-block;
+    .title {
+      height: 40px;
+      line-height: 40px;
+      background: #CBDFFC;
+      color: #3A8DDE;
+      padding-left: 10px;
+    }
+    .product-classification {
       background: @bgc;
-      display: inline-block;
-
-      .title {
-        height: 40px;
-        line-height: 40px;
-        background: #CBDFFC;
-        color: #3A8DDE;
-        padding-left: 10px;
+      /*margin-top: -19px;*/
+      .classification {
+        cursor: pointer;
+        padding: 20px;
+        border-bottom: 1px solid #EFF0F1;
+        .name {
+          color: #1F2429;
+          margin-bottom: 10px;
+        }
+        .introduce {
+          color: #8D9399;
+          line-height: 20px;
+        }
       }
-
-      .product-classification {
-        background: @bgc;
-        /*margin-top: -19px;*/
-
-        .classification {
-          cursor: pointer;
-          padding: 20px;
-          border-bottom: 1px solid #EFF0F1;
-
-          .name {
-            color: #1F2429;
-            margin-bottom: 10px;
-          }
-
-          .introduce {
-            color: #8D9399;
-            line-height: 20px;
-          }
+      .classification:hover {
+        background: #E1F2FF;
+        .name {
+          color: #3A8DDE;
         }
-
-        .classification:hover {
-          background: #E1F2FF;
-
-          .name {
-            color: #3A8DDE;
-          }
-
-          .introduce {
-            color: #3A8DDE;
-          }
+        .introduce {
+          color: #3A8DDE;
         }
-
-        .sys {
-          padding: 10px;
-
-          span {
-            margin: 0 20px;
-            color: #8D9399;
-            display: inline-block;
-          }
+      }
+      .sys {
+        padding: 10px;
+        span {
+          margin: 0 20px;
+          color: #8D9399;
+          display: inline-block;
         }
-
-
       }
     }
-
-    .brand {
-      width: 980px;
-      margin-left: 20px;
-      background: @bgc;
-      flex-grow: 1;
-    }
   }
+  .brand {
+    width: 980px;
+    margin-left: 20px;
+    background: @bgc;
+    flex-grow: 1;
+  }
+}
 </style>
 <style lang="less">
-  .el-popover {
-    p:first-child {
-      /*border-left: 4px solid #3A8DDE;*/
-      color: #1F2329;
-      text-indent: 8px;
-    }
-
-    .sys {
-      margin-left: 6px;
-      span {
-        /*text-indent: 6px;*/
+.el-popover {
+  p:first-child {
+    /*border-left: 4px solid #3A8DDE;*/
+    color: #1F2329;
+    text-indent: 8px;
+  }
+  .sys {
+    margin-left: 6px;
+    span {
+      /*text-indent: 6px;*/
+      display: inline-block;
+      cursor: pointer;
+      color: #8D9399;
+      line-height: 25px;
+      margin-right: 40px;
+      b {
         display: inline-block;
-        cursor: pointer;
-        color: #8D9399;
-        line-height: 25px;
-        margin-right: 40px;
-
-        b {
-          display: inline-block;
-          width: 20px;
-        }
-
+        width: 20px;
       }
 
-      span:hover {
-        color: #3A8DDE
-      }
+    }
+    span:hover {
+      color: #3A8DDE
     }
   }
+}
 </style>

+ 73 - 76
src/components/public/selectTree.vue

@@ -18,92 +18,89 @@
 </template>
 
 <script>
-  export default {
-    name: "select-tree",
+export default {
+  name: "select-tree",
+  props:{
+    // 配置项
     props:{
-      // 配置项
-      props:{
-        type: Object,
-        default: {
-          value:'Code',             // ID字段名
-          label: 'Name',         // 显示名称
-          children: 'Project'    // 子级字段名
-        }
-      },
+      type: Object,
+      default: {
+        value:'Code',             // ID字段名
+        label: 'Name',         // 显示名称
+        children: 'Project'    // 子级字段名
+      }
+    },
 
-      // 选项列表数据(树形结构的对象数组)
-      options:{ type: Array, default: [] },
+    // 选项列表数据(树形结构的对象数组)
+    options:{ type: Array, default: [] },
 
-      // 初始值
-      value:{ type: String, default: null },
+    // 初始值
+    value:{ type: String, default: null },
 
-      // 可清空选项
-      clearable:{ type:Boolean, default: true },
+    // 可清空选项
+    clearable:{ type:Boolean, default: true },
 
-      // 自动收起
-      accordion:{ type:Boolean, default: false }
-    },
-    data() {
-      return {
-        valueId: null,
-        valueTitle:'',
-        defaultExpandedKey:[]
+    // 自动收起
+    accordion:{ type:Boolean, default: false }
+  },
+  data() {
+    return {
+      valueId: null,
+      valueTitle:'',
+      defaultExpandedKey:[]
+    }
+  },
+  mounted(){
+    this.valueId = this.value// 初始值
+    this.initHandle()
+  },
+  methods: {
+    // 初始化值
+    initHandle(){
+      if(this.valueId){
+        this.valueTitle = this.$refs.selectTree.getNode(this.valueId).data[this.props.label]     //初始化显示
+        this.$refs.selectTree.setCurrentKey(this.valueId)       // 设置默认选中
+        this.defaultExpandedKey = [this.valueId]      // 设置默认展开
       }
+      this.initScroll()
     },
-    mounted(){
-      this.valueId = this.value// 初始值
-        this.initHandle()
+    // 初始化滚动条
+    initScroll(){
+      this.$nextTick(()=>{
+        let scrollWrap = document.querySelectorAll('.el-scrollbar .el-select-dropdown__wrap')[0]
+        let scrollBar = document.querySelectorAll('.el-scrollbar .el-scrollbar__bar')
+        scrollWrap.style.cssText = 'margin: 0px; max-height: none; overflow: hidden;'
+        scrollBar.forEach(ele => ele.style.width = 0)
+      })
     },
-    methods: {
-      // 初始化值
-      initHandle(){
-        if(this.valueId){
-            this.valueTitle = this.$refs.selectTree.getNode(this.valueId).data[this.props.label]     //初始化显示
-            this.$refs.selectTree.setCurrentKey(this.valueId)       // 设置默认选中
-            this.defaultExpandedKey = [this.valueId]      // 设置默认展开
-
-
-        }
-        this.initScroll()
-      },
-      // 初始化滚动条
-      initScroll(){
-        this.$nextTick(()=>{
-          let scrollWrap = document.querySelectorAll('.el-scrollbar .el-select-dropdown__wrap')[0]
-          let scrollBar = document.querySelectorAll('.el-scrollbar .el-scrollbar__bar')
-          scrollWrap.style.cssText = 'margin: 0px; max-height: none; overflow: hidden;'
-          scrollBar.forEach(ele => ele.style.width = 0)
-        })
-      },
-      // 切换选项
-      handleNodeClick(node){
-        this.valueTitle = node[this.props.label]
-        this.valueId = node[this.props.value]
-        this.$emit('getValue',this.valueId)
-        console.log('子组件',this.valueId)
-        this.defaultExpandedKey = []
-      },
-      // 清除选中
-      clearHandle(){
-        this.valueTitle = ''
-        this.valueId = null
-        this.defaultExpandedKey = []
-        this.clearSelected()
-        this.$emit('getValue',null)
-      },
-      // 清空选中样式
-      clearSelected(){
-        let allNode = document.querySelectorAll('#tree-option .el-tree-node')
-        allNode.forEach((element)=>element.classList.remove('is-current'))
-      }
+    // 切换选项
+    handleNodeClick(item, node, el){
+      this.valueTitle = item[this.props.label]
+      this.valueId = item[this.props.value]
+      this.$emit('getValue', item, node)
+      this.defaultExpandedKey = []
     },
-    watch: {
-      value(){
-        this.valueId = this.value
-        this.initHandle()
-      }
+    // 清除选中
+    clearHandle(){
+      this.valueTitle = ''
+      this.valueId = null
+      this.defaultExpandedKey = []
+      this.clearSelected()
+      this.$emit('getValue',null)
     },
-  }
+    // 清空选中样式
+    clearSelected(){
+      let allNode = document.querySelectorAll('#tree-option .el-tree-node')
+      allNode.forEach((element)=>element.classList.remove('is-current'))
+    }
+  },
+  watch: {
+    value(){
+      this.valueId = this.value
+      this.initHandle()
+    }
+  },
+}
 </script>
 
 <style scoped>

+ 13 - 54
src/store/modules/layout-store.js

@@ -3,53 +3,34 @@ import storage from '@/utils/storage'
 import lStorage from '@/utils/localStorage'
 
 const KEY_MENU_SELECTED = 'menu_selected'
-const KEY_PROJECT_SELECTED = 'global_project_selected'
 const KEY_PAGE_BRANDCRUMB = 'page_brandcrumb'
 
 export default {
   namespaced: true,
     state: {
-      sidebarSelected: '', // sidebar选中的选项
       userInfo: { username: 'admin' }, //null,
+      userId: "", //用户id
       permissions: {
         "system:role:delete": true,
         "system:role:create": true,
         "system:role:query": true,
         "system:role:setOpts": true
       },
-      projectId: '',
-      projects: [],
+      dictionary: {
+        dictionaryValue: 'common',
+        dictionaryType: 'common',
+        groupId: '0',
+        projectId: '0',
+      },
+      sidebarSelected: '', // sidebar选中的选项
       breadcrumb: [],
-      uploaderList: [], //当前上传文件列表
-      secret: "", //项目密码
-      userId: "", //用户id
     },
     getters: {
-      secret: state => state.secret,
       userId: state => state.userId,
-      sidebarSelected: state => {
-        // if (!state.pageSidebarSelected) {
-        //     let menu = storage.get(KEY_MENU_SELECTED)
-        //     if (menu) {
-        //         state.pageSidebarSelected = menu
-        //     }
-        // }
-        // return state.pageSidebarSelected
-        return state.sidebarSelected
-      },
       userInfo: state => state.userInfo,
       permissions: state => state.permissions,
-      projects: state => state.projects,
-      uploaderList: state => state.uploaderList,
-      projectId: state => {
-        if (!state.projectId) {
-          let pid = storage.get(KEY_PROJECT_SELECTED)
-          if (pid) {
-            state.projectId = pid
-          }
-        }
-        return state.projectId
-      },
+      dictionary: state => state.dictionary,
+      sidebarSelected: state => state.sidebarSelected,
       breadcrumb: state => {
         if (!state.breadcrumb) {
           let arr = storage.get(KEY_PAGE_BRANDCRUMB)
@@ -61,36 +42,14 @@ export default {
       }
     },
     mutations: {
+      setDictionary: (state, val) => {
+        state.dictionary = val
+      },
       setSidebarSelected: (state, val) => {
         state.sidebarSelected = val
         storage.set(KEY_MENU_SELECTED, val)
         lStorage.set('screen_data', {path: val, data: {}})
       },
-      setprojectId: (state, val) => {
-        lStorage.remove('cacheInfo') //待删除(删除用户浏览器无用缓存)
-        let cacheInfo = lStorage.get('historyInfo') ? lStorage.get('historyInfo') : {}
-        state.projectId = val
-        localStorage.setItem('projectId', val)
-        if (cacheInfo[state.userInfo.userName]) {
-          // cacheInfo[state.userInfo.userName].projectId = val
-          cacheInfo[state.userInfo.userName] = [...new Set([val, ...cacheInfo[state.userInfo.userName]])].slice(0,3)
-          lStorage.set('historyInfo', cacheInfo)
-        } else {
-          cacheInfo[state.userInfo.userName] = [val]
-          lStorage.set('historyInfo', cacheInfo)
-        }
-        storage.set(KEY_PROJECT_SELECTED, val)
-        state.projects.map((item) => {
-          if (item.id == val) {
-            state.secret = item.pwd
-            localStorage.setItem('secret', item.pwd)
-          }
-        })
-      },
-      setUploaderList: (state, val) => {
-        state.uploaderList = val ? val : []
-      },
-
     },
   actions: {
     loadUserInfo({state}) {

+ 3 - 2
src/views/brand/index.vue

@@ -2,11 +2,11 @@
  * @Author: zhangyu
  * @Date: 2020-05-08 15:55:30
  * @Info:
- * @LastEditTime: 2020-05-14 10:44:59
+ * @LastEditTime: 2020-05-18 11:25:20
  -->
 <template>
   <div>
-    <saga-toolbar @addbrand="handleAddBrand"></saga-toolbar>
+    <saga-toolbar ref="toolBar" @addbrand="handleAddBrand"></saga-toolbar>
     <div style="margin-top: 90px;">
       <saga-brand ref="sagaBrand" pageType="brand" @updatebrand="handleAddBrand"></saga-brand>
     </div>
@@ -44,6 +44,7 @@ export default {
     brandListRefresh() { //刷新品牌列表
       //清空搜索关键字
       this.$refs.sagaBrand.keyWord = ""
+      this.$refs.toolBar.getBrandCount()
       this.$refs.sagaBrand.getBrandData()
     },
   }