package com.tievd.jyz.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.tievd.cube.commons.annotations.AutoLog; import com.tievd.cube.commons.annotations.DictApi; import com.tievd.cube.commons.base.CubeController; import com.tievd.cube.commons.base.Result; import com.tievd.cube.commons.mybatisplus.QueryGenerator; import com.tievd.cube.commons.utils.SystemContextUtil; import com.tievd.cube.commons.utils.web.HttpServletUtil; import com.tievd.jyz.entity.OiloutRecord; import com.tievd.jyz.entity.vo.OiloutRecordVo; import com.tievd.jyz.service.IOiloutEventService; import com.tievd.jyz.service.IOiloutRecordService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.enums.ParameterIn; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.Arrays; import java.util.List; /** * OiloutRecord * * @author cube * @version V2.0.0 * @since 2023-02-27 */ @Slf4j @DictApi @RestController @RequestMapping("/jyz/oiloutRecord") @Tag(name = "卸油记录相关接口") public class OiloutRecordController extends CubeController { @Autowired private IOiloutRecordService oiloutRecordService; @Autowired IOiloutEventService oiloutEventService; /** * 分页列表查询 */ @GetMapping("/list") @Deprecated public Result queryPageList(OiloutRecord oiloutRecord, @RequestParam(defaultValue = "1") Integer pageNo, @RequestParam(defaultValue = "10") Integer pageSize, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(oiloutRecord, req.getParameterMap()); Page page = new Page<>(pageNo, pageSize); IPage pageList = oiloutRecordService.page(page, queryWrapper); return Result.ok(pageList); } /** * 分页列表查询 */ @GetMapping("/pageList") @Operation(summary = "卸油记录分页") @Parameter(name = "orgCode", description = "机构", in = ParameterIn.QUERY) @Parameter(name = "licenseNum", description = "车牌号", in = ParameterIn.QUERY) @Parameter(name = "startTime", description = "开始时间", in = ParameterIn.QUERY) @Parameter(name = "endTime", description = "结束时间", in = ParameterIn.QUERY) @Parameter(name = "eventType", description = "类型 1合规操作 2异常告警", in = ParameterIn.QUERY) public Result> pageList(@Parameter(hidden = true) OiloutRecordVo recordVo, @RequestParam(defaultValue = "1") Integer pageNo, @RequestParam(defaultValue = "10") Integer pageSize) { Page page = new Page<>(pageNo, pageSize); IPage pageList = oiloutRecordService.pageList(page, recordVo); return Result.ok(pageList); } /** * 添加 */ @AutoLog("OiloutRecord-添加") @PostMapping("/add") public Result add(@RequestBody OiloutRecord oiloutRecord) { oiloutRecordService.save(oiloutRecord); return Result.ok(); } /** * 编辑 */ @AutoLog("OiloutRecord-编辑") @PutMapping("/edit") public Result edit(@RequestBody OiloutRecord oiloutRecord) { oiloutRecordService.updateById(oiloutRecord); return Result.ok(); } /** * 通过id删除 */ @AutoLog("OiloutRecord-通过id删除") @DeleteMapping("/delete") public Result delete(@RequestParam String id) { oiloutRecordService.removeById(id); return Result.ok(); } /** * 批量删除 */ @AutoLog("OiloutRecord-批量删除") @DeleteMapping("/deleteBatch") public Result deleteBatch(@RequestParam String ids) { this.oiloutRecordService.removeByIds(Arrays.asList(ids.split(","))); return Result.ok(); } /** * 通过id查询 */ @GetMapping("/queryById") public Result queryById(@RequestParam String id) { OiloutRecord oiloutRecord = oiloutRecordService.getById(id); return Result.ok(oiloutRecord); } /** * 导出excel */ @RequestMapping("/exportXls") @Operation(summary = "卸油记录导出") public void exportXls(HttpServletRequest request, HttpServletResponse response, OiloutRecordVo recordVo) throws IOException { IPage page = new Page(1, 100000); List exportList = oiloutRecordService.pageList(page, recordVo).getRecords(); HttpServletUtil.addDownloadHeader(response, "卸油记录"); easyExcel.export(exportList, response.getOutputStream(), SystemContextUtil.dictTranslator()); } @GetMapping("/exportWord") @Operation(summary = "卸油过程导出") public void exportWord(HttpServletResponse response, @RequestParam Long recordId) throws IOException { OiloutRecordVo recordVo = new OiloutRecordVo(); recordVo.setId(recordId); recordVo = oiloutRecordService.pageList(new Page(1, 10), recordVo).getRecords().get(0); oiloutEventService.exportWord(recordVo, response); } /** * 通过excel导入数据 */ @PostMapping("/importExcel") public Result importExcel(HttpServletRequest request) throws Exception { return super.importExcel(request, OiloutRecord.class); } }