From 6250f74b2a02770a37f2f0144c762f7952a12bd6 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期二, 18 二月 2025 08:58:51 +0800 Subject: [PATCH] 修改 --- modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/SimulatAssessService.java | 78 ++++++++++++++++++------- modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dto/SimulaDataDto.java | 2 web/src/views/modules/taskReliability/SimulatHistory.vue | 2 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java | 3 modules/mainPart/src/main/java/com/zt/life/modules/mainPart/TestScheme/service/TestSchemeService.java | 17 ----- modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/FailureModel.java | 2 web/src/views/modules/taskReliability/SchemeCompar.vue | 18 ++++++ web/src/views/modules/taskReliability/SimulatCurve.vue | 39 +++++++----- 8 files changed, 104 insertions(+), 57 deletions(-) diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/TestScheme/service/TestSchemeService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/TestScheme/service/TestSchemeService.java index e77e792..8ed7861 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/TestScheme/service/TestSchemeService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/TestScheme/service/TestSchemeService.java @@ -8,15 +8,11 @@ import com.zt.life.modules.mainPart.TestScheme.model.TestScheme; import org.apache.commons.math3.distribution.ChiSquaredDistribution; import org.springframework.stereotype.Service; -import com.zt.common.db.query.QueryFilter; -import java.math.BigDecimal; -import java.math.RoundingMode; import java.util.ArrayList; import java.util.Formatter; import java.util.List; -import java.util.stream.Collectors; -import java.util.stream.Stream; + /** @@ -27,17 +23,6 @@ */ @Service public class TestSchemeService extends BaseService<TestSchemeDao, TestScheme> { - - /** - * 鍒嗛〉鏌ヨ - * - * @param queryFilter - * @return - */ - /* public List<TestScheme> page(QueryFilter queryFilter) { - return baseDao.getList(queryFilter.getQueryParams()); - } -*/ /** * 鍒犻櫎 diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java index c1a9f68..ae0d6c5 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/basicInfo/service/XhProductModelService.java @@ -34,6 +34,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.*; import java.util.*; +import java.util.stream.Collectors; /** @@ -172,8 +173,8 @@ Map<String, Object> errMap = new HashMap<>(); Map<String, Integer> reliabType = new HashMap<>(); reliabType.put("鎸囨暟鍒嗗竷", 1); - reliabType.put("浜岄」鍒嗗竷", 3); reliabType.put("濞佸竷灏斿垎甯�", 2); + reliabType.put("浜岄」鍒嗗竷", 3); Map<String, Integer> repairType = new HashMap<>(); repairType.put("鎸囨暟鍒嗗竷", 1); repairType.put("濞佸竷灏斿垎甯�", 2); diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dto/SimulaDataDto.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dto/SimulaDataDto.java index 1dc10b8..8c7ad59 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dto/SimulaDataDto.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/dto/SimulaDataDto.java @@ -8,6 +8,8 @@ private Double Mttr; private Double Mtbf; private Double Msr; + private Double mttfMle; + private Double mttrMle; private Long productId; private CurveParam curveParam; private String name; diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/FailureModel.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/FailureModel.java index 83a3553..0e96f24 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/FailureModel.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/model/FailureModel.java @@ -6,7 +6,7 @@ @Data public class FailureModel { public static final String TYPE_EXP = "exponential"; - public static final String TYPE_BIN = "binomial"; + public static final String TYPE_BIN = "sof"; public static final String TYPE_WBL = "weibull"; public static final String TYPE_FIX = "fixed"; diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/SimulatAssessService.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/SimulatAssessService.java index a69a11e..11537ef 100644 --- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/SimulatAssessService.java +++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/taskReliability/service/SimulatAssessService.java @@ -121,16 +121,7 @@ Map<Integer, String> templetsStrMap2 = new HashMap<>(); private JSONObject xmlJSONObj; - - /** - * 鍒嗛〉鏌ヨ - * - * @param queryFilter - * @return - */ - /* public List<SimulatAssess> page(QueryFilter queryFilter) { - return baseDao.getList(queryFilter.getQueryParams()); - }*/ + /** * 鍒犻櫎 @@ -912,11 +903,11 @@ ele.addAttribute("value", String.valueOf(failureModel.getParam1())); break; case FailureModel.TYPE_BIN: - ele = failureModelTag.addElement("reliability"); + ele = failureModelTag.addElement("p"); ele.addAttribute("value", String.valueOf(failureModel.getParam1())); ele = failureModelTag.addElement("n"); ele.addAttribute("value", String.valueOf(failureModel.getParam2())); - ele = failureModelTag.addElement("k"); + ele = failureModelTag.addElement("m"); ele.addAttribute("value", String.valueOf(failureModel.getParam3())); break; case FailureModel.TYPE_WBL: @@ -1321,9 +1312,25 @@ if (StringUtils.isNotBlank(nameValue)) { productId1 = Convert.toLong(nameValue.split("-")[0]); - Double mtbf = (Double) jsonArray.getJSONObject(i).get("mttf"); - Double mttr = (Double) jsonArray.getJSONObject(i).get("mttr"); - Double msr = (Double) jsonArray.getJSONObject(i).get("msr"); + Double mtbf = null; + Double mttr = null; + Double msr = null; + if (!jsonArray.getJSONObject(i).get("mttf").equals("inf")){ + mtbf = (Double)jsonArray.getJSONObject(i).get("mttf"); + }else{ + mtbf = 0.0; + } + if (!jsonArray.getJSONObject(i).get("mttr").equals("inf")){ + mttr = (Double)jsonArray.getJSONObject(i).get("mttr"); + }else{ + mttr = 0.0; + } + if (!jsonArray.getJSONObject(i).get("msr").equals("inf")){ + msr = (Double)jsonArray.getJSONObject(i).get("msr"); + }else{ + msr = 0.0; + } + WeakDto weakDto = new WeakDto(); weakDto.setId(productId1); weakDto.setMtbf(mtbf); @@ -1500,12 +1507,43 @@ param.setXData(xList); param.setYData(doubleArray); - Double mtbf = (Double) jsonArray.getJSONObject(i).get("mttf"); - Double mttr = (Double) jsonArray.getJSONObject(i).get("mttr"); - Double msr = (Double) jsonArray.getJSONObject(i).get("msr"); + + Double mttfMle = null; + Double mttrMle = null; + Double mtbf = null; + Double mttr = null; + Double msr = null; + if (!jsonArray.getJSONObject(i).get("mttf").equals("inf")){ + mtbf = (Double)jsonArray.getJSONObject(i).get("mttf"); + }else{ + mtbf = 0.0; + } + if (!jsonArray.getJSONObject(i).get("mttr").equals("inf")){ + mttr = (Double)jsonArray.getJSONObject(i).get("mttr"); + }else{ + mttr = 0.0; + } + if (!jsonArray.getJSONObject(i).get("msr").equals("inf")){ + msr = (Double)jsonArray.getJSONObject(i).get("msr"); + }else{ + msr = 0.0; + } + + if (!jsonArray.getJSONObject(i).get("mttr_MLE").equals("inf")){ + mttrMle = (Double)jsonArray.getJSONObject(i).get("mttr_MLE"); + }else{ + mttrMle = 0.0; + } + if(!jsonArray.getJSONObject(i).get("mttf_MLE").equals("inf")){ + mttfMle = (Double) jsonArray.getJSONObject(i).get("mttf_MLE"); + }else{ + mttfMle = 0.0; + } data.setMtbf(mtbf); data.setMttr(mttr); data.setMsr(msr); + data.setMttfMle(mttfMle); + data.setMttrMle(mttrMle); } data.setCurveParam(param); } @@ -1678,12 +1716,8 @@ ObjectMapper mapper = new ObjectMapper(); String jsonStr = null; try { - // 浣跨敤 ObjectMapper 鐨� readValue 鏂规硶锛屽皢鏂囦欢涓殑 JSON 鏁版嵁杞崲涓轰竴涓� Java 瀵硅薄 - // 杩欓噷浣跨敤 Object 绫讳綔涓烘硾鍨嬪弬鏁帮紝琛ㄧず浠绘剰绫诲瀷鐨勫璞� Object obj = mapper.readValue(new File(filePath), Object.class); - // 浣跨敤 ObjectMapper 鐨� writeValueAsString 鏂规硶锛屽皢 Java 瀵硅薄杞崲涓� JSON 瀛楃涓� jsonStr = mapper.writeValueAsString(obj); - } catch (IOException e) { // 澶勭悊寮傚父 e.printStackTrace(); diff --git a/web/src/views/modules/taskReliability/SchemeCompar.vue b/web/src/views/modules/taskReliability/SchemeCompar.vue index 10efed1..d735ea1 100644 --- a/web/src/views/modules/taskReliability/SchemeCompar.vue +++ b/web/src/views/modules/taskReliability/SchemeCompar.vue @@ -71,6 +71,24 @@ <span>{{ keepNumberBy4(scope.row.msr) }}</span> </template> </el-table-column> + <el-table-column + prop="mttfMle" + label="鑺傜偣瀵垮懡" + width="100px" + align="right"> + <template slot-scope="scope"> + <span>{{ keepNumberBy4(scope.row.mttfMle) }}</span> + </template> + </el-table-column> + <el-table-column + prop="mttrMle" + label="骞冲潎缁翠慨鏃堕棿" + width="100px" + align="right"> + <template slot-scope="scope"> + <span>{{ keepNumberBy4(scope.row.mttrMle) }}</span> + </template> + </el-table-column> </el-table> </div> </div> diff --git a/web/src/views/modules/taskReliability/SimulatCurve.vue b/web/src/views/modules/taskReliability/SimulatCurve.vue index 7d7fadf..b678dd6 100644 --- a/web/src/views/modules/taskReliability/SimulatCurve.vue +++ b/web/src/views/modules/taskReliability/SimulatCurve.vue @@ -1,6 +1,6 @@ <template> <div class="mod-taskReliability-taskPhase"> - <div class="echart" id="myChart" :style="myChartStyle"></div> + <div id="myChart" :style="myChartStyle"></div> </div> </template> @@ -16,8 +16,10 @@ mttr: '', mtbf: '', msr: '', + mttfMle: '', + mttrMle: '', myChart: {}, - myChartStyle: {float: "left", width: "100%", height: "680px"}, //鍥捐〃鏍峰紡 + myChartStyle: {width: "100%", height: "750px"}, //鍥捐〃鏍峰紡 option: {} } }, @@ -33,37 +35,40 @@ this.mttr = res.data.mttr.toFixed(4) this.mtbf = res.data.mtbf.toFixed(4) this.msr = res.data.msr.toFixed(4) + this.mttfMle = res.data.mttfMle.toFixed(4) + this.mttrMle = res.data.mttrMle.toFixed(4) } this.option = { title: { - text: "mttf:" + this.mtbf + " mttr:" + this.mttr + " msr:" + this.msr, + text: "mttf:" + this.mtbf + " mttr:" + this.mttr + " msr:" + this.msr + " 鑺傜偣瀵垮懡:" + this.mttfMle + " 骞冲潎缁翠慨鏃堕棿:" + this.mttrMle, textStyle: { // 涓绘爣棰樻枃鏈牱寮弡"fontSize": 18,"fontWeight": "bolder","color": "#333"} fontFamily: 'Arial', - fontSize: 30, + fontSize: 27, fontStyle: 'normal', fontWeight: 'normal', }, textAlign: 'auto',//鏁翠綋锛堝寘鎷� text 鍜� subtext锛夌殑姘村钩瀵归綈 textVerticalAlign: 'auto',//鏁翠綋锛堝寘鎷� text 鍜� subtext锛夌殑鍨傜洿瀵归綈 - padding: 0,//[5,10] | [ 5,6, 7, 8] ,鏍囬鍐呰竟璺� left: 'center',//'5' | '5%'锛宼itle 缁勪欢绂诲鍣ㄥ乏渚х殑璺濈 right: 'auto',//'title 缁勪欢绂诲鍣ㄥ彸渚х殑璺濈 - top: '20',//title 缁勪欢绂诲鍣ㄤ笂渚х殑璺濈 - bottom: 'auto',//title 缁勪欢绂诲鍣ㄤ笅渚х殑璺濈 + top: '20px' + }, + grid:{ + top:'15%' }, xAxis: { data: this.xDataList, name: '浠跨湡鎬绘椂闀�', type: 'category', axisLabel: { - formatter: function(value) { + formatter: function (value) { // 灏� X 杞村埢搴﹀�兼牸寮忓寲涓轰繚鐣欎袱浣嶅皬鏁扮殑瀛楃涓� return parseFloat(value).toFixed(2); } } }, yAxis: { - type:"value", + type: "value", name: '鍙潬搴�', }, series: [ @@ -92,23 +97,26 @@ this.mttr = res.data.mttr.toFixed(4) this.mtbf = res.data.mtbf.toFixed(4) this.msr = res.data.msr.toFixed(4) + this.mttfMle = res.data.mttfMle.toFixed(4) + this.mttrMle = res.data.mttrMle.toFixed(4) } this.option = { title: { - text: "mttf:" + this.mtbf + " mttr:" + this.mttr + " msr:" + this.msr, + text: "mttf:" + this.mtbf + " mttr:" + this.mttr + " msr:" + this.msr + " 鑺傜偣瀵垮懡:" + this.mttfMle + " 骞冲潎缁翠慨鏃堕棿:" + this.mttrMle, textStyle: { // 涓绘爣棰樻枃鏈牱寮弡"fontSize": 18,"fontWeight": "bolder","color": "#333"} fontFamily: 'Arial', - fontSize: 30, + fontSize: 27, fontStyle: 'normal', fontWeight: 'normal', }, textAlign: 'auto',//鏁翠綋锛堝寘鎷� text 鍜� subtext锛夌殑姘村钩瀵归綈 textVerticalAlign: 'auto',//鏁翠綋锛堝寘鎷� text 鍜� subtext锛夌殑鍨傜洿瀵归綈 - padding: 0,//[5,10] | [ 5,6, 7, 8] ,鏍囬鍐呰竟璺� left: 'center',//'5' | '5%'锛宼itle 缁勪欢绂诲鍣ㄥ乏渚х殑璺濈 right: 'auto',//'title 缁勪欢绂诲鍣ㄥ彸渚х殑璺濈 - top: 'auto',//title 缁勪欢绂诲鍣ㄤ笂渚х殑璺濈 - bottom: 'auto',//title 缁勪欢绂诲鍣ㄤ笅渚х殑璺濈 + top: '20px' + }, + grid:{ + top:'15%' }, xAxis: { data: this.xDataList, @@ -116,8 +124,7 @@ splitNumber: 10 }, yAxis: { - - name: '', + name: '鍙潬搴�', }, series: [ { diff --git a/web/src/views/modules/taskReliability/SimulatHistory.vue b/web/src/views/modules/taskReliability/SimulatHistory.vue index a46b5d3..cf794f0 100644 --- a/web/src/views/modules/taskReliability/SimulatHistory.vue +++ b/web/src/views/modules/taskReliability/SimulatHistory.vue @@ -37,7 +37,7 @@ </div> </el-col> <el-col :span="20"> - <div class="fa-card-a" style="height: calc(100vh - 230px)"> + <div class="fa-card-a"> <SimulatCurve ref="SimulatCurve"></SimulatCurve> </div> </el-col> -- Gitblit v1.9.1