Browse Source

fix

release_toaliyun_real
winter 2 years ago
parent
commit
93b935d079
2 changed files with 12 additions and 13 deletions
  1. +10
    -3
      mallinkService/src/main/java/com/iformall/service/impl/WxSettleMerchantServiceImpl.java
  2. +2
    -10
      mallinkService/src/main/java/com/iformall/utils/PriceUtilV2.java

+ 10
- 3
mallinkService/src/main/java/com/iformall/service/impl/WxSettleMerchantServiceImpl.java View File

@@ -107,7 +107,7 @@ public class WxSettleMerchantServiceImpl implements WxSettleMerchantService{
valueMap.put("totalTempMoney", totalTempMoney);
if (needCalcute) {
record.setTotalMoney(totalSaleMoney.subtract(calcuteAdd(totalReduceMoney,totalTempMoney)));
record.setTotalMoney(calcuteAdd(totalReduceMoney,totalTempMoney));
}

valueMap.put("totalMoney", record.getTotalMoney());
@@ -127,7 +127,7 @@ public class WxSettleMerchantServiceImpl implements WxSettleMerchantService{
if (null == saleMoney || null == rate) {
return new BigDecimal(0);
}
return saleMoney.multiply(rate).setScale(3,BigDecimal.ROUND_HALF_UP);
return saleMoney.multiply(rate).divide(new BigDecimal(100)).setScale(3,BigDecimal.ROUND_HALF_UP);
}
private BigDecimal calcuteAdd(BigDecimal... args) {
@@ -135,12 +135,19 @@ public class WxSettleMerchantServiceImpl implements WxSettleMerchantService{
for (int i = 0 ; i < args.length ; i ++) {
BigDecimal _c = args[i];
if (null != _c) {
result.add(_c);
result = result.add(_c);
}
}
return result.setScale(3,BigDecimal.ROUND_HALF_UP);
}
public static void main(String[] args) {
BigDecimal result = new BigDecimal(0);
BigDecimal result1 = new BigDecimal(10.000);
System.out.println(result.add(result1));
}
private Object handleExcelData(Object value) {
if (null == value) {


+ 2
- 10
mallinkService/src/main/java/com/iformall/utils/PriceUtilV2.java View File

@@ -94,12 +94,12 @@ public class PriceUtilV2 {
number = number / 1000;
getZero = true;
}
if ((scale > 0) && (!(scale % 100 > 0))) {
else if ((scale > 0) && (!(scale % 100 > 0))) {
numIndex = 2;
number = number / 100;
getZero = true;
}
if ((scale > 0) && (!(scale % 10 > 0))) {
else if ((scale > 0) && (!(scale % 10 > 0))) {
numIndex = 1;
number = number / 10;
getZero = true;
@@ -150,12 +150,4 @@ public class PriceUtilV2 {
}
return sb.toString();
}

public static void main(String[] args) {
BigDecimal numberOfMoney = new BigDecimal(432342341231.906);
System.out.println(numberOfMoney.toString());
System.out.println(number2CNMontrayUnit(numberOfMoney));
}

}

Loading…
Cancel
Save