Parcourir la source

修改菜单、数据字典配置。

tomatozq il y a 5 ans
Parent
commit
93a50ef556

+ 2 - 2
.env.development

@@ -1,2 +1,2 @@
-#VUE_APP_BACKEND_URL=http://127.0.0.1:8080/smart-community-server
-VUE_APP_BACKEND_URL=http://zldb.xiaoxinda.com:8088/smart-community-server
+VUE_APP_BACKEND_URL=http://127.0.0.1:8080/smart-community-server
+#VUE_APP_BACKEND_URL=http://zldb.xiaoxinda.com:8088/smart-community-server

+ 0 - 11
src/routers/modules/sys.js

@@ -54,17 +54,6 @@ var routers = [
                         roles: ["admin"]
                 }
         },
-        {
-                path: '/sys/dataDictionary/test/list',
-                name: 'sys-dataDictionary-test-list',
-                // route level code-splitting
-                // this generates a separate chunk (about.[hash].js) for this route
-                // which is lazy-loaded when the route is visited.
-                component: () => import('@/views/sys/dataDictionary-test-list.vue'),
-                meta: {
-                        roles: ["admin"]
-                }
-        },
         {
                 path: '/base/terminalInfo/list',
                 name: 'base-terminalInfo-list',

+ 2 - 1
src/views/base/rechange-list.vue

@@ -132,6 +132,7 @@
       <el-table-column
         label="开关"
         width="80"
+        fixed="right"
       >
         <template slot-scope="{row}">
           <el-switch
@@ -143,7 +144,7 @@
           </el-switch>
         </template>
       </el-table-column>
-      <el-table-column label="操作">
+      <el-table-column label="操作" fixed="right">
         <template slot-scope="{row}">
           <el-button size="mini" type="warning" @click="toRechange(row)">线下充值</el-button>
           <!-- <el-button size="mini" type="success" @click="powerSwitch(row,1)">打开电源</el-button>

+ 33 - 13
src/views/sys/dataDictionary-detail.vue

@@ -37,13 +37,6 @@
             :remote-method="queryMenu"
             style="width:300px"
           >
-            <template v-if="formModel.parentId!=null">
-              <el-option
-                :key="formModel.parentId"
-                :label="formModel.parentName"
-                :value="formModel.parentId"
-              ></el-option>
-            </template>
             <el-option
               v-for="dataDictionary in dataDictionaryListFilter"
               :key="dataDictionary.id"
@@ -65,7 +58,7 @@ import Constant from "@/constant";
 import dataDictionaryApi from "@/api/sys/dataDictionary";
 
 export default {
-  props: ["dictId", "modalTitle"],
+  props: ["dictId", "modalTitle","catalog"],
   data() {
     var validateValue = (rule, value, callback) => {
         if(this.formModel.dataType == '2' && value==='') {
@@ -99,10 +92,19 @@ export default {
   },
   computed: {
     dataDictionaryListFilter() {
-      var self = this;
-      return self.dataDictionaryList.filter(dataDictionary => {
-        return dataDictionary.id;
+      var list = [];
+
+      var map = {};
+
+      this.dataDictionaryList.forEach((item)=>{
+        map[item.id] = item;
       });
+
+      for(var key in map){
+        list.push(map[key]);
+      }
+
+      return list;
     }
   },
   methods: {
@@ -160,10 +162,12 @@ export default {
       });
     }
   },
-  mounted: function() {
+  async mounted() {
     var self = this;
     self.loading = true;
-    this.queryMenu("");
+    
+    await this.queryMenu("");
+
     (function() {
       if (self.dictId.length == 0) {
         return dataDictionaryApi.create();
@@ -177,6 +181,22 @@ export default {
 
         if (jsonData.result) {
           self.formModel = jsonData.data;
+
+          // 增加初始值
+          if(jsonData.data.parentId!=null){
+            self.dataDictionaryList.push({
+              id: jsonData.data.parentId,
+              name: jsonData.data.parentName
+            });
+          }
+          else if(this.catalog!=null && this.catalog.id!=null){
+            self.formModel.parentId = this.catalog.id; 
+
+            self.dataDictionaryList.push({
+              id: this.catalog.id,
+              name: this.catalog.name
+            });
+          }
         } else {
           self.$message.error(jsonData.message + "");
         }

+ 69 - 4
src/views/sys/dataDictionary-list.vue

@@ -17,6 +17,23 @@
       <el-form-item label="名称" prop="name">
         <el-input type="text" size="mini" v-model="queryModel.name"></el-input>
       </el-form-item>
+      <el-form-item label="所属目录" prop="parentId">
+        <el-select
+            size="mini"
+            v-model="queryModel.parentId"
+            filterable
+            remote
+            placeholder="请输入关键词"
+            :remote-method="queryMenu"
+          >
+            <el-option
+              v-for="item in queryMenuResult"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            ></el-option>
+        </el-select>
+      </el-form-item>
       <el-form-item>
         <el-button
           type="primary"
@@ -79,8 +96,22 @@
       ></el-table-column>
       <el-table-column label="操作">
         <template slot-scope="{row}">
-          <el-button size="mini" type="warning" @click="handleEdit(row)">编辑</el-button>
-          <el-button size="mini" type="danger" @click="handleDelete(row)">删除</el-button>
+          <el-row v-if="row.dataType=='1'">
+            <el-col :span="12">
+              <el-button size="mini" type="text" @click="showData(row)">查看数据</el-button>
+            </el-col>
+            <el-col :span="12">
+              <el-button size="mini" type="text" @click="addData(row)">新增数据</el-button>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="12">
+              <el-button size="mini" type="text" @click="handleEdit(row)">编辑</el-button>
+            </el-col>
+            <el-col :span="12">
+              <el-button size="mini" type="text" @click="handleDelete(row)">删除</el-button>
+            </el-col>
+          </el-row>
         </template>
       </el-table-column>
     </el-table>
@@ -95,6 +126,7 @@
     <dataDictionary-detail
       v-if="showModal"
       :dictId="dictId"
+      :catalog="catalog"
       :modalTitle="modalTitle"
       @close="onDetailModalClose"
     ></dataDictionary-detail>
@@ -138,10 +170,27 @@ export default {
       multipleSelection: [],
       showModal: false,
       modalTitle: "",
-      businessKey: ""
+      businessKey: "",
+      queryMenuResult: []
     };
   },
   methods: {
+    queryMenu(keywords) {
+      var formData = new FormData();
+      formData.append("keywords", keywords);
+      formData.append("dataType", "1");
+      formData.append("limit", 10);
+
+      return dataDictionaryApi.query(formData).then(response => {
+        var jsonData = response.data;
+
+        if (jsonData.result) {
+          this.queryMenuResult = jsonData.data;
+        } else {
+          this.$message.error(jsonData.message + "");
+        }
+      });
+    },
     changePage(pageIndex) {
       var self = this;
 
@@ -153,6 +202,7 @@ export default {
       formData.append("pageIndex", self.pageIndex);
       formData.append("pageSize", self.pageSize);
       formData.append("name", self.queryModel.name);
+      formData.append("parentId", self.queryModel.parentId);
 
       if (this.field != null) {
         formData.append("field", this.field);
@@ -193,6 +243,7 @@ export default {
     },
     handleReset(name) {
       this.$refs[name].resetFields();
+      this.queryMenu('');
     },
     handleAdd() {
       this.modalTitle = "新增";
@@ -262,10 +313,24 @@ export default {
       if (refreshed) {
         this.changePage(this.pageIndex);
       }
-    }
+    },
+    addData(row) {
+      this.modalTitle = "新增";
+      this.dictId = "";
+      this.catalog = row;
+      this.showModal = true;
+    },
+    showData(row){
+        this.queryMenuResult.length=0; //清空
+        this.queryMenuResult.push(row);
+
+        this.queryModel.parentId = row.id;
+        this.changePage(1);
+    },
   },
   mounted: function() {
     this.changePage(1);
+    this.queryMenu('');
   },
   components: {
     "dataDictionary-detail": DataDictionaryDetail

+ 0 - 183
src/views/sys/dataDictionary-test-detail.vue

@@ -1,183 +0,0 @@
-<style scoped>
-.user-panel {
-  margin: 10px auto;
-}
-</style>
-<template>
-  <el-dialog
-    :visible.sync="showDialog"
-    :title="modalTitle"
-    :modal-append-to-body="false"
-    style="text-align:left;"
-    @close="closeDialog"
-  >
-    <div class="user-panel" v-loading="loading">
-      <el-form ref="form" :model="formModel" :rules="ruleValidate" :label-width="'100px'">
-        <el-form-item label="名称" prop="name">
-          <el-input v-model="formModel.name" placeholder="请输入名称" style="width:300px"></el-input>
-        </el-form-item>
-        <el-form-item label="数值" prop="value">
-          <el-input v-model="formModel.value" placeholder="请输入数值" style="width:300px"></el-input>
-        </el-form-item>
-        <el-form-item label="显示序号" prop="sortNo">
-          <el-input v-model="formModel.sortNo" placeholder="请输入显示序号" style="width:300px"></el-input>
-        </el-form-item>
-        <el-form-item label="所属目录" prop="parentId">
-          <el-select
-            v-model="formModel.parentId"
-            filterable
-            remote
-            placeholder="请输入关键词"
-            :remote-method="queryMenu"
-            style="width:300px"
-          >
-            <template v-if="formModel.parentId!=null">
-              <el-option
-                :key="formModel.parentId"
-                :label="formModel.parentName"
-                :value="formModel.parentId"
-              ></el-option>
-            </template>
-            <el-option
-              v-for="dataDictionary in dataDictionaryListFilter"
-              :key="dataDictionary.id"
-              :label="dataDictionary.name"
-              :value="dataDictionary.id"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="字典类型" prop="dataType">
-          <el-select v-model="formModel.dataType">
-            <el-option label="字典目录" value="1"></el-option>
-            <el-option label="数据" value="2"></el-option>
-          </el-select>
-        </el-form-item>
-      </el-form>
-    </div>
-    <span slot="footer" class="dialog-footer">
-      <el-button @click="closeDialog">取 消</el-button>
-      <el-button type="primary" @click="handleSubmit" :loading="submitting">确 定</el-button>
-    </span>
-  </el-dialog>
-</template>
-<script>
-import Constant from "@/constant";
-import dataDictionaryApi from "@/api/sys/dataDictionary";
-
-export default {
-  props: ["dictId", "modalTitle"],
-  data() {
-    return {
-      formModel: {},
-      ruleValidate: {
-        name: [{ required: true, message: "名称不能为空", trigger: "blur" }],
-        value: [{ required: true, message: "数值不能为空", trigger: "blur" }],
-        sortNo: [
-          { required: true, message: "显示序号不能为空", trigger: "blur" }
-        ],
-        parentId: [
-          { required: true, message: "所属目录不能为空", trigger: "blur" }
-        ],
-        dataType: [
-          {
-            required: true,
-            message: "1-字典目录,2-数据不能为空",
-            trigger: "blur"
-          }
-        ]
-      },
-      dataDictionaryList: [],
-      showDialog: true,
-      loading: false,
-      submitting: false
-    };
-  },
-  computed: {
-    dataDictionaryListFilter() {
-      var self = this;
-      return self.dataDictionaryList.filter(dataDictionary => {
-        return self.formModel.parentId != dataDictionary.id;
-      });
-    }
-  },
-  methods: {
-    closeDialog() {
-      this.$emit("close", false);
-    },
-    handleSubmit() {
-      var self = this;
-      this.$refs["form"].validate(valid => {
-        if (valid) {
-          (function() {
-            var id = self.formModel.id;
-            if (id == null || id.length == 0) {
-              return dataDictionaryApi.add(self.formModel);
-            } else {
-              return dataDictionaryApi.update(self.formModel);
-            }
-          })().then(function(response) {
-            var jsonData = response.data;
-
-            if (jsonData.result) {
-              self.$message({
-                message: "保存成功!",
-                type: "success"
-              });
-
-              self.$emit("close", true);
-            } else {
-              self.$message({
-                message: jsonData.message + "",
-                type: "warning"
-              });
-
-              self.$emit("close", false);
-            }
-          });
-        }
-      });
-    },
-    queryMenu(keywords) {
-      var formData = new FormData();
-      formData.append("keywords", keywords);
-      formData.append("dataType", "1");
-      formData.append("excludeId", this.formModel.id);
-      formData.append("limit", 10);
-
-      return dataDictionaryApi.query(formData).then(response => {
-        var jsonData = response.data;
-
-        if (jsonData.result) {
-          this.dataDictionaryList = jsonData.data;
-        } else {
-          this.$message.error(jsonData.message + "");
-        }
-      });
-    }
-  },
-  mounted: function() {
-    var self = this;
-    self.loading = true;
-    (function() {
-      if (self.dictId.length == 0) {
-        return dataDictionaryApi.create();
-      } else {
-        return dataDictionaryApi.edit(self.dictId);
-      }
-    })()
-      .then(response => {
-        var jsonData = response.data;
-        self.loading = false;
-
-        if (jsonData.result) {
-          self.formModel = jsonData.data;
-        } else {
-          self.$message.error(jsonData.message + "");
-        }
-      })
-      .catch(error => {
-        self.$message.error(error + "");
-      });
-  }
-};
-</script>

+ 0 - 287
src/views/sys/dataDictionary-test-list.vue

@@ -1,287 +0,0 @@
-<template>
-  <div>
-    <el-breadcrumb separator=">">
-      <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
-      <el-breadcrumb-item>
-        <a href="#">系统管理</a>
-      </el-breadcrumb-item>
-      <el-breadcrumb-item>
-        <a href="/sys/dataDictionary">字典管理test</a>
-      </el-breadcrumb-item>
-    </el-breadcrumb>
-    <el-divider></el-divider>
-    <!--
-      要resetFields起作用,必须配置:model和prop
-    -->
-    <el-form ref="queryForm" :model="queryModel" inline class="demo-form-inline">
-      <el-form-item label="test名称" prop="name">
-        <el-input type="text" size="mini" v-model="queryModel.name"></el-input>
-      </el-form-item>
-      <el-form-item>
-        <el-button
-          type="primary"
-          size="mini"
-          icon="ios-search"
-          @click="changePage(1)"
-          :loading="loading"
-        >查询</el-button>&nbsp;
-        <el-button
-          type="info"
-          size="mini"
-          style="margin-left: 8px"
-          @click="handleReset('queryForm')"
-        >重置</el-button>&nbsp;
-      </el-form-item>
-    </el-form>
-    <el-divider></el-divider>
-    <el-row class="button-group">
-      <el-button type="primary" size="small" plain icon="el-icon-circle-plus" @click="handleAdd">新增</el-button>
-      <el-button
-        type="primary"
-        size="small"
-        plain
-        icon="el-icon-circle-plus"
-        :disabled="multipleSelection.length==0"
-        @click="handleBatchDelete"
-      >删除选中项</el-button>
-    </el-row>
-    <el-table
-      :data="tableData"
-      style="min-height:400px;"
-      v-loading="loading"
-      stripe
-      @sort-change="sortChange"
-      @selection-change="handleSelectionChange"
-    >
-      <el-table-column type="selection" width="55"></el-table-column>
-      <el-table-column prop="name" sort-by="name_" label="名称" sortable="custom" width="180"></el-table-column>
-      <el-table-column prop="value" sort-by="value_" label="数值" sortable="custom" width="180"></el-table-column>
-      <el-table-column prop="sortNo" sort-by="sort_no" label="排序号" sortable="custom" width="180"></el-table-column>
-      <el-table-column
-        prop="parentName"
-        sort-by="parent_name"
-        label="所属目录"
-        sortable="custom"
-        width="180"
-      ></el-table-column>
-      <el-table-column
-        prop="dataType"
-        sort-by="data_type"
-        label="1-字典目录,2-数据"
-        sortable="custom"
-        width="180"
-      ></el-table-column>
-      <el-table-column label="操作">
-        <template slot-scope="{row}">
-          <el-button size="mini" type="warning" @click="handleEdit(row)">编辑</el-button>
-          <el-button size="mini" type="danger" @click="handleDelete(row)">删除</el-button>
-        </template>
-      </el-table-column>
-    </el-table>
-    <el-pagination
-      :current-page.sync="pageIndex"
-      :total="totalElements"
-      :page-sizes="pageSizeList"
-      @current-change="changePage"
-      @size-change="pageSizeChange"
-      layout="total, sizes, prev, pager, next, jumper"
-    ></el-pagination>
-    <dataDictionary-detail
-      v-if="showModal"
-      :dictId="dictId"
-      :modalTitle="modalTitle"
-      @close="onDetailModalClose"
-    ></dataDictionary-detail>
-  </div>
-</template>
-<script>
-import Constant from "@/constant";
-import DataDictionaryDetail from "./dataDictionary-detail";
-import dataDictionaryApi from "@/api/sys/dataDictionary";
-import NProgress from "nprogress"; // progress bar
-import "nprogress/nprogress.css"; // progress bar style
-
-export default {
-  data() {
-    var self = this;
-
-    return {
-      queryModel: {
-        id: "",
-        name: "",
-        value: "",
-        sortNo: "",
-        parentId: "",
-        parentName: "",
-        dataType: "",
-        createBy: "",
-        createDate: "",
-        updateBy: "",
-        updateDate: "",
-        activated: ""
-      },
-      loading: false,
-      tableData: [],
-      pageIndex: 1,
-      pageSize: 10,
-      totalPages: 0,
-      totalElements: 0,
-      field: "",
-      direction: "",
-      pageSizeList: [10, 20, 30],
-      multipleSelection: [],
-      showModal: false,
-      modalTitle: "",
-      businessKey: ""
-    };
-  },
-  methods: {
-    changePage(pageIndex) {
-      var self = this;
-
-      self.loading = true;
-
-      self.pageIndex = pageIndex;
-      var formData = new FormData();
-
-      formData.append("pageIndex", self.pageIndex);
-      formData.append("pageSize", self.pageSize);
-      formData.append("name", self.queryModel.name);
-
-      if (this.field != null) {
-        formData.append("field", this.field);
-      }
-
-      if (this.direction != null) {
-        formData.append("direction", this.direction);
-      }
-
-      dataDictionaryApi
-        .pageList(formData)
-        .then(function(response) {
-          self.loading = false;
-
-          var jsonData = response.data.data;
-
-          self.tableData = jsonData.data;
-          self.totalPages = jsonData.totalPages;
-          self.totalElements = jsonData.recordsTotal;
-        })
-        .catch(error => {
-          self.loading = false;
-          // self.$message.error(error + "");
-        });
-    },
-    pageSizeChange(pageSize) {
-      this.pageSize = pageSize;
-    },
-    sortChange(data) {
-      this.field = data.column.field;
-      this.direction = data.order;
-
-      this.changePage(this.pageIndex);
-    },
-    handleSelectionChange(val) {
-      this.multipleSelection = val;
-    },
-    handleReset(name) {
-      this.$refs[name].resetFields();
-    },
-    handleAdd() {
-      this.modalTitle = "新增";
-      this.dictId = "";
-      this.showModal = true;
-    },
-    handleEdit(record) {
-      this.modalTitle = "编辑";
-      this.dictId = record.id;
-      this.showModal = true;
-    },
-    handleDelete(record) {
-      var self = this;
-
-      self
-        .$confirm("是否确认删除?", "提示", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        })
-        .then(() => {
-          dataDictionaryApi.remove(record.id).then(function(response) {
-            var jsonData = response.data;
-
-            if (jsonData.result) {
-              // var index = self.tableData.indexOf(record);
-              // self.tableData.splice(index, 1);
-              self.changePage(self.pageIndex);
-
-              self.$message({
-                type: "success",
-                message: "删除成功!"
-              });
-            }
-          });
-        });
-    },
-    handleBatchDelete() {
-      var self = this;
-
-      var idList = this.multipleSelection.map(record => {
-        return record.id;
-      });
-
-      this.$confirm("是否确认删除选中项?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(() => {
-        dataDictionaryApi.batchRemove(idList).then(function(response) {
-          var jsonData = response.data;
-
-          if (jsonData.result) {
-            self.changePage(self.pageIndex);
-
-            self.$message({
-              type: "success",
-              message: "删除成功!"
-            });
-          }
-        });
-      });
-    },
-    onDetailModalClose(refreshed) {
-      //保存成功后回调
-      this.showModal = false;
-      if (refreshed) {
-        this.changePage(this.pageIndex);
-      }
-    }
-  },
-  mounted: function() {
-    this.changePage(1);
-  },
-  components: {
-    "dataDictionary-detail": DataDictionaryDetail
-  }
-};
-</script>
-<style lang="scss" scoped>
-.el-breadcrumb {
-  margin: 10px;
-  line-height: 20px;
-}
-
-.el-divider {
-  margin: 5px 0;
-}
-
-.demo-form-inline {
-  margin-left: 10px;
-  text-align: left;
-}
-
-.button-group {
-  margin-left: 10px;
-  text-align: left;
-}
-</style>

+ 17 - 5
src/views/sys/menu-detail.vue

@@ -21,6 +21,7 @@
             v-model="formModel.parentId"
             filterable
             remote
+            clearable
             placeholder="请输入关键词"
             :remote-method="queryMenu"
             style="width:300px"
@@ -74,7 +75,7 @@ import Constant from "@/constant";
 import menuApi from "@/api/sys/menu";
 
 export default {
-  props: ["menuId","modalTitle"],
+  props: ["menuId","modalTitle","parentMenu"],
   data() {
     return {
       formModel : {},
@@ -202,10 +203,21 @@ export default {
         self.formModel = jsonData.data;
 
         // 增加初始值
-        self.menuList.push({
-          id: jsonData.data.parentId,
-          menuName: jsonData.data.parentName
-        });  
+        if(jsonData.data.parentId!=null){
+          self.menuList.push({
+            id: jsonData.data.parentId,
+            menuName: jsonData.data.parentName
+          });
+        }
+        else if(this.parentMenu!=null && this.parentMenu.id!=null){
+          self.formModel.parentId = this.parentMenu.id; 
+
+          self.menuList.push({
+            id: this.parentMenu.id,
+            menuName: this.parentMenu.menuName
+          });
+        }
+
       } else {
         self.$message.error(jsonData.message + "");
       }

+ 39 - 5
src/views/sys/menu-list.vue

@@ -18,13 +18,14 @@
         <el-input type="text" size="mini" v-model="queryModel.menuName"></el-input>
       </el-form-item>
       <el-form-item label="菜单类型" prop="menuType">
-        <el-select v-model="queryModel.menuType">
+        <el-select v-model="queryModel.menuType" size="mini">
           <el-option label="后端接口" value="1"></el-option>
           <el-option label="前端页面" value="2"></el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="上级菜单" prop="parentId">
         <el-select
+            size="mini"
             v-model="queryModel.parentId"
             filterable
             remote
@@ -99,10 +100,24 @@
       <el-table-column prop="menuUrl" label="菜单地址" :sortable="true" width="180"></el-table-column>
       <el-table-column prop="createTime" label="创建时间" :sortable="true" width="180"></el-table-column>
       <el-table-column prop="updateTime" label="更新时间" :sortable="true" width="180"></el-table-column>
-      <el-table-column label="操作" width="200" fixed="right">
+      <el-table-column label="操作" width="250" fixed="right">
         <template slot-scope="{row}">
-          <el-button size="mini" type="warning" @click="handleEdit(row)">编辑</el-button>
-          <el-button size="mini" type="danger" @click="handleDelete(row)">删除</el-button>
+          <el-row>
+            <el-col :span="12">
+          <el-button size="mini" type="text" @click="showSubmenu(row)">下级菜单</el-button>
+            </el-col>
+            <el-col :span="12">
+          <el-button size="mini" type="text" @click="addSubmenu(row)">新增子菜单</el-button>
+            </el-col>
+          </el-row>
+          <el-row>
+            <el-col :span="12">
+              <el-button size="mini" type="text" @click="handleEdit(row)">编辑</el-button>
+            </el-col>
+            <el-col :span="12">
+              <el-button size="mini" type="text" @click="handleDelete(row)">删除</el-button>
+            </el-col>
+          </el-row>
         </template>
       </el-table-column>
     </el-table>
@@ -121,6 +136,7 @@
         @close="onDetailModalClose"
         :menuId="menuId"
         :modalTitle="modalTitle"
+        :parentMenu="parentMenu"
       ></menu-detail>
 
   </div>
@@ -156,7 +172,8 @@ export default {
       multipleSelection: [],
       showDetailModal: false,
       menuId: "",
-      queryMenuResult: []
+      queryMenuResult: [],
+      parentMenu: {}
     };
   },
   methods: {
@@ -223,6 +240,7 @@ export default {
     },
     handleReset(name) {
       this.$refs[name].resetFields();
+      this.queryMenu();
     },
     handleAdd() {
       var self = this;
@@ -313,10 +331,26 @@ export default {
           this.$message.error(jsonData.message + "");
         }
       });
+    },
+    showSubmenu(row){
+        this.queryMenuResult.length=0; //清空
+        this.queryMenuResult.push(row);
+
+        this.queryModel.parentId = row.id;
+        this.changePage(1);
+    },
+    addSubmenu(row){
+      var self = this;
+
+      self.modalTitle = "新增";
+      self.menuId = "";
+      self.parentMenu = row;
+      self.showDetailModal = true;
     }
   },
   mounted: function() {
     this.changePage(1);
+    this.queryMenu();
   },
   components: {
     "menu-detail": MenuDetail

+ 1 - 1
src/views/sys/role-menu.vue

@@ -86,7 +86,7 @@ export default {
       self.relatedMenus= [];
 
       var queryData = new FormData();
-      queryData.append("length",1000);
+      queryData.append("limit",1000);
 
       menuApi.query(queryData)
         .then(response => {