package com.iailab.module.data.video.controller.admin.nvr; import com.iailab.framework.common.pojo.CommonResult; import com.iailab.framework.common.pojo.PageResult; import com.iailab.module.data.video.controller.admin.nvr.vo.NvrPageReqVO; import com.iailab.module.data.video.controller.admin.nvr.vo.NvrSaveReqVO; import com.iailab.module.data.video.dto.NvrDTO; import com.iailab.module.data.video.service.NvrService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.UUID; import static com.iailab.framework.common.pojo.CommonResult.success; /** * @author Houzhongjian * @Description * @createTime 2024å¹´11月01æ—¥ */ @RestController @RequestMapping("/data/video/nvr") @Tag(name = "硬盘录åƒæœº") public class NvrController { @Autowired private NvrService devCameraService; @GetMapping("page") @Operation(summary = "分页") @PreAuthorize("@ss.hasPermission('video:nvr:query')") public CommonResult<PageResult<NvrDTO>> page(@Valid NvrPageReqVO pageReqVO) { PageResult<NvrDTO> pageResult = devCameraService.getPage(pageReqVO); return success(pageResult); } @GetMapping("/get") @Operation(summary = "ä¿¡æ¯") @PreAuthorize("@ss.hasPermission('video:nvr:query')") @Parameter(name = "id", description = "ç¼–å·", required = true, example = "1024") public CommonResult<NvrDTO> get(@RequestParam("id") String id) { NvrDTO data = devCameraService.get(id); return success(data); } @PostMapping("/create") @Operation(summary = "ä¿å˜") @PreAuthorize("@ss.hasPermission('video:nvr:save')") public CommonResult<String> save(@RequestBody NvrSaveReqVO saveReqVO) { String id = UUID.randomUUID().toString(); saveReqVO.setId(id); return success(devCameraService.save(saveReqVO)); } @PutMapping("/update") @Operation(summary = "修改") @PreAuthorize("@ss.hasPermission('video:nvr:update')") public CommonResult<String> update(@RequestBody NvrSaveReqVO saveReqVO) { return success(devCameraService.update(saveReqVO)); } @DeleteMapping("/delete") @Operation(summary = "åˆ é™¤") @PreAuthorize("@ss.hasPermission('video:nvr:delete')") public CommonResult<Boolean> delete(@RequestParam("id") String id) { devCameraService.delete(id); return success(true); } }