ControlPanelController.php 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Services\CheckActiveMenuService;
  4. use App\Services\LaborReportsCountingRecordService;
  5. use App\Services\OrderCountingRecordService;
  6. use App\Services\RealtimePendingOrdersService;
  7. use Carbon\Carbon;
  8. use DebugBar\DataFormatter\DataFormatter;
  9. use Illuminate\Http\Request;
  10. class ControlPanelController extends Controller
  11. {
  12. /**
  13. * ControlPanelController constructor.
  14. */
  15. public function __construct()
  16. {
  17. $this->middleware('auth');
  18. }
  19. public function index()
  20. {
  21. $checkActiveMenuService = app(CheckActiveMenuService::class);
  22. $menus = $checkActiveMenuService->activeMenus();
  23. $realtimePendingOrdersService = app(RealtimePendingOrdersService::class);
  24. $warehousesOrders = $realtimePendingOrdersService->warehousesOrders();
  25. $orderCountingRecordService = app(OrderCountingRecordService::class);
  26. //默认查询一个月的数据
  27. $start = (new Carbon())->subMonth()->addDay()->toDateString();
  28. $end = (new Carbon())->toDateString();
  29. $orderCountingRecords = $orderCountingRecordService->orderCountingRecords($start, $end);
  30. $logisticsCountingRecords = $orderCountingRecordService->logisticsCountingRecords($start, $end);
  31. $warehouseCountingRecords = $orderCountingRecordService->warehouseCountingRecords($start, $end);
  32. $laborReportsCountingRecordService = app(LaborReportsCountingRecordService::class);
  33. $laborReportsCountingRecords = $laborReportsCountingRecordService->get($start, $end, '日');
  34. $laborReportsUserGroupsCount = $laborReportsCountingRecordService->userGroupsCount($start, $end);
  35. return view('control.panel', compact('menus', 'warehousesOrders', 'orderCountingRecords', 'logisticsCountingRecords', 'warehouseCountingRecords', 'laborReportsCountingRecords', 'laborReportsUserGroupsCount'));
  36. }
  37. public function orderCountingRecordsApi(Request $request)
  38. {
  39. $orderCountingRecordService = app(OrderCountingRecordService::class);
  40. $start = Carbon::parse($request->start)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->start;
  41. $end = Carbon::parse($request->end)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->end;
  42. $orderCountingRecords = $orderCountingRecordService->orderCountingRecords($start, $end, null, $request->unit, null);
  43. return compact('orderCountingRecords');
  44. }
  45. public function logisticsCountingRecordsApi(Request $request)
  46. {
  47. $orderCountingRecordService = app(OrderCountingRecordService::class);
  48. $start = Carbon::parse($request->start)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->start;
  49. $end = Carbon::parse($request->end)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->end;
  50. $logisticsCountingRecords = $orderCountingRecordService->logisticsCountingRecords($start, $end);
  51. return compact('logisticsCountingRecords');
  52. }
  53. public function warehouseCountingRecordsApi(Request $request)
  54. {
  55. $orderCountingRecordService = app(OrderCountingRecordService::class);
  56. $start = Carbon::parse($request->start)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->start;
  57. $end = Carbon::parse($request->end)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->end;
  58. $warehouseCountingRecords = $orderCountingRecordService->warehouseCountingRecords($start, $end);
  59. return compact('warehouseCountingRecords');
  60. }
  61. public function laborReportsCountingRecordApi(Request $request)
  62. {
  63. $laborReportsCountingRecordService = app(LaborReportsCountingRecordService::class);
  64. $start = Carbon::parse($request->start)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->start;
  65. $end = Carbon::parse($request->end)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->end;
  66. $unit = $request->unit;
  67. $laborReportsCountingRecords = $laborReportsCountingRecordService->get($start, $end, $unit);
  68. return compact('laborReportsCountingRecords');
  69. }
  70. public function laborReportsUserGroupsCountApi(Request $request)
  71. {
  72. $laborReportsCountingRecordService = app(LaborReportsCountingRecordService::class);
  73. $start = Carbon::parse($request->start)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->start;
  74. $end = Carbon::parse($request->end)->gt(Carbon::now()) ? Carbon::now()->toDateString() : $request->end;
  75. $laborReportsUserGroupsCount = $laborReportsCountingRecordService->userGroupsCount($start, $end);
  76. return compact('laborReportsUserGroupsCount');
  77. }
  78. }