package com.ycwl.basic.controller.mobile; import com.ycwl.basic.annotation.IgnoreLogReq; import com.ycwl.basic.biz.TaskStatusBiz; import com.ycwl.basic.model.jwt.JwtInfo; import com.ycwl.basic.model.mobile.goods.VideoTaskReq; import com.ycwl.basic.model.mobile.goods.VideoTaskStatusVO; import com.ycwl.basic.service.mobile.GoodsService; import com.ycwl.basic.service.task.TaskService; import com.ycwl.basic.utils.ApiResponse; import com.ycwl.basic.utils.JwtTokenUtil; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/api/mobile/task/v1") public class AppTaskController { @Autowired private GoodsService goodsService; @Autowired private TaskService taskService; @GetMapping("/face/{faceId}") @IgnoreLogReq public ApiResponse getTaskStatusByFaceId(@PathVariable("faceId") Long faceId) { JwtInfo worker = JwtTokenUtil.getWorker(); return ApiResponse.success(goodsService.getTaskStatusByFaceId(worker.getUserId(), faceId)); } @GetMapping("/scenic/{scenicId}") @IgnoreLogReq public ApiResponse getAllTaskStatusByScenicId(@PathVariable("scenicId") Long scenicId) { JwtInfo worker = JwtTokenUtil.getWorker(); VideoTaskStatusVO taskStatus = goodsService.getTaskStatusByScenicId(worker.getUserId(), scenicId); taskStatus.setScenicId(scenicId); return ApiResponse.success(taskStatus); } /** * 查询用户当前景区的具体模版视频合成任务状态 * * @param templateId 模版id * @return 1 合成中 2 合成成功 */ @ApiOperation("查询用户当前景区的具体模版视频合成任务状态 1 合成中 2 合成成功 ") @GetMapping("/face/{faceId}/template/{templateId}") @IgnoreLogReq public ApiResponse getTemplateTaskStatus(@PathVariable("faceId") Long faceId, @PathVariable("templateId") Long templateId) { JwtInfo worker = JwtTokenUtil.getWorker(); return ApiResponse.success(goodsService.getTaskStatusByTemplateId(worker.getUserId(), faceId, templateId)); } @PostMapping("/submit") public ApiResponse submitVideoTask(@RequestBody VideoTaskReq videoTaskReq) { taskService.createTaskByFaceIdAndTempalteId(videoTaskReq.getFaceId(),videoTaskReq.getTemplateId(),0); return ApiResponse.success("成功"); } }