From 595d363f3736e10354ffe5133a63e67602fa3119 Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期二, 22 十月 2024 14:48:34 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
modules/mainPart/src/main/resources/mapper/baseReliability/ParamDataBasicDao.xml | 45 ++++++++++++++++++++++++++++++++-------------
1 files changed, 32 insertions(+), 13 deletions(-)
diff --git a/modules/mainPart/src/main/resources/mapper/baseReliability/ParamDataBasicDao.xml b/modules/mainPart/src/main/resources/mapper/baseReliability/ParamDataBasicDao.xml
index d35bb9e..9f9eb6e 100644
--- a/modules/mainPart/src/main/resources/mapper/baseReliability/ParamDataBasicDao.xml
+++ b/modules/mainPart/src/main/resources/mapper/baseReliability/ParamDataBasicDao.xml
@@ -11,7 +11,7 @@
AND WeightedFailure > 0 THEN
1 / WeightedFailure
ELSE 0
- END AS basic_mtbf_regulate,
+ END AS basic_mtbf_regulate_tmp,
CASE
WHEN WeightedFailure IS NOT NULL
AND WeightedFailure > 0 THEN
@@ -24,21 +24,21 @@
sum(
CASE
WHEN b.product_type < 5 THEN
- 1 * 1 / basic_mtbf_regulate
+ 1 * 1 / basic_mtbf_regulate_tmp
WHEN a.reliab_distrib_type = 1 THEN
- 1 * a.basic_mtbf_operating_ratio / a.basic_mtbf_regulate
- WHEN a.reliab_distrib_type = 2 THEN
+ 1 * a.basic_mtbf_operating_ratio / a.basic_mtbf_regulate_tmp
+ WHEN a.reliab_distrib_type = 3 THEN
1 * a.basic_mtbf_operating_ratio / a.basic_mtbf_regul_succ_rate
ELSE 0 END
) AS WeightedFailure,
sum(
CASE
WHEN b.product_type < 5 THEN
- 1 * 1 * a.repair_mttcr / a.basic_mtbf_regulate
+ 1 * 1 * a.repair_mttcr / a.basic_mtbf_regulate_tmp
WHEN a.repairable = 1 and a.reliab_distrib_type = 1 THEN
1 * a.basic_mtbf_operating_ratio * a.repair_mttcr /
- a.basic_mtbf_regulate
- WHEN a.repairable = 1 and a.reliab_distrib_type = 2 THEN
+ a.basic_mtbf_regulate_tmp
+ WHEN a.repairable = 1 and a.reliab_distrib_type = 3 THEN
1 * a.basic_mtbf_operating_ratio * a.repair_mttcr /
a.basic_mtbf_regul_succ_rate
ELSE 0
@@ -59,23 +59,40 @@
AND ((b.product_type = 5 AND a.basic_join_compute = 1
and ((
a.reliab_distrib_type = 1
- AND a.basic_mtbf_regulate > 0
+ AND a.basic_mtbf_regulate_tmp > 0
)
- OR (a.reliab_distrib_type = 2 AND a.basic_mtbf_regul_succ_rate > 0))
+ OR (a.reliab_distrib_type = 3 AND a.basic_mtbf_regul_succ_rate > 0))
)
- || (b.product_type < 5 AND a.basic_mtbf_regulate > 0))
+ || (b.product_type < 5 AND a.basic_mtbf_regulate_tmp > 0))
GROUP BY c.id, c.name
) c
) d
- set f.basic_mtbf_regulate = d.basic_mtbf_regulate,
+ set f.basic_mtbf_regulate_tmp = d.basic_mtbf_regulate_tmp,
f.repair_mttcr = d.repair_mttcr
where f.product_id = d.id;
</update>
+ <update id="compute1">
+ UPDATE param_data a, product_model b
+ SET repair_mttcr = 0
+ where b.ship_id = ${shipId} and repair_mttcr is null;
+ UPDATE param_data a, product_model b
+ SET basic_mtbf_regulate_tmp = basic_mtbf_regulate
+ where b.ship_id = ${shipId};
+ UPDATE param_data a, product_model b
+ SET basic_mtbf_regulate_tmp = basic_runs_num /basic_mtbf_regul_succ_rate
+ where b.ship_id = ${shipId} and reliab_distrib_type = 3
+ </update>
+
<update id="compute2">
UPDATE param_data a, product_model b
- SET ai = basic_mtbf_regulate / (basic_mtbf_regulate + repair_mttcr)
+ SET basic_mtbf_regulate = basic_mtbf_regulate_tmp
+ where b.ship_id = ${shipId} and (reliab_distrib_type = 1 or reliab_distrib_type is null);
+
+ UPDATE param_data a, product_model b
+ SET ai = basic_mtbf_regulate_tmp / (basic_mtbf_regulate_tmp + repair_mttcr)
where b.ship_id = ${shipId}
+
</update>
<select id="getAI" resultType="com.zt.life.modules.mainPart.basicInfo.model.ParamData">
@@ -85,7 +102,9 @@
b.ai,
b.basic_mtbf_regulate,
b.repair_mttcr,
- b.basic_mtbf_operating_ratio
+ b.basic_mtbf_operating_ratio,
+ b.basic_mtbf_regul_succ_rate,
+ b.basic_runs_num
FROM product_model a
LEFT JOIN param_data b ON b.product_id = a.id and b.is_delete = 0
where a.is_delete = 0
--
Gitblit v1.9.1