Commit cf7c11d7 authored by suhuiguang's avatar suhuiguang

1.提交-全景监控

parent 87a2f8e3
package com.yeejoin.amos.fas.common.enums;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author suhg
*/
public enum CheckStatusEnum {
QUALIFIED("合格","1",""),
UNQUALIFIED("不合格","2","#DF7400"),
OMISSION("漏检", "3","#FF0000");
/**
* 名称,描述
*/
private String name;
/**
* 编码
*/
private String code;
/**
* 颜色
*/
private String color;
private CheckStatusEnum(String name, String code,String color){
this.name = name;
this.code = code;
this.color = color;
}
public static CheckStatusEnum getEnum(String code) {
CheckStatusEnum checkStatusEnum = null;
for(CheckStatusEnum type: CheckStatusEnum.values()) {
if (type.getCode().equals(code)) {
checkStatusEnum = type;
break;
}
}
return checkStatusEnum;
}
public static List<Map<String,String>> getEnumList() {
List<Map<String,String>> nameList = new ArrayList<>();
for (CheckStatusEnum c: CheckStatusEnum.values()) {
Map<String, String> map = new HashMap<String, String>();
map.put("name", c.getName());
map.put("code", c.getCode());
map.put("color", c.getColor());
nameList.add(map);
}
return nameList;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
}
package com.yeejoin.amos.fas.business.bo;
/**
* @author suhg
*/
public class CheckErrorBo {
private String status;
private String changeDate;
private Long id;
private String name;
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getChangeDate() {
return changeDate;
}
public void setChangeDate(String changeDate) {
this.changeDate = changeDate;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
...@@ -80,9 +80,9 @@ public class View3dController extends BaseController { ...@@ -80,9 +80,9 @@ public class View3dController extends BaseController {
return CommonResponseUtil.success(view3dService.getSafetyIndexInfoByDate(orgCode,date)); return CommonResponseUtil.success(view3dService.getSafetyIndexInfoByDate(orgCode,date));
} }
@ApiOperation(value = "今日安全指数详情",notes = "risk-风险异常,check-巡检异常,equipProblem-设备故障") @ApiOperation(value = "今日安全指数详情",notes = "今日安全指数详情")
@GetMapping(value = "/safetyIndex/detail/{type}") @GetMapping(value = "/safetyIndex/detail/{type}")
public CommonResponse getSafetyIndexDetail(@PathVariable String type){ public CommonResponse getSafetyIndexDetail(@ApiParam(value = "risk-风险异常,check-巡检异常,equip-设备故障") @PathVariable String type){
ReginParams reginParams =getSelectedOrgInfo(); ReginParams reginParams =getSelectedOrgInfo();
String orgCode = this.getOrgCode(reginParams); String orgCode = this.getOrgCode(reginParams);
return CommonResponseUtil.success(view3dService.getSafetyIndexDetail(type,orgCode)); return CommonResponseUtil.success(view3dService.getSafetyIndexDetail(type,orgCode));
......
...@@ -3,6 +3,7 @@ package com.yeejoin.amos.fas.business.dao.mapper; ...@@ -3,6 +3,7 @@ package com.yeejoin.amos.fas.business.dao.mapper;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import com.yeejoin.amos.fas.business.bo.CheckErrorBo;
import com.yeejoin.amos.fas.business.bo.RiskPointRpnChangeBo; import com.yeejoin.amos.fas.business.bo.RiskPointRpnChangeBo;
import com.yeejoin.amos.fas.dao.entity.RiskSource; import com.yeejoin.amos.fas.dao.entity.RiskSource;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -33,4 +34,6 @@ public interface View3dMapper extends BaseMapper{ ...@@ -33,4 +34,6 @@ public interface View3dMapper extends BaseMapper{
* @return list * @return list
*/ */
List<RiskPointRpnChangeBo> getAllErrorRiskPoint(Map<String, Object> params); List<RiskPointRpnChangeBo> getAllErrorRiskPoint(Map<String, Object> params);
List<CheckErrorBo> getAllErrorPatrolPoint(Map<String, Object> params);
} }
...@@ -6,6 +6,7 @@ import java.util.*; ...@@ -6,6 +6,7 @@ import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.yeejoin.amos.fas.business.bo.BindPointBo; import com.yeejoin.amos.fas.business.bo.BindPointBo;
import com.yeejoin.amos.fas.business.bo.CheckErrorBo;
import com.yeejoin.amos.fas.business.bo.RiskPointRpnChangeBo; import com.yeejoin.amos.fas.business.bo.RiskPointRpnChangeBo;
import com.yeejoin.amos.fas.business.dao.mapper.PatrolMapper; import com.yeejoin.amos.fas.business.dao.mapper.PatrolMapper;
import com.yeejoin.amos.fas.business.dao.repository.*; import com.yeejoin.amos.fas.business.dao.repository.*;
...@@ -13,6 +14,7 @@ import com.yeejoin.amos.fas.business.service.intfc.IView3dService; ...@@ -13,6 +14,7 @@ import com.yeejoin.amos.fas.business.service.intfc.IView3dService;
import com.yeejoin.amos.fas.business.vo.ErrorContentVo; import com.yeejoin.amos.fas.business.vo.ErrorContentVo;
import com.yeejoin.amos.fas.business.vo.SafetyIndexDetailVo; import com.yeejoin.amos.fas.business.vo.SafetyIndexDetailVo;
import com.yeejoin.amos.fas.business.vo.TodaySafetyIndexVo; import com.yeejoin.amos.fas.business.vo.TodaySafetyIndexVo;
import com.yeejoin.amos.fas.common.enums.CheckStatusEnum;
import com.yeejoin.amos.fas.common.enums.RpnChangeTypeEum; import com.yeejoin.amos.fas.common.enums.RpnChangeTypeEum;
import com.yeejoin.amos.fas.common.enums.StatisticsErrorTypeEum; import com.yeejoin.amos.fas.common.enums.StatisticsErrorTypeEum;
import com.yeejoin.amos.fas.core.common.request.DateUtil; import com.yeejoin.amos.fas.core.common.request.DateUtil;
...@@ -212,11 +214,12 @@ public class View3dServiceImpl implements IView3dService { ...@@ -212,11 +214,12 @@ public class View3dServiceImpl implements IView3dService {
public List<SafetyIndexDetailVo> getSafetyIndexDetail(String type,String orgCode) { public List<SafetyIndexDetailVo> getSafetyIndexDetail(String type,String orgCode) {
List<SafetyIndexDetailVo> resultList = Lists.newArrayList(); List<SafetyIndexDetailVo> resultList = Lists.newArrayList();
String dateStr = DateUtil.getDateFormat(new Date(),DateUtil.DATE_DEFAULT_FORMAT); String dateStr = DateUtil.getDateFormat(new Date(),DateUtil.DATE_DEFAULT_FORMAT);
Map<String,Object> params = new HashMap<>();
// params.put("orgCode",orgCode);
params.put("orgCode","1*2");
params.put("date",dateStr);
if(StatisticsErrorTypeEum.risk.getCode().equals(type)){ if(StatisticsErrorTypeEum.risk.getCode().equals(type)){
//1.按照日期+机构,查询出所有风险点 //1.按照日期+机构,查询出所有风险点
Map<String,Object> params = new HashMap<>();
params.put("orgCode",orgCode);
params.put("date",dateStr);
List<RiskPointRpnChangeBo> risks = view3dMapper.getAllErrorRiskPoint(params); List<RiskPointRpnChangeBo> risks = view3dMapper.getAllErrorRiskPoint(params);
//2.按照 风险等级id进行分组,加工数据 //2.按照 风险等级id进行分组,加工数据
Map<Long,List<RiskPointRpnChangeBo>> map = risks.stream().collect(Collectors.groupingBy(RiskPointRpnChangeBo::getRiskLevelId)); Map<Long,List<RiskPointRpnChangeBo>> map = risks.stream().collect(Collectors.groupingBy(RiskPointRpnChangeBo::getRiskLevelId));
...@@ -226,19 +229,37 @@ public class View3dServiceImpl implements IView3dService { ...@@ -226,19 +229,37 @@ public class View3dServiceImpl implements IView3dService {
SafetyIndexDetailVo safetyIndexDetailVo = new SafetyIndexDetailVo(); SafetyIndexDetailVo safetyIndexDetailVo = new SafetyIndexDetailVo();
safetyIndexDetailVo.setTypeCode(Long.toString(k)); safetyIndexDetailVo.setTypeCode(Long.toString(k));
safetyIndexDetailVo.setTypeName(riskLevelMap.get(k)); safetyIndexDetailVo.setTypeName(riskLevelMap.get(k));
List<ErrorContentVo> errorContentVoList = new ArrayList<>(); safetyIndexDetailVo.setContent(getErrorContentVos(v));
BeanUtils.copyProperties(v,errorContentVoList);
safetyIndexDetailVo.setContent(errorContentVoList);
resultList.add(safetyIndexDetailVo); resultList.add(safetyIndexDetailVo);
}); });
} else if(StatisticsErrorTypeEum.patrol.getCode().equals(type)){ } else if(StatisticsErrorTypeEum.patrol.getCode().equals(type)){
//1.按照日期+机构,查询出异常巡检
List<CheckErrorBo> checkErrorBoList = view3dMapper.getAllErrorPatrolPoint(params);
//2.按照状态进行分组,加工返回数据
Map<String,List<CheckErrorBo>> map = checkErrorBoList.stream().collect(Collectors.groupingBy(CheckErrorBo::getStatus));
map.forEach((k,v)->{
SafetyIndexDetailVo safetyIndexDetailVo = new SafetyIndexDetailVo();
safetyIndexDetailVo.setTypeCode(k);
safetyIndexDetailVo.setTypeName(CheckStatusEnum.getEnum(k).getName());
safetyIndexDetailVo.setContent(getErrorContentVos(v));
resultList.add(safetyIndexDetailVo);
});
} else if(StatisticsErrorTypeEum.equip.getCode().equals(type)){ } else if(StatisticsErrorTypeEum.equip.getCode().equals(type)){
//TODO:待毛颖确认调整完成后继续
} }
return resultList; return resultList;
} }
private List<ErrorContentVo> getErrorContentVos(List<?> v) {
List<ErrorContentVo> errorContentVoList = new ArrayList<>();
errorContentVoList = v.stream().map(e->{
ErrorContentVo errorContentVo = new ErrorContentVo();
BeanUtils.copyProperties(e,errorContentVo);
return errorContentVo;
}).collect(Collectors.toList());
return errorContentVoList;
}
private Long getCheckExceptionNum(String orgCode, String date) { private Long getCheckExceptionNum(String orgCode, String date) {
Map<String,Object> params = new HashMap<>(); Map<String,Object> params = new HashMap<>();
params.put("orgCode", orgCode); params.put("orgCode", orgCode);
......
...@@ -81,4 +81,19 @@ ...@@ -81,4 +81,19 @@
and a.org_code = #{orgCode} and a.org_code = #{orgCode}
and DATE_FORMAT(b.create_date,'%Y-%m-%d') = #{date} and DATE_FORMAT(b.create_date,'%Y-%m-%d') = #{date}
</select> </select>
<select id="getAllErrorPatrolPoint" resultType="com.yeejoin.amos.fas.business.bo.CheckErrorBo">
SELECT
a.id,
b.`name`,
a.`is_ok` as status,
a.check_time as changeDate
FROM
p_check a,
p_point b
WHERE
a.`is_ok` IN ('2', '3')
AND a.point_id = b.id
and DATE_FORMAT(a.check_time,'%Y-%m-%d') = #{date}
and a.org_code = #{orgCode}
</select>
</mapper> </mapper>
\ No newline at end of file
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