Przeglądaj źródła

fix bug

release_toaliyun_real
zhengfangyuan 3 lat temu
rodzic
commit
3004d754ab
2 zmienionych plików z 39 dodań i 22 usunięć
  1. +10
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCoupon.java
  2. +29
    -22
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java

+ 10
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxCoupon.java Wyświetl plik

@@ -489,5 +489,15 @@ public class WxCoupon extends TenantEntity {
}
return valid_date;
}
public boolean checkCreateWithMerchants() {
if(type == null) {
return true;
}
if(type == EnumCouponType.COUPON_DOUYIN_PLAT.getCode()) {
return false;
}
return true;
}
}

+ 29
- 22
mallinkService/src/main/java/com/iformall/service/impl/WxCouponServiceImpl.java Wyświetl plik

@@ -508,32 +508,37 @@ public class WxCouponServiceImpl implements WxCouponService {
return giftResult;
}
try {
checkCouponMerchantReceiverAndUpdate(record);
}catch(Exception e) {
return new ResultData(Result.ERROR,e.getMessage());
}
//平台券先不设置商户
List<JSONObject> merchantParamList = null;
if (record.checkCreateWithMerchants()) {
try {
checkCouponMerchantReceiverAndUpdate(record);
}catch(Exception e) {
return new ResultData(Result.ERROR,e.getMessage());
}
merchantParamList = JSONObject.parseArray(record.getMerchantParams(), JSONObject.class);
}

List<JSONObject> merchantParamList = JSONObject.parseArray(record.getMerchantParams(), JSONObject.class);

final IdWorker idWorker = IdWorker.get();
if (record.getId() == null) {
record.setId(idWorker.nextId());

merchantParamList.forEach(merchantParam -> {
WxCouponMerchant cm = new WxCouponMerchant();
WxCouponMerchantDto wxCouponMerchantDto = parseMerchantParam(merchantParam);
cm.setId(idWorker.nextId());
cm.updateTenantInfo(record);
cm.setMerchantId(wxCouponMerchantDto.getMerchantId());
cm.setParameter(wxCouponMerchantDto.getParameter());
cm.setProductId(record.getId());
cm.setCreateDate(new Date());
cm.setUpdateDate(new Date());
cm.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode());
wxCouponMerchantMapper.insert(cm);
});
if (record.checkCreateWithMerchants()) {
merchantParamList.forEach(merchantParam -> {
WxCouponMerchant cm = new WxCouponMerchant();
WxCouponMerchantDto wxCouponMerchantDto = parseMerchantParam(merchantParam);
cm.setId(idWorker.nextId());
cm.updateTenantInfo(record);
cm.setMerchantId(wxCouponMerchantDto.getMerchantId());
cm.setParameter(wxCouponMerchantDto.getParameter());
cm.setProductId(record.getId());
cm.setCreateDate(new Date());
cm.setUpdateDate(new Date());
cm.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode());
wxCouponMerchantMapper.insert(cm);
});
}

if (record.getPasswordSupport() != null && record.getPasswordSupport().equals(EnumCouponPasswordSupport.SUPPORTED.getCode())) {
// todo 生成卡密无法修改, 调整
@@ -561,7 +566,9 @@ public class WxCouponServiceImpl implements WxCouponService {
record.setInventory(oldCoupon.getInventory() + record.getRemainInventory() - oldCoupon.getRemainInventory());
}
}
updateCouponMerchants(record,merchantParamList,idWorker);
if (record.checkCreateWithMerchants()) {
updateCouponMerchants(record,merchantParamList,idWorker);
}

record.setUpdateDate(new Date());
wxCouponMapper.updateById(record);


Ładowanie…
Anuluj
Zapisz