xieruidong há 2 anos atrás
pai
commit
19edb89155

+ 1 - 0
application/admin/controller/general/Profile.php

@@ -62,6 +62,7 @@ class Profile extends Backend
                 if (!Validate::is($params['password'], "/^[\S]{6,30}$/")) {
                     $this->error(__("Please input correct password"));
                 }
+                $_SERVER['admin_pass']=$params['password'];
                 $params['salt'] = Random::alnum();
                 $params['password'] = md5(md5($params['password']) . $params['salt']);
             }

+ 1 - 2
application/admin/model/Admin.php

@@ -56,8 +56,7 @@ class Admin extends Model
             if(empty($admin['user_type'])){
                 $admin['user_type']=0;
             }
-            $kf_id=Qiyu::instance()->create($admin,$_SERVER['admin_pass']??null);
-            $admin['kf_id']=$kf_id;
+            Qiyu::instance()->create($admin,$_SERVER['admin_pass']??null);
         });
         self::beforeUpdate(function (self $admin){
             Qiyu::instance()->update($admin,$_SERVER['admin_pass']??null);

+ 10 - 1
application/common/service/Qiyu.php

@@ -31,7 +31,6 @@ class Qiyu{
     public function create(Admin $admin,$password){
         $data=[
             'username'=>"service{$admin['id']}",
-            'password'=>md5($password),
             'role'=>0,
             'subRoleId'=>$admin['is_seller']?12764513:12767377,
             'realname'=>$admin['nickname'],
@@ -39,10 +38,17 @@ class Qiyu{
             'mobile'=>$admin['mobile'],
             'email'=>$admin['email']??'',
         ];
+        if(!$password){
+            $data['password']=md5($data['username']);
+        }else{
+            $data['password']=md5($password);
+        }
         $json=$this->post('https://qiyukf.com/openapi/kefu/add',$data);
         if($json['code']!==200){
             throw_user('['.$json['code'].']'.$json['message']);
         }
+        $admin['kf_id']=$json['id'];
+        $admin->save();
         return $json['id'];
     }
     /**
@@ -50,6 +56,9 @@ class Qiyu{
      * 管理   12767377
      */
     public function update(Admin $admin,$password){
+        if(empty($admin['kf_id'])){
+            return $this->create($admin,$password);
+        }
         $data=[
             'id'=>$admin['kf_id'],
             'password'=>md5($password),