戴艳蓉 3 роки тому
батько
коміт
55b83e2532

+ 5 - 3
src/apis/service/system/menu/index.js

@@ -8,8 +8,8 @@ export default {
   update: (data, params) => http(api + 'menusave', data, 'post', params),
   // 菜单状态
   menustatus: (data, params) => http(api + 'menustatus', data, 'post', params),
-  // // 菜单删除
-  // menudel: (data, params) => http(api + 'menudel', data, 'post', params),
+  // 菜单删除
+  menudel: (data, params) => http(api + 'menudel', data, 'post', params),
 
   // 按钮
   // 列表
@@ -20,5 +20,7 @@ export default {
   actionedit: (data, params) => http(api + 'menuactionsave', data, 'post', params),
   // 状态
   actionstatus: (data, params) =>
-    http(api + 'menuactionstatus', data, 'post', params)
+    http(api + 'menuactionstatus', data, 'post', params),
+      // 删除
+  actiondel: (data, params) => http(api + 'menuactiondel', data, 'post', params),
 }

+ 11 - 23
src/components/global/organize-tree/main.vue

@@ -5,7 +5,7 @@
         v-for="item in list"
         :key="item.updatetime"
         class="organize-tree-node"
-        @click="openChildren(item)"
+        @click="openChildren($event, item)"
       >
         <div class="organize-box">
           <span class="label">
@@ -92,24 +92,6 @@ export default {
     return {
       newlist: "",
       index: 0, // icon 箭头
-      iconFont: [
-        {
-          down: "el-icon-arrow-up",
-          up: "el-icon-arrow-down",
-        },
-        {
-          down: "el-icon-folder-status",
-          up: "el-icon-folder-add",
-        },
-        {
-          down: "el-icon-minus",
-          up: "el-icon-plus",
-        },
-        {
-          down: "iconfont icon-jiantouxia",
-          up: "iconfont icon-up",
-        },
-      ],
     };
   },
   methods: {
@@ -117,8 +99,9 @@ export default {
       e.stopPropagation();
       this.$emit("addEdit", id, pid, level, isDetail, isAdd, formData);
     },
-    openChildren(id) {
-      this.$emit("openChildren", id);
+    openChildren(e, item) {
+      e.stopPropagation();
+      this.$emit("openChildren", item);
     },
     status(e, id, pid, level, status) {
       e.stopPropagation();
@@ -148,8 +131,13 @@ export default {
   .organize-tree-node {
     display: block;
     margin: 5px 0 5px 5px;
-    padding: 0 7px 2px 10px ;
+    padding: 0 7px 2px 10px;
     line-height: 35px;
+
+    .btn-list {
+      display: block;
+      float: right;
+    }
     i.el-icon-arrow-right {
       font-size: 16px;
       width: 22px;
@@ -161,7 +149,7 @@ export default {
     .label {
       font-size: 16px;
     }
-   
+
     .staff {
       // padding:0 0 0 5px;
       // background: #eee;

+ 8 - 8
src/components/global/shy-tree/main.vue

@@ -57,9 +57,7 @@
           {{ item.menu_name || item.action_name }}
         </span>
         <span class="btn-list">
-          
-
-           <el-button
+          <el-button
             v-if="level < 3 && powers.some((item) => item == '003')"
             type="success"
             size="mini"
@@ -104,7 +102,7 @@
             type="danger"
             size="mini"
             @click="
-              del(
+              deleteMenu(
                 item.id,
                 level === 3 ? item.menuid : item.pid,
                 level,
@@ -113,7 +111,7 @@
             "
           >
             删除
-          </el-button> 
+          </el-button>
         </span>
         <shy-tree
           v-if="item.child && item.child.length > 0"
@@ -121,8 +119,8 @@
           :level="level + 1"
           @addEdit="addEdit"
           @openChildren="openChildren"
-          @editInterface="editInterface"
           @remove="remove"
+           @deleteMenu="deleteMenu"
         />
       </div>
     </div>
@@ -188,8 +186,10 @@ export default {
     remove(id, pid, level, status) {
       this.$emit("remove", id, pid, level, status);
     },
-    del(id, pid, level, status) {
-      this.$emit("del", id, pid, level, status);
+    deleteMenu(id, pid, level, status) {
+       console.log(id, pid, level, status);
+      this.$emit("deleteMenu", id, pid, level, status);
+     
     },
   },
 };

+ 53 - 38
src/views/interest/organize/index.vue

@@ -23,7 +23,7 @@
             </div>
           </el-col>
           <el-col :span="24">
-            <el-row style="padidng: 0 0 10px 0">
+            <el-row style="padding: 0 0 3px 0">
               <el-col :span="8" style="width: 200px">
                 <el-input
                   placeholder="部门名称"
@@ -32,12 +32,17 @@
                 >
                 </el-input>
               </el-col>
-              <el-col :span="8" style="width: 210px; padding: 0 0 0 10px">
+              <el-col :span="8" style="width: 250px; padding: 0 0 0 10px">
                 <el-input
                   placeholder="员工姓名"
                   :size="searchSize"
                   v-model="parmValue.nickname"
                 >
+                  <el-button
+                    slot="append"
+                    icon="el-icon-search"
+                    @click="searchList"
+                  ></el-button>
                 </el-input>
               </el-col>
 
@@ -47,7 +52,7 @@
                   type="primary"
                   :size="searchSize"
                   style="float: right; margin-left: 5px"
-                  @click="restSearch"
+                  @click="searchList"
                 >
                   刷新
                 </el-button>
@@ -56,7 +61,16 @@
                   type="success"
                   :size="searchSize"
                   style="float: right"
-                  @click="addEditFn(0, '0', 1, false, true, {})"
+                  @click="
+                    addEditFn(
+                      0,
+                      parmValue && parmValue.pid!=='' ? parmValue.pid : '0',
+                      1,
+                      false,
+                      true,
+                      {}
+                    )
+                  "
                 >
                   添加
                 </el-button>
@@ -91,6 +105,12 @@
             @setUpEdit="setUpEdit"
           />
         </el-col>
+        <div
+          class="no-data"
+          v-if="item && item.length === 0 && depart && depart.length === 0"
+        >
+          暂无数据
+        </div>
       </el-row>
 
       <add-edit
@@ -102,7 +122,7 @@
         :form-data="formData"
         :type="parmValue.type"
         :is-detail="isDetail"
-        @refresh="submitRefresh"
+        @refresh="searchList"
         @cancel="showModel = false"
       />
     </div>
@@ -177,11 +197,9 @@ export default {
   methods: {
     restSearch() {
       this.parmValue = {
-        name: "", // 业务员名字
-        username: "", // 账号
-        status: "", //
-        page: 1, // 页码
-        size: 10, // 每页显示条数
+        pid: "", //父级部门ID
+        name: "", // 部门/公司名称
+        nickname: "", // 员工名称
       };
       this.searchList();
     },
@@ -194,7 +212,15 @@ export default {
         await this.searchList();
       }
     },
-
+    async openChildren(item) {
+      this.parmValue.pid = item.id;
+      let model = {
+        id: item.id,
+        titleName: item.name,
+      };
+      this.titleList.push(model);
+      await this.searchList();
+    },
     openModal(id, isDetail, sitem) {
       this.showModel = true;
       this.modelId = id;
@@ -213,13 +239,12 @@ export default {
           position: "2",
         };
         let res = await asyncRequest.userp(model);
-
         if (res && res.code === 0) {
           this.$notify.success({
             title: "设置成功!",
             message: "",
           });
-         
+          await this.searchList();
         } else if (res && res.code >= 100 && res.code <= 104) {
           await this.logout();
         } else {
@@ -229,30 +254,16 @@ export default {
         this.$message.warning("该账户已是部门负责人!");
       }
     },
-    addEditFn(id, parentIds, level, isDetail, isAdd, formData) {
+    addEditFn(id, pid, level, isDetail, isAdd, formData) {
       this.showModel = true;
       this.modelId = id;
       this.level = level;
-      this.parentIds = parentIds;
+      this.parentIds = pid;
       this.isDetail = isDetail;
       this.isAdd = isAdd;
       this.formData = formData;
     },
-    submitRefresh(id, parentIds, level) {
-      console.log(
-        `openChildren-id, parentIds, level:${id}-${parentIds}-${level}`
-      );
-      if (level < 3) {
-        this.restSearch();
-      }
-      // else if (level === 2) {
-      //   // this.parmValue.parentId = id;
-      //   this.concatData(id, parentIds, level);
-      // }
-      else {
-        this.getchildList(parentIds);
-      }
-    },
+
     async setstatus(id, parentIds, level, status) {
       console.log(
         `openChildren-id, parentIds, level:${id}-${parentIds}-${level}-${status}`
@@ -274,11 +285,7 @@ export default {
               title: "修改成功!",
               message: "",
             });
-            if (level === 3) {
-              this.getchildList(parentIds);
-            } else {
-              this.restSearch();
-            }
+            await this.searchList();
           } else if (res && res.code >= 100 && res.code <= 104) {
             await this.logout();
           } else {
@@ -310,7 +317,7 @@ export default {
               title: "删除成功!",
               message: "",
             });
-            await this.searchList()
+            await this.searchList();
           } else if (res && res.code >= 100 && res.code <= 104) {
             await this.logout();
           }
@@ -320,8 +327,6 @@ export default {
         });
     },
 
-
- 
     async concatData(id, parentIds, level) {
       console.log(id, parentIds, level);
       this.loading = true;
@@ -424,6 +429,16 @@ export default {
 </script>
    <style lang="scss" scoped>
 .organize {
+  .no-data {
+    padding: 25px 0;
+    text-align: center;
+    color: #909399;
+    margin: 30px 10px 0 10px;
+    border-radius: 8px;
+    border: 1px solid #dfe6ec;
+    // border-right: 1px solid #dfe6ec;
+    // border-bottom: 1px solid #dfe6ec;
+  }
   .my-breadcrumb {
     .my-breadcrumb-item {
       float: left;

+ 4 - 4
src/views/login/index.vue

@@ -150,10 +150,10 @@ export default {
       ver: "",
       show: false,
       loginForm: {
-        // username: "17744520491",
-        // password: "dingding123",
-        username: "15501067031",
-        password: "wugg123",
+        username: "17744520491",
+        password: "dingding123",
+        // username: "15501067031",
+        // password: "wugg123",
       },
       loginRules: {
         username: [

+ 3 - 5
src/views/system/menuOperator/index.vue

@@ -29,15 +29,14 @@
       </el-row>
 
       <el-row :gutter="10">
-        <!-- v-loading="loading" -->
-        <el-col :span="24">
+        <el-col :span="24" v-loading="loading">
           <shy-tree
             :value="tableData"
             :level="1"
             @addEdit="addEditFn"
             @openChildren="openChildren"
             @remove="remove"
-            @del="del"
+            @deleteMenu="deleteMenu"
           />
         </el-col>
       </el-row>
@@ -168,8 +167,7 @@ export default {
           console.log("取消");
         });
     },
-
-    async del(id, parentIds, level, status) {
+    async deleteMenu(id, parentIds, level, status) {
       await this.$confirm(`确定要删除?`, {
         confirmButtonText: "确定",
         cancelButtonText: "取消",