大屏算总分

This commit is contained in:
guoshengxiong 2024-07-01 20:14:23 +08:00
parent 6440b9d422
commit ab2b00e645
7 changed files with 184 additions and 32 deletions

View File

@ -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);
} }

View File

@ -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

View File

@ -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));
} }

View File

@ -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;
}
}

View File

@ -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

View File

@ -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

View File

@ -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("请先配置默认审批公司");
} }