From 2b4c8cb3c775df41b173351bf0c19ff243bc841e Mon Sep 17 00:00:00 2001 From: xiaohu <1901900812@qq.com> Date: Mon, 26 Aug 2024 20:06:10 +0800 Subject: [PATCH] //LegionActivity --- .../market/WxLegionActivityController.java | 3 +- .../WxLegionActivityController.java | 4 ++- .../iformall/domain/po/WxLegionActivity.java | 9 ++++++ .../service/WxLegionActivityService.java | 2 +- .../impl/WxLegionActivityServiceImpl.java | 29 +++++++++++++++---- 5 files changed, 38 insertions(+), 9 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxLegionActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxLegionActivityController.java index 3a873bdd2..99f5cd484 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxLegionActivityController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxLegionActivityController.java @@ -57,7 +57,8 @@ public class WxLegionActivityController extends BaseController { TenantEntity tenantInfo = getTenantInfo(); wxLegionActivity.updateTenantInfo(tenantInfo); wxLegionActivity.setSortColumns(SortField.CreateDate_DESC); - final PageInfo page = wxLegionActivityService.listAsPage(wxLegionActivity,true, pageNum, pageSize); + wxLegionActivity.setNeedCount(true); + final PageInfo page = wxLegionActivityService.listAsPage(wxLegionActivity, pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxLegionActivityController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxLegionActivityController.java index e09a10b97..e9f42c902 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxLegionActivityController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxLegionActivityController.java @@ -48,7 +48,9 @@ public class WxLegionActivityController extends BaseController { wxLegionActivity.updateTenantInfo(tenantInfo); wxLegionActivity.setStatusList(EnumLegionActivityStatus.getLine()); wxLegionActivity.setSortColumns(SortField.CreateDate_DESC); - final PageInfo page = wxLegionActivityService.listAsPage(wxLegionActivity, false,pageNum, pageSize); + wxLegionActivity.setNeedCount(false); + wxLegionActivity.setMerchantId(getLoginBUser().getMerchantId()); + final PageInfo page = wxLegionActivityService.listAsPage(wxLegionActivity,pageNum, pageSize); return new ResultData(page); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivity.java b/mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivity.java index ec332126e..75006dd92 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivity.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivity.java @@ -145,4 +145,13 @@ public class WxLegionActivity extends TenantEntity { @TableField(exist = false) private Map activityData; + @TableField(exist = false) + private boolean needCount; + + @TableField(exist = false) + private Long merchantId; + @TableField(exist = false) + private String legionName; + @TableField(exist = false) + private String unionName; } \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/service/WxLegionActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxLegionActivityService.java index 1e3183bd6..f1ba33acf 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxLegionActivityService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxLegionActivityService.java @@ -12,7 +12,7 @@ import com.iformall.domain.po.WxOfflineActivity; */ public interface WxLegionActivityService { - PageInfo listAsPage(WxLegionActivity wxLegionActivity, boolean needCount, Integer pageNum, Integer pageSize); + PageInfo listAsPage(WxLegionActivity wxLegionActivity, Integer pageNum, Integer pageSize); void saveOrUpdate(WxLegionActivity wxLegionActivity); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityServiceImpl.java index 55af6a8a8..fb45888da 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityServiceImpl.java @@ -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 listAsPage(WxLegionActivity record, boolean needCount, Integer pageNum, Integer pageSize) { + public PageInfo listAsPage(WxLegionActivity record, Integer pageNum, Integer pageSize) { handlerQuery(record); PageInfo 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 list, boolean needCount) { + private void handlerList(WxLegionActivity record,List list) { if(list == null || list.isEmpty()){ return; } List ids = list.stream().map(WxLegionActivity::getId).collect(Collectors.toList()); WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig(); - legionConfigQ.updateTenantInfo(tenantEntity); + legionConfigQ.updateTenantInfo(record); legionConfigQ.setActivityIdList(ids); + Map legionConfigMap = wxLegionActivityConfigService.getLegionConfigMap(legionConfigQ); legionConfigQ.setParentId(0L); Map legionCountMap = wxLegionActivityConfigService.findLegionCount(legionConfigQ); WxLegionActivityMerchantConfig merchantConfigQ = new WxLegionActivityMerchantConfig(); - merchantConfigQ.updateTenantInfo(tenantEntity); + merchantConfigQ.updateTenantInfo(record); merchantConfigQ.setActivityIdList(ids); Map 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())); + } + } } }