You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CancelUserServices.php 1.3KB

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. namespace app\services\user;
  3. use app\jobs\user\CancelUserJob;
  4. use app\services\BaseServices;
  5. use app\services\wechat\WechatUserServices;
  6. use think\facade\Log;
  7. class CancelUserServices extends BaseServices
  8. {
  9. public function cancelUser(int $uid)
  10. {
  11. try {
  12. /** @var UserServices $userService */
  13. $userService = app()->make(UserServices::class);
  14. /** @var WechatUserServices $wechatUserServices */
  15. $wechatUserServices = app()->make(WechatUserServices::class);
  16. $userService->update(['spread_uid' => $uid], ['spread_uid' => 0]);// 清除用户与下级的关系
  17. $userService->update($uid, ['spread_uid' => 0, 'integral' => 0, 'now_money' => 0]);//清除
  18. $userService->update(['work_uid' => $uid], ['work_uid' => 0, 'work_userid' => '']);//清除企业微信上下级关系
  19. $userService->destroy($uid);// 软删除用户
  20. $wechatUserServices->update(['uid' => $uid], ['is_del' => 1, 'unionid' => '', 'openid' => time() . rand(1000, 9999)]);// 删除微信用户
  21. // CancelUserJob::dispatch([$uid]);// 相关记录删除队列
  22. } catch (\Throwable $e) {
  23. Log::error('注销用户失败,失败原因:' . $e->getMessage());
  24. }
  25. }
  26. }