Commit 04ee0430 authored by 竹天卫's avatar 竹天卫

校核计算优化

parent 744be23d
...@@ -442,7 +442,7 @@ public class EntrustServiceImpl extends ServiceImpl<EntrustMapper, Entrust> impl ...@@ -442,7 +442,7 @@ public class EntrustServiceImpl extends ServiceImpl<EntrustMapper, Entrust> impl
System.out.println(b);*/ System.out.println(b);*/
String aa = "Mad=1.87 \n" + /*String aa = "Mad=1.87 \n" +
" Aad=21.04 \n" + " Aad=21.04 \n" +
" Vad=24.24 \n" + " Vad=24.24 \n" +
" Qnet,ad MJ/kg=23.14 \n" + " Qnet,ad MJ/kg=23.14 \n" +
...@@ -453,7 +453,11 @@ public class EntrustServiceImpl extends ServiceImpl<EntrustMapper, Entrust> impl ...@@ -453,7 +453,11 @@ public class EntrustServiceImpl extends ServiceImpl<EntrustMapper, Entrust> impl
String[] ele = str2.trim().split("="); String[] ele = str2.trim().split("=");
map.put(ele[0], ele[1]); map.put(ele[0], ele[1]);
} }
System.out.println(map); System.out.println(map);*/
BigDecimal endResult = new BigDecimal("2").divide(new BigDecimal("1"),10,BigDecimal.ROUND_HALF_UP);
System.out.println(endResult);
} }
......
...@@ -68,7 +68,7 @@ public class CheckCountUtil { ...@@ -68,7 +68,7 @@ public class CheckCountUtil {
//烧后重m3—保留4位⼩数 //烧后重m3—保留4位⼩数
BigDecimal m3 = getBigDecimal(resultMap.get("烧后重m3").trim()).setScale(4,BigDecimal.ROUND_HALF_UP); BigDecimal m3 = getBigDecimal(resultMap.get("烧后重m3").trim()).setScale(4,BigDecimal.ROUND_HALF_UP);
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = (m1.add(m2).subtract(m3)).divide(m1,4); BigDecimal countResult = (m1.add(m2).subtract(m3)).divide(m1,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100.multiply(param100)); BigDecimal result1 = countResult.multiply(param100.multiply(param100));
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -88,7 +88,7 @@ public class CheckCountUtil { ...@@ -88,7 +88,7 @@ public class CheckCountUtil {
//样m //样m
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = VSiO2.multiply(TSiO2).divide(m, 4); BigDecimal countResult = VSiO2.multiply(TSiO2).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -110,7 +110,7 @@ public class CheckCountUtil { ...@@ -110,7 +110,7 @@ public class CheckCountUtil {
BigDecimal VCuSO4_I = getBigDecimal(resultMap.get("VCuSO<sub>4</sub>(I)").trim()); BigDecimal VCuSO4_I = getBigDecimal(resultMap.get("VCuSO<sub>4</sub>(I)").trim());
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = TAl2O3.multiply(VAl2O3.subtract(K.multiply(VCuSO4_I))).divide(m,4); BigDecimal countResult = TAl2O3.multiply(VAl2O3.subtract(K.multiply(VCuSO4_I))).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -134,7 +134,7 @@ public class CheckCountUtil { ...@@ -134,7 +134,7 @@ public class CheckCountUtil {
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
BigDecimal VCuSO4_II = getBigDecimal(resultMap.get("VCuSO<sub>4</sub>(II)").trim()); BigDecimal VCuSO4_II = getBigDecimal(resultMap.get("VCuSO<sub>4</sub>(II)").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = TAl2O3.multiply(VAl2O3.subtract(K.multiply(VCuSO4_I.add(VCuSO4_II)))).divide(m,4); BigDecimal countResult = TAl2O3.multiply(VAl2O3.subtract(K.multiply(VCuSO4_I.add(VCuSO4_II)))).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -153,7 +153,7 @@ public class CheckCountUtil { ...@@ -153,7 +153,7 @@ public class CheckCountUtil {
BigDecimal VF2O3 = getBigDecimal(resultMap.get("VF<sub>2</sub>O<sub>3</sub>").trim()); BigDecimal VF2O3 = getBigDecimal(resultMap.get("VF<sub>2</sub>O<sub>3</sub>").trim());
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = TFe2O3.multiply(VF2O3).divide(m,4); BigDecimal countResult = TFe2O3.multiply(VF2O3).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -171,7 +171,7 @@ public class CheckCountUtil { ...@@ -171,7 +171,7 @@ public class CheckCountUtil {
BigDecimal VCaO = getBigDecimal(resultMap.get("VCaO").trim()); BigDecimal VCaO = getBigDecimal(resultMap.get("VCaO").trim());
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = TCaO.multiply(VCaO).divide(m,4); BigDecimal countResult = TCaO.multiply(VCaO).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -191,7 +191,7 @@ public class CheckCountUtil { ...@@ -191,7 +191,7 @@ public class CheckCountUtil {
BigDecimal VCaO = getBigDecimal(resultMap.get("VCaO").trim()); BigDecimal VCaO = getBigDecimal(resultMap.get("VCaO").trim());
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = TMgO.multiply(VMgO.subtract(VCaO)).divide(m,4); BigDecimal countResult = TMgO.multiply(VMgO.subtract(VCaO)).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -211,7 +211,7 @@ public class CheckCountUtil { ...@@ -211,7 +211,7 @@ public class CheckCountUtil {
BigDecimal K = getBigDecimal(resultMap.get("K").trim()); BigDecimal K = getBigDecimal(resultMap.get("K").trim());
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = TTiO2.multiply(VCuSO4_II).multiply(K).divide(m,4); BigDecimal countResult = TTiO2.multiply(VCuSO4_II).multiply(K).divide(m,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -232,7 +232,7 @@ public class CheckCountUtil { ...@@ -232,7 +232,7 @@ public class CheckCountUtil {
BigDecimal m3 = getBigDecimal(resultMap.get("空白m3").trim()); BigDecimal m3 = getBigDecimal(resultMap.get("空白m3").trim());
BigDecimal m = getBigDecimal(resultMap.get("样重m").trim()); BigDecimal m = getBigDecimal(resultMap.get("样重m").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = m2.subtract(m1).subtract(m3).divide(m,4).multiply(new BigDecimal(0.343)); BigDecimal countResult = m2.subtract(m1).subtract(m3).divide(m,10,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(0.343));
endResult = countResult.multiply(param100).setScale(2,BigDecimal.ROUND_HALF_EVEN); endResult = countResult.multiply(param100).setScale(2,BigDecimal.ROUND_HALF_EVEN);
}else{ }else{
endResult = new BigDecimal(0); endResult = new BigDecimal(0);
...@@ -248,7 +248,7 @@ public class CheckCountUtil { ...@@ -248,7 +248,7 @@ public class CheckCountUtil {
BigDecimal AK2O = getBigDecimal(resultMap.get("AK<sub>2</sub>O").trim()); BigDecimal AK2O = getBigDecimal(resultMap.get("AK<sub>2</sub>O").trim());
BigDecimal mR20 = getBigDecimal(resultMap.get("样重R2O").trim()); BigDecimal mR20 = getBigDecimal(resultMap.get("样重R2O").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = CK2O.multiply(V).multiply(AK2O).divide(mR20,4).divide(param10000,4); BigDecimal countResult = CK2O.multiply(V).multiply(AK2O).divide(mR20,10,BigDecimal.ROUND_HALF_UP).divide(param10000,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -268,7 +268,7 @@ public class CheckCountUtil { ...@@ -268,7 +268,7 @@ public class CheckCountUtil {
BigDecimal ANa2O = getBigDecimal(resultMap.get("ANa<sub>2</sub>O").trim()); BigDecimal ANa2O = getBigDecimal(resultMap.get("ANa<sub>2</sub>O").trim());
BigDecimal mR20 = getBigDecimal(resultMap.get("样重R2O").trim()); BigDecimal mR20 = getBigDecimal(resultMap.get("样重R2O").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = CNa2O.multiply(V).multiply(ANa2O).divide(mR20,4).divide(param10000,4); BigDecimal countResult = CNa2O.multiply(V).multiply(ANa2O).divide(mR20,10,BigDecimal.ROUND_HALF_UP).divide(param10000,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -289,7 +289,7 @@ public class CheckCountUtil { ...@@ -289,7 +289,7 @@ public class CheckCountUtil {
BigDecimal AMnO = getBigDecimal(resultMap.get("AMnO").trim()); BigDecimal AMnO = getBigDecimal(resultMap.get("AMnO").trim());
BigDecimal mR20 = getBigDecimal(resultMap.get("样重R2O").trim()); BigDecimal mR20 = getBigDecimal(resultMap.get("样重R2O").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = CMnO.multiply(V).multiply(AMnO).divide(mR20,4).divide(param10000,4); BigDecimal countResult = CMnO.multiply(V).multiply(AMnO).divide(mR20,10,BigDecimal.ROUND_HALF_UP).divide(param10000,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param100); BigDecimal result1 = countResult.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -310,7 +310,7 @@ public class CheckCountUtil { ...@@ -310,7 +310,7 @@ public class CheckCountUtil {
BigDecimal V1 = getBigDecimal(resultMap.get("V1").trim()); BigDecimal V1 = getBigDecimal(resultMap.get("V1").trim());
BigDecimal mCl = getBigDecimal(resultMap.get("样重Cl").trim()); BigDecimal mCl = getBigDecimal(resultMap.get("样重Cl").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = T.multiply(V2.subtract(V1)).divide(mCl,4).divide(param10,4); BigDecimal countResult = T.multiply(V2.subtract(V1)).divide(mCl,10,BigDecimal.ROUND_HALF_UP).divide(param10,10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = countResult.multiply(param1000); BigDecimal result1 = countResult.multiply(param1000);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
...@@ -329,7 +329,7 @@ public class CheckCountUtil { ...@@ -329,7 +329,7 @@ public class CheckCountUtil {
BigDecimal MZ_M1 = getBigDecimal(resultMap.get("皿重M1").trim()); BigDecimal MZ_M1 = getBigDecimal(resultMap.get("皿重M1").trim());
BigDecimal SZ_M1 = getBigDecimal(resultMap.get("烧重M1").trim()); BigDecimal SZ_M1 = getBigDecimal(resultMap.get("烧重M1").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = YZ_M1.add(MZ_M1).subtract(SZ_M1).divide(YZ_M1,4); BigDecimal countResult = YZ_M1.add(MZ_M1).subtract(SZ_M1).divide(YZ_M1,10,BigDecimal.ROUND_HALF_UP);
endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN); endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN);
} }
}else if(name.equals("Mad2")){ }else if(name.equals("Mad2")){
...@@ -341,7 +341,7 @@ public class CheckCountUtil { ...@@ -341,7 +341,7 @@ public class CheckCountUtil {
BigDecimal MZ_M2 = getBigDecimal(resultMap.get("皿重M2").trim()); BigDecimal MZ_M2 = getBigDecimal(resultMap.get("皿重M2").trim());
BigDecimal SZ_M2 = getBigDecimal(resultMap.get("烧重M2").trim()); BigDecimal SZ_M2 = getBigDecimal(resultMap.get("烧重M2").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = YZ_M2.add(MZ_M2).subtract(SZ_M2).divide(YZ_M2,4); BigDecimal countResult = YZ_M2.add(MZ_M2).subtract(SZ_M2).divide(YZ_M2,10,BigDecimal.ROUND_HALF_UP);
endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN); endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN);
} }
...@@ -354,7 +354,7 @@ public class CheckCountUtil { ...@@ -354,7 +354,7 @@ public class CheckCountUtil {
BigDecimal MZ_A1 = getBigDecimal(resultMap.get("皿重A1").trim()); BigDecimal MZ_A1 = getBigDecimal(resultMap.get("皿重A1").trim());
BigDecimal YZ_A1 = getBigDecimal(resultMap.get("样重A1").trim()); BigDecimal YZ_A1 = getBigDecimal(resultMap.get("样重A1").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = SZ_A1.subtract(MZ_A1).divide(YZ_A1,4); BigDecimal countResult = SZ_A1.subtract(MZ_A1).divide(YZ_A1,10,BigDecimal.ROUND_HALF_UP);
endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN); endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN);
} }
...@@ -367,7 +367,7 @@ public class CheckCountUtil { ...@@ -367,7 +367,7 @@ public class CheckCountUtil {
BigDecimal MZ_A2 = getBigDecimal(resultMap.get("皿重A2").trim()); BigDecimal MZ_A2 = getBigDecimal(resultMap.get("皿重A2").trim());
BigDecimal YZ_A2 = getBigDecimal(resultMap.get("样重A2").trim()); BigDecimal YZ_A2 = getBigDecimal(resultMap.get("样重A2").trim());
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = SZ_A2.subtract(MZ_A2).divide(YZ_A2,4); BigDecimal countResult = SZ_A2.subtract(MZ_A2).divide(YZ_A2,10,BigDecimal.ROUND_HALF_UP);
endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN); endResult = countResult.multiply(param100).setScale(3,BigDecimal.ROUND_HALF_EVEN);
} }
...@@ -504,11 +504,11 @@ public class CheckCountUtil { ...@@ -504,11 +504,11 @@ public class CheckCountUtil {
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
BigDecimal jsResult = weightSO3.compareTo(new BigDecimal(0))==1? BigDecimal jsResult = weightSO3.compareTo(new BigDecimal(0))==1?
weightSO3:elseResult.multiply(mSO3).divide(mSO3,4); weightSO3:elseResult.multiply(mSO3).divide(mSO3,10,BigDecimal.ROUND_HALF_UP);
count = jsResult.setScale(2,BigDecimal.ROUND_HALF_UP); count = jsResult.setScale(2,BigDecimal.ROUND_HALF_UP);
}else{ }else{
BigDecimal osResult = weightSO3.compareTo(new BigDecimal(0))==1? BigDecimal osResult = weightSO3.compareTo(new BigDecimal(0))==1?
weightSO3:elseResult.multiply(mSO3).divide(mSO3,4); weightSO3:elseResult.multiply(mSO3).divide(mSO3,10,BigDecimal.ROUND_HALF_UP);
count = osResult.subtract(new BigDecimal(0.00000000001)).setScale(2,BigDecimal.ROUND_HALF_UP); count = osResult.subtract(new BigDecimal(0.00000000001)).setScale(2,BigDecimal.ROUND_HALF_UP);
} }
...@@ -563,7 +563,7 @@ public class CheckCountUtil { ...@@ -563,7 +563,7 @@ public class CheckCountUtil {
BigDecimal Al2O3_TiO2= getBigDecimal(countMap.get("Al<sub>2</sub>O<sub>3</sub>+TiO<sub>2</sub>")); BigDecimal Al2O3_TiO2= getBigDecimal(countMap.get("Al<sub>2</sub>O<sub>3</sub>+TiO<sub>2</sub>"));
BigDecimal Fe2O3 = getBigDecimal(countMap.get("Fe<sub>2</sub>O<sub>3</sub>")); BigDecimal Fe2O3 = getBigDecimal(countMap.get("Fe<sub>2</sub>O<sub>3</sub>"));
BigDecimal SiO2 = getBigDecimal(countMap.get("SiO<sub>2</sub>")); BigDecimal SiO2 = getBigDecimal(countMap.get("SiO<sub>2</sub>"));
KH =CaO.subtract(new BigDecimal(1.65).multiply(Al2O3_TiO2)).subtract(new BigDecimal(0.35).multiply(Fe2O3)).divide(new BigDecimal(2.8),4).divide(SiO2,4); KH =CaO.subtract(new BigDecimal(1.65).multiply(Al2O3_TiO2)).subtract(new BigDecimal(0.35).multiply(Fe2O3)).divide(new BigDecimal(2.8),10,BigDecimal.ROUND_HALF_UP).divide(SiO2,10,BigDecimal.ROUND_HALF_UP);
} }
return KH==null?"":KH.setScale(3,BigDecimal.ROUND_HALF_EVEN).toString(); return KH==null?"":KH.setScale(3,BigDecimal.ROUND_HALF_EVEN).toString();
} }
...@@ -582,7 +582,7 @@ public class CheckCountUtil { ...@@ -582,7 +582,7 @@ public class CheckCountUtil {
BigDecimal SiO2 = getBigDecimal(countMap.get("SiO<sub>2</sub>")); BigDecimal SiO2 = getBigDecimal(countMap.get("SiO<sub>2</sub>"));
BigDecimal Al2O3_TiO2= getBigDecimal(countMap.get("Al<sub>2</sub>O<sub>3</sub>+TiO<sub>2</sub>")); BigDecimal Al2O3_TiO2= getBigDecimal(countMap.get("Al<sub>2</sub>O<sub>3</sub>+TiO<sub>2</sub>"));
BigDecimal Fe2O3 = getBigDecimal(countMap.get("Fe<sub>2</sub>O<sub>3</sub>")); BigDecimal Fe2O3 = getBigDecimal(countMap.get("Fe<sub>2</sub>O<sub>3</sub>"));
SM = SiO2.divide(Al2O3_TiO2.add(Fe2O3),4); SM = SiO2.divide(Al2O3_TiO2.add(Fe2O3),10,BigDecimal.ROUND_HALF_UP);
} }
return SM==null?"":SM.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString(); return SM==null?"":SM.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString();
} }
...@@ -599,7 +599,7 @@ public class CheckCountUtil { ...@@ -599,7 +599,7 @@ public class CheckCountUtil {
){ ){
BigDecimal Al2O3_TiO2= getBigDecimal(countMap.get("Al<sub>2</sub>O<sub>3</sub>+TiO<sub>2</sub>")); BigDecimal Al2O3_TiO2= getBigDecimal(countMap.get("Al<sub>2</sub>O<sub>3</sub>+TiO<sub>2</sub>"));
BigDecimal Fe2O3 = getBigDecimal(countMap.get("Fe<sub>2</sub>O<sub>3</sub>")); BigDecimal Fe2O3 = getBigDecimal(countMap.get("Fe<sub>2</sub>O<sub>3</sub>"));
AM = Al2O3_TiO2.divide(Fe2O3,4); AM = Al2O3_TiO2.divide(Fe2O3,10,BigDecimal.ROUND_HALF_UP);
} }
return AM==null?"":AM.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString(); return AM==null?"":AM.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString();
} }
...@@ -654,10 +654,10 @@ public class CheckCountUtil { ...@@ -654,10 +654,10 @@ public class CheckCountUtil {
BigDecimal Mad1= getBigDecimal(countMap.get("Mad1")); BigDecimal Mad1= getBigDecimal(countMap.get("Mad1"));
BigDecimal Mad2= getBigDecimal(countMap.get("Mad2")); BigDecimal Mad2= getBigDecimal(countMap.get("Mad2"));
//计算Mad1 和 Mad2 的平均值 //计算Mad1 和 Mad2 的平均值
BC_Mad = Mad1.add(Mad2).divide(new BigDecimal(2),4); BC_Mad = Mad1.add(Mad2).divide(new BigDecimal(2),10,BigDecimal.ROUND_HALF_UP);
} }
return BC_Mad==null?"":BC_Mad.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString(); return BC_Mad==null?"":BC_Mad.toString();
} }
/** /**
...@@ -696,10 +696,10 @@ public class CheckCountUtil { ...@@ -696,10 +696,10 @@ public class CheckCountUtil {
BigDecimal Aad1= getBigDecimal(countMap.get("Aad1")); BigDecimal Aad1= getBigDecimal(countMap.get("Aad1"));
BigDecimal Aad2= getBigDecimal(countMap.get("Aad2")); BigDecimal Aad2= getBigDecimal(countMap.get("Aad2"));
//计算Mad1 和 Mad2 的平均值 //计算Mad1 和 Mad2 的平均值
BC_Aad = Aad1.add(Aad2).divide(new BigDecimal(2),4); BC_Aad = Aad1.add(Aad2).divide(new BigDecimal(2),10,BigDecimal.ROUND_HALF_UP);
} }
return BC_Aad==null?"":BC_Aad.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString(); return BC_Aad==null?"":BC_Aad.toString();
} }
/** /**
...@@ -742,7 +742,7 @@ public class CheckCountUtil { ...@@ -742,7 +742,7 @@ public class CheckCountUtil {
BigDecimal SZ_V1 = getBigDecimal(resultMap.get("烧重V1").trim()); BigDecimal SZ_V1 = getBigDecimal(resultMap.get("烧重V1").trim());
BigDecimal BC_Mad = getBigDecimal(countMap.get("报出_Mad")); BigDecimal BC_Mad = getBigDecimal(countMap.get("报出_Mad"));
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = YZ_V1.add(MZ_V1).subtract(SZ_V1).divide(YZ_V1,4); BigDecimal countResult = YZ_V1.add(MZ_V1).subtract(SZ_V1).divide(YZ_V1,10,BigDecimal.ROUND_HALF_UP);
count = countResult.multiply(param100).subtract(BC_Mad); count = countResult.multiply(param100).subtract(BC_Mad);
} }
...@@ -768,7 +768,7 @@ public class CheckCountUtil { ...@@ -768,7 +768,7 @@ public class CheckCountUtil {
BigDecimal SZ_V2 = getBigDecimal(resultMap.get("烧重V2")); BigDecimal SZ_V2 = getBigDecimal(resultMap.get("烧重V2"));
BigDecimal BC_Mad = getBigDecimal(countMap.get("报出_Mad")); BigDecimal BC_Mad = getBigDecimal(countMap.get("报出_Mad"));
//计算的核心公式结果 //计算的核心公式结果
BigDecimal countResult = YZ_V2.add(MZ_V2).subtract(SZ_V2).divide(YZ_V2,4); BigDecimal countResult = YZ_V2.add(MZ_V2).subtract(SZ_V2).divide(YZ_V2,10,BigDecimal.ROUND_HALF_UP);
count = countResult.multiply(param100).subtract(BC_Mad); count = countResult.multiply(param100).subtract(BC_Mad);
} }
return count==null?"":count.setScale(3,BigDecimal.ROUND_HALF_EVEN).toString(); return count==null?"":count.setScale(3,BigDecimal.ROUND_HALF_EVEN).toString();
...@@ -787,9 +787,9 @@ public class CheckCountUtil { ...@@ -787,9 +787,9 @@ public class CheckCountUtil {
BigDecimal Vad1= getBigDecimal(countMap.get("Vad1")); BigDecimal Vad1= getBigDecimal(countMap.get("Vad1"));
BigDecimal Vad2= getBigDecimal(countMap.get("Vad2")); BigDecimal Vad2= getBigDecimal(countMap.get("Vad2"));
//计算Vad1 和 Vad2 的平均值 //计算Vad1 和 Vad2 的平均值
BC_Vad = Vad1.add(Vad2).divide(new BigDecimal(2),4); BC_Vad = Vad1.add(Vad2).divide(new BigDecimal(2),10,BigDecimal.ROUND_HALF_UP);
} }
return BC_Vad==null?"":BC_Vad.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString(); return BC_Vad==null?"":BC_Vad.toString();
} }
/** /**
...@@ -970,7 +970,7 @@ public class CheckCountUtil { ...@@ -970,7 +970,7 @@ public class CheckCountUtil {
BigDecimal BC_Aad= getBigDecimal(countMap.get("报出_Aad")); BigDecimal BC_Aad= getBigDecimal(countMap.get("报出_Aad"));
BigDecimal BC_Mad= getBigDecimal(countMap.get("报出_Mad")); BigDecimal BC_Mad= getBigDecimal(countMap.get("报出_Mad"));
if(BC_Mad.compareTo(param100)!=0){ if(BC_Mad.compareTo(param100)!=0){
count = BC_Aad.multiply(param100).divide(param100.subtract(BC_Mad),4); count = BC_Aad.multiply(param100).divide(param100.subtract(BC_Mad),10,BigDecimal.ROUND_HALF_UP);
} }
} }
return count==null?"":count.toString(); return count==null?"":count.toString();
...@@ -1090,7 +1090,7 @@ public class CheckCountUtil { ...@@ -1090,7 +1090,7 @@ public class CheckCountUtil {
.subtract(new BigDecimal(92).multiply(BC_Aad)) .subtract(new BigDecimal(92).multiply(BC_Aad))
.subtract(new BigDecimal(24).multiply(BC_Vad)); .subtract(new BigDecimal(24).multiply(BC_Vad));
} }
count = value.multiply(new BigDecimal(4.1816)).divide(param1000,4); count = value.multiply(new BigDecimal(4.1816)).divide(param1000,10,BigDecimal.ROUND_HALF_UP);
} }
return count==null?"":count.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString(); return count==null?"":count.setScale(2,BigDecimal.ROUND_HALF_EVEN).toString();
...@@ -1185,8 +1185,8 @@ public class CheckCountUtil { ...@@ -1185,8 +1185,8 @@ public class CheckCountUtil {
Math.pow(80,0.23)*Math.pow(G,0.82)*(10/(Math.pow(P80,0.5)- 10/Math.pow(F80,0.5))); Math.pow(80,0.23)*Math.pow(G,0.82)*(10/(Math.pow(P80,0.5)- 10/Math.pow(F80,0.5)));
BigDecimal result1 = new BigDecimal(countResult); BigDecimal result1 = new BigDecimal(countResult);
BigDecimal value1 = BigDecimal value1 =
new BigDecimal(176.2).divide(result1,4).subtract(new BigDecimal(3.6).multiply(new BigDecimal(P80))).abs(); new BigDecimal(176.2).divide(result1,10,BigDecimal.ROUND_HALF_UP).subtract(new BigDecimal(3.6).multiply(new BigDecimal(P80))).abs();
BigDecimal value2 = YMX_MJ_t.divide(YMX_kWh_t,4); BigDecimal value2 = YMX_MJ_t.divide(YMX_kWh_t,10,BigDecimal.ROUND_HALF_UP);
if(value1.compareTo(new BigDecimal(0.5) ) == -1 && if(value1.compareTo(new BigDecimal(0.5) ) == -1 &&
value2.compareTo(new BigDecimal(3.5)) == 1 && value2.compareTo(new BigDecimal(3.5)) == 1 &&
value2.compareTo(new BigDecimal(3.7)) == -1){ value2.compareTo(new BigDecimal(3.7)) == -1){
...@@ -1208,7 +1208,7 @@ public class CheckCountUtil { ...@@ -1208,7 +1208,7 @@ public class CheckCountUtil {
public static String countParallel(String mainResult, String secondaryResult) { public static String countParallel(String mainResult, String secondaryResult) {
BigDecimal main = getBigDecimal(mainResult); BigDecimal main = getBigDecimal(mainResult);
BigDecimal secondary = getBigDecimal(secondaryResult); BigDecimal secondary = getBigDecimal(secondaryResult);
BigDecimal aveCount = main.add(secondary).divide(new BigDecimal(2),2); BigDecimal aveCount = main.add(secondary).divide(new BigDecimal(2),10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = aveCount.multiply(param100); BigDecimal result1 = aveCount.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
BigDecimal endResult = null; BigDecimal endResult = null;
...@@ -1243,7 +1243,7 @@ public class CheckCountUtil { ...@@ -1243,7 +1243,7 @@ public class CheckCountUtil {
//平均值 //平均值
BigDecimal ResultsValue = null; BigDecimal ResultsValue = null;
if(resultSum != null){ if(resultSum != null){
BigDecimal aveCount = resultSum.divide(new BigDecimal(values.length),2); BigDecimal aveCount = resultSum.divide(new BigDecimal(values.length),10,BigDecimal.ROUND_HALF_UP);
BigDecimal result1 = aveCount.multiply(param100); BigDecimal result1 = aveCount.multiply(param100);
int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue(); int resultInt1 = result1.setScale( 0, BigDecimal.ROUND_DOWN ).intValue();
if((resultInt1&1) == 1){ //如果结果为奇数 if((resultInt1&1) == 1){ //如果结果为奇数
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment