OrderIssueTypeService.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace App\Services;
  3. use App\Traits\ServiceAppAop;
  4. use App\OrderIssueType;
  5. use Illuminate\Database\Eloquent\Builder;
  6. use Illuminate\Support\Facades\Gate;
  7. class OrderIssueTypeService
  8. {
  9. use ServiceAppAop;
  10. protected $modelClass = OrderIssueType::class;
  11. /**
  12. * 订单管理 问题件类型
  13. * @return Builder[]|\Illuminate\Database\Eloquent\Collection
  14. */
  15. public function getOrderIssueType()
  16. {
  17. return OrderIssueType::query()->whereIn('name',[
  18. '联系不上','其他','仓库问题','撤销丢件','二次加工','全检问题','系统问题','延迟发货','仓库丢件','快递方式更改','无记录','双面单'
  19. ])->get();
  20. }
  21. /**
  22. * @return Builder[]|\Illuminate\Database\Eloquent\Collection
  23. */
  24. public function getOwnerOrderIssueType(){
  25. return OrderIssueType::query()->whereIn('name', ['拦截','取消拦截', '信息更改', '快递异常', '错漏发', '破损'])->get();
  26. }
  27. /**
  28. * 生成工单问题
  29. * @return Builder[]|\Illuminate\Database\Eloquent\Collections
  30. */
  31. public function getWorkOrderIssueType(){
  32. if (Gate::allows('订单管理-工单处理-客服编辑')) {
  33. return OrderIssueType::query()->whereIn('name', ['拦截','取消拦截', '信息更改', '快递异常', '错漏发', '破损', '快递丢件'])->get();
  34. } else if (Gate::allows('订单管理-工单处理-货主编辑')) {
  35. return OrderIssueType::query()->whereIn('name', ['拦截','取消拦截', '信息更改', '快递异常', '错漏发', '破损',])->get();
  36. } else if (Gate::allows('订单管理-工单处理-承运商编辑')) {
  37. return OrderIssueType::query()->whereIn('name', ['拦截','取消拦截', '信息更改', '破损', '快递异常'])->get();
  38. }
  39. return OrderIssueType::query()->whereIn('name', ['拦截', '信息更改', '快递异常', '错漏发', '破损', '快递丢件'])->get();
  40. }
  41. public function getOrderIssueTypes(){
  42. return OrderIssueType::query()->whereIn('name',[
  43. '拦截', '信息更改', '快递异常', '错漏发', '破损', '快递丢件',
  44. '联系不上','其他','仓库问题','撤销丢件','二次加工','全检问题','系统问题','延迟发货','仓库丢件','快递方式更改','无记录','双面单','取消拦截'
  45. ])->get();
  46. }
  47. }