MembersPoint.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Model;
  4. use Illuminate\Database\Eloquent\SoftDeletes;
  5. /**
  6. * App\Models\MembersPoint
  7. *
  8. * @property int $id
  9. * @property int $uid 会员UID
  10. * @property int $utype 会员类型:1企业;2个人
  11. * @property int $points 会员积分
  12. * @property \Illuminate\Support\Carbon|null $created_at
  13. * @property \Illuminate\Support\Carbon|null $updated_at
  14. * @property string|null $deleted_at
  15. * @property-read \App\Models\Company $companys
  16. * @property-read \App\Models\MemberInfo $memberInfos
  17. * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\TaskLog[] $taskLogs
  18. * @method static bool|null forceDelete()
  19. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint newModelQuery()
  20. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint newQuery()
  21. * @method static \Illuminate\Database\Query\Builder|\App\Models\MembersPoint onlyTrashed()
  22. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint query()
  23. * @method static bool|null restore()
  24. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint whereCreatedAt($value)
  25. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint whereDeletedAt($value)
  26. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint whereId($value)
  27. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint wherePoints($value)
  28. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint whereUid($value)
  29. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint whereUpdatedAt($value)
  30. * @method static \Illuminate\Database\Eloquent\Builder|\App\Models\MembersPoint whereUtype($value)
  31. * @method static \Illuminate\Database\Query\Builder|\App\Models\MembersPoint withTrashed()
  32. * @method static \Illuminate\Database\Query\Builder|\App\Models\MembersPoint withoutTrashed()
  33. * @mixin \Eloquent
  34. */
  35. class MembersPoint extends Model
  36. {
  37. use SoftDeletes;
  38. protected $table = 'members_points';
  39. protected $guarded = [];
  40. public function companys()
  41. {
  42. return $this->hasOne(Company::class, 'id', 'uid');
  43. }
  44. public function getChargeLogs()
  45. {
  46. return $this->hasMany(MembersChargeLog::class, 'log_uid', 'uid');
  47. }
  48. public function getMembersHandsel()
  49. {
  50. return $this->hasMany(MembersHandsel::class, 'uid', 'uid');
  51. }
  52. public function memberInfos()
  53. {
  54. return $this->hasOne(MemberInfo::class, 'uid', 'uid');
  55. }
  56. public function taskLogs()
  57. {
  58. $utype = $this->getUtype();
  59. return $this->hasMany(TaskLog::class, 'uid', 'uid')->where(['utype'=>$utype]);
  60. }
  61. private function getUtype()
  62. {
  63. if (auth('web-member')->user()) {
  64. $utype = 2;
  65. }
  66. if (auth('web-company')->user()) {
  67. $utype= 1;
  68. }
  69. return $utype;
  70. }
  71. public function membersHandsels()
  72. {
  73. return $this->hasMany(MembersHandsel::class, 'uid', 'uid');
  74. }
  75. }