大屏算总分
This commit is contained in:
parent
6440b9d422
commit
ab2b00e645
@ -4,9 +4,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||||
import com.zhgd.xmgl.modules.dangerous.entity.DangerousEngineeringRecord;
|
import com.zhgd.xmgl.modules.dangerous.entity.DangerousEngineeringRecord;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord;
|
import com.zhgd.xmgl.modules.xz.security.entity.vo.GetStatScoreVo;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@ -30,7 +29,7 @@ public interface IDangerousEngineeringRecordService extends IService<DangerousEn
|
|||||||
|
|
||||||
void endEngineer(Map<String, Object> paramMap);
|
void endEngineer(Map<String, Object> paramMap);
|
||||||
|
|
||||||
BigDecimal getScore(String projectSn, Date time);
|
GetStatScoreVo.DangerEngScore getScore(String projectSn, Date time);
|
||||||
|
|
||||||
void finish(Long engineeringId);
|
void finish(Long engineeringId);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,7 +25,7 @@ import com.zhgd.xmgl.modules.dangerous.service.IDangerousEngineeringRecordServic
|
|||||||
import com.zhgd.xmgl.modules.dangerous.service.IDangerousEngineeringSideStationService;
|
import com.zhgd.xmgl.modules.dangerous.service.IDangerousEngineeringSideStationService;
|
||||||
import com.zhgd.xmgl.modules.dangerous.service.IHiddenDangerInspectRecordService;
|
import com.zhgd.xmgl.modules.dangerous.service.IHiddenDangerInspectRecordService;
|
||||||
import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper;
|
import com.zhgd.xmgl.modules.worker.mapper.EnterpriseInfoMapper;
|
||||||
import com.zhgd.xmgl.security.util.SecurityUtils;
|
import com.zhgd.xmgl.modules.xz.security.entity.vo.GetStatScoreVo;
|
||||||
import com.zhgd.xmgl.util.MapBuilder;
|
import com.zhgd.xmgl.util.MapBuilder;
|
||||||
import com.zhgd.xmgl.util.MessageUtil;
|
import com.zhgd.xmgl.util.MessageUtil;
|
||||||
import org.apache.commons.collections.MapUtils;
|
import org.apache.commons.collections.MapUtils;
|
||||||
@ -206,10 +206,13 @@ public class DangerousEngineeringRecordServiceImpl extends ServiceImpl<Dangerous
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BigDecimal getScore(String projectSn, Date date) {
|
public GetStatScoreVo.DangerEngScore getScore(String projectSn, Date date) {
|
||||||
|
GetStatScoreVo.DangerEngScore score = new GetStatScoreVo.DangerEngScore();
|
||||||
List<DangerousEngineeringRecord> list = this.list(Wrappers.<DangerousEngineeringRecord>lambdaQuery()
|
List<DangerousEngineeringRecord> list = this.list(Wrappers.<DangerousEngineeringRecord>lambdaQuery()
|
||||||
.eq(DangerousEngineeringRecord::getProjectSn, projectSn)
|
.eq(DangerousEngineeringRecord::getProjectSn, projectSn)
|
||||||
.between(DangerousEngineeringRecord::getCreateTime, DateUtil.beginOfMonth(date), DateUtil.endOfMonth(date)));
|
.between(DangerousEngineeringRecord::getCreateTime, DateUtil.beginOfMonth(date), DateUtil.endOfMonth(date)));
|
||||||
|
BigDecimal pcfglMax = new BigDecimal(100).multiply(new BigDecimal(0.6)).setScale(2, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal pzjlMax = new BigDecimal(100).multiply(new BigDecimal(0.4)).setScale(2, RoundingMode.HALF_UP);
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
List<DangerousEngineeringRecord> list1 = list.stream().filter(l -> DateUtil.compare(DateUtil.parseDate(l.getPlanEndTime()), date, "yyyy-MM-dd") >= 0
|
List<DangerousEngineeringRecord> list1 = list.stream().filter(l -> DateUtil.compare(DateUtil.parseDate(l.getPlanEndTime()), date, "yyyy-MM-dd") >= 0
|
||||||
&& DateUtil.compare(date, DateUtil.parseDate(l.getPlanStartTime()), "yyyy-MM-dd") <= 0).collect(Collectors.toList());
|
&& DateUtil.compare(date, DateUtil.parseDate(l.getPlanStartTime()), "yyyy-MM-dd") <= 0).collect(Collectors.toList());
|
||||||
@ -250,9 +253,19 @@ public class DangerousEngineeringRecordServiceImpl extends ServiceImpl<Dangerous
|
|||||||
result2 = result2.multiply(new BigDecimal(0.4)).setScale(2, RoundingMode.HALF_UP);
|
result2 = result2.multiply(new BigDecimal(0.4)).setScale(2, RoundingMode.HALF_UP);
|
||||||
}
|
}
|
||||||
BigDecimal total = result1.add(result2);
|
BigDecimal total = result1.add(result2);
|
||||||
return total.multiply(new BigDecimal(15)).setScale(2, RoundingMode.HALF_UP);
|
score.setTotal(total.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setPcfgl(result1.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setPzjl(result2.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setPcfglkf(pcfglMax.subtract(score.getPcfgl()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setPzjlkf(pcfglMax.subtract(score.getPzjl()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
}else{
|
||||||
|
score.setTotal(new BigDecimal(100));
|
||||||
|
score.setPcfgl(pcfglMax);
|
||||||
|
score.setPzjl(pzjlMax);
|
||||||
|
score.setPcfglkf(new BigDecimal(0));
|
||||||
|
score.setPzjlkf(new BigDecimal(0));
|
||||||
}
|
}
|
||||||
return new BigDecimal(15);
|
return score;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
package com.zhgd.xmgl.modules.xz.security.controller;
|
package com.zhgd.xmgl.modules.xz.security.controller;
|
||||||
|
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.zhgd.annotation.OperLog;
|
import com.zhgd.annotation.OperLog;
|
||||||
import com.zhgd.jeecg.common.api.vo.Result;
|
import com.zhgd.jeecg.common.api.vo.Result;
|
||||||
@ -10,14 +10,10 @@ import com.zhgd.xmgl.base.entity.vo.SectorVo;
|
|||||||
import com.zhgd.xmgl.base.entity.vo.TrendOneVo;
|
import com.zhgd.xmgl.base.entity.vo.TrendOneVo;
|
||||||
import com.zhgd.xmgl.constant.Cts;
|
import com.zhgd.xmgl.constant.Cts;
|
||||||
import com.zhgd.xmgl.modules.dangerous.service.IDangerousEngineeringRecordService;
|
import com.zhgd.xmgl.modules.dangerous.service.IDangerousEngineeringRecordService;
|
||||||
import com.zhgd.xmgl.modules.dangerous.service.IHiddenDangerInspectRecordService;
|
|
||||||
import com.zhgd.xmgl.modules.quality.entity.QualityInspectionRecord;
|
|
||||||
import com.zhgd.xmgl.modules.video.service.IAiAnalyseHardWareAlarmRecordService;
|
import com.zhgd.xmgl.modules.video.service.IAiAnalyseHardWareAlarmRecordService;
|
||||||
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityInspectTaskRecord;
|
|
||||||
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord;
|
import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord;
|
||||||
import com.zhgd.xmgl.modules.xz.security.entity.dto.XzSecurityDepartmentRectifiedRankDto;
|
import com.zhgd.xmgl.modules.xz.security.entity.dto.XzSecurityDepartmentRectifiedRankDto;
|
||||||
import com.zhgd.xmgl.modules.xz.security.entity.vo.*;
|
import com.zhgd.xmgl.modules.xz.security.entity.vo.*;
|
||||||
import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityInspectTaskRecordService;
|
|
||||||
import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRecordService;
|
import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRecordService;
|
||||||
import com.zhgd.xmgl.util.MessageUtil;
|
import com.zhgd.xmgl.util.MessageUtil;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@ -37,7 +33,6 @@ import java.util.Date;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -447,6 +442,7 @@ public class XzSecurityQualityInspectionRecordController {
|
|||||||
qualityInspectionRecordService.supervise(paramMap);
|
qualityInspectionRecordService.supervise(paramMap);
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取综合分数
|
* 获取综合分数
|
||||||
*
|
*
|
||||||
@ -457,30 +453,45 @@ public class XzSecurityQualityInspectionRecordController {
|
|||||||
@ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String")
|
@ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String")
|
||||||
})
|
})
|
||||||
@GetMapping(value = "/getStatScore")
|
@GetMapping(value = "/getStatScore")
|
||||||
public Result<Object> getStatScore(String projectSn) {
|
public Result<GetStatScoreVo> getStatScore(String projectSn) {
|
||||||
BigDecimal hiddenDangerScore = qualityInspectionRecordService.getHiddenDangerScore(projectSn, new Date());
|
GetStatScoreVo.HiddenDangerScore hiddenDangerScoreClz = qualityInspectionRecordService.getHiddenDangerScore(projectSn, new Date());
|
||||||
BigDecimal dangerEngScore = dangerousEngineeringRecordService.getScore(projectSn, new Date());
|
GetStatScoreVo.DangerEngScore dangerEngScoreClz = dangerousEngineeringRecordService.getScore(projectSn, new Date());
|
||||||
BigDecimal riskScore = qualityInspectionRecordService.getRiskScore(projectSn, new Date());
|
GetStatScoreVo.RiskScore riskScoreClz = qualityInspectionRecordService.getRiskScore(projectSn, new Date());
|
||||||
BigDecimal aiScore = aiAnalyseHardWareAlarmRecordService.getScore(projectSn, new Date());
|
BigDecimal aiScore = aiAnalyseHardWareAlarmRecordService.getScore(projectSn, new Date());
|
||||||
|
|
||||||
Date lastMonth = DateUtil.offsetMonth(new Date(), -1);
|
Date lastMonth = DateUtil.offsetMonth(new Date(), -1);
|
||||||
BigDecimal hiddenDangerScore1 = qualityInspectionRecordService.getHiddenDangerScore(projectSn, lastMonth);
|
GetStatScoreVo.HiddenDangerScore hiddenDangerScoreClz1 = qualityInspectionRecordService.getHiddenDangerScore(projectSn, lastMonth);
|
||||||
BigDecimal dangerEngScore1 = dangerousEngineeringRecordService.getScore(projectSn, lastMonth);
|
GetStatScoreVo.DangerEngScore dangerEngScoreClz1 = dangerousEngineeringRecordService.getScore(projectSn, lastMonth);
|
||||||
BigDecimal riskScore1 = qualityInspectionRecordService.getRiskScore(projectSn, lastMonth);
|
GetStatScoreVo.RiskScore riskScoreClz1 = qualityInspectionRecordService.getRiskScore(projectSn, lastMonth);
|
||||||
BigDecimal aiScore1 = aiAnalyseHardWareAlarmRecordService.getScore(projectSn, lastMonth);
|
BigDecimal aiScore1 = aiAnalyseHardWareAlarmRecordService.getScore(projectSn, lastMonth);
|
||||||
Map<String, Object> resultMap = new HashMap<>();
|
Map<String, Object> resultMap = new HashMap<>();
|
||||||
|
BigDecimal hiddenDangerScore = hiddenDangerScoreClz.getTotal().multiply(new BigDecimal(0.35)).setScale(0, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal hiddenDangerScore1 = hiddenDangerScoreClz1.getTotal().multiply(new BigDecimal(0.35)).setScale(0, RoundingMode.HALF_UP);
|
||||||
resultMap.put("hiddenDangerScore", hiddenDangerScore);
|
resultMap.put("hiddenDangerScore", hiddenDangerScore);
|
||||||
|
resultMap.put("hiddenDangerScoreClz", hiddenDangerScoreClz);
|
||||||
|
BigDecimal dangerEngScore = dangerEngScoreClz.getTotal().multiply(new BigDecimal(0.15)).setScale(0, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal dangerEngScore1 = dangerEngScoreClz1.getTotal().multiply(new BigDecimal(0.15)).setScale(0, RoundingMode.HALF_UP);
|
||||||
resultMap.put("dangerEngScore", dangerEngScore);
|
resultMap.put("dangerEngScore", dangerEngScore);
|
||||||
|
resultMap.put("dangerEngScoreClz", dangerEngScoreClz);
|
||||||
|
BigDecimal riskScore = riskScoreClz.getTotal().multiply(new BigDecimal(0));
|
||||||
|
BigDecimal riskScore1 = riskScoreClz1.getTotal().multiply(new BigDecimal(0));
|
||||||
resultMap.put("riskScore", riskScore);
|
resultMap.put("riskScore", riskScore);
|
||||||
|
resultMap.put("riskDeScore", new BigDecimal(0));
|
||||||
|
resultMap.put("riskScoreClz", riskScoreClz);
|
||||||
resultMap.put("aiScore", aiScore);
|
resultMap.put("aiScore", aiScore);
|
||||||
BigDecimal total = hiddenDangerScore.add(dangerEngScore).add(riskScore).add(aiScore).add(new BigDecimal(30)).setScale(0, RoundingMode.HALF_UP);
|
BigDecimal total = hiddenDangerScore.add(dangerEngScore).add(riskScore).add(aiScore).add(new BigDecimal(30)).setScale(0, RoundingMode.HALF_UP);
|
||||||
resultMap.put("total", total);
|
resultMap.put("total", total);
|
||||||
BigDecimal lastMonthTotal = hiddenDangerScore1.add(dangerEngScore1).add(riskScore1).add(aiScore1).add(new BigDecimal(30)).setScale(0, RoundingMode.HALF_UP);
|
BigDecimal lastMonthTotal = hiddenDangerScore1.add(dangerEngScore1).add(riskScore1).add(aiScore1).add(new BigDecimal(30)).setScale(0, RoundingMode.HALF_UP);
|
||||||
resultMap.put("lastMonthTotal", lastMonthTotal);
|
resultMap.put("lastMonthTotal", lastMonthTotal);
|
||||||
|
resultMap.put("edu", new BigDecimal(30));
|
||||||
|
resultMap.put("eduModuleScore", new BigDecimal(100));
|
||||||
|
resultMap.put("eduModuleDeScore", new BigDecimal(0));
|
||||||
|
resultMap.put("aiModuleScore", aiScore.divide(new BigDecimal(20)).multiply(new BigDecimal(100)).setScale(0, RoundingMode.HALF_UP));
|
||||||
|
resultMap.put("aiModuleDeScore", new BigDecimal(100).subtract((BigDecimal) resultMap.get("aiModuleScore")).setScale(0, RoundingMode.HALF_UP));
|
||||||
BigDecimal subtract = total.subtract(lastMonthTotal);
|
BigDecimal subtract = total.subtract(lastMonthTotal);
|
||||||
subtract = subtract.divide(lastMonthTotal, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
|
subtract = subtract.divide(lastMonthTotal, 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100));
|
||||||
resultMap.put("radio", subtract);
|
resultMap.put("radio", subtract);
|
||||||
return Result.success(resultMap);
|
return Result.success(BeanUtil.toBean(resultMap, GetStatScoreVo.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,93 @@
|
|||||||
|
package com.zhgd.xmgl.modules.xz.security.entity.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GetStatScoreVo {
|
||||||
|
@ApiModelProperty("危大工程")
|
||||||
|
private BigDecimal dangerEngScore;
|
||||||
|
@ApiModelProperty("隐患治理排查")
|
||||||
|
private BigDecimal hiddenDangerScore;
|
||||||
|
@ApiModelProperty("安全教育")
|
||||||
|
private BigDecimal edu;
|
||||||
|
@ApiModelProperty("AI报警")
|
||||||
|
private BigDecimal aiScore;
|
||||||
|
@ApiModelProperty("风险管理")
|
||||||
|
private BigDecimal riskScore;
|
||||||
|
|
||||||
|
@ApiModelProperty("安全教育单模块得分")
|
||||||
|
private BigDecimal eduModuleScore;
|
||||||
|
@ApiModelProperty("安全教育单模块扣分")
|
||||||
|
private BigDecimal eduModuleDeScore;
|
||||||
|
@ApiModelProperty("AI报警单模块")
|
||||||
|
private BigDecimal aiModuleScore;
|
||||||
|
@ApiModelProperty("AI报警单模块扣分")
|
||||||
|
private BigDecimal aiModuleDeScore;
|
||||||
|
|
||||||
|
@ApiModelProperty("总分")
|
||||||
|
private BigDecimal total;
|
||||||
|
@ApiModelProperty("")
|
||||||
|
private BigDecimal radio;
|
||||||
|
@ApiModelProperty("")
|
||||||
|
private BigDecimal lastMonthTotal;
|
||||||
|
|
||||||
|
private HiddenDangerScore hiddenDangerScoreClz;
|
||||||
|
private DangerEngScore dangerEngScoreClz;
|
||||||
|
private RiskScore riskScoreClz;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class HiddenDangerScore {
|
||||||
|
@ApiModelProperty("总分")
|
||||||
|
private BigDecimal total;
|
||||||
|
@ApiModelProperty("隐患整改率")
|
||||||
|
private BigDecimal zgl;
|
||||||
|
@ApiModelProperty("隐患及时整改率")
|
||||||
|
private BigDecimal jszgl;
|
||||||
|
@ApiModelProperty("隐患闭合率")
|
||||||
|
private BigDecimal bhl;
|
||||||
|
@ApiModelProperty("项目自检数量")
|
||||||
|
private BigDecimal zj;
|
||||||
|
@ApiModelProperty("隐患整改率扣分")
|
||||||
|
private BigDecimal zglkf;
|
||||||
|
@ApiModelProperty("隐患及时整改率扣分")
|
||||||
|
private BigDecimal jszglkf;
|
||||||
|
@ApiModelProperty("隐患闭合率扣分")
|
||||||
|
private BigDecimal bhlkf;
|
||||||
|
@ApiModelProperty("项目自检数量扣分")
|
||||||
|
private BigDecimal zjkf;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class DangerEngScore {
|
||||||
|
@ApiModelProperty("总分")
|
||||||
|
private BigDecimal total;
|
||||||
|
@ApiModelProperty("危大工程排查覆盖率")
|
||||||
|
private BigDecimal pcfgl;
|
||||||
|
@ApiModelProperty("旁站记录更新")
|
||||||
|
private BigDecimal pzjl;
|
||||||
|
@ApiModelProperty("危大工程排查覆盖率扣分")
|
||||||
|
private BigDecimal pcfglkf;
|
||||||
|
@ApiModelProperty("旁站记录更新扣分")
|
||||||
|
private BigDecimal pzjlkf;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class RiskScore {
|
||||||
|
@ApiModelProperty("总分")
|
||||||
|
private BigDecimal total;
|
||||||
|
@ApiModelProperty("风险排查执行率")
|
||||||
|
private BigDecimal fxpczxl;
|
||||||
|
@ApiModelProperty("风险辨识数量")
|
||||||
|
private BigDecimal fxbsull;
|
||||||
|
@ApiModelProperty("风险排查执行率扣分")
|
||||||
|
private BigDecimal fxpczxlkf;
|
||||||
|
@ApiModelProperty("风险辨识数量扣分")
|
||||||
|
private BigDecimal fxbsullkf;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -11,7 +11,6 @@ import com.zhgd.xmgl.modules.xz.security.entity.dto.XzSecurityDepartmentRectifie
|
|||||||
import com.zhgd.xmgl.modules.xz.security.entity.vo.*;
|
import com.zhgd.xmgl.modules.xz.security.entity.vo.*;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -213,14 +212,14 @@ public interface IXzSecurityQualityInspectionRecordService extends IService<XzSe
|
|||||||
* @param time
|
* @param time
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
BigDecimal getHiddenDangerScore(String projectSn, Date time);
|
GetStatScoreVo.HiddenDangerScore getHiddenDangerScore(String projectSn, Date time);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param projectSn
|
* @param projectSn
|
||||||
* @param time
|
* @param time
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
BigDecimal getRiskScore(String projectSn, Date time);
|
GetStatScoreVo.RiskScore getRiskScore(String projectSn, Date time);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param type
|
* @param type
|
||||||
|
|||||||
@ -720,11 +720,16 @@ public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends Serv
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BigDecimal getHiddenDangerScore(String projectSn, Date date) {
|
public GetStatScoreVo.HiddenDangerScore getHiddenDangerScore(String projectSn, Date date) {
|
||||||
|
GetStatScoreVo.HiddenDangerScore score = new GetStatScoreVo.HiddenDangerScore();
|
||||||
List<XzSecurityQualityInspectionRecord> list = this.list(Wrappers.<XzSecurityQualityInspectionRecord>lambdaQuery()
|
List<XzSecurityQualityInspectionRecord> list = this.list(Wrappers.<XzSecurityQualityInspectionRecord>lambdaQuery()
|
||||||
.eq(XzSecurityQualityInspectionRecord::getProjectSn, projectSn)
|
.eq(XzSecurityQualityInspectionRecord::getProjectSn, projectSn)
|
||||||
.eq(XzSecurityQualityInspectionRecord::getRecordType, 1)
|
.eq(XzSecurityQualityInspectionRecord::getRecordType, 1)
|
||||||
.between(XzSecurityQualityInspectionRecord::getCreateTime, DateUtil.beginOfMonth(date), DateUtil.endOfMonth(date)));
|
.between(XzSecurityQualityInspectionRecord::getCreateTime, DateUtil.beginOfMonth(date), DateUtil.endOfMonth(date)));
|
||||||
|
BigDecimal zglMax = new BigDecimal(100).multiply(new BigDecimal(0.4)).setScale(2, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal jszglMax = new BigDecimal(100).multiply(new BigDecimal(0.3)).setScale(2, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal bhlMax = new BigDecimal(100).multiply(new BigDecimal(0.3)).setScale(2, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal zjMax = new BigDecimal(100).multiply(new BigDecimal(0)).setScale(2, RoundingMode.HALF_UP);
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
int num1 = list.stream().filter(l -> l.getStatus() != 2 && l.getStatus() != 6).collect(Collectors.toList()).size();
|
int num1 = list.stream().filter(l -> l.getStatus() != 2 && l.getStatus() != 6).collect(Collectors.toList()).size();
|
||||||
BigDecimal bigDecimal = new BigDecimal(num1);
|
BigDecimal bigDecimal = new BigDecimal(num1);
|
||||||
@ -759,16 +764,37 @@ public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends Serv
|
|||||||
result4 = result4.multiply(new BigDecimal(0.2)).setScale(2, RoundingMode.HALF_UP);
|
result4 = result4.multiply(new BigDecimal(0.2)).setScale(2, RoundingMode.HALF_UP);
|
||||||
|
|
||||||
BigDecimal total = result1.add(result2).add(result3)/*.add(result4)*/;
|
BigDecimal total = result1.add(result2).add(result3)/*.add(result4)*/;
|
||||||
return total.multiply(new BigDecimal(35)).setScale(2, RoundingMode.HALF_UP);
|
score.setTotal(total.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setZgl(result1.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setJszgl(result2.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setBhl(result3.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setZj(new BigDecimal(0));
|
||||||
|
score.setZglkf(zglMax.subtract(score.getZgl()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setJszglkf(jszglMax.subtract(score.getJszgl()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setBhlkf(bhlMax.subtract(score.getBhl()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setZjkf(zjMax.subtract(score.getZj()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
}else{
|
||||||
|
score.setTotal(new BigDecimal(100));
|
||||||
|
score.setZgl(zglMax);
|
||||||
|
score.setJszgl(jszglMax);
|
||||||
|
score.setBhl(bhlMax);
|
||||||
|
score.setZj(zjMax);
|
||||||
|
score.setZglkf(new BigDecimal(0));
|
||||||
|
score.setJszglkf(new BigDecimal(0));
|
||||||
|
score.setBhlkf(new BigDecimal(0));
|
||||||
|
score.setZjkf(new BigDecimal(0));
|
||||||
}
|
}
|
||||||
return new BigDecimal(35);
|
return score;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BigDecimal getRiskScore(String projectSn, Date date) {
|
public GetStatScoreVo.RiskScore getRiskScore(String projectSn, Date date) {
|
||||||
|
GetStatScoreVo.RiskScore score = new GetStatScoreVo.RiskScore();
|
||||||
List<XzSecurityQualityInspectionRecord> list = this.list(Wrappers.<XzSecurityQualityInspectionRecord>lambdaQuery()
|
List<XzSecurityQualityInspectionRecord> list = this.list(Wrappers.<XzSecurityQualityInspectionRecord>lambdaQuery()
|
||||||
.eq(XzSecurityQualityInspectionRecord::getProjectSn, projectSn)
|
.eq(XzSecurityQualityInspectionRecord::getProjectSn, projectSn)
|
||||||
.between(XzSecurityQualityInspectionRecord::getCreateTime, DateUtil.beginOfMonth(date), DateUtil.endOfMonth(date)));
|
.between(XzSecurityQualityInspectionRecord::getCreateTime, DateUtil.beginOfMonth(date), DateUtil.endOfMonth(date)));
|
||||||
|
BigDecimal fxpczxlMax = new BigDecimal(100).multiply(new BigDecimal(0.99)).setScale(2, RoundingMode.HALF_UP);
|
||||||
|
BigDecimal fxbsullMax = new BigDecimal(100).multiply(new BigDecimal(0.01)).setScale(2, RoundingMode.HALF_UP);
|
||||||
if (list.size() > 0) {
|
if (list.size() > 0) {
|
||||||
int num1 = list.stream().filter(l -> l.getRecordType() == 1).map(x -> x.getDangerItemContent()).collect(Collectors.toSet()).size();
|
int num1 = list.stream().filter(l -> l.getRecordType() == 1).map(x -> x.getDangerItemContent()).collect(Collectors.toSet()).size();
|
||||||
int num2 = list.stream().filter(l -> l.getRecordType() == 2).map(x -> x.getDangerItemContent()).collect(Collectors.toSet()).size();
|
int num2 = list.stream().filter(l -> l.getRecordType() == 2).map(x -> x.getDangerItemContent()).collect(Collectors.toSet()).size();
|
||||||
@ -793,9 +819,19 @@ public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends Serv
|
|||||||
result2 = new BigDecimal(0.01);
|
result2 = new BigDecimal(0.01);
|
||||||
}
|
}
|
||||||
BigDecimal total = result1.add(result2);
|
BigDecimal total = result1.add(result2);
|
||||||
return total.multiply(new BigDecimal(0)).setScale(2, RoundingMode.HALF_UP);
|
score.setTotal(total.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setFxpczxl(result1.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setFxbsull(result2.multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setFxpczxlkf(fxpczxlMax.subtract(score.getFxpczxl()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
score.setFxbsullkf(fxbsullMax.subtract(score.getFxbsull()).setScale(2, RoundingMode.HALF_UP));
|
||||||
|
} else {
|
||||||
|
score.setTotal(new BigDecimal(100));
|
||||||
|
score.setFxpczxl(fxpczxlMax);
|
||||||
|
score.setFxbsull(fxbsullMax);
|
||||||
|
score.setFxpczxlkf(new BigDecimal(0));
|
||||||
|
score.setFxbsullkf(new BigDecimal(0));
|
||||||
}
|
}
|
||||||
return new BigDecimal(0);
|
return score;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -97,9 +97,10 @@ public class XzRegistryServiceImpl extends ServiceImpl<XzRegistryMapper, XzRegis
|
|||||||
throw new OpenAlertException("账号已存在");
|
throw new OpenAlertException("账号已存在");
|
||||||
}
|
}
|
||||||
String headquartersSn = xz.getHeadquartersSn();
|
String headquartersSn = xz.getHeadquartersSn();
|
||||||
if ("-1".equals(headquartersSn)) {
|
String defaultSn = "-1";
|
||||||
|
if (defaultSn.equals(headquartersSn)) {
|
||||||
//选择默认的headquartersSn
|
//选择默认的headquartersSn
|
||||||
SystemLogoConfig slc = systemLogoConfigMapper.selectOne(new LambdaQueryWrapper<SystemLogoConfig>().eq(SystemLogoConfig::getHeadquartersSn, "-1"));
|
SystemLogoConfig slc = systemLogoConfigMapper.selectOne(new LambdaQueryWrapper<SystemLogoConfig>().eq(SystemLogoConfig::getHeadquartersSn, defaultSn));
|
||||||
if (StrUtil.isBlank(slc.getDefaultApprovalCompanySn())) {
|
if (StrUtil.isBlank(slc.getDefaultApprovalCompanySn())) {
|
||||||
throw new OpenAlertException("请先配置默认审批公司");
|
throw new OpenAlertException("请先配置默认审批公司");
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user