shish 5 ani în urmă
părinte
comite
7fd883fe3d

+ 9 - 1
app-mall/controllers/AuthController.php

@@ -163,12 +163,20 @@ class AuthController extends PublicController
             $sjId = $shop['merchantId'] ?? 0;
         }
         $user = UserClass::replaceUser($userInfo, $userSource, $sjId);
+        $custom = $user['customInfo'] ?? [];
+        $customId = $custom['id'] ?? 0;
         $cacheKey = 'MALL_MINI_SESSION_KEY_' . $miniOpenId;
         Yii::$app->redis->executeCommand('SET', [$cacheKey, $sessionKey]);
         $userId = $user['id'];
         $token = jwt::getNewToken($userId);
         //update = 1 表示要求启动时更新(如果需要马上应用最新版本,可以使用 wx.getUpdateManager API 进行处理。)
-        util::success(['token' => $token, 'user' => $user, 'update' => 0]);
+        util::success([
+            'token' => $token,
+            'user' => $user,
+            'update' => 0,
+            'customId' => $customId,
+            'custom' => $custom
+        ]);
     }
 
 }

+ 1 - 1
app-mall/controllers/BaseController.php

@@ -67,7 +67,7 @@ class BaseController extends PublicController
             }
             $this->user = $userInfo;
             if (in_array($action->id, $this->guestAccess) == false) {
-                $custom = CustomClass::getCurrentCustom($sjId, $userInfo);
+                $custom = CustomClass::replaceCustom($sjId, $userInfo);
                 $this->custom = $custom;
                 $customId = $custom['id'] ?? 0;
                 $this->customId = $customId;

+ 7 - 42
biz-hd/custom/classes/CustomClass.php

@@ -20,46 +20,7 @@ class CustomClass extends BaseClass
         return 'hd_custom_key_' . $sjId . '_' . $userId;
     }
 
-    public static function getCurrentCustom($sjId, $user)
-    {
-        $userId = $user['id'];
-        //从缓存获取客户信息
-        $key = self::getCustomCacheKey($sjId, $userId);
-        $currentId = Yii::$app->redis->executeCommand('GET', [$key]);
-        $info = [];
-        if (!empty($currentId)) {
-            $info = self::getById($currentId);
-        }
-        //从数据库获取客户信息
-        if (empty($info)) {
-            $info = self::getByCondition(['sjId' => $sjId, 'userId' => $userId]);
-            //需要创建客户信息
-            $name = $user['name'] ?? '';
-            $avatar = $user['avatar'] ?? '';
-            $py = stringUtil::py($name);
-            if (empty($info)) {
-                $data = [
-                    'userId' => $userId,
-                    'sjId' => $sjId,
-                    'name' => $name,
-                    'avatar' => $avatar,
-                    'py' => $py,
-                    'visitTime' => date("Y-m-d H:i:s")
-                ];
-                $info = self::addCustom($data);
-            }
-            $id = $info['id'] ?? 0;
-            if (!empty($id)) {
-                Yii::$app->redis->executeCommand('SET', [$key, $id]);
-            }
-        }
-        if (empty($info)) {
-            util::fail('没有找到客户信息');
-        }
-        return $info;
-    }
-
-    //创建获取客户信息 ssh 2021.3.19
+    //创建或获取客户信息 ssh 2021.3.19
     public static function replaceCustom($sjId, $user)
     {
         $userId = $user['id'];
@@ -68,7 +29,8 @@ class CustomClass extends BaseClass
         $key = self::getCustomCacheKey($sjId, $userId);
         $currentId = Yii::$app->redis->executeCommand('GET', [$key]);
         if (!empty($currentId)) {
-            return $currentId;
+            $info = self::getById($currentId);
+            return $info;
         }
         $info = self::getByCondition(['sjId' => $sjId, 'userId' => $userId]);
         if (empty($info)) {
@@ -84,9 +46,12 @@ class CustomClass extends BaseClass
             ];
             $info = self::addCustom($data);
         }
+        if (empty($info)) {
+            util::fail('没有生成客户信息');
+        }
         $id = $info['id'];
         Yii::$app->redis->executeCommand('SET', [$key, $id]);
-        return $id;
+        return $info;
     }
 
     //获取客户信息

+ 6 - 5
biz-mall/user/classes/UserClass.php

@@ -281,7 +281,7 @@ class UserClass extends BaseClass
             ]);
             $targetId = $return['id'];
 
-            $capitalType = dict::getDict('capitalType','xhMergeUser','id');
+            $capitalType = dict::getDict('capitalType', 'xhMergeUser', 'id');
             $now = time();
             $date = date("Y-m-d H:i:s");
 
@@ -570,10 +570,11 @@ class UserClass extends BaseClass
                 $user = self::generateUser($userInfo);
             }
         }
-        if (!empty($sjId)) {
-            //创建客户信息
-            CustomClass::replaceCustom($sjId, $user);
-        }
+
+        //创建客户信息
+        $custom = CustomClass::replaceCustom($sjId, $user);
+        $user['customInfo'] = $custom;
+
         return $user;
     }