124 lines
5.0 KiB
Plaintext
124 lines
5.0 KiB
Plaintext
package com.sercurityControl.decision.service.impl;
|
|
|
|
import com.sercurityControl.decision.domain.qo.SafeRiskQo;
|
|
import com.sercurityControl.decision.domain.vo.QueryVo;
|
|
import com.sercurityControl.decision.domain.vo.SafeRiskVo;
|
|
import com.sercurityControl.decision.service.ExportService;
|
|
import com.sercurityControl.decision.service.SafeRiskService;
|
|
import com.sercurityControl.decision.utils.ExcelExportUtil;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.util.StringUtils;
|
|
import javax.annotation.Resource;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
|
|
@Service
|
|
public class ExportServiceImpl implements ExportService {
|
|
@Resource
|
|
private SafeRiskService safeRiskService;
|
|
|
|
@Override
|
|
public void getList(HttpServletResponse response, QueryVo queryVo) {
|
|
List<SafeRiskQo> list = new ArrayList<>();
|
|
List<List<String>> heard = getHeard();
|
|
List<Integer> colWidths = getColWidths();
|
|
switch (queryVo.getFlag()) {
|
|
case "2" :
|
|
List<SafeRiskVo> monitorList = safeRiskService.getMonitorList(queryVo);
|
|
list = monitorList.stream().map(SafeRiskQo::new).collect(Collectors.toList());
|
|
heard.get(0).add("球机编号");
|
|
colWidths.add(400);
|
|
break;
|
|
case "3": case "5" :
|
|
heard.get(0).add("时间");
|
|
colWidths.add(400);
|
|
case "4":
|
|
heard.get(0).add("状态");colWidths.add(400);break;
|
|
case "6":
|
|
heard.get(0).add("预警时间");colWidths.add(400);break;
|
|
case "8":
|
|
heard.get(0).add("是否整改");colWidths.add(400);
|
|
case "7":
|
|
heard.get(0).add("风险成本");colWidths.add(400);break;
|
|
}
|
|
if (!"2".equals(queryVo.getFlag())) {
|
|
list = safeRiskService.getList(queryVo);
|
|
}
|
|
List<List<Object>> data = new ArrayList<>();
|
|
int i = 0;
|
|
for (SafeRiskQo item : list) {
|
|
List<Object> temp = new ArrayList<>();
|
|
temp.add(String.valueOf(++i));
|
|
temp.add(item.getProjectName());
|
|
temp.add(item.getTicketName());
|
|
temp.add(StringUtils.hasLength(RISK_GRADE.get(item.getRiskGrade())) ? RISK_GRADE.get(item.getRiskGrade()) : item.getRiskGrade());
|
|
temp.add(item.getNumber());
|
|
temp.add(item.getJobLeader());
|
|
temp.add(item.getJobSite());
|
|
temp.add(item.getJobGx());
|
|
switch (queryVo.getFlag()) {
|
|
case "2" :
|
|
temp.add(item.getBmCode());
|
|
break;
|
|
case "3":
|
|
temp.add(item.getCreateTime());
|
|
temp.add(STATUS.get(item.getStatus()));
|
|
break;
|
|
case "5":
|
|
temp.add(item.getCreateTime());
|
|
case "4":
|
|
temp.add(CHANGE_STATUS.get(item.getChangeStatus()));break;
|
|
case "6":
|
|
temp.add(item.getYjDate());break;
|
|
case "8":
|
|
temp.add("0".equals(item.getChangeStatus()) ? "否" : "是");
|
|
case "7":
|
|
temp.add(item.getRiskCb());break;
|
|
}
|
|
data.add(temp);
|
|
}
|
|
ExcelExportUtil.excelFileExport(response,FILE_NAME.get(queryVo.getFlag()),data,heard,colWidths);
|
|
}
|
|
|
|
|
|
private List<List<String>> getHeard() {
|
|
List<List<String>> headList = new ArrayList<>();
|
|
String[] firstHead = {"序号","工程名称","作业票名称","风险等级","编号",
|
|
"负责人","作业部位","工序"};
|
|
headList.add(new ArrayList<>(Arrays.asList(firstHead)));
|
|
return headList;
|
|
}
|
|
|
|
|
|
private List<Integer> getColWidths(){
|
|
Integer[] ints = {400, 600, 600, 400,400,400,800,800};
|
|
return new ArrayList<>(Arrays.asList(ints));
|
|
}
|
|
|
|
public static Map<String ,String> RISK_GRADE = new HashMap<>();
|
|
public static Map<String ,String> STATUS = new HashMap<>();
|
|
public static Map<String ,String> CHANGE_STATUS = new HashMap<>();
|
|
public static Map<String ,String> FILE_NAME = new HashMap<>();
|
|
|
|
static {
|
|
RISK_GRADE.put("1","一级");
|
|
RISK_GRADE.put("2","二级");
|
|
RISK_GRADE.put("3","三级");
|
|
RISK_GRADE.put("4","四级");
|
|
RISK_GRADE.put("5","五级");
|
|
STATUS.put("0","未发布");
|
|
STATUS.put("1","已发布");
|
|
CHANGE_STATUS.put("0","未整改");
|
|
CHANGE_STATUS.put("1","已整改");
|
|
CHANGE_STATUS.put("2","逾期整改");
|
|
FILE_NAME.put("2","监控风险告警分析.xlsx");
|
|
FILE_NAME.put("3","风险提前预警处理.xlsx");
|
|
FILE_NAME.put("4","重点风险分析.xlsx");
|
|
FILE_NAME.put("5","风险整改分析.xlsx");
|
|
FILE_NAME.put("6","风险时段分析.xlsx");
|
|
FILE_NAME.put("7","风险成本影响分析.xlsx");
|
|
FILE_NAME.put("8","风险工程排名.xlsx");
|
|
}
|
|
}
|