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.core.toolkit.ObjectUtils;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.yuanchu.mom.annotation.CustomClazzName;
|
import com.yuanchu.mom.annotation.ValueClassify;
|
import com.yuanchu.mom.excel.FeLightningProtectionExcel;
|
import com.yuanchu.mom.excel.FeStandardSubstanceExcel;
|
import com.yuanchu.mom.pojo.FeLightningProtection;
|
import com.yuanchu.mom.pojo.FeMeasuredQuantity;
|
import com.yuanchu.mom.pojo.FeStandardSubstance;
|
import com.yuanchu.mom.service.FeLightningProtectionService;
|
import com.yuanchu.mom.utils.FileSaveUtil;
|
import com.yuanchu.mom.vo.Result;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.servlet.http.HttpServletResponse;
|
import java.util.List;
|
import java.util.Objects;
|
|
/**
|
* <p>
|
* 设施和环境条件-设施和环境条件要求-防雷检测 前端控制器
|
* </p>
|
*
|
* @author
|
* @since 2024-11-07 04:16:36
|
*/
|
@Api(tags = "设施和环境条件要求-防雷检测")
|
@RestController
|
@RequestMapping("/feLightningProtection")
|
|
public class FeLightningProtectionController {
|
|
@Autowired
|
private FeLightningProtectionService feLightningProtectionService;
|
|
@ValueClassify(value = "设施和环境条件要求")
|
@PostMapping("addLightningProtectionDetection")
|
@ApiOperation("设施和环境条件要求-防雷检测新增/修改")
|
public Result<?> addLightningProtectionDetection(FeLightningProtection feLightningProtection,
|
@RequestPart(value = "file", required = false) MultipartFile file) {
|
if (ObjectUtils.isNotEmpty(file)) {
|
String s = FileSaveUtil.StoreFile(file);
|
feLightningProtection.setSystemFileName(s);
|
feLightningProtection.setFileName(file.getOriginalFilename());
|
}
|
feLightningProtectionService.saveOrUpdate(feLightningProtection);
|
return Result.success();
|
}
|
|
@ValueClassify(value = "设施和环境条件要求")
|
@DeleteMapping("deleteLightningProtectionDetection")
|
@ApiOperation("设施和环境条件要求-防雷检测删除")
|
public Result<?> deleteLightningProtectionDetection(@RequestParam("lightningProtectionId") Integer lightningProtectionId) {
|
feLightningProtectionService.removeById(lightningProtectionId);
|
return Result.success();
|
}
|
|
@ValueClassify(value = "设施和环境条件要求")
|
@GetMapping("getLightningProtectionDetection")
|
@ApiOperation("设施和环境条件要求-防雷检测查询")
|
public Result<IPage<FeLightningProtection>> getLightningProtectionDetection(Page page) {
|
IPage<FeLightningProtection> page1 = feLightningProtectionService.page(page);
|
return Result.success(page1);
|
}
|
|
@ValueClassify(value = "设施和环境条件要求")
|
@ApiOperation(value = "设施和环境条件要求-防雷检测导出")
|
@GetMapping("exportOfLightningProtectionDetection")
|
public void exportOfLightningProtectionDetection(HttpServletResponse response) throws Exception {
|
List<FeLightningProtectionExcel> ipage = feLightningProtectionService.exportOfLightningProtectionDetection();
|
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(FeLightningProtectionExcel.class)
|
.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 自适应列宽
|
.sheet("sheet")
|
.doWrite(ipage);
|
}
|
}
|