Commit 4f9d0812 authored by tangwei's avatar tangwei

整合导出,导入 接口

parent 68e83634
......@@ -10,6 +10,8 @@ public class ExcelDto {
private String fileName;
@ApiModelProperty(value = "sheet页名称")
private String sheetName;
@ApiModelProperty(value = "导出类Dto类名,类必须放在com.yeejoin.amos.boot.module.jcs.api.dto 包下")
@ApiModelProperty(value = "类包全路径")
private String classUrl;
@ApiModelProperty(value = "导出类型 来源于ExcelEnums常量")
private String type;
}
package com.yeejoin.amos.boot.module.jcs.api.enums;
/**
*
* 导出类型常量
*
* ***/
public class ExcelEnums {
public static final String WHP = "WHP";// ("WHP","危险品"),
public static final String XFZJ = "XFZJ";//("XFZJ","消防专家"),
public static final String SYXX = "SYXX";//("SYXX","水源信息"),
public static final String HKQ = "HKQ";//("HKQ","航空器");
}
......@@ -32,7 +32,6 @@ import com.yeejoin.amos.boot.module.common.api.entity.FireChemical;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireChemicalServiceImpl;
import io.swagger.annotations.Api;
......@@ -52,8 +51,7 @@ public class FireChemicalController extends BaseController {
@Autowired
FireChemicalServiceImpl fireChemicalServiceImpl;
@Autowired
DataSourcesImpl dataSourcesImpl;
/**
* 新增危化品
......@@ -167,17 +165,5 @@ public class FireChemicalController extends BaseController {
fireChemicalServiceImpl.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出危化品")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<FireChemicalDto> data = fireChemicalServiceImpl.queryForFireChemicalList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), data,
FireChemicalDto.class, dataSourcesImpl, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
}
......@@ -44,7 +44,6 @@ import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireExpertsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.utils.BeanDtoVoUtils;
......@@ -72,8 +71,7 @@ public class FireExpertsController extends BaseController {
@Autowired
DataDictionaryServiceImpl dataDictionaryService;
@Autowired
DataSourcesImpl dataSourcesImpl;
/**
* 新增
......@@ -262,18 +260,6 @@ public class FireExpertsController extends BaseController {
fireExpertsServiceImpl.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出消防专家")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<FireExpertsDto> fireExpertsDtoList = fireExpertsServiceImpl.queryForFireExpertsList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), fireExpertsDtoList,
FireExpertsDto.class, dataSourcesImpl, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常");
}
}
}
......@@ -47,7 +47,6 @@ import com.yeejoin.amos.boot.module.common.api.enums.WaterResourceTypeEnum;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceCraneServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceHydrantServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceIotServiceImpl;
......@@ -80,8 +79,7 @@ public class WaterResourceController extends BaseController {
WaterResourcePoolServiceImpl waterResourcePoolService;
@Autowired
WaterResourceIotServiceImpl waterResourceIotService;
@Autowired
DataSourcesImpl dataSourcesImpl;
/**
* 新增
......@@ -387,17 +385,5 @@ public class WaterResourceController extends BaseController {
);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出消防水源")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<WaterResourceDto> waterResourceDtoList = waterResourceServiceImpl.exportToExcel(true);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), waterResourceDtoList,
WaterResourceDto.class, dataSourcesImpl, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常");
}
}
}
......@@ -32,7 +32,6 @@ import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.Aircraft;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AircraftServiceImpl;
......@@ -54,8 +53,7 @@ public class AircraftController extends BaseController {
@Autowired
private AircraftServiceImpl aircraftServiceImpl;
@Autowired
DataSourcesImpl dataSourcesImpl;
/**
* 新增航空器信息
......@@ -170,18 +168,6 @@ public class AircraftController extends BaseController {
aircraftServiceImpl.saveBatch(excelEntityList);
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出航空器")
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response, ExcelDto excelDto) {
try {
List<AircraftDto> data = aircraftServiceImpl.queryAircraftDtoForList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), data,
AircraftDto.class, dataSourcesImpl, false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
}
package com.yeejoin.amos.boot.module.jcs.biz.controller;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -18,82 +18,144 @@ import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.ExcelDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireChemicalDto;
import com.yeejoin.amos.boot.module.common.api.dto.FireExpertsDto;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceDto;
import com.yeejoin.amos.boot.module.common.api.entity.FireChemical;
import com.yeejoin.amos.boot.module.common.api.excel.DataSources;
import com.yeejoin.amos.boot.module.common.api.excel.ExcelUtil;
import com.yeejoin.amos.boot.module.common.api.mapper.DataDictionaryMapper;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DataSourcesImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireChemicalServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FireExpertsServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.WaterResourceServiceImpl;
import com.yeejoin.amos.boot.module.jcs.api.dto.AircraftDto;
import com.yeejoin.amos.boot.module.jcs.api.enums.ExcelEnums;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.AircraftServiceImpl;
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.DataSourcesImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* 导出导入
*
* @author system_generator
* @date 2021-06-29
*/
* 导出导入
*
* @author system_generator
* @date 2021-06-29
*/
@RestController
@Api(tags = "导出")
@RequestMapping(value = "/excel")
public class ExcelController extends BaseController {
@Autowired
DataSourcesImpl dataSourcesImpl;
@Autowired
FireChemicalServiceImpl fireChemicalServiceImpl;
@Autowired
FireExpertsServiceImpl fireExpertsServiceImpl;
@Autowired
WaterResourceServiceImpl waterResourceServiceImpl;
@Autowired
AircraftServiceImpl aircraftServiceImpl;
@Autowired
DataSourcesImpl dataSourcesImpl;
@Autowired
FireChemicalServiceImpl fireChemicalServiceImpl;
private final String packageUrl="com.yeejoin.amos.boot.module.common.api.dto.";
@TycloudOperation(needAuth = false,ApiLevel = UserType.AGENCY)
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "下载模板")
@GetMapping("/template")
public void template(HttpServletResponse response,ExcelDto excelDto ) {
try {
String url=packageUrl+excelDto.getClassUrl();
Class<?> clz = Class.forName(url);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), null,clz, dataSourcesImpl,true);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
public void template(HttpServletResponse response, ExcelDto excelDto) {
try {
String url =excelDto.getClassUrl();
Class<?> clz = Class.forName(url);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), null, clz,
dataSourcesImpl, true);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出公用类")
@GetMapping("/export")
public void getFireStationFile(HttpServletResponse response, ExcelDto excelDto) {
try {
switch (excelDto.getType()) {
case ExcelEnums.WHP:
List<FireChemicalDto> data = fireChemicalServiceImpl.queryForFireChemicalList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), data,
FireChemicalDto.class, dataSourcesImpl, false);
break;
case ExcelEnums.XFZJ:
List<FireExpertsDto> fireExpertsDtoList = fireExpertsServiceImpl.queryForFireExpertsList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), fireExpertsDtoList,
FireExpertsDto.class, dataSourcesImpl, false);
break;
case ExcelEnums.SYXX:
List<WaterResourceDto> waterResourceDtoList = waterResourceServiceImpl.exportToExcel(true);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), waterResourceDtoList,
WaterResourceDto.class, dataSourcesImpl, false);
break;
case ExcelEnums.HKQ:
List<AircraftDto> AircraftDtodata = aircraftServiceImpl.queryAircraftDtoForList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), AircraftDtodata, AircraftDto.class,
dataSourcesImpl, false);
default:
break;
}
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
@TycloudOperation(needAuth = false,ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出危险品")
@GetMapping("/getFireStationFile")
public void getFireStationFile(HttpServletResponse response,ExcelDto excelDto ) {
try {
List<FireChemicalDto> date= fireChemicalServiceImpl.queryForFireChemicalList(false);
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), date,FireChemicalDto.class, dataSourcesImpl,false);
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@ApiOperation(value = "上传文件数据-")
@PostMapping("/upload")
public void template2(MultipartFile multipartFile, HttpServletResponse response, ExcelDto excelDto) throws Exception {
try {
switch (excelDto.getType()) {
case ExcelEnums.WHP:
List<FireChemicalDto> demoExcelEntities = ExcelUtil.readFirstSheetExcel(multipartFile, FireChemicalDto.class,1);
List<FireChemical> demoExcelEntityErrorList = new ArrayList<>();
demoExcelEntities.forEach(demoExcelEntity -> {
FireChemical demoExcelEntityError = new FireChemical();
demoExcelEntityError = Bean.toPo(demoExcelEntity, demoExcelEntityError);
if (demoExcelEntityError.getType() != null) {
String[] dr = demoExcelEntityError.getType().split("@");
demoExcelEntityError.setType(dr[0]);
demoExcelEntityError.setTypeCode(dr[1]);
}
demoExcelEntityErrorList.add(demoExcelEntityError);
});
fireChemicalServiceImpl.saveOrUpdateBatch(demoExcelEntityErrorList);
break;
case ExcelEnums.XFZJ:
break;
case ExcelEnums.SYXX:
break;
case ExcelEnums.HKQ:
default:
break;
}
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("系统异常!");
}
}
@TycloudOperation(needAuth = false,ApiLevel = UserType.AGENCY)
@ApiOperation(value = "上传文件数据-")
@PostMapping("/upload")
public void template2(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
List<FireChemicalDto> demoExcelEntities = ExcelUtil.readFirstSheetExcel(multipartFile, FireChemicalDto.class, 1);
List<FireChemical> demoExcelEntityErrorList = new ArrayList<>();
demoExcelEntities.forEach(
demoExcelEntity -> {
FireChemical demoExcelEntityError = new FireChemical();
demoExcelEntityError = Bean.toPo(demoExcelEntity, demoExcelEntityError);
if(demoExcelEntityError.getType()!=null) {
String[] dr= demoExcelEntityError.getType().split("@");
demoExcelEntityError.setType(dr[0]);
demoExcelEntityError.setTypeCode(dr[1]);
}
demoExcelEntityErrorList.add(demoExcelEntityError);
}
);
fireChemicalServiceImpl.saveOrUpdateBatch(demoExcelEntityErrorList);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment