Explorar el Código

管理员的处理

shish hace 6 años
padre
commit
85b2d1bef6

+ 7 - 8
app/shop/controllers/AuthController.php

@@ -166,7 +166,6 @@ class AuthController extends PublicController
 			util::fail('没有CODE信息');
 		}
 		$merchant = WxOpenService::getOpenInfo();
-		$account = $merchant['id'];
 		$appId = $merchant['miniAppId'];
 		$appSecret = $merchant['miniAppSecret'];
 		if (empty($appSecret)) {
@@ -185,17 +184,17 @@ class AuthController extends PublicController
 		}
 		//用户来源
 		$userSource = UserClass::$userSourceId['mini']['name'];
-		$user = AdminService::getByMiniOpenId($openid);
-		if (empty($user)) {
-			$userInfo = ['miniOpenId' => $openid, 'merchantId' => $account];
-			Yii::info(json_encode($userInfo));
-			$user = UserService::replaceUser($userInfo, $userSource, $account);
+		$admin = AdminService::getByMiniOpenId($openid);
+		if (empty($admin)) {
+			$adminInfo = ['miniOpenId' => $openid];
+			Yii::info(json_encode($adminInfo));
+			$admin = AdminService::replaceAdmin($adminInfo, $userSource);
 		}
 		$cacheKey = 'SHOP_MINI_SESSION_KEY_' . $openid;
 		Yii::$app->redis->executeCommand('SET', [$cacheKey, $sessionKey]);
-		$userId = $user['id'];
+		$userId = $admin['id'];
 		$token = jwt::getNewToken($userId);
-		util::success(['token' => $token, 'user' => $user]);
+		util::success(['token' => $token, 'admin' => $admin]);
 	}
 	
 }

+ 25 - 49
biz/admin/classes/AdminClass.php

@@ -26,20 +26,20 @@ class AdminClass extends BaseClass
 		$roleIdList = array_column($list, 'roleId');
 		$userIdList = array_column($list, 'userId');
 		
