Просмотр исходного кода

Merge tag 'refs/tags/jenkins-back-end-3247' into SiChuan

release
release_toaliyun_real
Stormeye Wu 6 лет назад
Родитель
Сommit
8b2e4edcce
2 измененных файлов: 48 добавлений и 40 удалений
  1. +7
    -6
      mallinkService/src/main/java/com/iformall/service/impl/SysUserTokenServiceImpl.java
  2. +41
    -34
      mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java

+ 7
- 6
mallinkService/src/main/java/com/iformall/service/impl/SysUserTokenServiceImpl.java Просмотреть файл

@@ -50,12 +50,13 @@ public class SysUserTokenServiceImpl implements SysUserTokenService {
//保存token //保存token
sysUserTokenMapper.insert(tokenEntity); sysUserTokenMapper.insert(tokenEntity);
}else{ }else{
tokenEntity.setToken(token);
tokenEntity.setUpdateTime(now);
tokenEntity.setExpireTime(expireTime);

//更新token
sysUserTokenMapper.updateById(tokenEntity);
if (tokenEntity.getExpireTime().before(now)) {
tokenEntity.setToken(token);
tokenEntity.setUpdateTime(now);
tokenEntity.setExpireTime(expireTime);
//更新token
sysUserTokenMapper.updateById(tokenEntity);
}
} }
return tokenEntity; return tokenEntity;
} }


+ 41
- 34
mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java Просмотреть файл

