OrderTrackingController.php 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Logistic;
  4. use App\OracleActAllocationDetails;
  5. use App\OracleBasCustomer;
  6. use App\OracleDOCOrderHeader;
  7. use App\Order;
  8. use App\OrderTracking;
  9. use App\OrderTrackingOwner;
  10. use App\Owner;
  11. use App\Services\CommodityService;
  12. use App\Services\LogService;
  13. use App\Services\OrderTrackingService;
  14. use App\Services\OwnerService;
  15. use Illuminate\Http\Request;
  16. use Illuminate\Support\Carbon;
  17. use Illuminate\Support\Facades\Gate;
  18. class OrderTrackingController extends Controller
  19. {
  20. public function index(Request $request)
  21. {
  22. if (!Gate::allows('订单管理-跟踪'))
  23. return redirect(url('/'));
  24. $owners = app(OwnerService::class)->getAuthorizedOwners();
  25. $service = app('orderTrackingService');
  26. $trackOrders = $service->paginate($request->input());
  27. $logistics = Logistic::all();
  28. return view('order.tracking.index', compact('owners', 'trackOrders','logistics'));
  29. }
  30. public function logisticUpdateApi(Request $request)
  31. {
  32. if (!Gate::allows('订单管理-跟踪-物流公司编辑'))
  33. return redirect(url('/'));
  34. try {
  35. $bool = app(OrderTrackingService::class)->updateOrderTracingAndSyc($request->input('id'),$request->input('param'),$request->input('value'));
  36. LogService::log(__METHOD__, __FUNCTION__, '更新成功' . json_encode($request->getContent()) );
  37. return ['success' => $bool];
  38. } catch (\Exception $e) {
  39. LogService::log(__METHOD__, __FUNCTION__, '更新失败' . json_encode($request->getContent()) .'||'.$e->getMessage().'||'.$e->getTraceAsString());
  40. return ['success' => false];
  41. }
  42. }
  43. public function warehouseUpdateApi(Request $request)
  44. {
  45. if (!Gate::allows('订单管理-跟踪-仓库编辑'))
  46. return redirect(url('/'));
  47. try {
  48. $bool = app(OrderTrackingService::class)->updateOrderTracingAndSyc($request->input('id'),$request->input('param'),$request->input('value'));
  49. LogService::log(__METHOD__, __FUNCTION__, '更新成功' . json_encode($request->getContent()));
  50. return ['success' => $bool];
  51. } catch (\Exception $e) {
  52. LogService::log(__METHOD__, __FUNCTION__, '更新失败' . json_encode($request->getContent()) .'||'.$e->getMessage().'||'.$e->getTraceAsString());
  53. return ['success' => false];
  54. }
  55. }
  56. public function export(Request $request)
  57. {
  58. if (!Gate::allows('订单管理-跟踪'))
  59. return redirect(url('/'));
  60. $service = app('orderTrackingService');
  61. if($request->filled('data')){
  62. $request['ids'] = $request->input('data');
  63. $request['data'] = null;
  64. }
  65. return $service->export($request->input());
  66. }
  67. }