| 
					
				 | 
			
			
				@@ -1,5 +1,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package com.jjt.risk.controller; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.jjt.biz.domain.BizObj; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.jjt.biz.service.IBizObjService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.common.annotation.Log; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.common.core.controller.BaseController; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.common.core.domain.AjaxResult; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -8,10 +10,12 @@ import com.jjt.common.enums.BusinessType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.common.utils.poi.ExcelUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.risk.domain.RiskAnalysis; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.risk.domain.RiskModel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.jjt.risk.domain.RiskObj; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.risk.service.IRiskAnalysisService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.jjt.risk.service.IRiskModelService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import io.swagger.annotations.Api; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import io.swagger.annotations.ApiOperation; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.jdbc.core.JdbcTemplate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.security.access.prepost.PreAuthorize; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.web.bind.annotation.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -21,6 +25,7 @@ import java.text.DecimalFormat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.time.LocalDateTime; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.time.ZoneOffset; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * 风险分析结果Controller 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -36,6 +41,10 @@ public class RiskAnalysisController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private IRiskAnalysisService riskAnalysisService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Resource 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private IRiskModelService riskModelService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Resource 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private IBizObjService objService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Resource 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private JdbcTemplate jdbcTemplate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 查询风险分析结果列表 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -77,11 +86,52 @@ public class RiskAnalysisController extends BaseController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @GetMapping(value = "/atOnce/{riskId}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public AjaxResult atOnce(@PathVariable("riskId") Long riskId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         RiskModel rm = riskModelService.selectRiskModelByRiskId(riskId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String sql = "SELECT img_path FROM risk_analysis WHERE result_id=?"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String ra_1 = jdbcTemplate.queryForObject(sql, String.class, -1L); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String ra_2 = jdbcTemplate.queryForObject(sql, String.class, -2L); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Long> objIds = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if ("1".equals(rm.getObjType())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<BizObj> list = objService.selectBizObjListByMetricsId(rm.getMetricsId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (list != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                objIds = list.stream().map(BizObj::getObjId).collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<RiskObj> objList = rm.getRiskObjList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (objList != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                objIds = objList.stream().map(RiskObj::getObjId).collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date time = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        rm.getRiskObjList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Random r = new Random(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if ("3".equals(rm.getRiskType())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return type3info(1L); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            if() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            RiskAnalysis ra = new RiskAnalysis(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ra.setRiskId(riskId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ra.setAnalyseTime(time); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ra.setImgPath(ra_2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            riskAnalysisService.insertRiskAnalysis(ra); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return type3info(ra.getResultId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return getInfo(1L); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (Long objId : objIds) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                RiskAnalysis ra = new RiskAnalysis(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setRiskId(riskId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setObjId(objId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setResult("趋势好转"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setAvgValue("98,88"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setNormalValid("通过"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setVarianceValid("通过"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setConfidenceLevel(rm.getConfidenceLevel().toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setPValue(r.nextInt(100) + ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setAnalyseTime(time); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ra.setImgPath(ra_1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                riskAnalysisService.insertRiskAnalysis(ra); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return success(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @ApiOperation("获取异类组件分析结果") 
			 |