@@ -724,21 +724,47 @@ public class WxOrderServiceImpl implements WxOrderService {
Date curr = new Date(); Date curr = new Date();
Date valid_date = null; Date valid_date = null;
int limit_days = Constant.WX_LIMIT_DAYS; int limit_days = Constant.WX_LIMIT_DAYS;
WxPayAccount payAccount = null;
WxPayAccount payAccountQ = new WxPayAccount();
payAccountQ.updateTenantInfo(order);
try {
payAccount = wxPayAccountMapper.selectOne(new QueryWrapper<>(payAccountQ));
} catch (Exception e) {
logger.error("获取payAccount error: " + order.getTenantId());
}
WxPayOrder payOrder = null;
if (coupon.getSalePrice() > 0) {
// 有价券获取payOrder,以备后续使用
try {
WxPayOrder payOrderQ = new WxPayOrder();
payOrderQ.updateTenantInfo(order);
payOrderQ.setOrderId(order.getId());
payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
payOrder = wxPayOrderMapper.selectOne(new QueryWrapper(payOrderQ));
} catch (Exception e) {
logger.error("payOrder not found:" + e.getMessage());
}
}

if (coupon.getValidType().equals(EnumValidStatus.VALID_RANGE.getCode()) || if (coupon.getValidType().equals(EnumValidStatus.VALID_RANGE.getCode()) ||
coupon.getType().equals(EnumCouponType.COUPON_TINGCHE.getCode())) { coupon.getType().equals(EnumCouponType.COUPON_TINGCHE.getCode())) {
valid_date = coupon.getValidEndDate(); valid_date = coupon.getValidEndDate();
if (coupon.getSalePrice() > 0 && !coupon.checkIsCard()) { if (coupon.getSalePrice() > 0 && !coupon.checkIsCard()) {
// 有价券核销有效期不能大于分账过期时间
Date limit_date = DateUtils.getTimeAfterDays(limit_days, curr);
if (valid_date.after(limit_date)) {
valid_date = limit_date;
if (payOrder != null && payOrder.getShareAmount() != null) {
// 分账有价券核销有效期不能大于分账过期时间
Date limit_date = DateUtils.getTimeAfterDays(limit_days, curr);
if (valid_date.after(limit_date)) {
valid_date = limit_date;
}
} }
} }
} else { } else {
if (coupon.getSalePrice() > 0 && !coupon.checkIsCard()) { if (coupon.getSalePrice() > 0 && !coupon.checkIsCard()) {
// 有价券核销有效期不能大于分账过期时间
if (coupon.getValidDays() < Constant.WX_LIMIT_DAYS) {
limit_days = coupon.getValidDays();
if (payOrder != null && payOrder.getShareAmount() != null) {
// 分账有价券核销有效期不能大于分账过期时间
if (coupon.getValidDays() < Constant.WX_LIMIT_DAYS) {
limit_days = coupon.getValidDays();
}
} }
} else { } else {
limit_days = coupon.getValidDays(); limit_days = coupon.getValidDays();
@@ -775,7 +801,6 @@ public class WxOrderServiceImpl implements WxOrderService {


/// 储值卡信息添加 /// 储值卡信息添加
if (isCard) { if (isCard) {
WxPayOrder payOrder = null;
Integer fee = 0; Integer fee = 0;
WxCardInfo cardInfo = new WxCardInfo(); WxCardInfo cardInfo = new WxCardInfo();
cardInfo.setId(couponOrder.getId()); cardInfo.setId(couponOrder.getId());
@@ -784,18 +809,8 @@ public class WxOrderServiceImpl implements WxOrderService {
cardInfo.setAmount(coupon.getPrice()); cardInfo.setAmount(coupon.getPrice());
cardInfo.setSaleAmount(coupon.getSalePrice()); cardInfo.setSaleAmount(coupon.getSalePrice());
cardInfo.setRemainingAmount(coupon.getPrice()); cardInfo.setRemainingAmount(coupon.getPrice());

if (!coupon.checkIsFree()) { if (!coupon.checkIsFree()) {
// 有价卡 // 有价卡
try {
WxPayOrder payOrderQ = new WxPayOrder();
payOrderQ.updateTenantInfo(order);
payOrderQ.setOrderId(order.getId());
payOrderQ.setPayOrderStatus(EnumPayStatus.PAY_STATUS_SUCCESS.getCode());
payOrder = wxPayOrderMapper.selectOne(new QueryWrapper(payOrderQ));
} catch (Exception e) {
logger.error("payOrder not found:" + e.getMessage());
}
cardInfo.setTransactionId(payOrder.getTransactionId()); cardInfo.setTransactionId(payOrder.getTransactionId());
if (payOrder.getShareAmount() != null) { if (payOrder.getShareAmount() != null) {
// 开启分账 // 开启分账
@@ -805,23 +820,15 @@ public class WxOrderServiceImpl implements WxOrderService {
cardInfo.setRateAmount(payOrder.getRateAmount()); cardInfo.setRateAmount(payOrder.getRateAmount());
} else { } else {
// 未开启分账 // 未开启分账
WxPayAccount payAccount = null;
WxPayAccount payAccountQ = new WxPayAccount();
payAccountQ.updateTenantInfo(order);
try {
payAccount = wxPayAccountMapper.selectOne(new QueryWrapper<>(payAccountQ));
fee = PayUtils.getPayRate(payOrder.getPayAmount(), payAccount.getRate(), false);
Integer shareAmount = payOrder.getPayAmount() - fee;
cardInfo.setShareFeeAmount(shareAmount);
cardInfo.setRemainingShareFeeAmount(shareAmount);
if (payAccount.getRealRate() != null) {
int iRealChargeFee = PayUtils.getPayRate(payOrder.getPayAmount(), payAccount.getRealRate(), true);
if (fee > iRealChargeFee) {
cardInfo.setRateAmount(fee - iRealChargeFee);
}
fee = PayUtils.getPayRate(payOrder.getPayAmount(), payAccount.getRate(), false);
Integer shareAmount = payOrder.getPayAmount() - fee;
cardInfo.setShareFeeAmount(shareAmount);
cardInfo.setRemainingShareFeeAmount(shareAmount);
if (payAccount.getRealRate() != null) {
int iRealChargeFee = PayUtils.getPayRate(payOrder.getPayAmount(), payAccount.getRealRate(), true);
if (fee > iRealChargeFee) {
cardInfo.setRateAmount(fee - iRealChargeFee);
} }
} catch (Exception e) {
logger.error("获取payAccount error: " + cardInfo.getTenantId());
} }
} }
} else { } else {


Загрузка…
Отмена
Сохранить