合并微信賬號和h5賬號時有信息遺漏問題修復
public static function setUserRelationInfos($bindingPhone, $uid, $newUid, $isDel = true, $qcodeId = 0)
{
self::startTrans();
try {
//修改下級推廣人關系
self::where('spread_uid', $uid)->update(['spread_uid' => $newUid]);
//修改用戶金額變動記錄表
self::getDb('user_bill')->where('uid', $uid)->update(['uid' => $newUid]);
//修改簽到記錄表
self::getDb('user_sign')->where('uid', $uid)->update(['uid' => $newUid]);
//修改虛擬幣充值記錄表
self::getDb('user_recharge')->where('uid', $uid)->update(['uid' => $newUid]);
//修改收貨地址表
self::getDb('user_address')->where('uid', $uid)->update(['uid' => $newUid]);
//修改提現記錄用戶
self::getDb('user_extract')->where('uid', $uid)->update(['uid' => $newUid]);
//修改專題相關表
self::getDb('special_buy')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('special_watch')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('learning_records')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('special_exchange')->where('use_uid', $uid)->update(['use_uid' => $newUid]);
self::getDb('special_record')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('special_relation')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('special_reply')->where('uid', $uid)->update(['uid' => $newUid]);
//修改直播嘉賓表
self::getDb('live_user')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('live_barrage')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('live_honoured_guest')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('live_reward')->where('uid', $uid)->update(['uid' => $newUid]);
//修改購物車記錄表
self::getDb('store_cart')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('store_product_reply')->where('uid', $uid)->update(['uid' => $newUid]);
//修改用戶訂單記錄
self::getDb('store_order')->where('uid', $uid)->update(['uid' => $newUid]);
//修改拼團用戶記錄
self::getDb('store_pink')->where('uid', $uid)->update(['uid' => $newUid]);
//修改手機用戶表記錄
self::getDb('phone_user')->where('uid', $uid)->update(['uid' => $newUid]);
//修改會員記錄表記錄
self::getDb('member_record')->where('uid', $uid)->update(['uid' => $newUid]);
//修改搜索記錄表記錄
self::getDb('search_history')->where('uid', $uid)->update(['uid' => $newUid]);
//修改用戶報名表記錄
self::getDb('event_sign_up')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('event_write_off_user')->where('uid', $uid)->update(['uid' => $newUid]);
//修改資料訂單表記錄
self::getDb('data_download_buy')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('data_download_order')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('data_download_records')->where('uid', $uid)->update(['uid' => $newUid]);
//修改證書記錄表記錄
self::getDb('certificate_record')->where('uid', $uid)->update(['uid' => $newUid]);
//修改考試相關表記錄
self::getDb('examination_record')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('examination_test_record')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('examination_wrong_bank')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('test_paper_obtain')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('test_paper_order')->where('uid', $uid)->update(['uid' => $newUid]);
//修改講師相關表
self::getDb('merchant')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('merchant_follow')->where('uid', $uid)->update(['uid' => $newUid]);
self::getDb('user_enter')->where('uid', $uid)->update(['uid' => $newUid]);
//修改學員相關表
self::getDb('student')->where('uid', $uid)->update(['uid' => $newUid]);
//修改老師相關表
self::getDb('teacher')->where('uid', $uid)->update(['uid' => $newUid]);
//刪除用戶表H5用戶記錄
$user = self::where('uid', $uid)->find();
if ($isDel) self::where('uid', $uid)->delete();
//修改上級推廣關系和綁定手機號碼
self::where('uid', $newUid)->update([
'phone' => $bindingPhone,
'spread_uid' => $user['spread_uid'],
'spread_time' => $user['spread_time'],
'valid_time' => $user['valid_time'],
'is_promoter' => $user['is_promoter'],
'pay_count' => $user['pay_count'],
'is_senior' => $user['is_senior'],
'now_money' => $user['now_money'],
'gold_num' => $user['gold_num'],
'brokerage_price' => $user['brokerage_price'],
'is_permanent' => $user['is_permanent'],
'member_time' => $user['member_time'],
'overdue_time' => $user['overdue_time'],
'level' => $user['level'],
'identitys' => $user['identitys'],
'is_write_off' => $user['is_write_off'],
'business' => $user['business']
]);
if ($qcodeId) WechatQrcode::where('id', $qcodeId)->update(['scan_id' => $newUid]);
self::commit();
Session::clear('wap');
Session::set('loginUid', $newUid, 'wap');
return true;
} catch (\Exception $e) {
self::rollback();
return self::setErrorInfo($e->getMessage());
}
}