UserBindHkWelfareService.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: z-yang
  5. * Date: 2019/4/11
  6. * Time: 15:05
  7. */
  8. namespace App\Modules\User\Services;
  9. use App\Modules\User\Models\UserBindHkWelfare;
  10. class UserBindHkWelfareService
  11. {
  12. public static function isHasGet($uid){
  13. $result = UserBindHkWelfare::join('users','users.openid','=','user_bind_hk_welfare.openid')
  14. ->where('users.id',$uid)
  15. ->select('user_bind_hk_welfare.id','user_bind_hk_welfare.fee','users.distribution_channel_id','users.id as uid')
  16. ->first();
  17. return $result;
  18. }
  19. public static function isHasGetCrm(int $uid){
  20. $result = UserBindHkWelfare::join('users','users.openid','=','user_bind_hk_welfare.openid')
  21. ->where('users.id',$uid)
  22. ->where('user_bind_hk_welfare.type','CRM')
  23. ->select('user_bind_hk_welfare.id','user_bind_hk_welfare.created_at','user_bind_hk_welfare.fee','users.distribution_channel_id','users.id as uid')
  24. ->first();
  25. return $result;
  26. }
  27. public static function getByOpenidToken($openid,$token){
  28. $result = UserBindHkWelfare::where('openid',$openid)->where('token',$token)->select('uid','openid','fee','type','source','token')->first();
  29. return $result;
  30. }
  31. public static function getfreeCurrency($uid,$fee=200,$type='BIND_HK',$source=''){
  32. if(self::isHasGet($uid)){
  33. return false;
  34. }
  35. $user = UserService::getById($uid);
  36. try{
  37. UserBindHkWelfare::create([
  38. 'uid'=>$uid,
  39. 'openid'=>$user->openid,
  40. 'fee'=>$fee,
  41. 'type'=>$type,
  42. 'source'=>$source
  43. ]);
  44. return true;
  45. }catch (\Exception $e){}
  46. return false;
  47. }
  48. //'uid','openid','fee','type','source','token'
  49. public static function getfreeCurrencyV2($uid,$openid,$fee,$type,$source,$token){
  50. return UserBindHkWelfare::create(compact('uid','openid','fee','type','source','token'));
  51. }
  52. }