QappPushUser.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace App\Modules\Push\Models;
  3. use DB;
  4. use Illuminate\Database\Eloquent\Model;
  5. class QappPushUser extends Model
  6. {
  7. protected $table = 'qapp_push_user';
  8. protected $fillable = ['uid', 'reg_id', 'provider', 'app_id', 'channel_id'];
  9. /**
  10. * @param $uid
  11. * @return array
  12. */
  13. public static function getPushUserByUid($uid)
  14. {
  15. if (empty($uid)) {
  16. return [];
  17. }
  18. $tableName = 'qapp_push_user';
  19. return DB::connection('mysql::write')
  20. ->table($tableName)
  21. ->where('uid', $uid)->first();
  22. }
  23. public static function getPushUserByUids($uids): array
  24. {
  25. if (empty($uids)) {
  26. return [];
  27. }
  28. $result = self::whereIn('uid', $uids)->get();
  29. return $result ? $result->toArray() : [];
  30. }
  31. /**
  32. * @param $uid
  33. * @param $regId
  34. * @param $appId
  35. * @param $provider
  36. * @param $channelId
  37. * @return bool
  38. */
  39. public static function initPushUser($uid, $regId, $appId, $provider, $channelId): bool
  40. {
  41. if (empty($uid) || empty($regId) || empty($appId) || empty($provider)) {
  42. return false;
  43. }
  44. return self::insert([
  45. 'uid' => $uid,
  46. 'reg_id' => $regId,
  47. 'provider' => strtolower($provider),
  48. 'app_id' => $appId,
  49. 'channel_id' => $channelId,
  50. 'created_at' => date('Y-m-d H:i:s', SERVER_TIME),
  51. 'updated_at' => date('Y-m-d H:i:s', SERVER_TIME),
  52. ]);
  53. }
  54. /**
  55. * @param $uid
  56. * @param $regId
  57. * @return bool
  58. */
  59. public static function setUserRegId($uid, $regId): bool
  60. {
  61. if (empty($uid) || empty($regId)) {
  62. return false;
  63. }
  64. return self::where('uid', $uid)->update(['reg_id' => $regId, 'updated_at' => date('Y-m-d H:i:s', SERVER_TIME)]);
  65. }
  66. }