package com.sinata.web.controller.backend; import com.sinata.common.core.domain.R; import com.sinata.common.entity.PageDTO; import com.sinata.system.domain.dto.MwMicroEquipmentRecordDTO; import com.sinata.system.domain.query.MwMicroEquipmentRecordQuery; import com.sinata.system.domain.query.MwMicroEquipmentStaticsQuery; import com.sinata.system.domain.vo.DepartmentReportVO; import com.sinata.system.domain.vo.MwMicroEquipmentRecordVO; import com.sinata.system.domain.vo.MwMicroEquipmentStaticsTitleVO; import com.sinata.system.service.MwMicroEquipmentRecordService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; 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; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.io.IOException; import java.util.List; /** *

* 设备使用记录 前端控制器 *

* * @author mitao * @since 2024-12-02 */ @Api(tags = {"小型微波设备使用记录相关接口"}) @Validated @RequiredArgsConstructor @RestController @RequestMapping("/backend/mwMicroEquipmentRecord") public class MwMicroEquipmentRecordController { private final MwMicroEquipmentRecordService mwMicroEquipmentRecordService; /** * 设备使用记录分页列表 * * @param query * @return */ @ApiOperation("设备使用记录分页列表") @PostMapping("/page") public R> pageList(@Valid @RequestBody MwMicroEquipmentRecordQuery query) { return R.ok(mwMicroEquipmentRecordService.pageList(query)); } /** * 设备使用记录详情 * * @param id * @return */ @ApiOperation("设备使用记录详情") @GetMapping("/{id}") public R detail(@ApiParam(name = "id", value = "设备id", required = true) @PathVariable("id") Long id) { return R.ok(mwMicroEquipmentRecordService.detail(id)); } /** * 导出设备使用记录 * * @param query */ @ApiOperation("导出设备使用记录") @PostMapping("/export") public void export(@RequestBody MwMicroEquipmentRecordQuery query, HttpServletResponse response) { try { mwMicroEquipmentRecordService.export(query, response); } catch (IOException e) { throw new RuntimeException(e); } } /** * 新增使用记录 * * @param dto * @return */ @ApiOperation("新增使用记录") @PostMapping("/add") public R add(@Valid @RequestBody MwMicroEquipmentRecordDTO dto) { mwMicroEquipmentRecordService.add(dto); return R.ok(); } /** * 处置分析表头 * * @return */ @ApiOperation("处置分析表头") @GetMapping("/statics/title") public R> staticsTitle() { return R.ok(mwMicroEquipmentRecordService.staticsTitle()); } /** * 处置分析数据 * * @param query * @return */ @ApiOperation("处置分析数据") @PostMapping("/statics/data") public R staticsData(@Valid @RequestBody MwMicroEquipmentStaticsQuery query) { return R.ok(mwMicroEquipmentRecordService.getStaticsData(query)); } /** * 处置分析导出 * * @param query * @param response */ @ApiOperation("处置分析导出") @PostMapping("/statics/export") public void export(@RequestBody MwMicroEquipmentStaticsQuery query, HttpServletResponse response) { try { mwMicroEquipmentRecordService.staticsExport(query, response); } catch (IOException e) { throw new RuntimeException(e); } } }