MemberSetmealRepository.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: wuzhenke
  5. * Date: 2018/11/12
  6. * Time: 10:21
  7. */
  8. namespace App\Repositories;
  9. use App\Models\Jobs;
  10. use App\Models\MembersSetmeal;
  11. use Prettus\Repository\Criteria\RequestCriteria;
  12. use Prettus\Repository\Eloquent\BaseRepository;
  13. class MemberSetmealRepository extends BaseRepository
  14. {
  15. public function model()
  16. {
  17. return MembersSetmeal::class;
  18. }
  19. public function boot()
  20. {
  21. $this->pushCriteria(app(RequestCriteria::class));
  22. }
  23. public function getSetmealByUid($id, $utype)
  24. {
  25. return $this->model->where(['uid'=>$id,'utype'=>$utype])->first();
  26. }
  27. public function modifyJobsMeanwhile($id, $count, $type)
  28. {
  29. if ($type == 1) {
  30. return $this->model->where('id', $id)->increment('jobs_meanwhile', $count);
  31. } else {
  32. $jobs_meanwhile = $this->find($id, ['jobs_meanwhile']);
  33. if ($jobs_meanwhile->jobs_meanwhile>$count) {
  34. return $this->model->where('id', $id)->decrement('jobs_meanwhile', $count);
  35. } else {
  36. return $this->model->where('id', $id)->update(['jobs_meanwhile'=>0]);
  37. }
  38. }
  39. }
  40. public function updateSetmeal($sqlData, $id)
  41. {
  42. return $this->model->where(['id'=>$id])->update($sqlData);
  43. }
  44. public function incrementData($where, $filed, $num = 1)
  45. {
  46. return $this->model->where($where)->increment($filed, $num);
  47. }
  48. public function decrementData($where, $filed, $num = 1)
  49. {
  50. return $this->model->where($where)->decrement($filed, $num);
  51. }
  52. public function getMemberSetmeals($company_ids)
  53. {
  54. if ($company_ids) {
  55. return $this->model->whereIn('uid', $company_ids)->get();
  56. } else {
  57. return $this->model->get();
  58. }
  59. }
  60. public function checkSetmeals($where,$or){
  61. return $this->model->select("id")->where($where)->orWhere($or)->get();
  62. }
  63. }