|
|
|
@@ -1,5 +1,6 @@ |
|
|
|
package com.iformall.service.impl; |
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|
|
|
import com.github.pagehelper.PageHelper; |
|
|
|
import com.github.pagehelper.PageInfo; |
|
|
|
@@ -54,10 +55,10 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{ |
|
|
|
private WxMerchantService wxMerchantService; |
|
|
|
|
|
|
|
@Override |
|
|
|
public PageInfo<WxLegionActivity> listAsPage(WxLegionActivity record, boolean needCount, Integer pageNum, Integer pageSize) { |
|
|
|
public PageInfo<WxLegionActivity> listAsPage(WxLegionActivity record, Integer pageNum, Integer pageSize) { |
|
|
|
handlerQuery(record); |
|
|
|
PageInfo<WxLegionActivity> activityPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxLegionActivityMapper.findList(record)); |
|
|
|
handlerList(record,activityPageInfo.getList(),needCount); |
|
|
|
handlerList(record,activityPageInfo.getList()); |
|
|
|
return activityPageInfo; |
|
|
|
} |
|
|
|
|
|
|
|
@@ -84,18 +85,19 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void handlerList(TenantEntity tenantEntity,List<WxLegionActivity> list, boolean needCount) { |
|
|
|
private void handlerList(WxLegionActivity record,List<WxLegionActivity> list) { |
|
|
|
if(list == null || list.isEmpty()){ |
|
|
|
return; |
|
|
|
} |
|
|
|
List<Long> ids = list.stream().map(WxLegionActivity::getId).collect(Collectors.toList()); |
|
|
|
WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig(); |
|
|
|
legionConfigQ.updateTenantInfo(tenantEntity); |
|
|
|
legionConfigQ.updateTenantInfo(record); |
|
|
|
legionConfigQ.setActivityIdList(ids); |
|
|
|
Map<Long, String> legionConfigMap = wxLegionActivityConfigService.getLegionConfigMap(legionConfigQ); |
|
|
|
legionConfigQ.setParentId(0L); |
|
|
|
Map<Long,Integer> legionCountMap = wxLegionActivityConfigService.findLegionCount(legionConfigQ); |
|
|
|
WxLegionActivityMerchantConfig merchantConfigQ = new WxLegionActivityMerchantConfig(); |
|
|
|
merchantConfigQ.updateTenantInfo(tenantEntity); |
|
|
|
merchantConfigQ.updateTenantInfo(record); |
|
|
|
merchantConfigQ.setActivityIdList(ids); |
|
|
|
Map<Long,Integer> merchantCountMap = wxLegionActivityMerchantConfigService.findMerchantCount(merchantConfigQ); |
|
|
|
|
|
|
|
@@ -107,9 +109,24 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{ |
|
|
|
activity.setLegionCount(legionCountMap.get(activity.getId())==null?0:legionCountMap.get(activity.getId())); |
|
|
|
activity.setMerchantCount(merchantCountMap.get(activity.getId())==null?0:merchantCountMap.get(activity.getId())); |
|
|
|
//处理数量 |
|
|
|
if(needCount){ |
|
|
|
if(record.isNeedCount()){ |
|
|
|
activity.setActivityData(wxLegionActivityOrderService.handleActivityData(activity,null)); |
|
|
|
} |
|
|
|
//处理商户所属 |
|
|
|
if(record.getMerchantId() != null){ |
|
|
|
WxLegionActivityMerchantConfig merchantQ = new WxLegionActivityMerchantConfig(); |
|
|
|
merchantQ.updateTenantInfo(activity); |
|
|
|
merchantQ.setActivityId(activity.getId()); |
|
|
|
merchantQ.setMerchantId(record.getMerchantId()); |
|
|
|
WxLegionActivityMerchantConfig merchantConfig = wxLegionActivityMerchantConfigMapper.selectOne(new QueryWrapper<>(merchantQ)); |
|
|
|
if(merchantConfig == null || merchantConfig.getLegionId().equals(0L)){ |
|
|
|
activity.setLegionName("无军团"); |
|
|
|
activity.setUnionName("无联盟"); |
|
|
|
}else{ |
|
|
|
activity.setLegionName(legionConfigMap.get(merchantConfig.getLegionId())); |
|
|
|
activity.setUnionName(merchantConfig.getUnionId().equals(0L)?"无联盟":legionConfigMap.get(merchantConfig.getUnionId())); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|