Commit 59b93567 authored by suhuiguang's avatar suhuiguang

1.防火监督-隐患联调

parent fd6d8867
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.supervision.core.common.dto; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.supervision.core.common.dto;
import lombok.Data; import lombok.Data;
import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
...@@ -9,7 +10,7 @@ import java.util.List; ...@@ -9,7 +10,7 @@ import java.util.List;
* @author xixinzhao * @author xixinzhao
*/ */
@Data @Data
public class DangerDto { public class DangerDto implements Serializable {
/** /**
* 隐患id * 隐患id
......
...@@ -2,7 +2,6 @@ package com.yeejoin.amos.supervision.business.controller; ...@@ -2,7 +2,6 @@ package com.yeejoin.amos.supervision.business.controller;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerExportDto;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerImportDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerImportDto;
import com.yeejoin.amos.supervision.business.service.intfc.IHiddenDangerService; import com.yeejoin.amos.supervision.business.service.intfc.IHiddenDangerService;
import com.yeejoin.amos.supervision.business.util.FileHelper; import com.yeejoin.amos.supervision.business.util.FileHelper;
...@@ -83,11 +82,6 @@ public class HiddenDangerController extends AbstractBaseController { ...@@ -83,11 +82,6 @@ public class HiddenDangerController extends AbstractBaseController {
public ResponseModel importDanger( public ResponseModel importDanger(
@RequestParam(value = "planId") Long planId, @RequestParam(value = "planId") Long planId,
@ApiParam(value = "导入数据文件", required = true) @RequestBody MultipartFile file) { @ApiParam(value = "导入数据文件", required = true) @RequestBody MultipartFile file) {
String fileName = file.getOriginalFilename();
assert fileName != null;
if (!fileName.endsWith(".xls")) {
throw new RuntimeException("文件格式不正确");
}
List<HiddenDangerImportDto> list = FileHelper.importExcel(file, 0, 1, HiddenDangerImportDto.class); List<HiddenDangerImportDto> list = FileHelper.importExcel(file, 0, 1, HiddenDangerImportDto.class);
iHiddenDangerService.importDanger(planId, list); iHiddenDangerService.importDanger(planId, list);
return ResponseHelper.buildResponse("导入成功"); return ResponseHelper.buildResponse("导入成功");
...@@ -95,15 +89,13 @@ public class HiddenDangerController extends AbstractBaseController { ...@@ -95,15 +89,13 @@ public class HiddenDangerController extends AbstractBaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "导出指定计划的隐患", notes = "导出指定计划的隐患") @ApiOperation(value = "导出指定计划的隐患", notes = "导出指定计划的隐患")
@PostMapping(value = "{planId}/export") @GetMapping(value = "{planId}/export")
public void exportDangerList( public void exportDangerList(
@PathVariable String planId, @PathVariable String planId,
@RequestParam(value = "pointId", required = false) Long pointId, @RequestParam(value = "pointId", required = false) Long pointId,
@RequestParam(value = "level", required = false) String level, @RequestParam(value = "level", required = false) String level,
@RequestParam(value = "status", required = false) String status, @RequestParam(value = "status", required = false) String status,
HttpServletResponse response) { HttpServletResponse response) {
List<HiddenDangerExportDto> dtoList = iHiddenDangerService.listAll(planId, pointId, level, status); iHiddenDangerService.exportDangerData(planId, pointId, level, status, response);
String fileName = "隐患问题清单" + System.currentTimeMillis();
FileHelper.exportExcel(dtoList, "隐患问题清单", "隐患问题清单", HiddenDangerExportDto.class, fileName + ".xls", response);
} }
} }
package com.yeejoin.amos.supervision.business.dto; package com.yeejoin.amos.supervision.business.dto;
import cn.afterturn.easypoi.excel.annotation.Excel; import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
/**
* @author DELL
*/
@Data @Data
public class HiddenDangerExportDto { public class HiddenDangerExportDataDto {
/** /**
* 隐患名称 * 隐患名称
*/ */
@Excel(name = "安全隐患", orderNum = "0") @ExcelProperty(value = "隐患名称", index = 0)
private String name; private String name;
/** /**
* 检查项名称 * 检查项名称
*/ */
@Excel(name = "检查项", orderNum = "1") @ExcelProperty(value = "检查项", index = 1)
private String inputItemName; private String inputItemName;
/** /**
* 隐患级别 * 隐患级别
*/ */
@Excel(name = "隐患级别", orderNum = "2") @ExcelProperty(value = "隐患级别", index = 2)
private String dangerLevelName; private String dangerLevelName;
/** /**
* 治理方式 * 治理方式
*/ */
@Excel(name = "治理方式", orderNum = "3") @ExcelProperty(value = "治理方式", index = 3)
private String reformType; private String reformTypeName;
/** /**
* 整改期限 * 整改期限
*/ */
@Excel(name = "整改期限", orderNum = "4") @ExcelProperty(value = "整改期限", index = 4)
private Date reformLimitDate; private Date reformLimitDate;
/** /**
* 检查时间 * 检查时间
*/ */
@Excel(name = "检查时间", orderNum = "5") @ExcelProperty(value = "检查时间", index = 5)
private String checkTime; private String checkTime;
/**2470 49 2052 /**
* 2470 49 2052
* 检查人员名称 * 检查人员名称
*/ */
@Excel(name = "检查人员名称", orderNum = "6") @ExcelProperty(value = "检查人员名称", index = 6)
private String checkUserName; private String checkUserName;
/** /**
* 责任单位 * 责任单位
*/ */
@Excel(name = "责任单位", orderNum = "7") @ExcelProperty(value = "责任单位", index = 7)
private String pointName; private String pointName;
/** /**
* 状态 * 状态
*/ */
@Excel(name = "状态", orderNum = "8") @ExcelProperty(value = "状态", index = 8)
private String stateName; private String stateName;
/** /**
* 隐患来源 * 隐患来源
*/ */
@Excel(name = "隐患来源", orderNum = "9") @ExcelProperty(value = "隐患来源", index = 9)
private String dangerTypeName; private String dangerTypeName;
} }
...@@ -25,11 +25,11 @@ public interface DangerFeignClient { ...@@ -25,11 +25,11 @@ public interface DangerFeignClient {
/** /**
* 隐患详情 * 隐患详情
* *
* @param id 隐患主键 * @param dangerId 隐患主键
* @return FeignClientResult * @return FeignClientResult
*/ */
@GetMapping(value = "/detail") @GetMapping(value = "/detail")
FeignClientResult<DangerDto> getOne(@RequestParam Long id); FeignClientResult<DangerDto> getOne(@RequestParam Long dangerId);
/** /**
......
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.supervision.business.feign; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.supervision.business.feign;
import feign.RequestInterceptor; import feign.RequestInterceptor;
import feign.RequestTemplate; import feign.RequestTemplate;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes; import org.springframework.web.context.request.ServletRequestAttributes;
...@@ -9,6 +10,8 @@ import org.springframework.web.context.request.ServletRequestAttributes; ...@@ -9,6 +10,8 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
public class FeignBasicAuthRequestInterceptor implements RequestInterceptor { public class FeignBasicAuthRequestInterceptor implements RequestInterceptor {
public FeignBasicAuthRequestInterceptor() { public FeignBasicAuthRequestInterceptor() {
} }
...@@ -29,6 +32,7 @@ public class FeignBasicAuthRequestInterceptor implements RequestInterceptor { ...@@ -29,6 +32,7 @@ public class FeignBasicAuthRequestInterceptor implements RequestInterceptor {
} }
String product = request.getHeader("product"); String product = request.getHeader("product");
String appKey = request.getHeader("appKey"); String appKey = request.getHeader("appKey");
template.header("bizType",request.getContextPath().substring(1));
template.header("token", token); template.header("token", token);
template.header("product", product); template.header("product", product);
template.header("appKey", appKey); template.header("appKey", appKey);
......
...@@ -11,7 +11,7 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult; ...@@ -11,7 +11,7 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.supervision.business.dao.mapper.HiddenDangerMapper; import com.yeejoin.amos.supervision.business.dao.mapper.HiddenDangerMapper;
import com.yeejoin.amos.supervision.business.dao.repository.IHiddenDangerDao; import com.yeejoin.amos.supervision.business.dao.repository.IHiddenDangerDao;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerDto;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerExportDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerExportDataDto;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerImportDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerImportDto;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerTemplateDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerTemplateDto;
import com.yeejoin.amos.supervision.business.feign.DangerFeignClient; import com.yeejoin.amos.supervision.business.feign.DangerFeignClient;
...@@ -55,22 +55,22 @@ public class HiddenDangerServiceImpl implements IHiddenDangerService { ...@@ -55,22 +55,22 @@ public class HiddenDangerServiceImpl implements IHiddenDangerService {
DataSources dataSources; DataSources dataSources;
@Override @Override
public List<HiddenDangerExportDto> listAll(String planId, Long pointId, String level, String status) { public List<HiddenDangerExportDataDto> listAll(String planId, Long pointId, String level, String status) {
//1.查询指定计划和公司的关联隐患数据 //1.查询指定计划和公司的关联隐患数据
List<HiddenDangerDto> hiddenDangers = hiddenDangerMapper.listByCondition(planId, pointId); List<HiddenDangerDto> hiddenDangers = hiddenDangerMapper.listByCondition(planId, pointId);
List<Long> dangerIds = Lists.transform(hiddenDangers, HiddenDangerDto::getLatentDangerId); List<Long> dangerIds = Lists.transform(hiddenDangers, HiddenDangerDto::getLatentDangerId);
String dangerIdsStr = Joiner.on(",").join(dangerIds); String dangerIdsStr = Joiner.on(",").join(dangerIds);
//2.调用隐患模块查询关联隐患的具体数据(业务系统直落关系,具体隐患数据再隐患服务进行储存) //2.调用隐患模块查询关联隐患的具体数据(业务系统直落关系,具体隐患数据再隐患服务进行储存)
Map<String,Object> param = new HashMap<>(); Map<String, Object> param = new HashMap<>();
param.put("ids",dangerIdsStr); param.put("ids", dangerIdsStr);
param.put("level",level); param.put("level", level);
param.put("status",status); param.put("status", status);
FeignClientResult<List<DangerDto>> daResult = feignClient.listAll(param); FeignClientResult<List<DangerDto>> daResult = feignClient.listAll(param);
List<DangerDto> allData = daResult.getResult(); List<DangerDto> allData = daResult.getResult();
Map<Long, HiddenDangerDto> keyMap = hiddenDangers.stream().collect(Collectors.toMap(HiddenDangerDto::getLatentDangerId, Function.identity())); Map<Long, HiddenDangerDto> keyMap = hiddenDangers.stream().collect(Collectors.toMap(HiddenDangerDto::getLatentDangerId, Function.identity()));
//3.将查询会来的数据与业务数据拼接,进行返回 //3.将查询会来的数据与业务数据拼接,进行返回
return allData.stream().map(s -> { return allData.stream().map(s -> {
HiddenDangerExportDto exportDto = new HiddenDangerExportDto(); HiddenDangerExportDataDto exportDto = new HiddenDangerExportDataDto();
Bean.copyExistPropertis(s, exportDto); Bean.copyExistPropertis(s, exportDto);
HiddenDangerDto hiddenDangerDto = keyMap.get(s.getId()); HiddenDangerDto hiddenDangerDto = keyMap.get(s.getId());
exportDto.setCheckTime(hiddenDangerDto != null ? hiddenDangerDto.getCheckTime() : ""); exportDto.setCheckTime(hiddenDangerDto != null ? hiddenDangerDto.getCheckTime() : "");
...@@ -169,4 +169,10 @@ public class HiddenDangerServiceImpl implements IHiddenDangerService { ...@@ -169,4 +169,10 @@ public class HiddenDangerServiceImpl implements IHiddenDangerService {
public void templateExport(HttpServletResponse response) { public void templateExport(HttpServletResponse response) {
ExcelUtil.createTemplate(response, "隐患清单", "隐患清单", null, HiddenDangerTemplateDto.class, dataSources, true); ExcelUtil.createTemplate(response, "隐患清单", "隐患清单", null, HiddenDangerTemplateDto.class, dataSources, true);
} }
@Override
public void exportDangerData(String planId, Long pointId, String level, String status, HttpServletResponse response) {
List<HiddenDangerExportDataDto> dtoList = this.listAll(planId, pointId, level, status);
ExcelUtil.createTemplate(response, "隐患问题清单", "隐患问题清单", dtoList, HiddenDangerExportDataDto.class, dataSources, false);
}
} }
...@@ -2,7 +2,7 @@ package com.yeejoin.amos.supervision.business.service.intfc; ...@@ -2,7 +2,7 @@ package com.yeejoin.amos.supervision.business.service.intfc;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerExportDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerExportDataDto;
import com.yeejoin.amos.supervision.business.dto.HiddenDangerImportDto; import com.yeejoin.amos.supervision.business.dto.HiddenDangerImportDto;
import com.yeejoin.amos.supervision.core.common.dto.DangerDto; import com.yeejoin.amos.supervision.core.common.dto.DangerDto;
...@@ -22,7 +22,7 @@ public interface IHiddenDangerService { ...@@ -22,7 +22,7 @@ public interface IHiddenDangerService {
* @param status 状态 * @param status 状态
* @return List<HiddenDangerExportDto> * @return List<HiddenDangerExportDto>
*/ */
List<HiddenDangerExportDto> listAll(String planId, Long pointId, String level, String status); List<HiddenDangerExportDataDto> listAll(String planId, Long pointId, String level, String status);
/** /**
...@@ -66,4 +66,11 @@ public interface IHiddenDangerService { ...@@ -66,4 +66,11 @@ public interface IHiddenDangerService {
* @param response 输出 * @param response 输出
*/ */
void templateExport(HttpServletResponse response); void templateExport(HttpServletResponse response);
/**
* 隐患数据导出
* @param dtoList数据
* @param response 响应
*/
void exportDangerData(String planId, Long pointId, String level, String status, HttpServletResponse response);
} }
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