glj-代码提交

This commit is contained in:
glj 2023-06-16 11:15:00 +08:00
parent 50ca8c0fac
commit 9b8e68cf13
3 changed files with 88 additions and 0 deletions

View File

@ -14,6 +14,8 @@ import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream; import java.util.stream.Stream;
@ -109,4 +111,9 @@ public class RemoteSensingSourceDataController {
List<String> collect = Stream.of(ids.split(",")).collect(Collectors.toList()); List<String> collect = Stream.of(ids.split(",")).collect(Collectors.toList());
return R.status(remoteSensingSourceDataService.removeByIds(collect)); return R.status(remoteSensingSourceDataService.removeByIds(collect));
} }
@GetMapping({"/exportRemoteSensing"})
public void exportRemoteSensing(Long id, HttpServletRequest request, HttpServletResponse response) {
remoteSensingSourceDataService.exportRemoteSensing(id,request,response);
}
} }

View File

@ -10,6 +10,8 @@ import org.springblade.core.tool.api.R;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
/** /**
@ -26,4 +28,5 @@ public interface RemoteSensingSourceDataService extends IService<RemoteSensingSo
R importTemplateImgList(List<MultipartFile> fileList, Long disasterId); R importTemplateImgList(List<MultipartFile> fileList, Long disasterId);
void exportRemoteSensing(Long id, HttpServletRequest request, HttpServletResponse response);
} }

View File

@ -13,6 +13,14 @@ import com.kening.vordm.entity.RemoteSensingSourceData;
import com.kening.vordm.mapper.RemoteSensingSourceDataMapper; import com.kening.vordm.mapper.RemoteSensingSourceDataMapper;
import com.kening.vordm.service.RemoteSensingSourceDataService; import com.kening.vordm.service.RemoteSensingSourceDataService;
import com.kening.vordm.vo.productResolutionVo; import com.kening.vordm.vo.productResolutionVo;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springblade.common.utils.ExcelCellUtil; import org.springblade.common.utils.ExcelCellUtil;
import org.springblade.core.oss.MinioTemplate; import org.springblade.core.oss.MinioTemplate;
import org.springblade.core.oss.model.BladeFile; import org.springblade.core.oss.model.BladeFile;
@ -23,6 +31,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
@ -271,5 +283,71 @@ public class RemoteSensingSourceDataServiceImpl extends ServiceImpl<RemoteSensin
return R.data("上传成功"); return R.data("上传成功");
} }
@Override
public void exportRemoteSensing(Long id, HttpServletRequest request, HttpServletResponse response) {
RemoteSensingSourceData remoteSensingSourceData = this.baseMapper.selectById(id);
if (remoteSensingSourceData != null){
XSSFWorkbook workbook = new XSSFWorkbook();
CellStyle style = workbook.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER);//水平居中
XSSFSheet sheet = workbook.createSheet("sheet");
XSSFRow titleRow = sheet.createRow(0);
XSSFCell CellNew = titleRow.createCell(0);
CellNew.setCellStyle(style);
CellNew.setCellValue("product_id");
XSSFCell CellNew2 = titleRow.createCell(1);
CellNew2.setCellStyle(style);
CellNew2.setCellValue("source");
XSSFCell CellNew3 = titleRow.createCell(2);
CellNew3.setCellStyle(style);
CellNew3.setCellValue("concat");
XSSFRow dataRow = sheet.createRow(1);
XSSFCell xssfCell1 = dataRow.createCell(0);
xssfCell1.setCellStyle(style);
if (remoteSensingSourceData.getProductSerialNum()!=null) {
xssfCell1.setCellValue(remoteSensingSourceData.getProductSerialNum());
}
XSSFCell xssfCell2 = dataRow.createCell(1);
xssfCell2.setCellStyle(style);
if (remoteSensingSourceData.getSourceOrganization()!=null) {
xssfCell2.setCellValue(remoteSensingSourceData.getSourceOrganization());
}
XSSFCell xssfCell3 = dataRow.createCell(2);
xssfCell3.setCellStyle(style);
if (remoteSensingSourceData.getDownloadUrl()!=null) {
xssfCell3.setCellValue(remoteSensingSourceData.getDownloadUrl());
}
//下载分析报告excel
downLoadExcel(response, workbook, "download");
}
}
public static void downLoadExcel(HttpServletResponse response, Workbook workbook, String fileName) {
try {
if (workbook instanceof HSSFWorkbook) {
fileName = fileName + ".xls";
} else {
fileName = fileName + ".xlsx";
}
fileName = URLEncoder.encode(fileName, "UTF8");
OutputStream os = response.getOutputStream();
response.reset();
response.setContentType("application/ns.ms-excel");
response.setHeader("Content-disposition", "attachment; filename=" + fileName);
response.setHeader("Pragma", "No-cache");
response.setHeader("Expires", "0");
response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
workbook.write(os);
os.close();
} catch (Exception e) {
e.printStackTrace();
}
}
} }