diff --git a/detection/src/main/java/com/njcn/gather/detection/handler/SocketDevResponseService.java b/detection/src/main/java/com/njcn/gather/detection/handler/SocketDevResponseService.java index 9cfc47a3..07d8d32e 100644 --- a/detection/src/main/java/com/njcn/gather/detection/handler/SocketDevResponseService.java +++ b/detection/src/main/java/com/njcn/gather/detection/handler/SocketDevResponseService.java @@ -564,12 +564,12 @@ public class SocketDevResponseService { coefficientVO.setCIeData(String.valueOf(optionalIC)); if (XiNumberManager.stepNumber == 0 || XiNumberManager.stepNumber == 1) { - Integer aXi = (int) (devParameter.getDevVolt() * startF.getF().getUa_gain() / optionalA); - Integer bXi = (int) (devParameter.getDevVolt() * startF.getF().getUb_gain() / optionalB); - Integer cXi = (int) (devParameter.getDevVolt() * startF.getF().getUc_gain() / optionalC); - Integer aIXi = (int) (devParameter.getDevCurr() * startF.getF().getIa_gain() / optionalIA); - Integer bIXi = (int) (devParameter.getDevCurr() * startF.getF().getIb_gain() / optionalIB); - Integer cIXi = (int) (devParameter.getDevCurr() * startF.getF().getIc_gain() / optionalIC); + Integer aXi = BigDecimal.valueOf(devParameter.getDevVolt() * startF.getF().getUa_gain() / optionalA).setScale(0,RoundingMode.HALF_UP).intValue(); + Integer bXi = BigDecimal.valueOf(devParameter.getDevVolt() * startF.getF().getUb_gain() / optionalB).setScale(0,RoundingMode.HALF_UP).intValue(); + Integer cXi = BigDecimal.valueOf(devParameter.getDevVolt() * startF.getF().getUc_gain() / optionalC).setScale(0,RoundingMode.HALF_UP).intValue(); + Integer aIXi =BigDecimal.valueOf(devParameter.getDevCurr() * startF.getF().getIa_gain() / optionalIA).setScale(0,RoundingMode.HALF_UP).intValue(); + Integer bIXi =BigDecimal.valueOf(devParameter.getDevCurr() * startF.getF().getIb_gain() / optionalIB).setScale(0,RoundingMode.HALF_UP).intValue(); + Integer cIXi =BigDecimal.valueOf(devParameter.getDevCurr() * startF.getF().getIc_gain() / optionalIC).setScale(0,RoundingMode.HALF_UP).intValue(); coefficientVO.setAVuXi(aXi.toString()); coefficientVO.setBVuXi(bXi.toString());