修复渠道保存问题

This commit is contained in:
liaozetao
2023-08-24 14:40:08 +08:00
parent 94c06bddc2
commit 31f4369a07
2 changed files with 6 additions and 17 deletions

View File

@@ -82,13 +82,8 @@ public class ChargeChannelAdminServiceImpl implements ChargeChannelAdminService
ChargeProdExample.Criteria criteria = example.createCriteria();
criteria.andCountryEqualTo(regionCode)
.andPayChannelEqualTo(payChannel)
.andProdStatusEqualTo(Constant.ChargeProdStatus.using);
//需要特殊的产品,例如点数卡是固定数额
if (chargeChannel.isSpecial() && StringUtils.isNotBlank(paymentType)) {
criteria.andPaymentTypeEqualTo(paymentType);
} else {
criteria.andChargeProdIdLike("%" + paymentType + "%");
}
.andProdStatusEqualTo(Constant.ChargeProdStatus.using)
.andPaymentTypeEqualTo(paymentType);
admin.setChargeProds(chargeProdMapper.selectByExample(example));
admins.add(admin);
}
@@ -156,18 +151,14 @@ public class ChargeChannelAdminServiceImpl implements ChargeChannelAdminService
chargeProd.setProdStatus(Constant.ChargeProdStatus.using);
chargeProd.setSeqNo((byte) i);
chargeProd.setPayChannel(payChannel);
if (chargeChannel.isSpecial()) {
chargeProd.setPaymentType(paymentType);
} else {
chargeProd.setPaymentType(null);
}
chargeProd.setPaymentType(paymentType);
chargeProd.setLocalCurrencyCode(currency);
chargeProd.setUsdRate(rate);
BigDecimal handlingRate = chargeProd.getHandlingRate();
BigDecimal chargeGoldNum = BigDecimal.ZERO;
if (money != null && handlingRate != null && rate != null) {
BigDecimal temp = BigDecimal.valueOf(100).subtract(handlingRate);
chargeGoldNum = BigDecimal.valueOf(money).multiply(rate).multiply(temp.divide(BigDecimal.valueOf(100), 2, BigDecimal.ROUND_HALF_UP));
BigDecimal HUNDRED = BigDecimal.valueOf(100);
chargeGoldNum = BigDecimal.valueOf(money).divide(HUNDRED).multiply(rate).multiply(HUNDRED.subtract(handlingRate).divide(HUNDRED, 2, BigDecimal.ROUND_HALF_UP));
}
chargeProd.setChargeGoldNum(chargeGoldNum.longValue());
if (isInsert) {

View File

@@ -567,13 +567,11 @@
country: regionCode,
localCurrencyCode: currency,
payChannel: payChannel,
paymentType: paymentType,
money: parseInt(money),
seqNo: i,
handlingRate: handlingRate
};
if (isSpecial) {
chargeProd.paymentType = paymentType;
}
if (chargeProdId) {
chargeProd.chargeProdId = chargeProdId;
}