Browse Source

Merge branch 'release_toaliyun_real_202211' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real_202211

release_toaliyun_real
zhengfangyuan 3 years ago
parent
commit
b232124b94
1 changed files with 57 additions and 55 deletions
  1. +57
    -55
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java

+ 57
- 55
mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java View File

@@ -128,68 +128,70 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService {
public ResultData saveOrUpdate(WxCouponChannel record) {
boolean isThrowIn = false;//是否上架
boolean isTakeOff = false;//是否下架
if (record.getCouponId() != null) {
WxCoupon wxCoupon = wxCouponService.getById(record.getCouponId(),record.getTenantId());
if (wxCoupon == null){
WxCoupon wxCoupon = null;
if(record.getId() == null){
if (record.getCouponId() != null) {
wxCoupon = wxCouponService.getById(record.getCouponId(),record.getTenantId());
}else{
return new ResultData(ErrorCode.COUPON_IS_EMPTY);
}
if (wxCoupon.getStatus().equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF)){
return new ResultData(ErrorCode.COUPON_IS_TAKE_OFF);
if(EnumCouponChannelStatus.STATUS_THROW_IN.getCode().equals(record.getStatus())){
isThrowIn = true;
}
if(EnumCouponType.getDouYinType().contains(wxCoupon.getType())){
TtCouponChannelPoi ttCouponChannelPoi = ttCouponChannelPoiMapper.selectById(wxCoupon.getTenantId(),wxCoupon.getId());
if(ttCouponChannelPoi == null || EnumSpuSyncStatus.sync_auditing.getCode().equals(ttCouponChannelPoi.getLastStatus())
|| EnumSpuSyncStatus.sync_audit_rejection.getCode().equals(ttCouponChannelPoi.getLastStatus())){
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"该券未提交审核或审核未通过");
}else{
WxCouponChannel old = getById(record.getId(),record.getTenantId());
wxCoupon = wxCouponService.getById(old.getCouponId(),old.getTenantId());
if(EnumCouponChannelStatus.STATUS_TAKE_OFFF.getCode().equals(old.getStatus())
&& EnumCouponChannelStatus.STATUS_THROW_IN.getCode().equals(record.getStatus())){
if(record.getTargetAd() == null){
record.setTargetAd(old.getTargetAd());
}
isThrowIn = true;
}else if (old.getStatus().equals(EnumCouponChannelStatus.STATUS_THROW_IN.getCode())
&& record.getStatus().equals(EnumCouponChannelStatus.STATUS_TAKE_OFFF.getCode())) {
isTakeOff = true;
}
if(record.getStatus() != null){
if(record.getId() != null){
WxCouponChannel old = getById(record.getId(),record.getTenantId());
if(old.getStatus().equals(EnumCouponChannelStatus.STATUS_TAKE_OFFF.getCode())
&& record.getStatus().equals(EnumCouponChannelStatus.STATUS_THROW_IN.getCode())){
if(record.getTargetAd() == null){
record.setTargetAd(old.getTargetAd());
}
isThrowIn = true;
}else if (old.getStatus().equals(EnumCouponChannelStatus.STATUS_THROW_IN.getCode())
&& record.getStatus().equals(EnumCouponChannelStatus.STATUS_TAKE_OFFF.getCode())) {
isTakeOff = true;
}
}else{
if(record.getStatus().equals(EnumCouponChannelStatus.STATUS_THROW_IN.getCode())){
isThrowIn = true;
}
}

if(isThrowIn){
//查找是否该券 在该频道有其他上架
WxCouponChannel query = new WxCouponChannel();
query.updateTenantInfo(record);
query.setCouponId(record.getCouponId());
query.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode());//已上架
query.setTargetAd(record.getTargetAd());
List<WxCouponChannel> list = wxCouponChannelMapper.findList(query);
if (list != null && list.size() > 0) {
return new ResultData(ErrorCode.COUPON_CHANNEL_IS_EXISTED);
}
//上架该券的审核渠道
updateOnlineDouyin(wxCoupon);
}
}
if (wxCoupon == null){
return new ResultData(ErrorCode.COUPON_IS_EMPTY);
}
if (wxCoupon.getStatus().equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF)){
return new ResultData(ErrorCode.COUPON_IS_TAKE_OFF);
}
if(EnumCouponType.getDouYinType().contains(wxCoupon.getType())){
TtCouponChannelPoi ttCouponChannelPoi = ttCouponChannelPoiMapper.selectById(wxCoupon.getTenantId(),wxCoupon.getId());
if(ttCouponChannelPoi == null || EnumSpuSyncStatus.sync_auditing.getCode().equals(ttCouponChannelPoi.getLastStatus())
|| EnumSpuSyncStatus.sync_audit_rejection.getCode().equals(ttCouponChannelPoi.getLastStatus())){
return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"该券未提交审核或审核未通过");
}
}

if(isTakeOff){
wxScreenAdService.updateStatusByCouponChannelId(record.getId(),record,EnumScreenAdStatus.INVALID.getCode());
//下架拼团券
wxOrderService.updateOrderGroupStatusByCouponChannelId(record.getId(), record, EnumOrderStatus.ORDER_STATUS_COOPERATING_CANCEL.getCode());
//修改卡状态
wxCardInfoMapper.updateTransferStatusByCouponId(record.getCouponId());
//浮层下架
wxFloatingLayerMapper.updateStatus(record.getCouponId());

//下架该券的审核渠道(如所有渠道都已下线)
updateTakeOffDouyin(wxCoupon,record.getId());
}
if(isThrowIn){
//查找是否该券 在该频道有其他上架
WxCouponChannel query = new WxCouponChannel();
query.updateTenantInfo(record);
query.setCouponId(record.getCouponId());
query.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode());//已上架
query.setTargetAd(record.getTargetAd());
List<WxCouponChannel> list = wxCouponChannelMapper.findList(query);
if (list != null && list.size() > 0) {
return new ResultData(ErrorCode.COUPON_CHANNEL_IS_EXISTED);
}
//上架该券的审核渠道
updateOnlineDouyin(wxCoupon);
}

if(isTakeOff){
wxScreenAdService.updateStatusByCouponChannelId(record.getId(),record,EnumScreenAdStatus.INVALID.getCode());
//下架拼团券
wxOrderService.updateOrderGroupStatusByCouponChannelId(record.getId(), record, EnumOrderStatus.ORDER_STATUS_COOPERATING_CANCEL.getCode());
//修改卡状态
wxCardInfoMapper.updateTransferStatusByCouponId(record.getCouponId());
//浮层下架
wxFloatingLayerMapper.updateStatus(record.getCouponId());

//下架该券的审核渠道(如所有渠道都已下线)
updateTakeOffDouyin(wxCoupon,record.getId());
}

if (record.getId() == null) {


Loading…
Cancel
Save