|
|
@@ -2,6 +2,8 @@
|
|
|
|
|
|
namespace bizHd\user\services;
|
|
|
|
|
|
+use bizGhs\custom\classes\CustomClass;
|
|
|
+use bizGhs\order\classes\OrderClass;
|
|
|
use bizHd\base\services\BaseService;
|
|
|
use bizHd\coupon\classes\CouponAssetClass;
|
|
|
use biz\sj\classes\MerchantAssetClass;
|
|
|
@@ -20,255 +22,255 @@ use common\components\wxUtil;
|
|
|
|
|
|
class UserService extends BaseService
|
|
|
{
|
|
|
-
|
|
|
- public static $baseFile = '\bizHd\user\classes\UserClass';
|
|
|
-
|
|
|
- //获取客户列表 ssh 2019.11.30
|
|
|
- public static function getUserList($where, $delStatus = 0)
|
|
|
- {
|
|
|
- //默认取没有删除的用户
|
|
|
- $where['delStatus'] = $delStatus;
|
|
|
- $data = UserClass::getList('*', $where, 'visitTime DESC');
|
|
|
- $list = isset($data['list']) && !empty($data['list']) ? $data['list'] : [];
|
|
|
- if (empty($list)) {
|
|
|
- return $data;
|
|
|
- }
|
|
|
- $data['list'] = UserClass::groupUserBaseInfo($list);
|
|
|
- return $data;
|
|
|
- }
|
|
|
-
|
|
|
- //获取客户基本和资产信息 ssh 2019.11.30
|
|
|
- public static function getUserInfo($id, $sensitive = true)
|
|
|
- {
|
|
|
- return UserClass::getUserInfo($id, $sensitive);
|
|
|
- }
|
|
|
-
|
|
|
- //获取客户基本、资产和订单信息 ssh 2019.11.30
|
|
|
- public static function getFullUserInfo($id)
|
|
|
- {
|
|
|
- $userInfo = UserClass::getUserInfo($id);
|
|
|
- $order = OrderService::getUserOrder($id, 10, 'addTime desc');
|
|
|
- $userInfo['orderList'] = $order;
|
|
|
- return $userInfo;
|
|
|
- }
|
|
|
-
|
|
|
- //根据手机号查询客户 ssh 2019.12.1
|
|
|
- public static function getByMobile($mobile, $merchantId)
|
|
|
- {
|
|
|
- return UserClass::getByMobile($mobile, $merchantId);
|
|
|
- }
|
|
|
-
|
|
|
- //添加更新客户 ssh 2020.2.7
|
|
|
- public static function replaceUser($userInfo, $source, $merchantId)
|
|
|
- {
|
|
|
- return UserClass::replaceUser($userInfo, $source, $merchantId);
|
|
|
- }
|
|
|
-
|
|
|
- public static function getByOpenId($openId, $merchantId)
|
|
|
- {
|
|
|
- return UserClass::getByOpenId($openId, $merchantId);
|
|
|
- }
|
|
|
-
|
|
|
- public static function getByMiniOpenId($miniOpenId)
|
|
|
- {
|
|
|
- return UserClass::getByMiniOpenId($miniOpenId);
|
|
|
- }
|
|
|
-
|
|
|
- public static function getByUnionId($id)
|
|
|
- {
|
|
|
- return UserClass::getByUnionId($id);
|
|
|
- }
|
|
|
-
|
|
|
- //同步微信用户 ssh 2020.2.8
|
|
|
- public static function syncWxAllUser($merchantId)
|
|
|
- {
|
|
|
- $return = UserClass::syncWxUser($merchantId);
|
|
|
- while (isset($return['count']) && $return['count'] > 0 && isset($return['nextOpenId']) && !empty($return['nextOpenId'])) {
|
|
|
- $nextOpenId = $return['nextOpenId'];
|
|
|
- $return = UserClass::syncWxUser($merchantId, $nextOpenId);
|
|
|
- }
|
|
|
- return ['total' => $return['total']];
|
|
|
- }
|
|
|
-
|
|
|
- //更新微信头像 ssh 2020.1.12
|
|
|
- public static function syncAvatar($merchantId, $nextOpenId = '')
|
|
|
- {
|
|
|
- set_time_limit(0);
|
|
|
- $merchant = xhMerchantService::getById($merchantId);
|
|
|
- //一次拉取调用最多拉取10000个关注者的OpenID
|
|
|
- $result = wxUtil::getSubscribeUserList($merchant, $nextOpenId);
|
|
|
- $total = isset($result['total']) ? $result['total'] : 0;
|
|
|
- $next_openid = isset($result['next_openid']) ? $result['next_openid'] : '';
|
|
|
- $count = isset($result['count']) ? $result['count'] : 0;
|
|
|
- $openIdList = isset($result['data']['openid']) ? $result['data']['openid'] : [];
|
|
|
- if ($count == 0) {
|
|
|
- util::stop("完成更新\n");
|
|
|
- }
|
|
|
- $total = count($openIdList);
|
|
|
- $totalPage = $total > 100 ? ceil($total / 100) : 1;
|
|
|
- for ($m = 1; $m <= $totalPage; $m++) {
|
|
|
- $offset = ($m - 1) * 100;
|
|
|
- $subIdList = array_slice($openIdList, $offset, 100);
|
|
|
- $info = wxUtil::batchGetUserInfo($merchant, $subIdList);
|
|
|
- if (empty($info) || isset($info['user_info_list']) == false || empty($info['user_info_list'])) {
|
|
|
- continue;
|
|
|
- }
|
|
|
- $user_info_list = $info['user_info_list'];
|
|
|
- foreach ($user_info_list as $val) {
|
|
|
- $headImgUrl = $val['headimgurl'];
|
|
|
- $openId = $val['openid'];
|
|
|
- $img = ImageService::generateAvatar($merchantId, $headImgUrl);
|
|
|
- if (!empty($img)) {
|
|
|
- UserClass::updateByCondition(['openId' => $openId], ['avatar' => $img]);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- echo "更新成功\n";
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 更新用户的访问时间
|
|
|
- */
|
|
|
- public static function updateVisitTime($merchantId, $userId)
|
|
|
- {
|
|
|
- $date = date("Ymd");
|
|
|
- if (empty($userId)) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- //每5分钟更新一次访问时间
|
|
|
- $key = 'UserVisitTime_' . $date . '_' . $merchantId . '_' . $userId;
|
|
|
- $respond = Yii::$app->redis->executeCommand('GET', [$key]);
|
|
|
- //每过5分钟更新访问时间
|
|
|
- if (empty($respond)) {
|
|
|
- Yii::$app->redis->executeCommand('SET', [$key, $date]);
|
|
|
- Yii::$app->redis->executeCommand('EXPIRE', [$key, 300]);
|
|
|
- $time = time();
|
|
|
- self::updateById($userId, ['visitTime' => $time]);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //注册成为普通会员(非VIP),并更新用户相关信息 ssh 2019.9.7
|
|
|
- public static function becomeMember($user, $merchant, $data)
|
|
|
- {
|
|
|
- //合并店长后台添加的客户
|
|
|
- $merchantId = $merchant['id'];
|
|
|
- $mobile = isset($data['mobile']) ? $data['mobile'] : '';
|
|
|
- if (!empty($mobile)) {
|
|
|
- $hasUser = UserClass::getByCondition(['merchantId' => $merchantId, 'mobile' => $mobile]);
|
|
|
- $userSource = UserClass::$userSourceId;
|
|
|
- $systemId = $userSource['system']['id'];
|
|
|
- Yii::info($hasUser['sourceType'] . ' -- ' . $systemId);
|
|
|
- if (!empty($hasUser) && $hasUser['sourceType'] == $systemId) {
|
|
|
- UserClass::mergeUser($hasUser, $user);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //合并之后再更新信息
|
|
|
- $userId = $user['id'];
|
|
|
- UserClass::updateById($userId, $data);
|
|
|
- //注意成为会员和关注公众号时要去检查是否符合发优惠券条件
|
|
|
- $userAsset = UserAssetClass::getByUserId($userId);
|
|
|
- $user['mobile'] = $mobile;
|
|
|
- CouponAssetClass::giveCoupon($user, $merchant, $userAsset);
|
|
|
-
|
|
|
- //增加会员数
|
|
|
- MerchantAssetService::addMemberNum($merchantId);
|
|
|
- }
|
|
|
-
|
|
|
- //取消关注 ssh 2019.9.8
|
|
|
- public static function unFocus($userId, $merchantId)
|
|
|
- {
|
|
|
- self::updateById($userId, ['subscribe' => 0, 'hasSubscribe' => 1]);
|
|
|
- //商家粉丝减少
|
|
|
- MerchantAssetClass::reduceFans($merchantId);
|
|
|
- }
|
|
|
-
|
|
|
- //关注公众号的后续 ssh 2020.5.5
|
|
|
- public static function focus($user, $merchant)
|
|
|
- {
|
|
|
- $userId = $user['id'];
|
|
|
- UserClass::updateById($userId, ['subscribe' => 1]);
|
|
|
- $userAsset = UserAssetClass::getByUserId($userId);
|
|
|
- CouponAssetClass::giveCoupon($user, $merchant, $userAsset);
|
|
|
- }
|
|
|
-
|
|
|
- //批量获取用户信息,图片等信息处理好了 ssh 2019.11.28
|
|
|
- public static function getUserByIds($ids)
|
|
|
- {
|
|
|
- return UserClass::getUserByIds($ids);
|
|
|
- }
|
|
|
-
|
|
|
- //验证支付密码是否正确 ssh 2019.12.6
|
|
|
- public static function validPayPassword($password, $user)
|
|
|
- {
|
|
|
- if (isset($user['hasPayPwd']) == false || $user['hasPayPwd'] == 0) {
|
|
|
- util::fail('您还没有设置支付密码');
|
|
|
- }
|
|
|
- $payPassword = $user['payPassword'];
|
|
|
- if (password_verify($password, $payPassword) == false) {
|
|
|
- util::fail('密码错误');
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //验证用户权限
|
|
|
- public static function valid($info, $merchantId)
|
|
|
- {
|
|
|
- return UserClass::valid($info, $merchantId);
|
|
|
- }
|
|
|
-
|
|
|
- //根据消费次数和有没领优惠券来判断是不是新人
|
|
|
- public static function newUser($userInfo)
|
|
|
- {
|
|
|
- return UserClass::newUser($userInfo);
|
|
|
- }
|
|
|
-
|
|
|
- //添加新客户 ssh 2020.1.10
|
|
|
- public static function addUser($data)
|
|
|
- {
|
|
|
- //merchantId $source $realName $member $growth $balance $mobile
|
|
|
- //必传参数
|
|
|
- validate::easyCheck(['merchantId', 'mobile'], $data);
|
|
|
-
|
|
|
- $merchantId = $data['merchantId'];
|
|
|
- $source = 'system';
|
|
|
- $mobile = $data['mobile'];
|
|
|
- $realName = isset($data['realName']) ? $data['realName'] : $mobile;
|
|
|
- $member = isset($data['member']) ? $data['member'] : -1;
|
|
|
- $balance = isset($data['balance']) ? $data['balance'] : 0;
|
|
|
- $growth = isset($data['growth']) ? $data['growth'] : 0;
|
|
|
-
|
|
|
- $originalInfo = [];
|
|
|
- $originalInfo['merchantId'] = $merchantId;
|
|
|
- $originalInfo['mobile'] = $mobile;
|
|
|
- $originalInfo['realName'] = $realName;
|
|
|
- $originalInfo['userName'] = $realName;
|
|
|
-
|
|
|
- $user = UserClass::replaceUser($originalInfo, $source, $merchantId);
|
|
|
-
|
|
|
- $extend = MerchantExtendService::getByMerchantId($merchantId);
|
|
|
-
|
|
|
- //等级
|
|
|
- if ($member > 0) {
|
|
|
- $gradeList = xhMerchantExtendService::getGradeList($extend, 'desc');
|
|
|
- $growth = isset($gradeList[$member]['growth']) ? $gradeList[$member]['growth'] : 0;
|
|
|
- }
|
|
|
-
|
|
|
- //余额成长值更新
|
|
|
- $userId = $user['id'];
|
|
|
- $data = [];
|
|
|
- $data['growth'] = $growth;
|
|
|
- $data['balance'] = $balance > 0 ? $balance : 0;
|
|
|
- UserAssetService::updateByUserId($userId, $data);
|
|
|
-
|
|
|
- //会员升级
|
|
|
- UserIntegralService::increaseToUpgrade(0, $growth, 0, $userId, $merchantId, $extend);
|
|
|
- return $user;
|
|
|
- }
|
|
|
-
|
|
|
- //合并用户 ssh 2020.5.12
|
|
|
- public static function mergeUser($delUser, $retainUser)
|
|
|
- {
|
|
|
- return UserClass::mergeUser($delUser, $retainUser);
|
|
|
- }
|
|
|
-
|
|
|
+
|
|
|
+ public static $baseFile = '\bizHd\user\classes\UserClass';
|
|
|
+
|
|
|
+ //获取客户列表 ssh 2019.11.30
|
|
|
+ public static function getUserList($where, $delStatus = 0)
|
|
|
+ {
|
|
|
+ //默认取没有删除的用户
|
|
|
+ $where['delStatus'] = $delStatus;
|
|
|
+ $data = UserClass::getList('*', $where, 'visitTime DESC');
|
|
|
+ $list = isset($data['list']) && !empty($data['list']) ? $data['list'] : [];
|
|
|
+ if (empty($list)) {
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+ $data['list'] = UserClass::groupUserBaseInfo($list);
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取客户基本和资产信息 ssh 2019.11.30
|
|
|
+ public static function getUserInfo($id, $sensitive = true)
|
|
|
+ {
|
|
|
+ return UserClass::getUserInfo($id, $sensitive);
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取客户基本、资产和订单信息 ssh 2019.11.30
|
|
|
+ public static function getFullUserInfo($id)
|
|
|
+ {
|
|
|
+ $userInfo = CustomClass::getCustom($id);
|
|
|
+ $order = OrderClass::getCustomOrder($id, 10, 'addTime desc');
|
|
|
+ $userInfo['orderList'] = $order;
|
|
|
+ return $userInfo;
|
|
|
+ }
|
|
|
+
|
|
|
+ //根据手机号查询客户 ssh 2019.12.1
|
|
|
+ public static function getByMobile($mobile, $merchantId)
|
|
|
+ {
|
|
|
+ return UserClass::getByMobile($mobile, $merchantId);
|
|
|
+ }
|
|
|
+
|
|
|
+ //添加更新客户 ssh 2020.2.7
|
|
|
+ public static function replaceUser($userInfo, $source, $merchantId)
|
|
|
+ {
|
|
|
+ return UserClass::replaceUser($userInfo, $source, $merchantId);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static function getByOpenId($openId, $merchantId)
|
|
|
+ {
|
|
|
+ return UserClass::getByOpenId($openId, $merchantId);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static function getByMiniOpenId($miniOpenId)
|
|
|
+ {
|
|
|
+ return UserClass::getByMiniOpenId($miniOpenId);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static function getByUnionId($id)
|
|
|
+ {
|
|
|
+ return UserClass::getByUnionId($id);
|
|
|
+ }
|
|
|
+
|
|
|
+ //同步微信用户 ssh 2020.2.8
|
|
|
+ public static function syncWxAllUser($merchantId)
|
|
|
+ {
|
|
|
+ $return = UserClass::syncWxUser($merchantId);
|
|
|
+ while (isset($return['count']) && $return['count'] > 0 && isset($return['nextOpenId']) && !empty($return['nextOpenId'])) {
|
|
|
+ $nextOpenId = $return['nextOpenId'];
|
|
|
+ $return = UserClass::syncWxUser($merchantId, $nextOpenId);
|
|
|
+ }
|
|
|
+ return ['total' => $return['total']];
|
|
|
+ }
|
|
|
+
|
|
|
+ //更新微信头像 ssh 2020.1.12
|
|
|
+ public static function syncAvatar($merchantId, $nextOpenId = '')
|
|
|
+ {
|
|
|
+ set_time_limit(0);
|
|
|
+ $merchant = xhMerchantService::getById($merchantId);
|
|
|
+ //一次拉取调用最多拉取10000个关注者的OpenID
|
|
|
+ $result = wxUtil::getSubscribeUserList($merchant, $nextOpenId);
|
|
|
+ $total = isset($result['total']) ? $result['total'] : 0;
|
|
|
+ $next_openid = isset($result['next_openid']) ? $result['next_openid'] : '';
|
|
|
+ $count = isset($result['count']) ? $result['count'] : 0;
|
|
|
+ $openIdList = isset($result['data']['openid']) ? $result['data']['openid'] : [];
|
|
|
+ if ($count == 0) {
|
|
|
+ util::stop("完成更新\n");
|
|
|
+ }
|
|
|
+ $total = count($openIdList);
|
|
|
+ $totalPage = $total > 100 ? ceil($total / 100) : 1;
|
|
|
+ for ($m = 1; $m <= $totalPage; $m++) {
|
|
|
+ $offset = ($m - 1) * 100;
|
|
|
+ $subIdList = array_slice($openIdList, $offset, 100);
|
|
|
+ $info = wxUtil::batchGetUserInfo($merchant, $subIdList);
|
|
|
+ if (empty($info) || isset($info['user_info_list']) == false || empty($info['user_info_list'])) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $user_info_list = $info['user_info_list'];
|
|
|
+ foreach ($user_info_list as $val) {
|
|
|
+ $headImgUrl = $val['headimgurl'];
|
|
|
+ $openId = $val['openid'];
|
|
|
+ $img = ImageService::generateAvatar($merchantId, $headImgUrl);
|
|
|
+ if (!empty($img)) {
|
|
|
+ UserClass::updateByCondition(['openId' => $openId], ['avatar' => $img]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ echo "更新成功\n";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 更新用户的访问时间
|
|
|
+ */
|
|
|
+ public static function updateVisitTime($merchantId, $userId)
|
|
|
+ {
|
|
|
+ $date = date("Ymd");
|
|
|
+ if (empty($userId)) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ //每5分钟更新一次访问时间
|
|
|
+ $key = 'UserVisitTime_' . $date . '_' . $merchantId . '_' . $userId;
|
|
|
+ $respond = Yii::$app->redis->executeCommand('GET', [$key]);
|
|
|
+ //每过5分钟更新访问时间
|
|
|
+ if (empty($respond)) {
|
|
|
+ Yii::$app->redis->executeCommand('SET', [$key, $date]);
|
|
|
+ Yii::$app->redis->executeCommand('EXPIRE', [$key, 300]);
|
|
|
+ $time = time();
|
|
|
+ self::updateById($userId, ['visitTime' => $time]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //注册成为普通会员(非VIP),并更新用户相关信息 ssh 2019.9.7
|
|
|
+ public static function becomeMember($user, $merchant, $data)
|
|
|
+ {
|
|
|
+ //合并店长后台添加的客户
|
|
|
+ $merchantId = $merchant['id'];
|
|
|
+ $mobile = isset($data['mobile']) ? $data['mobile'] : '';
|
|
|
+ if (!empty($mobile)) {
|
|
|
+ $hasUser = UserClass::getByCondition(['merchantId' => $merchantId, 'mobile' => $mobile]);
|
|
|
+ $userSource = UserClass::$userSourceId;
|
|
|
+ $systemId = $userSource['system']['id'];
|
|
|
+ Yii::info($hasUser['sourceType'] . ' -- ' . $systemId);
|
|
|
+ if (!empty($hasUser) && $hasUser['sourceType'] == $systemId) {
|
|
|
+ UserClass::mergeUser($hasUser, $user);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //合并之后再更新信息
|
|
|
+ $userId = $user['id'];
|
|
|
+ UserClass::updateById($userId, $data);
|
|
|
+ //注意成为会员和关注公众号时要去检查是否符合发优惠券条件
|
|
|
+ $userAsset = UserAssetClass::getByUserId($userId);
|
|
|
+ $user['mobile'] = $mobile;
|
|
|
+ CouponAssetClass::giveCoupon($user, $merchant, $userAsset);
|
|
|
+
|
|
|
+ //增加会员数
|
|
|
+ MerchantAssetService::addMemberNum($merchantId);
|
|
|
+ }
|
|
|
+
|
|
|
+ //取消关注 ssh 2019.9.8
|
|
|
+ public static function unFocus($userId, $merchantId)
|
|
|
+ {
|
|
|
+ self::updateById($userId, ['subscribe' => 0, 'hasSubscribe' => 1]);
|
|
|
+ //商家粉丝减少
|
|
|
+ MerchantAssetClass::reduceFans($merchantId);
|
|
|
+ }
|
|
|
+
|
|
|
+ //关注公众号的后续 ssh 2020.5.5
|
|
|
+ public static function focus($user, $merchant)
|
|
|
+ {
|
|
|
+ $userId = $user['id'];
|
|
|
+ UserClass::updateById($userId, ['subscribe' => 1]);
|
|
|
+ $userAsset = UserAssetClass::getByUserId($userId);
|
|
|
+ CouponAssetClass::giveCoupon($user, $merchant, $userAsset);
|
|
|
+ }
|
|
|
+
|
|
|
+ //批量获取用户信息,图片等信息处理好了 ssh 2019.11.28
|
|
|
+ public static function getUserByIds($ids)
|
|
|
+ {
|
|
|
+ return UserClass::getUserByIds($ids);
|
|
|
+ }
|
|
|
+
|
|
|
+ //验证支付密码是否正确 ssh 2019.12.6
|
|
|
+ public static function validPayPassword($password, $user)
|
|
|
+ {
|
|
|
+ if (isset($user['hasPayPwd']) == false || $user['hasPayPwd'] == 0) {
|
|
|
+ util::fail('您还没有设置支付密码');
|
|
|
+ }
|
|
|
+ $payPassword = $user['payPassword'];
|
|
|
+ if (password_verify($password, $payPassword) == false) {
|
|
|
+ util::fail('密码错误');
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //验证用户权限
|
|
|
+ public static function valid($info, $merchantId)
|
|
|
+ {
|
|
|
+ return UserClass::valid($info, $merchantId);
|
|
|
+ }
|
|
|
+
|
|
|
+ //根据消费次数和有没领优惠券来判断是不是新人
|
|
|
+ public static function newUser($userInfo)
|
|
|
+ {
|
|
|
+ return UserClass::newUser($userInfo);
|
|
|
+ }
|
|
|
+
|
|
|
+ //添加新客户 ssh 2020.1.10
|
|
|
+ public static function addUser($data)
|
|
|
+ {
|
|
|
+ //merchantId $source $realName $member $growth $balance $mobile
|
|
|
+ //必传参数
|
|
|
+ validate::easyCheck(['merchantId', 'mobile'], $data);
|
|
|
+
|
|
|
+ $merchantId = $data['merchantId'];
|
|
|
+ $source = 'system';
|
|
|
+ $mobile = $data['mobile'];
|
|
|
+ $realName = isset($data['realName']) ? $data['realName'] : $mobile;
|
|
|
+ $member = isset($data['member']) ? $data['member'] : -1;
|
|
|
+ $balance = isset($data['balance']) ? $data['balance'] : 0;
|
|
|
+ $growth = isset($data['growth']) ? $data['growth'] : 0;
|
|
|
+
|
|
|
+ $originalInfo = [];
|
|
|
+ $originalInfo['merchantId'] = $merchantId;
|
|
|
+ $originalInfo['mobile'] = $mobile;
|
|
|
+ $originalInfo['realName'] = $realName;
|
|
|
+ $originalInfo['userName'] = $realName;
|
|
|
+
|
|
|
+ $user = UserClass::replaceUser($originalInfo, $source, $merchantId);
|
|
|
+
|
|
|
+ $extend = MerchantExtendService::getByMerchantId($merchantId);
|
|
|
+
|
|
|
+ //等级
|
|
|
+ if ($member > 0) {
|
|
|
+ $gradeList = xhMerchantExtendService::getGradeList($extend, 'desc');
|
|
|
+ $growth = isset($gradeList[$member]['growth']) ? $gradeList[$member]['growth'] : 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ //余额成长值更新
|
|
|
+ $userId = $user['id'];
|
|
|
+ $data = [];
|
|
|
+ $data['growth'] = $growth;
|
|
|
+ $data['balance'] = $balance > 0 ? $balance : 0;
|
|
|
+ UserAssetService::updateByUserId($userId, $data);
|
|
|
+
|
|
|
+ //会员升级
|
|
|
+ UserIntegralService::increaseToUpgrade(0, $growth, 0, $userId, $merchantId, $extend);
|
|
|
+ return $user;
|
|
|
+ }
|
|
|
+
|
|
|
+ //合并用户 ssh 2020.5.12
|
|
|
+ public static function mergeUser($delUser, $retainUser)
|
|
|
+ {
|
|
|
+ return UserClass::mergeUser($delUser, $retainUser);
|
|
|
+ }
|
|
|
+
|
|
|
}
|