UserMsg.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. <?php
  2. namespace App\Modes;
  3. require_once base_path().'/public/getui/getui.php';
  4. use Illuminate\Database\Eloquent\Model;
  5. /**
  6. * App\Modes\UserMsg
  7. *
  8. * @property int $id
  9. * @property int $uid 用户ID
  10. * @property int $type 类型 0-未知 1-系统推送 2-提现消息 3-广告提交订单 4-订单支付完成
  11. * @property string|null $content 消息内容
  12. * @property \Illuminate\Support\Carbon $created_at
  13. * @property \Illuminate\Support\Carbon $updated_at
  14. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg newModelQuery()
  15. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg newQuery()
  16. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg query()
  17. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereContent($value)
  18. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereCreatedAt($value)
  19. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereId($value)
  20. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereType($value)
  21. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereUid($value)
  22. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereUpdatedAt($value)
  23. * @mixin \Eloquent
  24. * @property int $source_uid 来源用户
  25. * @property int $status 0-未读 1-已读
  26. * @property-read \App\Modes\User $User
  27. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereSourceUid($value)
  28. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereStatus($value)
  29. * @property string $title 标题
  30. * @method static \Illuminate\Database\Eloquent\Builder|\App\Modes\UserMsg whereTitle($value)
  31. */
  32. class UserMsg extends Model
  33. {
  34. protected $table = 'user_msg';
  35. public static function getList($uid = null)
  36. {
  37. $user = UserMsg::orderBy('status')
  38. ->orderByDesc('id')
  39. ->with(['User' => function ($query) {
  40. $query->select(['nick_name', 'id']);
  41. }]);
  42. if ($uid != null) {
  43. $user->whereUid($uid);
  44. }
  45. $user->orWhere('type',14);
  46. $resData = $user->paginate(perPage());
  47. return $resData;
  48. }
  49. public function User()
  50. {
  51. return $this->hasOne('App\Modes\User', 'id', 'source_uid');
  52. }
  53. //个推
  54. public static function SendGetui($arr=[]){
  55. $msgarr=[
  56. 'title'=>$arr['title'],
  57. 'uid'=>$arr['uid'],
  58. 'type'=>$arr['type'],
  59. 'content'=>$arr['content']
  60. ];
  61. $r=UserMsg::insert($msgarr);
  62. $res=pushMessageToSingle($arr['content'],$arr['title'],$arr['uid']);
  63. if(!empty($res['result'])&&$res['result']=='error'){
  64. print_r($res);
  65. }
  66. return $r;
  67. }
  68. //群推
  69. public static function SendQuntui($arr=[],$type=0,$parr=[]){
  70. $msgarr=[
  71. 'title'=>$arr['title'],
  72. 'uid'=>$arr['uid'],
  73. 'type'=>$arr['type'],
  74. 'content'=>$arr['content']
  75. ];
  76. $r=UserMsg::insert($msgarr);
  77. $res=pushMessageToApp($arr['title'],$arr['content'],$type,$parr);
  78. if(!empty($res['result'])&&$res['result']=='error'){
  79. print_r($res);
  80. }
  81. return $r;
  82. }
  83. //部分用户推
  84. public static function SendToList($arr,$userarr){
  85. $res=pushMessageToList($arr['title'],$arr['content'],$userarr);
  86. if(!empty($res['result'])&&$res['result']=='error'){
  87. print_r($res);
  88. }
  89. //return $r;
  90. }
  91. }