package com.yuanchu.mom.controller; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSON; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueClassify; import com.yuanchu.mom.excel.FeCalibrationScheduleExport; import com.yuanchu.mom.excel.FeStandardSubstanceExcel; import com.yuanchu.mom.pojo.FeCalibrationSchedule; import com.yuanchu.mom.pojo.FeStandardSubstance; import com.yuanchu.mom.service.FeStandardSubstanceService; import com.yuanchu.mom.vo.Result; import com.yuanchu.mom.vo.SubstanceRecordVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.util.List; /** *

* 标准物质清单 前端控制器 *

* * @author * @since 2024-11-13 03:58:59 */ @Api(tags = "标准物质清单") @RestController @RequestMapping("/feStandardSubstance") public class FeStandardSubstanceController { @Resource private FeStandardSubstanceService feStandardSubstanceService; @ValueClassify(value = "标准物质清单") @ApiOperation(value = "标准物质清单查询") @GetMapping("/getPageStandardSubstance") public Result> getPageStandardSubstance(Page page, FeStandardSubstance feStandardSubstance) { IPage ipage = feStandardSubstanceService.page(page, feStandardSubstance); return Result.success(ipage); } @ValueClassify(value = "标准物质清单") @ApiOperation(value = "标准物质清单新增编辑") @PostMapping("/addStandardSubstance") public Result addStandardSubstance(@RequestBody FeStandardSubstance feStandardSubstance) { return Result.success(feStandardSubstanceService.saveOrUpdate(feStandardSubstance)); } @ValueClassify(value = "标准物质清单") @ApiOperation(value = "标准物质清单删除") @GetMapping("/removeStandardSubstance") public Result removeStandardSubstance(Integer id) { return Result.success(feStandardSubstanceService.removeById(id)); } @ValueClassify(value = "标准物质清单") @ApiOperation(value = "标准物质清单查询所有") @GetMapping("/getStandardSubstanceAll") public Result> getStandardSubstanceAll( ) { return Result.success(feStandardSubstanceService.list()); } @ValueClassify(value = "标准物质清单借用归还记录") @ApiOperation(value = "标准物质清单导出") @GetMapping("exportOfStandardSubstanceList") public void exportOfStandardSubstanceList(FeStandardSubstance feStandardSubstance, HttpServletResponse response) throws Exception { IPage ipage = feStandardSubstanceService.page(new Page<>(1, -1), feStandardSubstance); List studentList = JSONObject.parseArray(JSON.toJSONString(ipage.getRecords()), FeStandardSubstanceExcel.class); for (FeStandardSubstanceExcel record : studentList) { if (record.getState()==1){ record.setStateName("借用"); }else { record.setStateName("归还"); } } response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setHeader("requestType", "excel"); response.setHeader("Access-Control-Expose-Headers", "requestType"); // 设置单元格样式 // 保存到第一个sheet中 EasyExcel.write(response.getOutputStream()) .head(FeStandardSubstanceExcel.class) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 自适应列宽 .sheet("sheet") .doWrite(studentList); } }