YoloStreamController.java 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package com.mrxu.admin.controller.yolo;
  2. import com.mrxu.admin.controller.AdminBaseController;
  3. import com.mrxu.framework.boot.bean.ResponseObj;
  4. import com.mrxu.yolo.python.request.StreamRequest;
  5. import com.mrxu.yolo.service.YoloStreamService;
  6. import com.mrxu.yolo.service.YoloTrainService;
  7. import io.swagger.annotations.Api;
  8. import lombok.RequiredArgsConstructor;
  9. import org.apache.shiro.authz.annotation.RequiresPermissions;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.stereotype.Controller;
  12. import org.springframework.ui.Model;
  13. import org.springframework.web.bind.annotation.RequestBody;
  14. import org.springframework.web.bind.annotation.RequestMapping;
  15. import org.springframework.web.bind.annotation.ResponseBody;
  16. @Api(tags = "实时推理")
  17. @Controller
  18. @RequestMapping("/yolo/stream")
  19. @RequiredArgsConstructor(onConstructor = @__(@Autowired))
  20. public class YoloStreamController extends AdminBaseController {
  21. private final YoloTrainService trainService;
  22. private final YoloStreamService streamService;
  23. @RequiresPermissions("yolo:stream:read")
  24. @RequestMapping("index.html")
  25. public String mark(Model model) {
  26. model.addAttribute("modelList", trainService.listModel(getTenantId()));
  27. return "yolo/stream.html";
  28. }
  29. @RequiresPermissions("yolo:stream:read")
  30. @ResponseBody
  31. @RequestMapping("/doPredict.json")
  32. public ResponseObj<Object> doPredict(@RequestBody StreamRequest dto) {
  33. streamService.doPredict(getTenantId(),dto,getUsername());
  34. return success();
  35. }
  36. }