CancelUserServices.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\services\user;
  12. use app\services\BaseServices;
  13. use app\services\wechat\WechatUserServices;
  14. use think\facade\Log;
  15. class CancelUserServices extends BaseServices
  16. {
  17. public function cancelUser(int $uid)
  18. {
  19. try {
  20. /** @var UserServices $userService */
  21. $userService = app()->make(UserServices::class);
  22. /** @var WechatUserServices $wechatUserServices */
  23. $wechatUserServices = app()->make(WechatUserServices::class);
  24. $userService->update(['spread_uid' => $uid], ['spread_uid' => 0]);// 清除用户与下级的关系
  25. $userService->update($uid, ['spread_uid' => 0, 'integral' => 0, 'now_money' => 0]);//清除
  26. $userService->update(['work_uid' => $uid], ['work_uid' => 0, 'work_userid' => '']);//清除企业微信上下级关系
  27. $userService->destroy($uid);// 软删除用户
  28. $wechatUserServices->update(['uid' => $uid], ['is_del' => 1, 'unionid' => '', 'openid' => time() . rand(1000, 9999)]);// 删除微信用户
  29. // CancelUserJob::dispatch([$uid]);// 相关记录删除队列
  30. } catch (\Throwable $e) {
  31. Log::error('注销用户失败,失败原因:' . $e->getMessage());
  32. }
  33. }
  34. }