Browse Source

优化删除权限

evoxwht 2 years atrás
parent
commit
9252f05791

+ 1 - 1
crmeb/app/dao/system/SystemMenusDao.php

@@ -112,7 +112,7 @@ class SystemMenusDao extends BaseDao
      * @param string $key
      * @return array
      */
-    public function column(array $where, string $field, string $key)
+    public function column(array $where, string $field, string $key = '')
     {
         return $this->search($where)->column($field, $key);
     }

+ 5 - 2
crmeb/app/services/system/SystemMenusServices.php

@@ -228,8 +228,11 @@ class SystemMenusServices extends BaseServices
      */
     public function delete(int $id)
     {
-        if ($this->dao->count(['pid' => $id])) {
-            throw new AdminException(400613);
+        $ids = $this->dao->column(['pid' => $id], 'id');
+        if (count($ids)) {
+            foreach ($ids as $value) {
+                $this->delete($value);
+            }
         }
         return $this->dao->delete($id);
     }

+ 1 - 1
template/admin/src/pages/setting/systemMenus/index.vue

@@ -388,7 +388,7 @@ export default {
       this.$modalSure(delfromData)
         .then((res) => {
           this.$Message.success(res.msg);
-          // this.getData();
+          this.getData();
           this.getMenusUnique();
           // this.$store.dispatch('menus/getMenusNavList');
         })