|
@@ -2,6 +2,7 @@ package com.jd.service.impl;
|
|
|
|
|
|
import com.jd.code.ConstString;
|
|
|
import com.jd.entity.SystemRiskInfo;
|
|
|
+import com.jd.mapper.SafetyInfoMapper;
|
|
|
import com.jd.mapper.SystemRiskMapper;
|
|
|
import com.jd.service.SystemRiskService;
|
|
|
import com.jd.util.Blank;
|
|
@@ -9,6 +10,10 @@ import com.jd.util.SendUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.text.DateFormat;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
@@ -22,6 +27,9 @@ import java.util.Map;
|
|
|
@Service("SystemRiskServiceImpl")
|
|
|
public class SystemRiskServiceImpl implements SystemRiskService {
|
|
|
@Autowired
|
|
|
+ private SafetyInfoMapper safetyInfoMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private SystemRiskMapper systemRiskMapper;
|
|
|
|
|
|
@Override
|
|
@@ -35,6 +43,64 @@ public class SystemRiskServiceImpl implements SystemRiskService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public Map<String, Object> analyzeSystemRisk() {
|
|
|
+ //获取当前月份
|
|
|
+ Date createTime = new Date();
|
|
|
+ DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ String formatDate = dateFormat.format(createTime);
|
|
|
+ String Month = formatDate.substring(0, 7);
|
|
|
+ //获取当月对应的安全信息
|
|
|
+ Map<String, Object> safetyInfo = safetyInfoMapper.getSafetyInfoByMonth(Month);
|
|
|
+ Integer infoId = null;
|
|
|
+ try{
|
|
|
+ infoId = Integer.parseInt(safetyInfo.get("id").toString());
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ return SendUtil.send(false);
|
|
|
+ }
|
|
|
+ //准备返回参数
|
|
|
+ //高危漏洞数
|
|
|
+ Integer countHighRisk = 0;
|
|
|
+ //中危漏洞数
|
|
|
+ Integer countMiddleRisk = 0;
|
|
|
+ //局机关高危漏洞数
|
|
|
+ Integer countOfficeHighRisk = 0;
|
|
|
+ //局机关中危漏洞数
|
|
|
+ Integer countOfficeMiddleRisk = 0;
|
|
|
+ //直属单位高危漏洞数
|
|
|
+ Integer countCompanyHighRisk = 0;
|
|
|
+ //直属单位中危漏洞数
|
|
|
+ Integer countCompanyMiddleRisk = 0;
|
|
|
+
|
|
|
+ //获取漏洞数据
|
|
|
+ List<Map<String, Object>> riskList = systemRiskMapper.getSystemRiskByInfoId(infoId);
|
|
|
+ for (Map<String, Object> map : riskList) {
|
|
|
+ Integer highRisk = Integer.parseInt(map.get("high_risk_number").toString());
|
|
|
+ Integer middleRisk = Integer.parseInt(map.get("middle_risk_number").toString());
|
|
|
+ Integer office = Integer.parseInt(map.get("office").toString());
|
|
|
+ if(office == 1){
|
|
|
+ countOfficeHighRisk += highRisk;
|
|
|
+ countOfficeMiddleRisk += middleRisk;
|
|
|
+ }else{
|
|
|
+ countCompanyHighRisk += highRisk;
|
|
|
+ countCompanyMiddleRisk += middleRisk;
|
|
|
+ }
|
|
|
+ countHighRisk += highRisk;
|
|
|
+ countMiddleRisk += middleRisk;
|
|
|
+ }
|
|
|
+ //封装返回参数
|
|
|
+ Map<String, Object> returnMap = new HashMap<>();
|
|
|
+ returnMap.put("countHighRisk", countHighRisk);
|
|
|
+ returnMap.put("countMiddleRisk", countMiddleRisk);
|
|
|
+ returnMap.put("countOfficeHighRisk", countOfficeHighRisk);
|
|
|
+ returnMap.put("countOfficeMiddleRisk", countOfficeMiddleRisk);
|
|
|
+ returnMap.put("countCompanyHighRisk", countCompanyHighRisk);
|
|
|
+ returnMap.put("countCompanyMiddleRisk", countCompanyMiddleRisk);
|
|
|
+
|
|
|
+ return SendUtil.send(returnMap);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public Map<String, Object> getSystemRiskInfoById(Map<String, Object> param) {
|
|
|
return systemRiskMapper.getSystemRiskInfoById(param);
|
|
|
}
|