CrmUserService.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: z-yang
  5. * Date: 2019/7/18
  6. * Time: 10:09
  7. */
  8. namespace App\Modules\User\Services;
  9. use App\Modules\Subscribe\Services\BookOrderService;
  10. use App\Modules\Subscribe\Services\ChapterOrderService;
  11. use App\Modules\User\Models\CrmUser;
  12. use DB;
  13. class CrmUserService
  14. {
  15. public static function isCrmUser($uid,$is_paid){
  16. $model = new CrmUser();
  17. $crmuser = $model->where('uid',$uid)->where('is_enable',1)->select('id')->first();
  18. if($crmuser) return true;
  19. $bind_info = DB::table('friend_link_uid_bind')->join('users','friend_link_uid_bind.openid','users.openid')
  20. ->select('friend_link_uid_bind.created_at')->where('users.id',$uid)->first();
  21. //2019-07-22 20:00 之前有领过书币或者有绑定过的都可以符合
  22. if($bind_info && $bind_info->created_at <= '2019-07-22 20:00:00'){
  23. self::create($uid);
  24. return true;
  25. }
  26. $get_price = UserBindHkWelfareService::isHasGetCrm($uid);
  27. if($get_price && $get_price->created_at <= '2019-07-22 20:00:00'){
  28. self::create($uid);
  29. return true;
  30. }
  31. //是否充值过
  32. if(!$is_paid) return false;
  33. //是否领过书币
  34. if(!$get_price) return false;
  35. //3日内有订阅
  36. //本订
  37. if(BookOrderService::isHasBookOrderInThreeDay($uid)){
  38. self::create($uid);
  39. return true;
  40. }
  41. //章订
  42. if(ChapterOrderService::isHasChapterOrderInThreeDay($uid)){
  43. self::create($uid);
  44. return true;
  45. }
  46. return false;
  47. }
  48. private static function create(int $uid){
  49. $model = new CrmUser();
  50. $crmuser = $model->where('uid',$uid)->where('is_enable',0)->select('id')->first();
  51. if($crmuser){
  52. $crmuser->is_enable = 1;
  53. $crmuser->save();return ;
  54. }
  55. $model->uid = $uid;
  56. $model->is_enable = 1;
  57. $model->save();
  58. }
  59. }