package com.artfess.rescue.patrol.controller;


import com.artfess.base.annotation.ApiGroup;
import com.artfess.base.constants.ApiGroupConsts;
import com.artfess.base.model.CommonResult;
import com.artfess.rescue.patrol.dto.VideoInspectErrorDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.*;
import com.artfess.base.controller.BaseController;
import com.artfess.rescue.patrol.model.BizInspectionVideo;
import com.artfess.rescue.patrol.manager.BizInspectionVideoManager;

import javax.validation.constraints.NotNull;
import java.util.Arrays;

/**
 * 视频巡检结果表 前端控制器
 *
 * @author 系统管理员
 * @company 阿特菲斯信息技术有限公司
 * @since 2024-08-02
 */
@RestController
@RequestMapping("/patrol/bizInspectionVideo/v1/")
@Api(tags = "视频巡检结果")
@ApiGroup(group = {ApiGroupConsts.GROUP_BIZ_RESCUE})
public class BizInspectionVideoController extends BaseController<BizInspectionVideoManager, BizInspectionVideo> {

    @PostMapping("/inspect")
    @ApiOperation("上报结果")
    public CommonResult<String> inspect(@ApiParam(name = "time", value = "视频巡检间隔时间（S）") @RequestParam @NotNull(message = "视频巡检间隔时间不能为空") Integer time,
                                        @ApiParam(name = "ids", value = "视频巡检结果ids") @RequestParam @NotNull(message = "视频巡检结果ids不能为空") String... ids) {
        return baseService.inspect(null,time, Arrays.asList(ids));
    }

    @PostMapping("/inspect/error")
    @ApiOperation("修改巡检结果异常")
    public CommonResult<String> inspectError(@ApiParam(name = "model", value = "实体信息") @RequestBody VideoInspectErrorDTO dto) {
        return baseService.inspectError(dto);
    }

    @Override
    @GetMapping("/{id}")
    @ApiOperation("根据id查询实体")
    public BizInspectionVideo getById(@ApiParam(name = "id", value = "实体id") @PathVariable String id) {
        return baseService.getInfoById(id);
    }

}
