|
|
@@ -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'])) {
|