Browse Source

添加主键,修复无法更新fa_auth_rule 问题

Amor 8 years ago
parent
commit
732dd19efd
1 changed files with 17 additions and 2 deletions
  1. 17 2
      application/admin/command/Menu.php

+ 17 - 2
application/admin/command/Menu.php

@@ -264,10 +264,25 @@ class Menu extends Command
             $comment = preg_replace(array('/^\/\*\*(.*)[\n\r\t]/u', '/[\s]+\*\//u', '/\*\s@(.*)/u', '/[\s|\*]+/u'), '', $comment);
             
             $title = $comment ? $comment : ucfirst($n->name);
-            
-            $ruleArr[] = array('pid' => $pid, 'name' => $name . "/" . strtolower($n->name), 'icon' => 'fa fa-circle-o', 'title' => $title, 'ismenu' => 0, 'status' => 'normal');
+
+            //获取主键,作为AuthRule更新依据
+            $id = $this->getAuthRulePK($name . "/" . strtolower($n->name));
+
+            $ruleArr[] = array('id' => $id, 'pid' => $pid, 'name' => $name . "/" . strtolower($n->name), 'icon' => 'fa fa-circle-o', 'title' => $title, 'ismenu' => 0, 'status' => 'normal');
         }
         $this->model->saveAll($ruleArr);
     }
 
+    //获取主键
+    protected function getAuthRulePK($name) {
+        if (!empty($name))
+        {
+            $PK = $this->model
+                            ->where('name', $name)
+                            ->value('id');
+
+        }
+        return $PK;
+    }
+
 }