OrderCommodityAssignController.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Imports\UpdatePickZoneSheets;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Support\Facades\Cache;
  6. use Illuminate\Support\Facades\Gate;
  7. use Maatwebsite\Excel\Facades\Excel;
  8. class OrderCommodityAssignController extends Controller
  9. {
  10. public function index()
  11. {
  12. if(!Gate::allows('订单管理-指定分配')){ return redirect(url('denied')); }
  13. $assigns = app("OrderCommodityAssignService")->paginate();
  14. return view("order.index.index",compact("assigns"));
  15. }
  16. public function import(Request $request)
  17. {
  18. if(!Gate::allows('订单管理-指定分配-编辑')){ return ["success"=>false,"data"=>"无权操作!"]; }
  19. $fileSuffix=$request->file('file')->getClientOriginalExtension();
  20. if ($fileSuffix != 'xlsx' && $fileSuffix != 'xls' && $fileSuffix != 'csv')
  21. return ['success'=>false,'data'=>'不支持该文件类型'];
  22. ini_set('max_execution_time',2500);
  23. ini_set('memory_limit','1526M');
  24. $fileSuffix = ucwords($fileSuffix);
  25. Excel::import(new UpdatePickZoneSheets(),$request->file('file')->path(),null,$fileSuffix);
  26. if (Cache::has('commodityAssign'))return Cache::pull('commodityAssign');
  27. return ["success"=>false,"data"=>"导入发生错误,数据无响应"];
  28. }
  29. }