-		$userInfo = UserClass::getByIds($userIdList, null, 'id');
+		$adminInfo = UserClass::getByIds($userIdList, null, 'id');
 		$roleInfo = AdminRoleClass::getByIds($roleIdList, null, 'id');
 		$prefix = Yii::$app->params['imgHost'];
 		foreach ($list as $key => $val) {
 			$roleId = $val['roleId'];
 			$userId = $val['userId'];
 			$list[$key]['roleName'] = isset($roleInfo[$roleId]['roleName']) ? $roleInfo[$roleId]['roleName'] : '';
-			$list[$key]['nickName'] = isset($userInfo[$userId]['userName']) ? $userInfo[$userId]['userName'] : '';
-			$list[$key]['avatarUrl'] = isset($userInfo[$userId]['avatar']) ? $prefix . $userInfo[$userId]['avatar'] : $prefix . '/none.jpg';
+			$list[$key]['nickName'] = isset($adminInfo[$userId]['userName']) ? $adminInfo[$userId]['userName'] : '';
+			$list[$key]['avatarUrl'] = isset($adminInfo[$userId]['avatar']) ? $prefix . $adminInfo[$userId]['avatar'] : $prefix . '/none.jpg';
 			$list[$key]['avatarUrl'] = Yii::$app->params['imgHost'] . '/retail/default-avatar.png';
 			$list[$key]['addDate'] = date("Y-m-d H:i", $val['addTime']);
 			$list[$key]['lastLoginTime'] = date("Y-m-d H:i", $val['loginTime']);
-			$list[$key]['openId'] = isset($userInfo[$userId]['openId']) ? $userInfo[$userId]['openId'] : '';
-			$list[$key]['subscribe'] = isset($userInfo[$userId]['subscribe']) ? $userInfo[$userId]['subscribe'] : 0;
+			$list[$key]['openId'] = isset($adminInfo[$userId]['openId']) ? $adminInfo[$userId]['openId'] : '';
+			$list[$key]['subscribe'] = isset($adminInfo[$userId]['subscribe']) ? $adminInfo[$userId]['subscribe'] : 0;
 			//敏感信息
 			if ($sensitive) {
 				//这里需要输出值secret,否则修改密码那边会有问题
@@ -146,9 +146,9 @@ class AdminClass extends BaseClass
 		if ($id == $adminId) {
 			util::fail('不能删除自己');
 		}
-		self::updateById($id,['delStatus'=>1]);
+		self::updateById($id, ['delStatus' => 1]);
 	}
-
+	
 	//更新员工 shish 2019.12
 	public static function updateAdmin($admin, $data)
 	{
@@ -208,27 +208,26 @@ class AdminClass extends BaseClass
 		$list = self::getAllByCondition(['merchantId' => $merchantId, 'delStatus' => 0, 'status' => 1]);
 		return $list;
 	}
-
+	
 	public static function getByMiniOpenId($miniOpenId)
 	{
 		return self::getByCondition(['miniOpenId' => $miniOpenId]);
 	}
 	
 	//创建以及更新用户 shish 2020.2.7
-	public static function replaceUser($userInfo, $source)
+	public static function replaceAdmin($adminInfo, $source)
 	{
-		$userInfo = self::switchUserInfo($userInfo, $source);
+		$adminInfo = self::switchAdminInfo($adminInfo, $source);
 		$userSource = UserClass::$userSourceId;
 		switch ($source) {
 			case $userSource['mini']['name']:
 				$sourceId = $userSource['mini']['id'];
-				$miniOpenId = $userInfo['miniOpenId'];
+				$miniOpenId = $adminInfo['miniOpenId'];
 				$user = self::getByMiniOpenId($miniOpenId);
 				break;
 			case $userSource['official']['name']:
 				$sourceId = $userSource['official']['id'];
-				//老客添加没有openId
-				$openId = isset($userInfo['openId']) ? $userInfo['openId'] : '';
+				$openId = isset($adminInfo['openId']) ? $adminInfo['openId'] : '';
 				$user = [];
 				if (!empty($openId)) {
 					$user = self::getByOpenId($openId);
@@ -238,39 +237,31 @@ class AdminClass extends BaseClass
 				throw new \Exception('未知来源的用户');
 		}
 		if (empty($user)) {
-			$userInfo['source'] = $sourceId;
-			$user = self::generateUser($userInfo);
+			$adminInfo['source'] = $sourceId;
+			$user = self::generateAdmin($adminInfo);
 		}
-
+		
 		//存在相同unionid则进行合并
-		$unionId = isset($userInfo['unionId']) ? $userInfo['unionId'] : '';
+		$unionId = isset($adminInfo['unionId']) ? $adminInfo['unionId'] : '';
 		if (!empty($unionId)) {
 			$same = self::getSameUnionId($unionId);
 			if (count($same) == 2) {
 				$delUser = $same[0];
 				$retainUser = $same[1];
-				$user = self::mergeUser($delUser, $retainUser);
+				$user = self::mergeAdmin($delUser, $retainUser);
 			}
 		}
 		return $user;
 	}
 	
-	public static function generateUser($getUserInfo)
+	public static function generateAdmin($getUserInfo)
 	{
 		//替换掉微信不支持的图片
 		$date = date("Y-m-d H:i:s");
 		$time = time();
-		$getUserInfo['userName'] = isset($getUserInfo['userName']) ? preg_replace('/[\x{10000}-\x{10FFFF}]/u', '', $getUserInfo['userName']) : '';
-		$getUserInfo['realName'] = isset($getUserInfo['realName']) && !empty($getUserInfo['realName']) ? $getUserInfo['realName'] : '';
-		$getUserInfo['sex'] = isset($getUserInfo['sex']) ? $getUserInfo['sex'] : 0;//未知
-		$getUserInfo['identity'] = 0;
+		$getUserInfo['adminName'] = isset($getUserInfo['userName']) ? preg_replace('/[\x{10000}-\x{10FFFF}]/u', '', $getUserInfo['userName']) : '';
 		$subscribe = isset($getUserInfo['subscribe']) ? $getUserInfo['subscribe'] : 0;
 		$getUserInfo['subscribe'] = $subscribe;
-		$getUserInfo['status'] = 0;
-		//默认没有完整用户信息
-		$isFull = isset($getUserInfo['headImgUrl']) && !empty($getUserInfo['headImgUrl']) ? 1 : 0;
-		$getUserInfo['isFull'] = $isFull;
-		$getUserInfo['createTime'] = $date;
 		$getUserInfo['avatar'] = '';
 		$getUserInfo['password'] = '';
 		$getUserInfo['payPassword'] = '';
@@ -279,27 +270,12 @@ class AdminClass extends BaseClass
 		$getUserInfo['source'] = isset($getUserInfo['source']) ? $getUserInfo['source'] : 0;
 		$getUserInfo['hasSubscribe'] = 0;
 		//生成用户基础信息
-		$user = self::add($getUserInfo);
-		$userId = $user['id'];
-		if (empty($user['userName'])) {
-			self::updateById($userId, ['userName' => $userId]);
-		}
-
-		//保存头像
-		if (isset($getUserInfo['headImgUrl']) && !empty($getUserInfo['headImgUrl'])) {
-			if (empty($preUser) || (isset($preUser['avatar']) && empty($preUser['avatar']))) {
-				$imgUrl = $getUserInfo['headImgUrl'];
-				$currentImg = ImageService::generateAvatar($merchantId, $imgUrl);
-				if (!empty($currentImg)) {
-					self::updateById($userId, ['avatar' => $currentImg]);
-				}
-			}
-		}
-		return $user;
+		$admin = self::add($getUserInfo);
+		return $admin;
 	}
 
 	//合并管理员
-	public static function mergeUser($delAdmin, $retainAdmin)
+	public static function mergeAdmin($delAdmin, $retainAdmin)
 	{
 		$connection = Yii::$app->db;//事务处理
 		$transaction = $connection->beginTransaction();
@@ -310,20 +286,20 @@ class AdminClass extends BaseClass
 			return [];
 		}
 	}
-
+	
 	//找出相同unionId的用户
 	public static function getSameUnionId($unionId)
 	{
 		return self::getAllByCondition(['unionId' => $unionId], 'addTime desc', '*');
 	}
-
+	
 	public static function getByOpenId($openId)
 	{
 		return self::getByCondition(['openId' => $openId]);
 	}
 	
 	//将微信和小程序获取的用户信息转成可以保存的用户信息
-	public static function switchUserInfo($info, $source)
+	public static function switchAdminInfo($info, $source)
 	{
 		$openId = '';
 		if (isset($info['openid']) && !empty($info['openid'])) {

+ 2 - 2
biz/admin/services/AdminService.php

@@ -143,9 +143,9 @@ class AdminService extends BaseService
 	}
 
 	//添加更新客户 shish 2020.2.7
-	public static function replaceUser($userInfo, $source, $merchantId)
+	public static function replaceAdmin($adminInfo, $source)
 	{
-		return AdminClass::replaceUser($userInfo, $source, $merchantId);
+		return AdminClass::replaceAdmin($adminInfo, $source);
 	}
 
 }