Bläddra i källkod

管理员信息

shish 6 år sedan
förälder
incheckning
ea1c569770
2 ändrade filer med 57 tillägg och 2 borttagningar
  1. 4 2
      app/shop/controllers/UserController.php
  2. 53 0
      biz/admin/classes/AdminClass.php

+ 4 - 2
app/shop/controllers/UserController.php

@@ -249,7 +249,7 @@ class UserController extends BaseController
         $admin = $this->admin;
         $miniOpenId = $admin['miniOpenId'];
         if (empty($miniOpenId)) {
-            util::fail('mini_open_id empty');
+            util::fail('没有找到管理员信息(miniOpenId)');
         }
         $cacheKey = 'SHOP_MINI_SESSION_KEY_' . $miniOpenId;
         $sessionKey = Yii::$app->redis->executeCommand('GET', [$cacheKey]);
@@ -280,7 +280,9 @@ class UserController extends BaseController
         $appId = $merchant['miniAppId'];
         $admin = $this->admin;
         $miniOpenId = $admin['miniOpenId'];
-
+        if (empty($miniOpenId)) {
+            util::fail('没有找到管理员信息(miniOpenId)');
+        }
         $cacheKey = 'SHOP_MINI_SESSION_KEY_' . $miniOpenId;
         $sessionKey = Yii::$app->redis->executeCommand('GET', [$cacheKey]);
         if (empty($sessionKey)) {

+ 53 - 0
biz/admin/classes/AdminClass.php

@@ -4,6 +4,7 @@ namespace biz\admin\classes;
 
 use biz\user\classes\UserClass;
 use common\components\util;
+use common\services\ImageService;
 use Yii;
 use biz\base\classes\BaseClass;
 
@@ -233,6 +234,8 @@ class AdminClass extends BaseClass
         if (empty($user)) {
             $adminInfo['source'] = $sourceId;
             $user = self::generateAdmin($adminInfo);
+        } else {
+            $user = self::updateAdminInfo($user, $userInfo);
         }
         //存在相同unionid则进行合并
         $unionId = isset($adminInfo['unionId']) ? $adminInfo['unionId'] : '';
@@ -247,6 +250,56 @@ class AdminClass extends BaseClass
         return $user;
     }
 
+    public static function updateAdminInfo($originalUser, $getUserInfo)
+    {
+        $data = [];
+        $adminId = $originalUser['id'];
+        //替换掉微信不支持的图片
+        $userName = isset($getUserInfo['userName']) ? preg_replace('/[\x{10000}-\x{10FFFF}]/u', '', $getUserInfo['userName']) : '';
+        if (!empty($userName)) {
+            $data['userName'] = $userName;
+        }
+        if (isset($getUserInfo['openId']) && !empty($getUserInfo['openId'])) {
+            $openId = $getUserInfo['openId'];
+            $data['openId'] = $openId;
+        }
+        if (isset($getUserInfo['miniOpenId']) && !empty($getUserInfo['miniOpenId'])) {
+            $data['miniOpenId'] = $getUserInfo['miniOpenId'];
+        }
+        if (isset($getUserInfo['unionId']) && !empty($getUserInfo['unionId'])) {
+            $data['unionId'] = $getUserInfo['unionId'];
+        }
+        if (isset($getUserInfo['sex'])) {
+            $data['sex'] = $getUserInfo['sex'];
+        }
+        if (isset($getUserInfo['subscribe'])) {
+            $data['subscribe'] = $getUserInfo['subscribe'];
+        }
+        if (isset($getUserInfo['subscribeTime'])) {
+            $data['subscribeTime'] = $getUserInfo['subscribeTime'];
+        }
+        if (isset($getUserInfo['isFull'])) {
+            $data['isFull'] = $getUserInfo['isFull'];
+        }
+        if (isset($getUserInfo['headImgUrl']) && !empty($getUserInfo['headImgUrl'])) {
+            $data['isFull'] = 1;
+        }
+        //更新头像
+        $merchantId = 0;
+        if (isset($originalUser['avatar']) == false || empty($originalUser['avatar'])) {
+            if (isset($getUserInfo['headImgUrl']) && !empty($getUserInfo['headImgUrl'])) {
+                $imgUrl = $getUserInfo['headImgUrl'];
+                $name = ImageService::generateAvatar($merchantId, $imgUrl);
+                if (!empty($name)) {
+                    $data['avatar'] = $name;
+                }
+            }
+        }
+        self::updateById($adminId, $data);
+        $admin = self::getById($adminId);
+        return $admin;
+    }
+
     public static function generateAdmin($getAdminInfo)
     {
         $date = date("Y-m-d H:i:s");