From f5b1532d51668c2d55cc28659e8a4305fc17ce34 Mon Sep 17 00:00:00 2001 From: xiaohu <1901900812@qq.com> Date: Tue, 20 May 2025 19:17:37 +0800 Subject: [PATCH] //activity v.2 --- .../iformall/config/SwaggerConfiguration.java | 2 +- .../iformall/constant/SwaggerConstant.java | 1 + .../WxVtwoAmountGiftActivityController.java | 138 +++++++++ .../WxVtwoCashBackActivityController.java | 161 ++++++++++ .../WxVtwoPrizeDrawActivityController.java | 140 +++++++++ .../db/migration/V202505000000001.sql | 12 + .../domain/po/WxVtwoActivityAward.java | 78 +++++ .../domain/po/WxVtwoActivityGrant.java | 126 ++++++++ .../domain/po/WxVtwoActivityGrantAward.java | 150 ++++++++++ .../domain/po/WxVtwoActivityGrantExport.java | 282 ++++++++++++++++++ .../domain/po/WxVtwoActivityGrantOrder.java | 46 +++ .../po/WxVtwoActivityGrantSettlement.java | 138 +++++++++ .../domain/po/WxVtwoActivityMerchant.java | 37 +++ .../domain/po/WxVtwoActivityOrder.java | 211 +++++++++++++ .../domain/po/WxVtwoActivitySpecialTopic.java | 71 +++++ .../domain/po/WxVtwoAmountGiftActivity.java | 164 ++++++++++ .../domain/po/WxVtwoCashBackActivity.java | 160 ++++++++++ .../domain/po/WxVtwoCashBackAward.java | 102 +++++++ .../domain/po/WxVtwoCashBackGrant.java | 162 ++++++++++ .../domain/po/WxVtwoCashBackGrantAward.java | 156 ++++++++++ .../domain/po/WxVtwoPrizeDrawActivity.java | 171 +++++++++++ .../domain/po/WxVtwoSpecialTopicActivity.java | 83 ++++++ .../vo/WxVtwoActivityOrderStatistics.java | 16 + .../domain/vo/WxVtwoActivityRule.java | 37 +++ .../domain/vo/WxVtwoActivityRuleDetail.java | 44 +++ .../vo/WxVtwoActivityTaxDeductionRule.java | 26 ++ .../vo/WxVtwoOrderBusinessStatistics.java | 21 ++ .../domain/vo/WxVtwoOrderCountStatistics.java | 19 ++ .../mapper/WxVtwoActivityAwardMapper.java | 25 ++ .../WxVtwoActivityGrantAwardMapper.java | 19 ++ .../WxVtwoActivityGrantExportMapper.java | 19 ++ .../mapper/WxVtwoActivityGrantMapper.java | 19 ++ .../WxVtwoActivityGrantOrderMapper.java | 19 ++ .../WxVtwoActivityGrantSettlementMapper.java | 21 ++ .../mapper/WxVtwoActivityMerchantMapper.java | 27 ++ .../mapper/WxVtwoActivityOrderMapper.java | 47 +++ .../WxVtwoActivitySpecialTopicMapper.java | 19 ++ .../WxVtwoAmountGiftActivityMapper.java | 25 ++ .../mapper/WxVtwoCashBackActivityMapper.java | 26 ++ .../mapper/WxVtwoCashBackAwardMapper.java | 26 ++ .../WxVtwoCashBackGrantAwardMapper.java | 19 ++ .../mapper/WxVtwoCashBackGrantMapper.java | 19 ++ .../mapper/WxVtwoPrizeDrawActivityMapper.java | 25 ++ .../WxVtwoSpecialTopicActivityMapper.java | 19 ++ .../service/WxVtwoActivityAwardService.java | 17 ++ .../WxVtwoActivityGrantAwardService.java | 13 + .../WxVtwoActivityGrantExportService.java | 13 + .../WxVtwoActivityGrantOrderService.java | 13 + .../service/WxVtwoActivityGrantService.java | 13 + .../WxVtwoActivityGrantSettlementService.java | 13 + .../WxVtwoActivityMerchantService.java | 19 ++ .../service/WxVtwoActivityOrderService.java | 13 + .../WxVtwoActivitySpecialTopicService.java | 13 + .../WxVtwoAmountGiftActivityService.java | 19 ++ .../WxVtwoCashBackActivityService.java | 19 ++ .../service/WxVtwoCashBackAwardService.java | 18 ++ .../WxVtwoCashBackGrantAwardService.java | 13 + .../service/WxVtwoCashBackGrantService.java | 13 + .../WxVtwoPrizeDrawActivityService.java | 17 ++ .../WxVtwoSpecialTopicActivityService.java | 13 + .../impl/WxVtwoActivityAwardServiceImpl.java | 58 ++++ .../WxVtwoActivityGrantAwardServiceImpl.java | 22 ++ .../WxVtwoActivityGrantExportServiceImpl.java | 22 ++ .../WxVtwoActivityGrantOrderServiceImpl.java | 22 ++ .../impl/WxVtwoActivityGrantServiceImpl.java | 22 ++ ...twoActivityGrantSettlementServiceImpl.java | 22 ++ .../WxVtwoActivityMerchantServiceImpl.java | 81 +++++ .../impl/WxVtwoActivityOrderServiceImpl.java | 22 ++ ...WxVtwoActivitySpecialTopicServiceImpl.java | 22 ++ .../WxVtwoAmountGiftActivityServiceImpl.java | 198 ++++++++++++ .../WxVtwoCashBackActivityServiceImpl.java | 186 ++++++++++++ .../impl/WxVtwoCashBackAwardServiceImpl.java | 78 +++++ .../WxVtwoCashBackGrantAwardServiceImpl.java | 22 ++ .../impl/WxVtwoCashBackGrantServiceImpl.java | 22 ++ .../WxVtwoPrizeDrawActivityServiceImpl.java | 202 +++++++++++++ ...WxVtwoSpecialTopicActivityServiceImpl.java | 22 ++ .../mapper/WxVtwoActivityAwardMapper.xml | 80 +++++ .../mapper/WxVtwoActivityGrantAwardMapper.xml | 94 ++++++ .../WxVtwoActivityGrantExportMapper.xml | 113 +++++++ .../mapper/WxVtwoActivityGrantMapper.xml | 79 +++++ .../mapper/WxVtwoActivityGrantOrderMapper.xml | 63 ++++ .../WxVtwoActivityGrantSettlementMapper.xml | 95 ++++++ .../mapper/WxVtwoActivityMerchantMapper.xml | 74 +++++ .../mapper/WxVtwoActivityOrderMapper.xml | 253 ++++++++++++++++ .../WxVtwoActivitySpecialTopicMapper.xml | 79 +++++ .../mapper/WxVtwoAmountGiftActivityMapper.xml | 92 ++++++ .../mapper/WxVtwoCashBackActivityMapper.xml | 91 ++++++ .../mapper/WxVtwoCashBackAwardMapper.xml | 90 ++++++ .../mapper/WxVtwoCashBackGrantAwardMapper.xml | 86 ++++++ .../mapper/WxVtwoCashBackGrantMapper.xml | 85 ++++++ .../mapper/WxVtwoPrizeDrawActivityMapper.xml | 89 ++++++ .../WxVtwoSpecialTopicActivityMapper.xml | 57 ++++ 92 files changed, 5909 insertions(+), 1 deletion(-) create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoAmountGiftActivityController.java create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java create mode 100644 mallinkAdmin/src/main/resources/db/migration/V202505000000001.sql create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityAward.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrant.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantAward.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantExport.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantSettlement.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityMerchant.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivitySpecialTopic.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoAmountGiftActivity.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackActivity.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackAward.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrant.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrantAward.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoPrizeDrawActivity.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxVtwoSpecialTopicActivity.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityOrderStatistics.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRule.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRuleDetail.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityTaxDeductionRule.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderBusinessStatistics.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderCountStatistics.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityAwardMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantAwardMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantExportMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantOrderMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantSettlementMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityMerchantMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityOrderMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivitySpecialTopicMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoAmountGiftActivityMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackActivityMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackAwardMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantAwardMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoPrizeDrawActivityMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxVtwoSpecialTopicActivityMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityAwardService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantAwardService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantExportService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantOrderService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantSettlementService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityMerchantService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoActivitySpecialTopicService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackActivityService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackAwardService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantAwardService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoPrizeDrawActivityService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxVtwoSpecialTopicActivityService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityAwardServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantAwardServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantExportServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantOrderServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantSettlementServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivitySpecialTopicServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoAmountGiftActivityServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackActivityServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackAwardServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantAwardServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoPrizeDrawActivityServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxVtwoSpecialTopicActivityServiceImpl.java create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityAwardMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityGrantAwardMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityGrantExportMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityGrantMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityGrantOrderMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityGrantSettlementMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityMerchantMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivityOrderMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoActivitySpecialTopicMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoAmountGiftActivityMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoCashBackActivityMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoCashBackAwardMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantAwardMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoPrizeDrawActivityMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml diff --git a/mallink-swagger/src/main/java/com/iformall/config/SwaggerConfiguration.java b/mallink-swagger/src/main/java/com/iformall/config/SwaggerConfiguration.java index c1c437736..4c82a9609 100644 --- a/mallink-swagger/src/main/java/com/iformall/config/SwaggerConfiguration.java +++ b/mallink-swagger/src/main/java/com/iformall/config/SwaggerConfiguration.java @@ -93,7 +93,7 @@ public class SwaggerConfiguration { .apis(RequestHandlerSelectors.basePackage(swaggerProperties.getBasePackage())) .apis(input -> { ApiVersion apiVersion = input.getHandlerMethod().getMethodAnnotation(ApiVersion.class); - return apiVersion != null && Arrays.asList(apiVersion.group()).contains(SwaggerConstant.V_1_0_0); + return apiVersion != null && Arrays.asList(apiVersion.group()).contains(SwaggerConstant.V_A_2_0); }) .paths( Predicates.and( diff --git a/mallink-swagger/src/main/java/com/iformall/constant/SwaggerConstant.java b/mallink-swagger/src/main/java/com/iformall/constant/SwaggerConstant.java index 819377219..af9207c78 100644 --- a/mallink-swagger/src/main/java/com/iformall/constant/SwaggerConstant.java +++ b/mallink-swagger/src/main/java/com/iformall/constant/SwaggerConstant.java @@ -3,4 +3,5 @@ package com.iformall.constant; public interface SwaggerConstant { String V_1_0_0 = "v1.0.0"; String V_2_0_0 = "v2.0.0"; + String V_A_2_0 = "a.v.2.0"; } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoAmountGiftActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoAmountGiftActivityController.java new file mode 100644 index 000000000..0c8316a3b --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoAmountGiftActivityController.java @@ -0,0 +1,138 @@ +package com.iformall.controller.market; + +import com.github.pagehelper.PageInfo; +import com.iformall.annotation.ApiVersion; +import com.iformall.common.Result; +import com.iformall.common.ResultData; +import com.iformall.constant.SwaggerConstant; +import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.WxVtwoActivityAward; +import com.iformall.domain.po.WxVtwoAmountGiftActivity; +import com.iformall.domain.po.WxVtwoPrizeDrawActivity; +import com.iformall.domain.po.base.BaseEntity.SortField; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumOfflineActivityAwardsMoneyRule; +import com.iformall.enums.EnumOfflineActivityMerchantType; +import com.iformall.enums.EnumOfflineActivityStatus; +import com.iformall.service.WxVtwoAmountGiftActivityService; +import com.iformall.service.WxVtwoPrizeDrawActivityService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.math.BigDecimal; + +/** + * @author alascor + * + */ +@RestController +@RequestMapping("/amountGift") +@Api(description = "线下赠礼活动相关接口") +public class WxVtwoAmountGiftActivityController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private WxVtwoAmountGiftActivityService wxVtwoAmountGiftActivityService; + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData list(@ModelAttribute WxVtwoAmountGiftActivity amountGiftActivity, Integer pageNum, Integer pageSize) { + if (null == amountGiftActivity) amountGiftActivity = new WxVtwoAmountGiftActivity(); + TenantEntity tenantInfo = getTenantInfo(); + amountGiftActivity.updateTenantInfo(tenantInfo); + amountGiftActivity.setSortColumns(SortField.CreateDate_DESC); + final PageInfo page = wxVtwoAmountGiftActivityService.listAsPage(amountGiftActivity, pageNum, pageSize); + return new ResultData(page); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("新增修改接口") + @PostMapping("saveOrUpdate") + public ResultData saveOrUpdate(@RequestBody WxVtwoAmountGiftActivity amountGiftActivity) { + TenantEntity tenantEntity = getTenantInfo(); + amountGiftActivity.updateTenantInfo(tenantEntity); + if(amountGiftActivity.getStartTime() == null || amountGiftActivity.getEndTime() == null){ + return new ResultData(Result.ERROR,"活动时间为空"); + } + if(amountGiftActivity.getAwardList() == null || amountGiftActivity.getAwardList().isEmpty()){ + return new ResultData(Result.ERROR,"活动奖项不能为空"); + } + for (WxVtwoActivityAward award :amountGiftActivity.getAwardList()){ + if(EnumOfflineActivityAwardsMoneyRule.MALL_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(100)); + award.setMerchantShareRate(new BigDecimal(0)); + } + else if (EnumOfflineActivityAwardsMoneyRule.MERCHANT_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(0)); + award.setMerchantShareRate(new BigDecimal(100)); + } + else if (EnumOfflineActivityAwardsMoneyRule.SHARE.getCode().equals(award.getShareRule())) { + if (award.getMallShareRate().add(award.getMerchantShareRate()).intValue() != 100) { + return new ResultData(Result.ERROR,"分担规则下,商户和商管的比例总和需要为100%"); + } + } + } + if(EnumOfflineActivityMerchantType.ADD.getCode().equals(amountGiftActivity.getMerchantRule())){ + if(amountGiftActivity.getMerchantIdList() == null || amountGiftActivity.getMerchantIdList().isEmpty()){ + return new ResultData(Result.ERROR,"活动参加商户不能为空"); + } + } + else if (EnumOfflineActivityMerchantType.UN_ADD.getCode().equals(amountGiftActivity.getMerchantRule())) { + if(amountGiftActivity.getMerchantIdList() == null || amountGiftActivity.getMerchantIdList().isEmpty()){ + return new ResultData(Result.ERROR,"活动不参加商户不能为空"); + } + } + wxVtwoAmountGiftActivityService.saveOrUpdate(amountGiftActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("上架") + @PostMapping("online") + public ResultData online(@RequestBody WxVtwoAmountGiftActivity amountGiftActivity) { + if(amountGiftActivity.getId() == null){ + return new ResultData(Result.ERROR,"ID为空"); + } + TenantEntity tenantEntity = getTenantInfo(); + amountGiftActivity.updateTenantInfo(tenantEntity); + amountGiftActivity.setStatus(EnumOfflineActivityStatus.ON_LINE.getCode()); + wxVtwoAmountGiftActivityService.updateById(amountGiftActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("下架") + @PostMapping("offline") + public ResultData offline(@RequestBody WxVtwoAmountGiftActivity amountGiftActivity) { + if(amountGiftActivity.getId() == null){ + return new ResultData(Result.ERROR,"ID为空"); + } + TenantEntity tenantEntity = getTenantInfo(); + amountGiftActivity.updateTenantInfo(tenantEntity); + amountGiftActivity.setStatus(EnumOfflineActivityStatus.OFF_LINE.getCode()); + wxVtwoAmountGiftActivityService.updateById(amountGiftActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("查询详情") + @GetMapping("getInfoById") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", paramType = "query", required = true)}) + public ResultData getInfoById(Long id) { + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoAmountGiftActivity amountGiftActivity = wxVtwoAmountGiftActivityService.getInfoById(id, tenantInfo.getTenantId()); + return new ResultData(amountGiftActivity); + } + +} diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java new file mode 100644 index 000000000..c9766c2bb --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java @@ -0,0 +1,161 @@ +package com.iformall.controller.market; + +import com.github.pagehelper.PageInfo; +import com.iformall.annotation.ApiVersion; +import com.iformall.common.Result; +import com.iformall.common.ResultData; +import com.iformall.constant.SwaggerConstant; +import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.WxVtwoActivityAward; +import com.iformall.domain.po.WxVtwoAmountGiftActivity; +import com.iformall.domain.po.WxVtwoCashBackActivity; +import com.iformall.domain.po.WxVtwoCashBackAward; +import com.iformall.domain.po.base.BaseEntity.SortField; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumOfflineActivityAwardsMoneyRule; +import com.iformall.enums.EnumOfflineActivityMerchantType; +import com.iformall.enums.EnumOfflineActivityStatus; +import com.iformall.service.WxVtwoAmountGiftActivityService; +import com.iformall.service.WxVtwoCashBackActivityService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.math.BigDecimal; + +/** + * @author alascor + * + */ +@RestController +@RequestMapping("/amountGift") +@Api(description = "线下返现活动相关接口") +public class WxVtwoCashBackActivityController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private WxVtwoCashBackActivityService wxVtwoCashBackActivityService; + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData list(@ModelAttribute WxVtwoCashBackActivity cashBackActivity, Integer pageNum, Integer pageSize) { + if (null == cashBackActivity) cashBackActivity = new WxVtwoCashBackActivity(); + TenantEntity tenantInfo = getTenantInfo(); + cashBackActivity.updateTenantInfo(tenantInfo); + cashBackActivity.setSortColumns(SortField.CreateDate_DESC); + final PageInfo page = wxVtwoCashBackActivityService.listAsPage(cashBackActivity, pageNum, pageSize); + return new ResultData(page); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("新增修改接口") + @PostMapping("saveOrUpdate") + public ResultData saveOrUpdate(@RequestBody WxVtwoCashBackActivity cashBackActivity) { + TenantEntity tenantEntity = getTenantInfo(); + cashBackActivity.updateTenantInfo(tenantEntity); + if(cashBackActivity.getStartTime() == null || cashBackActivity.getEndTime() == null){ + return new ResultData(Result.ERROR,"活动时间为空"); + } + if((cashBackActivity.getAmountRulesObject() == null || cashBackActivity.getAmountRulesObject().isEmpty()) + && (cashBackActivity.getRelatedRulesObject() == null || cashBackActivity.getRelatedRulesObject().isEmpty())){ + return new ResultData(Result.ERROR,"活动奖项不能为空"); + } + if(cashBackActivity.getAmountRulesObject()!=null && !cashBackActivity.getAmountRulesObject().isEmpty()){ + for (WxVtwoCashBackAward award :cashBackActivity.getAmountRulesObject()){ + if(EnumOfflineActivityAwardsMoneyRule.MALL_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(100)); + award.setMerchantShareRate(new BigDecimal(0)); + } + else if (EnumOfflineActivityAwardsMoneyRule.MERCHANT_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(0)); + award.setMerchantShareRate(new BigDecimal(100)); + } + else if (EnumOfflineActivityAwardsMoneyRule.SHARE.getCode().equals(award.getShareRule())) { + if (award.getMallShareRate().add(award.getMerchantShareRate()).intValue() != 100) { + return new ResultData(Result.ERROR,"分担规则下,商户和商管的比例总和需要为100%"); + } + } + } + } + + if(cashBackActivity.getRelatedRulesObject()!=null && !cashBackActivity.getRelatedRulesObject().isEmpty()){ + for (WxVtwoCashBackAward award :cashBackActivity.getRelatedRulesObject()){ + if(EnumOfflineActivityAwardsMoneyRule.MALL_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(100)); + award.setMerchantShareRate(new BigDecimal(0)); + } + else if (EnumOfflineActivityAwardsMoneyRule.MERCHANT_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(0)); + award.setMerchantShareRate(new BigDecimal(100)); + } + else if (EnumOfflineActivityAwardsMoneyRule.SHARE.getCode().equals(award.getShareRule())) { + if (award.getMallShareRate().add(award.getMerchantShareRate()).intValue() != 100) { + return new ResultData(Result.ERROR,"分担规则下,商户和商管的比例总和需要为100%"); + } + } + } + } + + if(EnumOfflineActivityMerchantType.ADD.getCode().equals(cashBackActivity.getMerchantRule())){ + if(cashBackActivity.getMerchantIdList() == null || cashBackActivity.getMerchantIdList().isEmpty()){ + return new ResultData(Result.ERROR,"活动参加商户不能为空"); + } + } + else if (EnumOfflineActivityMerchantType.UN_ADD.getCode().equals(cashBackActivity.getMerchantRule())) { + if(cashBackActivity.getMerchantIdList() == null || cashBackActivity.getMerchantIdList().isEmpty()){ + return new ResultData(Result.ERROR,"活动不参加商户不能为空"); + } + } + wxVtwoCashBackActivityService.saveOrUpdate(cashBackActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("上架") + @PostMapping("online") + public ResultData online(@RequestBody WxVtwoCashBackActivity cashBackActivity) { + if(cashBackActivity.getId() == null){ + return new ResultData(Result.ERROR,"ID为空"); + } + TenantEntity tenantEntity = getTenantInfo(); + cashBackActivity.updateTenantInfo(tenantEntity); + cashBackActivity.setStatus(EnumOfflineActivityStatus.ON_LINE.getCode()); + wxVtwoCashBackActivityService.updateById(cashBackActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("下架") + @PostMapping("offline") + public ResultData offline(@RequestBody WxVtwoCashBackActivity cashBackActivity) { + if(cashBackActivity.getId() == null){ + return new ResultData(Result.ERROR,"ID为空"); + } + TenantEntity tenantEntity = getTenantInfo(); + cashBackActivity.updateTenantInfo(tenantEntity); + cashBackActivity.setStatus(EnumOfflineActivityStatus.OFF_LINE.getCode()); + wxVtwoCashBackActivityService.updateById(cashBackActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("查询详情") + @GetMapping("getInfoById") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", paramType = "query", required = true)}) + public ResultData getInfoById(Long id) { + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoCashBackActivity cashBackActivity = wxVtwoCashBackActivityService.getInfoById(id, tenantInfo.getTenantId()); + return new ResultData(cashBackActivity); + } + +} diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java new file mode 100644 index 000000000..598736fc2 --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java @@ -0,0 +1,140 @@ +package com.iformall.controller.market; + +import com.alibaba.fastjson.JSONObject; +import com.github.pagehelper.PageInfo; +import com.iformall.annotation.ApiVersion; +import com.iformall.common.Result; +import com.iformall.common.ResultData; +import com.iformall.constant.SwaggerConstant; +import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.*; +import com.iformall.domain.po.base.BaseEntity.SortField; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.domain.vo.OfflineActivityAwardsItemVo; +import com.iformall.enums.*; +import com.iformall.exception.MallinkException; +import com.iformall.service.WxOfflineActivityGrantAwardService; +import com.iformall.service.WxOfflineActivityService; +import com.iformall.service.WxVtwoPrizeDrawActivityService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.math.BigDecimal; + +/** + * @author alascor + * + */ +@RestController +@RequestMapping("/prizeDraw") +@Api(description = "线下抽奖活动相关接口") +public class WxVtwoPrizeDrawActivityController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private WxVtwoPrizeDrawActivityService wxVtwoPrizeDrawActivityService; + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData list(@ModelAttribute WxVtwoPrizeDrawActivity prizeDrawActivity, Integer pageNum, Integer pageSize) { + if (null == prizeDrawActivity) prizeDrawActivity = new WxVtwoPrizeDrawActivity(); + TenantEntity tenantInfo = getTenantInfo(); + prizeDrawActivity.updateTenantInfo(tenantInfo); + prizeDrawActivity.setSortColumns(SortField.CreateDate_DESC); + final PageInfo page = wxVtwoPrizeDrawActivityService.listAsPage(prizeDrawActivity, pageNum, pageSize); + return new ResultData(page); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("新增修改接口") + @PostMapping("saveOrUpdate") + public ResultData saveOrUpdate(@RequestBody WxVtwoPrizeDrawActivity prizeDrawActivity) { + TenantEntity tenantEntity = getTenantInfo(); + prizeDrawActivity.updateTenantInfo(tenantEntity); + if(prizeDrawActivity.getStartTime() == null || prizeDrawActivity.getEndTime() == null){ + return new ResultData(Result.ERROR,"活动时间为空"); + } + if(prizeDrawActivity.getAwardList() == null || prizeDrawActivity.getAwardList().isEmpty()){ + return new ResultData(Result.ERROR,"活动奖项不能为空"); + } + for (WxVtwoActivityAward award :prizeDrawActivity.getAwardList()){ + if(EnumOfflineActivityAwardsMoneyRule.MALL_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(100)); + award.setMerchantShareRate(new BigDecimal(0)); + } + else if (EnumOfflineActivityAwardsMoneyRule.MERCHANT_ONLY.getCode().equals(award.getShareRule())){ + award.setMallShareRate(new BigDecimal(0)); + award.setMerchantShareRate(new BigDecimal(100)); + } + else if (EnumOfflineActivityAwardsMoneyRule.SHARE.getCode().equals(award.getShareRule())) { + if (award.getMallShareRate().add(award.getMerchantShareRate()).intValue() != 100) { + return new ResultData(Result.ERROR,"分担规则下,商户和商管的比例总和需要为100%"); + } + } + } + if(EnumOfflineActivityMerchantType.ADD.getCode().equals(prizeDrawActivity.getMerchantRule())){ + if(prizeDrawActivity.getMerchantIdList() == null || prizeDrawActivity.getMerchantIdList().isEmpty()){ + return new ResultData(Result.ERROR,"活动参加商户不能为空"); + } + } + else if (EnumOfflineActivityMerchantType.UN_ADD.getCode().equals(prizeDrawActivity.getMerchantRule())) { + if(prizeDrawActivity.getMerchantIdList() == null || prizeDrawActivity.getMerchantIdList().isEmpty()){ + return new ResultData(Result.ERROR,"活动不参加商户不能为空"); + } + } + wxVtwoPrizeDrawActivityService.saveOrUpdate(prizeDrawActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("上架") + @PostMapping("online") + public ResultData online(@RequestBody WxVtwoPrizeDrawActivity prizeDrawActivity) { + if(prizeDrawActivity.getId() == null){ + return new ResultData(Result.ERROR,"ID为空"); + } + TenantEntity tenantEntity = getTenantInfo(); + prizeDrawActivity.updateTenantInfo(tenantEntity); + prizeDrawActivity.setStatus(EnumOfflineActivityStatus.ON_LINE.getCode()); + wxVtwoPrizeDrawActivityService.updateById(prizeDrawActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("下架") + @PostMapping("offline") + public ResultData offline(@RequestBody WxVtwoPrizeDrawActivity prizeDrawActivity) { + if(prizeDrawActivity.getId() == null){ + return new ResultData(Result.ERROR,"ID为空"); + } + TenantEntity tenantEntity = getTenantInfo(); + prizeDrawActivity.updateTenantInfo(tenantEntity); + prizeDrawActivity.setStatus(EnumOfflineActivityStatus.OFF_LINE.getCode()); + wxVtwoPrizeDrawActivityService.updateById(prizeDrawActivity); + return new ResultData(); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("查询详情") + @GetMapping("getInfoById") + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", paramType = "query", required = true)}) + public ResultData getInfoById(Long id) { + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoPrizeDrawActivity prizeDrawActivity = wxVtwoPrizeDrawActivityService.getInfoById(id, tenantInfo.getTenantId()); + return new ResultData(prizeDrawActivity); + } + +} diff --git a/mallinkAdmin/src/main/resources/db/migration/V202505000000001.sql b/mallinkAdmin/src/main/resources/db/migration/V202505000000001.sql new file mode 100644 index 000000000..077dbcf60 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V202505000000001.sql @@ -0,0 +1,12 @@ +INSERT INTO `mallink`.`mall_permission` (`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (1604, '线下活动', 6, 'Y', NULL, 0, NULL, NULL, NULL, 'icon-kanjia', 0, 604); + + +INSERT INTO `mallink`.`mall_permission` (`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (16041, '活动主题', 1604, 'Y', NULL, 1, NULL, NULL, 'specialTopicList', NULL, 0, 16041); +INSERT INTO `mallink`.`mall_permission` (`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (16042, '抽奖活动', 1604, 'Y', NULL, 1, NULL, NULL, 'prizeDrawList', NULL, 0, 16042); +INSERT INTO `mallink`.`mall_permission` (`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (16043, '赠礼活动', 1604, 'Y', NULL, 1, NULL, NULL, 'amountGiftList', NULL, 0, 16043); +INSERT INTO `mallink`.`mall_permission` (`id`, `name`, `parent_id`, `available`, `permission`, `resource_type`, `module_color`, `module_color_num`, `url`, `icon`, `version_type`, `sort`) VALUES (16044, '返现活动', 1604, 'Y', NULL, 1, NULL, NULL, 'cashBackList', NULL, 0, 16044); + + + +UPDATE `mallink`.`mall_sale_type` SET `menus` = '[1, 2, 3, 4, 5, 6, 7, 8, 81, 82, 83, 84, 85, 86, 87, 9, 10, 11, 50, 101, 102, 103, 104, 105, 106, 107, 108, 109, 201, 202, 203, 204, 205, 206, 209, 210, 211, 212, 213, 221, 222, 224, 225, 228, 251, 261, 299, 300, 301, 302, 303, 304, 305, 306, 309, 30901, 30902, 310, 31001, 31002, 31003, 311, 312, 313, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 41901, 41902, 41903, 41904, 41905, 41906, 41907, 41908, 41909, 41910, 420, 421, 422, 423, 425, 426, 431, 432, 433, 434, 435, 436, 437, 438, 439, 43901, 43902, 43903, 43904, 43905, 43906, 43907, 440, 44001, 44002, 44003, 44004, 44005, 44006, 44007, 44008, 44009, 44010, 44011, 502, 503, 504, 505, 506, 507, 508, 509, 511, 512, 513, 514, 521, 522, 523, 531, 532, 533, 591, 592, 595, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 616, 617, 621, 622, 623, 624, 625, 626, 627, 641, 642, 643, 644, 645, 646, 651, 652, 653, 661, 662, 663, 664, 665, 666, 667, 668, 671, 672, 673, 674, 675, 681, 682, 683, 684, 685, 687, 691, 692, 693, 694, 695, 701, 702, 703, 704, 711, 713, 714, 715, 901, 902, 903, 904, 905, 906, 907, 908, 910, 931, 932, 951, 952, 961, 962, 963, 965, 966, 967, 968, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1604, 16041, 16042, 16043, 16044, 5502, 6610, 6611, 41701, 41702, 41703, 60701, 60702, 61201, 71102]' WHERE `id` = 1; +UPDATE `mallink`.`mall_sale_type` SET `menus` = '[1, 2, 3, 4, 5, 6, 7, 8, 81, 82, 83, 84, 85, 86, 87, 9, 10, 11, 50, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 201, 202, 203, 204, 205, 206, 209, 210, 211, 212, 213, 221, 222, 223, 224, 225, 228, 251, 261, 299, 300, 301, 302, 303, 304, 305, 306, 309, 30901, 30902, 310, 31001, 31002, 31003, 311, 312, 313, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 41901, 41902, 41903, 41904, 41905, 41906, 41907, 41908, 41909, 41910, 420, 421, 422, 423, 425, 426, 431, 432, 433, 434, 435, 436, 437, 438, 439, 43901, 43902, 43903, 43904, 43905, 43906, 43907, 440, 44001, 44002, 44003, 44004, 44005, 44006, 44007, 44008, 44009, 44010, 44011, 502, 503, 504, 505, 506, 507, 508, 509, 511, 512, 513, 514, 521, 522, 523, 531, 532, 533, 591, 592, 595, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 615, 616, 617, 621, 622, 623, 624, 625, 626, 627, 641, 642, 643, 644, 645, 646, 647, 651, 652, 653, 661, 662, 663, 664, 665, 666, 667, 668, 671, 672, 673, 674, 675, 676, 680, 681, 682, 683, 684, 685, 687, 691, 692, 693, 694, 695, 701, 702, 703, 704, 711, 713, 714, 715, 901, 902, 903, 904, 905, 906, 907, 908, 910, 931, 932, 951, 952, 961, 962, 963, 965, 966, 967, 968, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1604, 16041, 16042, 16043, 16044, 5502, 6610, 6611, 41701, 41702, 41703, 60701, 60702, 61201, 61202, 61501, 61502, 71102]' WHERE `id` = 12; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityAward.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityAward.java new file mode 100644 index 000000000..e52e80d6b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityAward.java @@ -0,0 +1,78 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下活动奖项 + * @TableName wx_vtwo_activity_award + */ +@TableName(value ="wx_vtwo_activity_award") +@Data +public class WxVtwoActivityAward extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 奖项等级 + */ + @TableField(value = "grade") + private Integer grade; + + /** + * 奖项名称 + */ + @TableField(value = "name") + private String name; + + /** + * 奖项价值 + */ + @TableField(value = "price") + private BigDecimal price; + + /** + * 分担规则(0-商管 1-商户 2-分担) + */ + @TableField(value = "share_rule") + private Integer shareRule; + + /** + * 商管分担比例 + */ + @TableField(value = "mall_share_rate") + private BigDecimal mallShareRate; + + /** + * 商户分担比例 + */ + @TableField(value = "merchant_share_rate") + private BigDecimal merchantShareRate; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrant.java new file mode 100644 index 000000000..9f715896f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrant.java @@ -0,0 +1,126 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下活动发奖 + * @TableName wx_vtwo_activity_grant + */ +@TableName(value ="wx_vtwo_activity_grant") +@Data +public class WxVtwoActivityGrant extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动ID + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * + */ + @TableField(value = "activity_name") + private String activityName; + + /** + * 订单总金额 + */ + @TableField(value = "order_money_sum") + private BigDecimal orderMoneySum; + + /** + * 订单数量 + */ + @TableField(value = "order_count") + private Integer orderCount; + + /** + * 客户姓名 + */ + @TableField(value = "cus_name") + private String cusName; + + /** + * 客户电话 + */ + @TableField(value = "cus_phone") + private String cusPhone; + + /** + * 抽奖券编码 + */ + @TableField(value = "lottery_num") + private String lotteryNum; + + /** + * 抽奖券数量 + */ + @TableField(value = "lottery_count") + private Integer lotteryCount; + + /** + * 周年庆抽奖编码 + */ + @TableField(value = "anniversary_lottery_num") + private String anniversaryLotteryNum; + + /** + * 实际领奖人 + */ + @TableField(value = "real_name") + private String realName; + + /** + * 实际领奖人身份证号 + */ + @TableField(value = "real_card") + private String realCard; + + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + + /** + * 签名图片 + */ + @TableField(value = "sign_img") + private String signImg; + + /** + * + */ + @TableField(value = "status") + private Integer status; + + /** + * + */ + @TableField(value = "create_by") + private Long createBy; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantAward.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantAward.java new file mode 100644 index 000000000..5cbb5612b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantAward.java @@ -0,0 +1,150 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下活动发放奖励 + * @TableName wx_vtwo_activity_grant_award + */ +@TableName(value ="wx_vtwo_activity_grant_award") +@Data +public class WxVtwoActivityGrantAward extends TenantEntity { + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 活动名称 + */ + @TableField(value = "activity_name") + private String activityName; + + /** + * 发放id + */ + @TableField(value = "grant_id") + private Long grantId; + + /** + * + */ + @TableField(value = "order_id") + private Long orderId; + + /** + * 订单金额/总金额 + */ + @TableField(value = "order_amount") + private BigDecimal orderAmount; + + /** + * 金额/联单 + */ + @TableField(value = "mode_type") + private Integer modeType; + + /** + * 奖项限制最小金额 + */ + @TableField(value = "min_amount") + private BigDecimal minAmount; + + /** + * 奖项限制最大金额 + */ + @TableField(value = "max_amount") + private BigDecimal maxAmount; + + /** + * 联单笔数 + */ + @TableField(value = "related_count") + private Integer relatedCount; + + /** + * 奖项id + */ + @TableField(value = "award_id") + private Long awardId; + + /** + * 奖项等级 + */ + @TableField(value = "award_grade") + private Integer awardGrade; + + /** + * 奖项名称 + */ + @TableField(value = "award_name") + private String awardName; + + /** + * 奖项价值 + */ + @TableField(value = "award_price") + private BigDecimal awardPrice; + + /** + * 奖项数量 + */ + @TableField(value = "award_count") + private Integer awardCount; + + /** + * 实际发放价值 + */ + @TableField(value = "grant_price") + private BigDecimal grantPrice; + + /** + * 分担规则(0-商管 1-商户 2-分担) + */ + @TableField(value = "money_rule") + private Integer moneyRule; + + /** + * 商管分担比例 + */ + @TableField(value = "mall_share_rate") + private BigDecimal mallShareRate; + + /** + * 商户分担比例 + */ + @TableField(value = "merchant_share_rate") + private BigDecimal merchantShareRate; + + /** + * + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantExport.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantExport.java new file mode 100644 index 000000000..ff86eccab --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantExport.java @@ -0,0 +1,282 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下活动发放奖励导出 + * @TableName wx_vtwo_activity_grant_export + */ +@TableName(value ="wx_vtwo_activity_grant_export") +@Data +public class WxVtwoActivityGrantExport extends TenantEntity { + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 订单id + */ + @TableField(value = "order_id") + private Long orderId; + + /** + * 订单号 + */ + @TableField(value = "order_no") + private String orderNo; + + /** + * 订单金额 + */ + @TableField(value = "order_amount") + private BigDecimal orderAmount; + + /** + * 商户编号 + */ + @TableField(value = "merchant_id") + private Long merchantId; + + /** + * + */ + @TableField(value = "merchant_name") + private String merchantName; + + /** + * + */ + @TableField(value = "merchant_shop_num") + private String merchantShopNum; + + /** + * 业态 + */ + @TableField(value = "business_id") + private Integer businessId; + + /** + * + */ + @TableField(value = "business_name") + private String businessName; + + /** + * 抽奖券编码 + */ + @TableField(value = "lottery_num") + private String lotteryNum; + + /** + * 抽奖券数量 + */ + @TableField(value = "lottery_count") + private Integer lotteryCount; + + /** + * 周年庆抽奖编码 + */ + @TableField(value = "anniversary_lottery_num") + private String anniversaryLotteryNum; + + /** + * + */ + @TableField(value = "order_create_time") + private Date orderCreateTime; + + /** + * 审批状态 + */ + @TableField(value = "order_audit_status") + private Integer orderAuditStatus; + + /** + * 审核人 + */ + @TableField(value = "order_audit_by") + private Long orderAuditBy; + + /** + * + */ + @TableField(value = "order_audit_name") + private String orderAuditName; + + /** + * 审批意见 + */ + @TableField(value = "order_audit_remark") + private String orderAuditRemark; + + /** + * 审核时间 + */ + @TableField(value = "order_audit_time") + private Date orderAuditTime; + + /** + * 会员卡号 + */ + @TableField(value = "vip_num") + private String vipNum; + + /** + * 客户姓名 + */ + @TableField(value = "cus_name") + private String cusName; + + /** + * 客户电话 + */ + @TableField(value = "cus_phone") + private String cusPhone; + + /** + * 身份证号 + */ + @TableField(value = "cus_card") + private String cusCard; + + /** + * 客户地址 + */ + @TableField(value = "cus_address") + private String cusAddress; + + /** + * 所属军团 + */ + @TableField(value = "legion_id") + private Long legionId; + + /** + * + */ + @TableField(value = "legion_name") + private String legionName; + + /** + * 所属联盟 + */ + @TableField(value = "union_id") + private Long unionId; + + /** + * + */ + @TableField(value = "union_name") + private String unionName; + + /** + * 发奖id + */ + @TableField(value = "grant_id") + private Long grantId; + + /** + * 实际领奖人 + */ + @TableField(value = "grant_user_name") + private String grantUserName; + + /** + * 实际领奖人身份证号 + */ + @TableField(value = "grant_user_card") + private String grantUserCard; + + /** + * 发奖人 + */ + @TableField(value = "grant_by") + private Long grantBy; + + /** + * + */ + @TableField(value = "grant_by_name") + private String grantByName; + + /** + * 发奖时间 + */ + @TableField(value = "grant_time") + private Date grantTime; + + /** + * 备注 + */ + @TableField(value = "grant_remark") + private String grantRemark; + + /** + * 签名图片 + */ + @TableField(value = "sign_img") + private String signImg; + + /** + * 发放结算详情 + */ + @TableField(value = "grant_detail") + private String grantDetail; + + /** + * 发放总价值 + */ + @TableField(value = "grant_price") + private BigDecimal grantPrice; + + /** + * 订单商管承担总金额 + */ + @TableField(value = "mall_share_price") + private BigDecimal mallSharePrice; + + /** + * 订单商户承担总金额 + */ + @TableField(value = "merchant_share_price") + private BigDecimal merchantSharePrice; + + /** + * 商管承担比率 + */ + @TableField(value = "mall_share_rate") + private BigDecimal mallShareRate; + + /** + * 商户承担比率 + */ + @TableField(value = "merchant_share_rate") + private BigDecimal merchantShareRate; + + /** + * 税点金额 + */ + @TableField(value = "tax_amount") + private BigDecimal taxAmount; + + /** + * + */ + @TableField(value = "status") + private Integer status; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java new file mode 100644 index 000000000..8d28526a6 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java @@ -0,0 +1,46 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; + +/** + * 线下活动发奖订单 + * @TableName wx_vtwo_activity_grant_order + */ +@TableName(value ="wx_vtwo_activity_grant_order") +@Data +public class WxVtwoActivityGrantOrder extends TenantEntity { + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 发放id + */ + @TableField(value = "grant_id") + private Long grantId; + + /** + * 订单id + */ + @TableField(value = "order_id") + private Long orderId; + + /** + * 是否参与总金额计算 + */ + @TableField(value = "is_amount") + private Integer isAmount; + + /** + * + */ + @TableField(value = "status") + private Integer status; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantSettlement.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantSettlement.java new file mode 100644 index 000000000..61298405b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantSettlement.java @@ -0,0 +1,138 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下活动发放奖励结算 + * @TableName wx_vtwo_activity_grant_settlement + */ +@TableName(value ="wx_vtwo_activity_grant_settlement") +@Data +public class WxVtwoActivityGrantSettlement extends TenantEntity { + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 发奖id + */ + @TableField(value = "grant_id") + private Long grantId; + + /** + * 发放奖励记录id + */ + @TableField(value = "grant_award_id") + private Long grantAwardId; + + /** + * 奖项id + */ + @TableField(value = "award_id") + private Long awardId; + + /** + * 发放总价值 + */ + @TableField(value = "grant_price") + private BigDecimal grantPrice; + + /** + * 订单id + */ + @TableField(value = "order_id") + private Long orderId; + + /** + * 订单编号 + */ + @TableField(value = "order_no") + private String orderNo; + + /** + * 订单金额 + */ + @TableField(value = "order_amount") + private BigDecimal orderAmount; + + /** + * 商户id + */ + @TableField(value = "merchant_id") + private Long merchantId; + + /** + * 订单占比 + */ + @TableField(value = "order_ratio") + private BigDecimal orderRatio; + + /** + * 订单发放总价值 + */ + @TableField(value = "order_grant_price") + private BigDecimal orderGrantPrice; + + /** + * 商管承担比率 + */ + @TableField(value = "mall_share_rate") + private BigDecimal mallShareRate; + + /** + * 商户承担比率 + */ + @TableField(value = "merchant_share_rate") + private BigDecimal merchantShareRate; + + /** + * 订单商管承担总金额 + */ + @TableField(value = "order_mall_share_price") + private BigDecimal orderMallSharePrice; + + /** + * 订单商户承担总金额 + */ + @TableField(value = "order_merchant_share_price") + private BigDecimal orderMerchantSharePrice; + + /** + * 税点金额 + */ + @TableField(value = "tax_amount") + private BigDecimal taxAmount; + + /** + * + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityMerchant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityMerchant.java new file mode 100644 index 000000000..fe0ccb1af --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityMerchant.java @@ -0,0 +1,37 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; + +/** + * 线下活动商户 + * @TableName wx_vtwo_activity_merchant + */ +@TableName(value ="wx_vtwo_activity_merchant") +@Data +public class WxVtwoActivityMerchant extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动ID + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 商户ID + */ + @TableField(value = "merchant_id") + private Long merchantId; + + @TableField(exist = false) + private WxMerchant merchant; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java new file mode 100644 index 000000000..8fdf8b65f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java @@ -0,0 +1,211 @@ +package com.iformall.domain.po; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +import lombok.Data; + +/** + * 线下活动参与登记 + * @TableName wx_vtwo_activity_order + */ +@TableName(value ="wx_vtwo_activity_order") +@Data +public class WxVtwoActivityOrder extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 来源用户ID + */ + @TableField(value = "from_user_id") + private Long fromUserId; + + /** + * 会员卡号 + */ + @TableField(value = "vip_num") + private String vipNum; + + /** + * 客户姓名 + */ + @TableField(value = "cus_name") + private String cusName; + + /** + * + */ + @TableField(value = "real_cus_name") + private String realCusName; + + /** + * 客户电话 + */ + @TableField(value = "cus_phone") + private String cusPhone; + + /** + * 身份证号 + */ + @TableField(value = "cus_card") + private String cusCard; + + /** + * 客户地址 + */ + @TableField(value = "cus_address") + private String cusAddress; + + /** + * 所属军团 + */ + @TableField(value = "legion_id") + private Long legionId; + + /** + * + */ + @TableField(value = "legion_name") + private String legionName; + + /** + * 所属联盟 + */ + @TableField(value = "union_id") + private Long unionId; + + /** + * + */ + @TableField(value = "union_name") + private String unionName; + + /** + * 来源订单ID + */ + @TableField(value = "from_order_id") + private Long fromOrderId; + + /** + * 订单号 + */ + @TableField(value = "order_no") + private String orderNo; + + /** + * 订单金额 + */ + @TableField(value = "order_amount") + private BigDecimal orderAmount; + + /** + * 商户编号 + */ + @TableField(value = "merchant_id") + private Long merchantId; + +// @Excel(name = "商户名称", width = 20, orderNum = "6") + @TableField(exist = false) + private String merchantName; +// @Excel(name="商铺号",width = 20,orderNum = "7") + @TableField(exist = false) + private String shopNumber; + + @TableField(exist = false) + private List merchantIdList; + @TableField(exist = false) + private List notMerchantIdList; + + /** + * 业态 + */ + @TableField(value = "business_id") + private Integer businessId; + @TableField(exist = false) + private String businessName; + + /** + * 抽奖券编码 + */ + @TableField(value = "lottery_num") + private String lotteryNum; + + /** + * 抽奖券数量 + */ + @TableField(value = "lottery_count") + private Integer lotteryCount; + + /** + * 周年庆抽奖编码 + */ + @TableField(value = "anniversary_lottery_num") + private String anniversaryLotteryNum; + + /** + * 审批状态 + */ + @TableField(value = "audit_status") + private Integer auditStatus; + + /** + * 审批意见 + */ + @TableField(value = "audit_remark") + private String auditRemark; + + /** + * 审核人 + */ + @TableField(value = "audit_by") + private Long auditBy; + + /** + * 审核时间 + */ + @TableField(value = "audit_time") + private Date auditTime; + + /** + * 积分变动值 + */ + @TableField(value = "increased_points") + private Integer increasedPoints; + + /** + * + */ + @TableField(value = "create_by") + private Long createBy; + @Excel(name = "审核人", width = 20, orderNum = "14") + @TableField(exist = false) + private String auditByName; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + @TableField(exist = false) + private Date createDateBegin; + @TableField(exist = false) + private Date createDateEnd; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivitySpecialTopic.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivitySpecialTopic.java new file mode 100644 index 000000000..96c24671d --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivitySpecialTopic.java @@ -0,0 +1,71 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.util.Date; +import lombok.Data; + +/** + * 线下活动专题 + * @TableName wx_vtwo_activity_special_topic + */ +@TableName(value ="wx_vtwo_activity_special_topic") +@Data +public class WxVtwoActivitySpecialTopic extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 专题名称 + */ + @TableField(value = "name") + private String name; + + /** + * 开始时间 + */ + @TableField(value = "start_time") + private Date startTime; + + /** + * 结束时间 + */ + @TableField(value = "end_time") + private Date endTime; + + /** + * 积分开关 + */ + @TableField(value = "credit_on_off") + private Integer creditOnOff; + + /** + * 积分配置 + */ + @TableField(value = "credit_config") + private String creditConfig; + + /** + * 状态 + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoAmountGiftActivity.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoAmountGiftActivity.java new file mode 100644 index 000000000..eb1490619 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoAmountGiftActivity.java @@ -0,0 +1,164 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.util.Date; +import java.util.List; + +import com.iformall.domain.vo.WxVtwoActivityRule; +import com.iformall.domain.vo.WxVtwoActivityRuleDetail; +import lombok.Data; + +/** + * 线下满额赠礼活动 + * @TableName wx_vtwo_amount_gift_activity + */ +@TableName(value ="wx_vtwo_amount_gift_activity") +@Data +public class WxVtwoAmountGiftActivity extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动名称 + */ + @TableField(value = "name") + private String name; + + /** + * 开始时间 + */ + @TableField(value = "start_time") + private Date startTime; + + /** + * 结束时间 + */ + @TableField(value = "end_time") + private Date endTime; + + /** + * 计算模式 + */ + @TableField(value = "amount_model") + private Integer amountModel; + + /** + * 业态订单数量限制 + */ + @TableField(value = "business_order_limit") + private Integer businessOrderLimit; + + /** + * 计算模式中奖规则 + */ + @TableField(value = "amount_rules") + private String amountRules; + + /** + * + */ + @TableField(exist = false) + private List amountRulesObject; + + /** + * 联单模式 + */ + @TableField(value = "related_model") + private Integer relatedModel; + + /** + * + */ + @TableField(value = "related_rules") + private String relatedRules; + + /** + * + */ + @TableField(exist = false) + private List relatedRulesObject; + + /** + * 礼品总数量 + */ + @TableField(value = "awards_count") + private Integer awardsCount; + + /** + * 商户规则 + */ + @TableField(value = "merchant_rule") + private Integer merchantRule; + + @TableField(exist = false) + private List merchantIdList; + + @TableField(exist = false) + private List merchanList; + + /** + * 活动状态 + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; + + @TableField(exist = false) + private List awardList; + + @TableField(exist = false) + private Date begin; + @TableField(exist = false) + private Date end; + /** + * 是否过期 + */ + @TableField(exist = false) + private Integer validStatus; + + /** + * 参与订单数量 + */ + @TableField(exist = false) + private Integer orderCount; + /** + * 参与待审核订单数量 + */ + @TableField(exist = false) + private Integer waitOrderCount; + /** + * 参与已审核订单数量 + */ + @TableField(exist = false) + private Integer successOrderCount; + + /** + * 参与商户数量 + */ + @TableField(exist = false) + private Integer mershantCount; + + /** + * 发放订单数 + */ + @TableField(exist = false) + private Integer grantOrderCount; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackActivity.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackActivity.java new file mode 100644 index 000000000..0e5f8c4af --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackActivity.java @@ -0,0 +1,160 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.util.Date; +import java.util.List; + +import com.iformall.domain.vo.WxVtwoActivityTaxDeductionRule; +import lombok.Data; + +/** + * 线下返现活动 + * @TableName wx_vtwo_cash_back_activity + */ +@TableName(value ="wx_vtwo_cash_back_activity") +@Data +public class WxVtwoCashBackActivity extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动名称 + */ + @TableField(value = "name") + private String name; + + /** + * 开始时间 + */ + @TableField(value = "start_time") + private Date startTime; + + /** + * 结束时间 + */ + @TableField(value = "end_time") + private Date endTime; + + /** + * 计算模式 + */ + @TableField(value = "amount_model") + private Integer amountModel; + + /** + * 业态订单数量限制 + */ + @TableField(value = "business_order_limit") + private Integer businessOrderLimit; + + @TableField(exist = false) + private List amountRulesObject; + + /** + * 联单模式 + */ + @TableField(value = "related_model") + private Integer relatedModel; + + @TableField(exist = false) + private List relatedRulesObject; + + /** + * 返现总金额限制 + */ + @TableField(value = "cash_back_limit") + private Integer cashBackLimit; + + /** + * 返现计算规则 + */ + @TableField(value = "cash_back_rule") + private Integer cashBackRule; + + /** + * 扣税规则 + */ + @TableField(value = "tax_deduction_rules") + private String taxDeductionRules; + + /** + * + */ + @TableField(exist = false) + private WxVtwoActivityTaxDeductionRule taxDeductionRulesObject; + + /** + * 商户规则 + */ + @TableField(value = "merchant_rule") + private Integer merchantRule; + + @TableField(exist = false) + private List merchantIdList; + + @TableField(exist = false) + private List merchanList; + + /** + * 活动状态 + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; + + @TableField(exist = false) + private Date begin; + @TableField(exist = false) + private Date end; + /** + * 是否过期 + */ + @TableField(exist = false) + private Integer validStatus; + + /** + * 参与订单数量 + */ + @TableField(exist = false) + private Integer orderCount; + /** + * 参与待审核订单数量 + */ + @TableField(exist = false) + private Integer waitOrderCount; + /** + * 参与已审核订单数量 + */ + @TableField(exist = false) + private Integer successOrderCount; + + /** + * 参与商户数量 + */ + @TableField(exist = false) + private Integer mershantCount; + + /** + * 发放订单数 + */ + @TableField(exist = false) + private Integer grantOrderCount; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackAward.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackAward.java new file mode 100644 index 000000000..30259427d --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackAward.java @@ -0,0 +1,102 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下返现活动奖项 + * @TableName wx_vtwo_cash_back_award + */ +@TableName(value ="wx_vtwo_cash_back_award") +@Data +public class WxVtwoCashBackAward extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 金额/联单 + */ + @TableField(value = "model_type") + private Integer modelType; + + /** + * 限制最小金额 + */ + @TableField(value = "min_amount") + private BigDecimal minAmount; + + /** + * 限制最大金额 + */ + @TableField(value = "max_amount") + private BigDecimal maxAmount; + + /** + * 联单笔数 + */ + @TableField(value = "related_count") + private Integer relatedCount; + + /** + * 奖品名称 + */ + @TableField(value = "name") + private String name; + + /** + * 返现比例 + */ + @TableField(value = "cash_back_ratio") + private BigDecimal cashBackRatio; + + /** + * 返现金额限制 + */ + @TableField(value = "cash_back_limit") + private Integer cashBackLimit; + + /** + * 分担规则(0-商管 1-商户 2-分担) + */ + @TableField(value = "share_rule") + private Integer shareRule; + + /** + * 商管分担比例 + */ + @TableField(value = "mall_share_rate") + private BigDecimal mallShareRate; + + /** + * 商户分担比例 + */ + @TableField(value = "merchant_share_rate") + private BigDecimal merchantShareRate; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrant.java new file mode 100644 index 000000000..b6b3a8c4b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrant.java @@ -0,0 +1,162 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下返现活动发奖 + * @TableName wx_vtwo_cash_back_grant + */ +@TableName(value ="wx_vtwo_cash_back_grant") +@Data +public class WxVtwoCashBackGrant extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动ID + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * + */ + @TableField(value = "activity_name") + private String activityName; + + /** + * 订单总金额 + */ + @TableField(value = "order_money_sum") + private BigDecimal orderMoneySum; + + /** + * 订单数量 + */ + @TableField(value = "order_count") + private Integer orderCount; + + /** + * 客户姓名 + */ + @TableField(value = "cus_name") + private String cusName; + + /** + * 客户电话 + */ + @TableField(value = "cus_phone") + private String cusPhone; + + /** + * 抽奖券编码 + */ + @TableField(value = "lottery_num") + private String lotteryNum; + + /** + * 抽奖券数量 + */ + @TableField(value = "lottery_count") + private Integer lotteryCount; + + /** + * 周年庆抽奖编码 + */ + @TableField(value = "anniversary_lottery_num") + private String anniversaryLotteryNum; + + /** + * 实际领奖人 + */ + @TableField(value = "real_name") + private String realName; + + /** + * 实际领奖人身份证号 + */ + @TableField(value = "real_card") + private String realCard; + + /** + * 返现金额限制 + */ + @TableField(value = "cash_back_limit") + private BigDecimal cashBackLimit; + + /** + * 返现金额计算规则 + */ + @TableField(value = "cash_back_rule") + private Integer cashBackRule; + + /** + * 返现金额 + */ + @TableField(value = "cash_back") + private BigDecimal cashBack; + + /** + * 扣税规则 + */ + @TableField(value = "tax_deduction_rules") + private String taxDeductionRules; + + /** + * 税点金额 + */ + @TableField(value = "tax_amount") + private BigDecimal taxAmount; + + /** + * 实际返现金额 + */ + @TableField(value = "real_cash_back") + private BigDecimal realCashBack; + + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + + /** + * 签名图片 + */ + @TableField(value = "sign_img") + private String signImg; + + /** + * + */ + @TableField(value = "status") + private Integer status; + + /** + * + */ + @TableField(value = "create_by") + private Long createBy; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrantAward.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrantAward.java new file mode 100644 index 000000000..3369cb687 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoCashBackGrantAward.java @@ -0,0 +1,156 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + +/** + * 线下返现活动发放奖励 + * @TableName wx_vtwo_cash_back_grant_award + */ +@TableName(value ="wx_vtwo_cash_back_grant_award") +@Data +public class WxVtwoCashBackGrantAward extends TenantEntity { + /** + * + */ + @TableId(value = "id") + private Long id; + + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 活动名称 + */ + @TableField(value = "activity_name") + private String activityName; + + /** + * 发放id + */ + @TableField(value = "grant_id") + private Long grantId; + + /** + * + */ + @TableField(value = "record_id") + private Long recordId; + + /** + * 订单金额/总金额 + */ + @TableField(value = "order_amount") + private BigDecimal orderAmount; + + /** + * 金额/联单 + */ + @TableField(value = "mode_type") + private Integer modeType; + + /** + * 奖项限制最小金额 + */ + @TableField(value = "min_amount") + private BigDecimal minAmount; + + /** + * 奖项限制最大金额 + */ + @TableField(value = "max_amount") + private BigDecimal maxAmount; + + /** + * 联单笔数 + */ + @TableField(value = "related_count") + private Integer relatedCount; + + /** + * 奖项id + */ + @TableField(value = "award_id") + private Long awardId; + + /** + * 奖项名称 + */ + @TableField(value = "award_name") + private String awardName; + + /** + * 返现比例 + */ + @TableField(value = "cash_back_ratio") + private BigDecimal cashBackRatio; + + /** + * 返现计算规则 + */ + @TableField(value = "cash_back_rule") + private Integer cashBackRule; + + /** + * 返现金额 + */ + @TableField(value = "cash_back") + private BigDecimal cashBack; + + /** + * 分担规则(0-商管 1-商户 2-分担) + */ + @TableField(value = "money_rule") + private Integer moneyRule; + + /** + * 商管分担比例 + */ + @TableField(value = "mall_share_rate") + private BigDecimal mallShareRate; + + /** + * 商户分担比例 + */ + @TableField(value = "merchant_share_rate") + private BigDecimal merchantShareRate; + + /** + * 扣税规则 + */ + @TableField(value = "tax_deduction_rules") + private String taxDeductionRules; + + /** + * 税点金额 + */ + @TableField(value = "tax_amount") + private BigDecimal taxAmount; + + /** + * + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoPrizeDrawActivity.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoPrizeDrawActivity.java new file mode 100644 index 000000000..d966d8452 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoPrizeDrawActivity.java @@ -0,0 +1,171 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.util.Date; +import java.util.List; + +import com.iformall.domain.vo.WxVtwoActivityRule; +import com.iformall.domain.vo.WxVtwoActivityRuleDetail; +import lombok.Data; + +/** + * 线下抽奖活动 + * @TableName wx_vtwo_prize_draw_activity + */ +@TableName(value ="wx_vtwo_prize_draw_activity") +@Data +public class WxVtwoPrizeDrawActivity extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 活动名称 + */ + @TableField(value = "name") + private String name; + + /** + * 开始时间 + */ + @TableField(value = "start_time") + private Date startTime; + + /** + * 结束时间 + */ + @TableField(value = "end_time") + private Date endTime; + + /** + * 计算模式 + */ + @TableField(value = "amount_model") + private Integer amountModel; + + /** + * 业态订单数量限制 + */ + @TableField(value = "business_order_limit") + private Integer businessOrderLimit; + + /** + * + */ + @TableField(value = "amount_rules") + private String amountRules; + + /** + * + */ + @TableField(exist = false) + private WxVtwoActivityRule amountRulesObject; + + /** + * 联单模式 + */ + @TableField(value = "related_model") + private Integer relatedModel; + + /** + * + */ + @TableField(value = "related_rules") + private String relatedRules; + + /** + * + */ + @TableField(exist = false) + private List relatedRulesObject; + + /** + * 奖项数量限制 + */ + @TableField(value = "awards_limit") + private Integer awardsLimit; + + /** + * 奖项总数量 + */ + @TableField(value = "awards_count") + private Integer awardsCount; + + /** + * 商户规则 + */ + @TableField(value = "merchant_rule") + private Integer merchantRule; + + @TableField(exist = false) + private List merchantIdList; + + @TableField(exist = false) + private List merchanList; + + /** + * 活动状态 + */ + @TableField(value = "status") + private Integer status; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; + + @TableField(exist = false) + private List awardList; + + @TableField(exist = false) + private Date begin; + @TableField(exist = false) + private Date end; + /** + * 是否过期 + */ + @TableField(exist = false) + private Integer validStatus; + + /** + * 参与订单数量 + */ + @TableField(exist = false) + private Integer orderCount; + /** + * 参与待审核订单数量 + */ + @TableField(exist = false) + private Integer waitOrderCount; + /** + * 参与已审核订单数量 + */ + @TableField(exist = false) + private Integer successOrderCount; + + /** + * 参与商户数量 + */ + @TableField(exist = false) + private Integer mershantCount; + + /** + * 发放订单数 + */ + @TableField(exist = false) + private Integer grantOrderCount; + +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoSpecialTopicActivity.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoSpecialTopicActivity.java new file mode 100644 index 000000000..6bc020cab --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoSpecialTopicActivity.java @@ -0,0 +1,83 @@ +package com.iformall.domain.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import java.util.Date; +import lombok.Data; + +/** + * 线下专题下的活动 + * @TableName wx_vtwo_special_topic_activity + */ +@TableName(value ="wx_vtwo_special_topic_activity") +@Data +public class WxVtwoSpecialTopicActivity extends TenantEntity { + /** + * 主键ID + */ + @TableId(value = "id") + private Long id; + + /** + * 专题ID + */ + @TableField(value = "special_topic_id") + private Long specialTopicId; + + /** + * 活动ID + */ + @TableField(value = "activity_id") + private Long activityId; + + /** + * 活动类型 + */ + @TableField(value = "activity_type") + private Integer activityType; + + /** + * 活动名称 + */ + @TableField(value = "activity_name") + private String activityName; + + /** + * + */ + @TableField(value = "activity_create_date") + private Date activityCreateDate; + + /** + * 开始时间 + */ + @TableField(value = "activity_start_time") + private Date activityStartTime; + + /** + * 结束时间 + */ + @TableField(value = "activity_end_time") + private Date activityEndTime; + + /** + * 活动状态 + */ + @TableField(value = "activity_status") + private Integer activityStatus; + + /** + * 创建时间 + */ + @TableField(value = "create_date") + private Date createDate; + + /** + * 更新时间 + */ + @TableField(value = "update_date") + private Date updateDate; +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityOrderStatistics.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityOrderStatistics.java new file mode 100644 index 000000000..e20663f3a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityOrderStatistics.java @@ -0,0 +1,16 @@ +package com.iformall.domain.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +@Data +public class WxVtwoActivityOrderStatistics implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer auditStatus; + private Integer count; + private BigDecimal sumAmount; +} diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRule.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRule.java new file mode 100644 index 000000000..93ff6da1c --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRule.java @@ -0,0 +1,37 @@ +package com.iformall.domain.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.iformall.domain.po.base.TenantEntity; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * 线下活动中奖规则 + */ +@Data +public class WxVtwoActivityRule implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 规则数组 + */ + private List ruleList; + + /** + * 金额限制 + */ + private BigDecimal limitAmount; + + /** + * 奖项单价(用来计算奖项数量) + */ + private BigDecimal awardAmount; + +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRuleDetail.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRuleDetail.java new file mode 100644 index 000000000..20b6537eb --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityRuleDetail.java @@ -0,0 +1,44 @@ +package com.iformall.domain.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * 线下活动中奖规则 + */ +@Data +public class WxVtwoActivityRuleDetail implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 限制最小金额 + */ + private BigDecimal minAmount; + + /** + * 限制最大金额 + */ + private BigDecimal maxAmount; + + /** + * 联单笔数 + */ + private Integer relatedCount; + + /** + * 获得的奖券数量 + */ + private Integer awardCount; + + /** + * 获得的奖项等级 + */ + private Integer awardGrade; + +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityTaxDeductionRule.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityTaxDeductionRule.java new file mode 100644 index 000000000..e38814e25 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoActivityTaxDeductionRule.java @@ -0,0 +1,26 @@ +package com.iformall.domain.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 线下活动中奖规则 + */ +@Data +public class WxVtwoActivityTaxDeductionRule implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 税点起征金额 + */ + private BigDecimal startingTax; + + /** + * 税点比例 + */ + private BigDecimal taxPoints; + +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderBusinessStatistics.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderBusinessStatistics.java new file mode 100644 index 000000000..5b4027e2b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderBusinessStatistics.java @@ -0,0 +1,21 @@ +package com.iformall.domain.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +@Data +public class WxVtwoOrderBusinessStatistics implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer businessId; + private String businessName; + + private Integer businessCount; + private BigDecimal sumAmount; + + private Double moneyRatio; + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderCountStatistics.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderCountStatistics.java new file mode 100644 index 000000000..9e93a76d0 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderCountStatistics.java @@ -0,0 +1,19 @@ +package com.iformall.domain.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +@Data +public class WxVtwoOrderCountStatistics implements Serializable { + + private static final long serialVersionUID = 1L; + + private String xTime; + + private Integer userCount; + private Integer orderCount; + private BigDecimal sumAmount; + private Integer merchantCount; +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityAwardMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityAwardMapper.java new file mode 100644 index 000000000..fbe07229b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityAwardMapper.java @@ -0,0 +1,25 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityAward; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_award(线下活动奖项)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:31 +* @Entity com.iformall.domain.po.WxVtwoActivityAward +*/ +public interface WxVtwoActivityAwardMapper extends CommonMapper { + + void insertList(@Param("awardList") List awardList); + + List findList(WxVtwoActivityAward activityAwardQ); +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantAwardMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantAwardMapper.java new file mode 100644 index 000000000..b68f4c1f4 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantAwardMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityGrantAward; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_award(线下活动发放奖励)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoActivityGrantAward +*/ +public interface WxVtwoActivityGrantAwardMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantExportMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantExportMapper.java new file mode 100644 index 000000000..f439564c0 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantExportMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityGrantExport; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_export(线下活动发放奖励导出)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoActivityGrantExport +*/ +public interface WxVtwoActivityGrantExportMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantMapper.java new file mode 100644 index 000000000..9858cf78a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityGrant; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant(线下活动发奖)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:31 +* @Entity com.iformall.domain.po.WxVtwoActivityGrant +*/ +public interface WxVtwoActivityGrantMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantOrderMapper.java new file mode 100644 index 000000000..1f11b61ae --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantOrderMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityGrantOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_order(线下活动发奖订单)】的数据库操作Mapper +* @createDate 2025-05-19 00:37:40 +* @Entity com.iformall.domain.po.WxVtwoActivityGrantOrder +*/ +public interface WxVtwoActivityGrantOrderMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantSettlementMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantSettlementMapper.java new file mode 100644 index 000000000..54a0971df --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityGrantSettlementMapper.java @@ -0,0 +1,21 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityGrantSettlement; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_settlement(线下活动发放奖励结算)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoActivityGrantSettlement +*/ +public interface WxVtwoActivityGrantSettlementMapper extends CommonMapper { + + Integer getOrderCount(WxVtwoActivityGrantSettlement record); + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityMerchantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityMerchantMapper.java new file mode 100644 index 000000000..cf18c3d73 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityMerchantMapper.java @@ -0,0 +1,27 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityMerchant; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_merchant(线下活动商户)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoActivityMerchant +*/ +public interface WxVtwoActivityMerchantMapper extends CommonMapper { + + List getMerchantIdList(@Param("activityId")Long activityId, @Param("tenantId")String tenantId); + + List findList(WxVtwoActivityMerchant record); + + void insertList(@Param("merchantList") List merchantList); +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityOrderMapper.java new file mode 100644 index 000000000..7b9af184b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivityOrderMapper.java @@ -0,0 +1,47 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.iformall.domain.vo.*; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_order(线下活动参与登记)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoActivityOrder +*/ +public interface WxVtwoActivityOrderMapper extends CommonMapper { + + List findList(WxVtwoActivityOrder record); + + WxVtwoActivityOrder selectById(@Param("id")Long id, @Param("tenantId")String tenantId); + + List auditStatusStatistics(WxVtwoActivityOrder record); + + void updateAuditStatus(WxVtwoActivityOrder record); + + WxVtwoActivityOrder selectLimitOne(WxVtwoActivityOrder record); + + Integer getCount(WxVtwoActivityOrder record); + + Integer getMerchantCount(WxVtwoActivityOrder record); + + void insertList(@Param("orderList")List orderList); + + void updateIncreasedPoints(WxVtwoActivityOrder record); + + WxVtwoOrderCountStatistics getCountStatistics(WxVtwoActivityOrder record); + + List getCountStatisticsChart(WxVtwoActivityOrder record); + + List getBusinessStatistics(WxVtwoActivityOrder record); + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivitySpecialTopicMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivitySpecialTopicMapper.java new file mode 100644 index 000000000..d9084abb4 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoActivitySpecialTopicMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivitySpecialTopic; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_special_topic(线下活动专题)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoActivitySpecialTopic +*/ +public interface WxVtwoActivitySpecialTopicMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoAmountGiftActivityMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoAmountGiftActivityMapper.java new file mode 100644 index 000000000..f3d10ffc9 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoAmountGiftActivityMapper.java @@ -0,0 +1,25 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoAmountGiftActivity; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import io.lettuce.core.dynamic.annotation.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_amount_gift_activity(线下满额赠礼活动)】的数据库操作Mapper +* @createDate 2025-05-19 00:37:40 +* @Entity com.iformall.domain.po.WxVtwoAmountGiftActivity +*/ +public interface WxVtwoAmountGiftActivityMapper extends CommonMapper { + + List findList(WxVtwoAmountGiftActivity amountGiftActivity); + + WxVtwoAmountGiftActivity selectById(@Param("id") Long id, @Param("tenantId")String tenantId); +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackActivityMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackActivityMapper.java new file mode 100644 index 000000000..fc6ea420a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackActivityMapper.java @@ -0,0 +1,26 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoAmountGiftActivity; +import com.iformall.domain.po.WxVtwoCashBackActivity; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import io.lettuce.core.dynamic.annotation.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_activity(线下返现活动)】的数据库操作Mapper +* @createDate 2025-05-19 00:37:40 +* @Entity com.iformall.domain.po.WxVtwoCashBackActivity +*/ +public interface WxVtwoCashBackActivityMapper extends CommonMapper { + + List findList(WxVtwoCashBackActivity cashBackActivity); + + WxVtwoCashBackActivity selectById(@Param("id") Long id, @Param("tenantId")String tenantId); +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackAwardMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackAwardMapper.java new file mode 100644 index 000000000..6d02ffd4f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackAwardMapper.java @@ -0,0 +1,26 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoActivityAward; +import com.iformall.domain.po.WxVtwoCashBackAward; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_award(线下返现活动奖项)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoCashBackAward +*/ +public interface WxVtwoCashBackAwardMapper extends CommonMapper { + + void insertList(@Param("awardList") List awardList); + + List findList(WxVtwoCashBackAward cashBackAward); +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantAwardMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantAwardMapper.java new file mode 100644 index 000000000..87fed5391 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantAwardMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoCashBackGrantAward; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_grant_award(线下返现活动发放奖励)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoCashBackGrantAward +*/ +public interface WxVtwoCashBackGrantAwardMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantMapper.java new file mode 100644 index 000000000..0014b8f79 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoCashBackGrantMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoCashBackGrant; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_grant(线下返现活动发奖)】的数据库操作Mapper +* @createDate 2025-05-16 00:37:32 +* @Entity com.iformall.domain.po.WxVtwoCashBackGrant +*/ +public interface WxVtwoCashBackGrantMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoPrizeDrawActivityMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoPrizeDrawActivityMapper.java new file mode 100644 index 000000000..a872f4453 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoPrizeDrawActivityMapper.java @@ -0,0 +1,25 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoPrizeDrawActivity; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import io.lettuce.core.dynamic.annotation.Param; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_prize_draw_activity(线下抽奖活动)】的数据库操作Mapper +* @createDate 2025-05-19 00:37:40 +* @Entity com.iformall.domain.po.WxVtwoPrizeDrawActivity +*/ +public interface WxVtwoPrizeDrawActivityMapper extends CommonMapper { + + List findList(WxVtwoPrizeDrawActivity prizeDrawActivity); + + WxVtwoPrizeDrawActivity selectById(@Param("id") Long id, @Param("tenantId")String tenantId); +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxVtwoSpecialTopicActivityMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoSpecialTopicActivityMapper.java new file mode 100644 index 000000000..e0fd7c71b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxVtwoSpecialTopicActivityMapper.java @@ -0,0 +1,19 @@ +package com.iformall.mapper; + +import com.iformall.common.CommonMapper; +import com.iformall.domain.po.WxVtwoSpecialTopicActivity; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_special_topic_activity(线下专题下的活动)】的数据库操作Mapper +* @createDate 2025-05-19 00:37:40 +* @Entity com.iformall.domain.po.WxVtwoSpecialTopicActivity +*/ +public interface WxVtwoSpecialTopicActivityMapper extends CommonMapper { + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityAwardService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityAwardService.java new file mode 100644 index 000000000..a9e9a66b5 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityAwardService.java @@ -0,0 +1,17 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityAward; +import com.baomidou.mybatisplus.extension.service.IService; +import com.iformall.domain.po.base.TenantEntity; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_award(线下活动奖项)】的数据库操作Service +* @createDate 2025-05-16 00:37:31 +*/ +public interface WxVtwoActivityAwardService extends IService { + + void saveFromActivity(TenantEntity tenantEntity, Long activityId, List awardList); +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantAwardService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantAwardService.java new file mode 100644 index 000000000..f19945b91 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantAwardService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityGrantAward; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_award(线下活动发放奖励)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoActivityGrantAwardService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantExportService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantExportService.java new file mode 100644 index 000000000..79c2bb3a1 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantExportService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityGrantExport; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_export(线下活动发放奖励导出)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoActivityGrantExportService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantOrderService.java new file mode 100644 index 000000000..c095aaffc --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantOrderService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityGrantOrder; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_order(线下活动发奖订单)】的数据库操作Service +* @createDate 2025-05-19 00:37:40 +*/ +public interface WxVtwoActivityGrantOrderService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantService.java new file mode 100644 index 000000000..62010e0cf --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityGrant; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant(线下活动发奖)】的数据库操作Service +* @createDate 2025-05-16 00:37:31 +*/ +public interface WxVtwoActivityGrantService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantSettlementService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantSettlementService.java new file mode 100644 index 000000000..d8038ba11 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantSettlementService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityGrantSettlement; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_settlement(线下活动发放奖励结算)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoActivityGrantSettlementService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityMerchantService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityMerchantService.java new file mode 100644 index 000000000..c5ccbc6a7 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityMerchantService.java @@ -0,0 +1,19 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityMerchant; +import com.baomidou.mybatisplus.extension.service.IService; +import com.iformall.domain.po.base.TenantEntity; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_merchant(线下活动商户)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoActivityMerchantService extends IService { + + void saveFromActivity(TenantEntity tenantEntity, Long activityId, List merchantIdList); + + List getActivityMerchantList(Long activityId, String tenantId); +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java new file mode 100644 index 000000000..834e70850 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivityOrder; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_order(线下活动参与登记)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoActivityOrderService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivitySpecialTopicService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivitySpecialTopicService.java new file mode 100644 index 000000000..ee91172aa --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivitySpecialTopicService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoActivitySpecialTopic; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_special_topic(线下活动专题)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoActivitySpecialTopicService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java new file mode 100644 index 000000000..d0f6c7d7b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java @@ -0,0 +1,19 @@ +package com.iformall.service; + +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.WxVtwoAmountGiftActivity; +import com.baomidou.mybatisplus.extension.service.IService; +import com.iformall.domain.po.WxVtwoPrizeDrawActivity; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_amount_gift_activity(线下满额赠礼活动)】的数据库操作Service +* @createDate 2025-05-19 00:37:40 +*/ +public interface WxVtwoAmountGiftActivityService extends IService { + + PageInfo listAsPage(WxVtwoAmountGiftActivity amountGiftActivity, Integer pageNum, Integer pageSize); + + WxVtwoAmountGiftActivity getInfoById(Long id, String tenantId); + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackActivityService.java new file mode 100644 index 000000000..b9fdfebb1 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackActivityService.java @@ -0,0 +1,19 @@ +package com.iformall.service; + +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.WxVtwoAmountGiftActivity; +import com.iformall.domain.po.WxVtwoCashBackActivity; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_activity(线下返现活动)】的数据库操作Service +* @createDate 2025-05-19 00:37:40 +*/ +public interface WxVtwoCashBackActivityService extends IService { + + PageInfo listAsPage(WxVtwoCashBackActivity cashBackActivity, Integer pageNum, Integer pageSize); + + WxVtwoCashBackActivity getInfoById(Long id, String tenantId); + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackAwardService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackAwardService.java new file mode 100644 index 000000000..d2b0d3f29 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackAwardService.java @@ -0,0 +1,18 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoCashBackActivity; +import com.iformall.domain.po.WxVtwoCashBackAward; +import com.baomidou.mybatisplus.extension.service.IService; +import com.iformall.domain.po.base.TenantEntity; + +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_award(线下返现活动奖项)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoCashBackAwardService extends IService { + + void saveFromActivity(TenantEntity tenantEntity, Long activityId, List amountRulesObject, List relatedRulesObject); +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantAwardService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantAwardService.java new file mode 100644 index 000000000..651f90b08 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantAwardService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoCashBackGrantAward; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_grant_award(线下返现活动发放奖励)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoCashBackGrantAwardService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantService.java new file mode 100644 index 000000000..0df527b6e --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoCashBackGrantService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoCashBackGrant; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_grant(线下返现活动发奖)】的数据库操作Service +* @createDate 2025-05-16 00:37:32 +*/ +public interface WxVtwoCashBackGrantService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoPrizeDrawActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoPrizeDrawActivityService.java new file mode 100644 index 000000000..ba5152404 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoPrizeDrawActivityService.java @@ -0,0 +1,17 @@ +package com.iformall.service; + +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.WxVtwoPrizeDrawActivity; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_prize_draw_activity(线下抽奖活动)】的数据库操作Service +* @createDate 2025-05-19 00:37:40 +*/ +public interface WxVtwoPrizeDrawActivityService extends IService { + + PageInfo listAsPage(WxVtwoPrizeDrawActivity prizeDrawActivity, Integer pageNum, Integer pageSize); + + WxVtwoPrizeDrawActivity getInfoById(Long id, String tenantId); +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoSpecialTopicActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoSpecialTopicActivityService.java new file mode 100644 index 000000000..d9a256880 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoSpecialTopicActivityService.java @@ -0,0 +1,13 @@ +package com.iformall.service; + +import com.iformall.domain.po.WxVtwoSpecialTopicActivity; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_special_topic_activity(线下专题下的活动)】的数据库操作Service +* @createDate 2025-05-19 00:37:40 +*/ +public interface WxVtwoSpecialTopicActivityService extends IService { + +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityAwardServiceImpl.java new file mode 100644 index 000000000..7bfb5d8ec --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityAwardServiceImpl.java @@ -0,0 +1,58 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.common.IdWorker; +import com.iformall.domain.po.WxOfflineActivityAwardsItem; +import com.iformall.domain.po.WxVtwoActivityAward; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumOfflineActivityAwardsModeType; +import com.iformall.enums.EnumOfflineActivityType; +import com.iformall.service.WxVtwoActivityAwardService; +import com.iformall.mapper.WxVtwoActivityAwardMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_award(线下活动奖项)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:31 +*/ +@Service +public class WxVtwoActivityAwardServiceImpl extends ServiceImpl + implements WxVtwoActivityAwardService{ + + @Autowired + private WxVtwoActivityAwardMapper wxVtwoActivityAwardMapper; + + @Override + public void saveFromActivity(TenantEntity tenantEntity, Long activityId, List awardList) { + WxVtwoActivityAward activityAwardDel = new WxVtwoActivityAward(); + activityAwardDel.updateTenantInfo(tenantEntity); + activityAwardDel.setActivityId(activityId); + wxVtwoActivityAwardMapper.delete(new QueryWrapper<>(activityAwardDel)); + + final IdWorker idWorker = IdWorker.get(); + Date now = new Date(); + for (WxVtwoActivityAward activityAward : awardList) { + if(activityAward.getId() == null){ + activityAward.setId(idWorker.nextId()); + } + activityAward.updateTenantInfo(tenantEntity); + activityAward.setActivityId(activityId); + if(activityAward.getCreateDate() == null){ + activityAward.setCreateDate(now); + } + activityAward.setUpdateDate(now); + } + wxVtwoActivityAwardMapper.insertList(awardList); + } +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantAwardServiceImpl.java new file mode 100644 index 000000000..3008a1bdb --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantAwardServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivityGrantAward; +import com.iformall.service.WxVtwoActivityGrantAwardService; +import com.iformall.mapper.WxVtwoActivityGrantAwardMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_award(线下活动发放奖励)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoActivityGrantAwardServiceImpl extends ServiceImpl + implements WxVtwoActivityGrantAwardService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantExportServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantExportServiceImpl.java new file mode 100644 index 000000000..68e87cb01 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantExportServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivityGrantExport; +import com.iformall.service.WxVtwoActivityGrantExportService; +import com.iformall.mapper.WxVtwoActivityGrantExportMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_export(线下活动发放奖励导出)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoActivityGrantExportServiceImpl extends ServiceImpl + implements WxVtwoActivityGrantExportService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantOrderServiceImpl.java new file mode 100644 index 000000000..d728db204 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantOrderServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivityGrantOrder; +import com.iformall.service.WxVtwoActivityGrantOrderService; +import com.iformall.mapper.WxVtwoActivityGrantOrderMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_order(线下活动发奖订单)】的数据库操作Service实现 +* @createDate 2025-05-19 00:37:40 +*/ +@Service +public class WxVtwoActivityGrantOrderServiceImpl extends ServiceImpl + implements WxVtwoActivityGrantOrderService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantServiceImpl.java new file mode 100644 index 000000000..2d0a1c68f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivityGrant; +import com.iformall.service.WxVtwoActivityGrantService; +import com.iformall.mapper.WxVtwoActivityGrantMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant(线下活动发奖)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:31 +*/ +@Service +public class WxVtwoActivityGrantServiceImpl extends ServiceImpl + implements WxVtwoActivityGrantService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantSettlementServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantSettlementServiceImpl.java new file mode 100644 index 000000000..d80a9213c --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantSettlementServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivityGrantSettlement; +import com.iformall.service.WxVtwoActivityGrantSettlementService; +import com.iformall.mapper.WxVtwoActivityGrantSettlementMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_grant_settlement(线下活动发放奖励结算)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoActivityGrantSettlementServiceImpl extends ServiceImpl + implements WxVtwoActivityGrantSettlementService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java new file mode 100644 index 000000000..4ccace442 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java @@ -0,0 +1,81 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.common.IdWorker; +import com.iformall.domain.po.WxMerchant; +import com.iformall.domain.po.WxOfflineActivityMerchant; +import com.iformall.domain.po.WxVtwoActivityMerchant; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumOfflineActivityMerchantType; +import com.iformall.enums.EnumYesOrNo; +import com.iformall.service.WxMerchantService; +import com.iformall.service.WxVtwoActivityMerchantService; +import com.iformall.mapper.WxVtwoActivityMerchantMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Map; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_merchant(线下活动商户)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoActivityMerchantServiceImpl extends ServiceImpl + implements WxVtwoActivityMerchantService{ + + @Autowired + private WxVtwoActivityMerchantMapper wxVtwoActivityMerchantMapper; + + @Autowired + private WxMerchantService wxMerchantService; + + @Override + public void saveFromActivity(TenantEntity tenantEntity, Long activityId, List merchantIdList) { + WxVtwoActivityMerchant activityMerchantDel = new WxVtwoActivityMerchant(); + activityMerchantDel.updateTenantInfo(tenantEntity); + activityMerchantDel.setActivityId(activityId); + wxVtwoActivityMerchantMapper.delete(new QueryWrapper<>(activityMerchantDel)); + + if(merchantIdList == null || merchantIdList.isEmpty()){ + return; + } + List merchantList = new ArrayList<>(); + final IdWorker idWorker = IdWorker.get(); + for (Long merchantId : merchantIdList) { + WxVtwoActivityMerchant activityMerchant = new WxVtwoActivityMerchant(); + activityMerchant.setId(idWorker.nextId()); + activityMerchant.updateTenantInfo(tenantEntity); + activityMerchant.setActivityId(activityId); + activityMerchant.setMerchantId(merchantId); + merchantList.add(activityMerchant); + } + wxVtwoActivityMerchantMapper.insertList(merchantList); + } + + @Override + public List getActivityMerchantList(Long activityId, String tenantId) { + WxVtwoActivityMerchant activityMerchantQ = new WxVtwoActivityMerchant(); + activityMerchantQ.setTenantId(tenantId); + activityMerchantQ.setActivityId(activityId); + List activityMerchantList = wxVtwoActivityMerchantMapper.findList(activityMerchantQ); + + WxMerchant merchantQ = new WxMerchant(); + merchantQ.setTenantId(tenantId); + Map merchantMap = wxMerchantService.findMerchantMap(merchantQ); + + for (WxVtwoActivityMerchant activityMerchant : activityMerchantList) { + activityMerchant.setMerchant(merchantMap.get(activityMerchant.getMerchantId())); + } + return activityMerchantList; + } +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java new file mode 100644 index 000000000..982d86a5c --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivityOrder; +import com.iformall.service.WxVtwoActivityOrderService; +import com.iformall.mapper.WxVtwoActivityOrderMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_order(线下活动参与登记)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoActivityOrderServiceImpl extends ServiceImpl + implements WxVtwoActivityOrderService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivitySpecialTopicServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivitySpecialTopicServiceImpl.java new file mode 100644 index 000000000..1df7b4407 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivitySpecialTopicServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoActivitySpecialTopic; +import com.iformall.service.WxVtwoActivitySpecialTopicService; +import com.iformall.mapper.WxVtwoActivitySpecialTopicMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_activity_special_topic(线下活动专题)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoActivitySpecialTopicServiceImpl extends ServiceImpl + implements WxVtwoActivitySpecialTopicService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoAmountGiftActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoAmountGiftActivityServiceImpl.java new file mode 100644 index 000000000..00ca3ab2f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoAmountGiftActivityServiceImpl.java @@ -0,0 +1,198 @@ +package com.iformall.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.iformall.common.IdWorker; +import com.iformall.domain.po.*; +import com.iformall.domain.vo.WxVtwoActivityOrderStatistics; +import com.iformall.domain.vo.WxVtwoActivityRule; +import com.iformall.domain.vo.WxVtwoActivityRuleDetail; +import com.iformall.enums.EnumOfflineActivityMerchantType; +import com.iformall.enums.EnumOfflineActivityRecordStatus; +import com.iformall.enums.EnumOfflineActivityStatus; +import com.iformall.enums.EnumYesOrNo; +import com.iformall.mapper.*; +import com.iformall.service.WxVtwoActivityAwardService; +import com.iformall.service.WxVtwoActivityMerchantService; +import com.iformall.service.WxVtwoAmountGiftActivityService; +import jodd.util.StringUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_amount_gift_activity(线下满额赠礼活动)】的数据库操作Service实现 +* @createDate 2025-05-19 00:37:40 +*/ +@Service +public class WxVtwoAmountGiftActivityServiceImpl extends ServiceImpl + implements WxVtwoAmountGiftActivityService{ + + @Autowired + private WxVtwoAmountGiftActivityMapper wxVtwoAmountGiftActivityMapper; + + @Autowired + private WxVtwoActivityAwardMapper wxVtwoActivityAwardMapper; + + @Autowired + private WxVtwoActivityMerchantMapper wxVtwoActivityMerchantMapper; + + @Autowired + private WxVtwoActivityOrderMapper wxVtwoActivityOrderMapper; + + @Autowired + private WxVtwoActivityGrantSettlementMapper wxVtwoActivityGrantSettlementMapper; + + @Autowired + private WxVtwoActivityAwardService wxVtwoActivityAwardService; + + @Autowired + private WxVtwoActivityMerchantService wxVtwoActivityMerchantService; + + @Override + public PageInfo listAsPage(WxVtwoAmountGiftActivity amountGiftActivity, Integer pageNum, Integer pageSize) { + handlerQuery(amountGiftActivity); + PageInfo activityPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxVtwoAmountGiftActivityMapper.findList(amountGiftActivity)); + handlerReturnList(activityPageInfo.getList()); + return activityPageInfo; + } + + private void handlerQuery(WxVtwoAmountGiftActivity amountGiftActivity) { + if (null != amountGiftActivity.getStatus()) { + //已上架 + if(EnumOfflineActivityStatus.ON_LINE.getCode().equals(amountGiftActivity.getStatus())){ + amountGiftActivity.setValidStatus(EnumYesOrNo.NO.getCode()); + } + //已过期 + else if(EnumOfflineActivityStatus.EXPIRE.getCode().equals(amountGiftActivity.getStatus())){ + amountGiftActivity.setStatus(null); + amountGiftActivity.setValidStatus(EnumYesOrNo.YES.getCode()); + } + } + } + + private void handlerReturnList(List list) { + if (null != list && !list.isEmpty()) { + Date now = new Date(); + for (WxVtwoAmountGiftActivity activity : list) { + if(now.after(activity.getEndTime())){ + activity.setStatus(EnumOfflineActivityStatus.EXPIRE.getCode()); + } + //参与订单数 + WxVtwoActivityOrder activityOrderQ = new WxVtwoActivityOrder(); + activityOrderQ.updateTenantInfo(activity); + activityOrderQ.setCreateDateBegin(activity.getStartTime()); + activityOrderQ.setCreateDateEnd(activity.getEndTime()); + if(EnumOfflineActivityMerchantType.ADD.getCode().equals(activity.getMerchantRule())){ + List merchantIds = wxVtwoActivityMerchantMapper.getMerchantIdList(activity.getId(), activity.getTenantId()); + activityOrderQ.setMerchantIdList(merchantIds); + }else if(EnumOfflineActivityMerchantType.UN_ADD.getCode().equals(activity.getMerchantRule())){ + List merchantIds = wxVtwoActivityMerchantMapper.getMerchantIdList(activity.getId(), activity.getTenantId()); + activityOrderQ.setNotMerchantIdList(merchantIds); + } + List auditStatusStatistics = wxVtwoActivityOrderMapper.auditStatusStatistics(activityOrderQ); + Integer audting = 0, audi_success = 0, audt_fail = 0, invalid = 0; + for(WxVtwoActivityOrderStatistics statistics : auditStatusStatistics){ + if(EnumOfflineActivityRecordStatus.AUDTING.getCode().equals(statistics.getAuditStatus())){ + audting = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.AUDI_SUCCESS.getCode().equals(statistics.getAuditStatus())) { + audi_success = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { + audt_fail = statistics.getCount(); + }else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { + invalid = statistics.getCount(); + } + } + activity.setOrderCount(audting+audi_success+audt_fail+invalid); + activity.setWaitOrderCount(audting); + activity.setSuccessOrderCount(audi_success); + + //参与商户数 + activity.setMershantCount(wxVtwoActivityOrderMapper.getMerchantCount(activityOrderQ)); + + //发放订单数量 + WxVtwoActivityGrantSettlement grantSettlementQ = new WxVtwoActivityGrantSettlement(); + grantSettlementQ.updateTenantInfo(activity); + grantSettlementQ.setActivityId(activity.getId()); + grantSettlementQ.setStatus(EnumYesOrNo.YES.getCode()); + activity.setGrantOrderCount(wxVtwoActivityGrantSettlementMapper.getOrderCount(grantSettlementQ)); + + } + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveOrUpdate(WxVtwoAmountGiftActivity amountGiftActivity) { + handlerActivityRules(amountGiftActivity); + Date now = new Date(); + if(amountGiftActivity.getId() == null){ + final IdWorker idWorker = IdWorker.get(); + amountGiftActivity.setId(idWorker.nextId()); + amountGiftActivity.setCreateDate(now); + amountGiftActivity.setCreateDate(now); + amountGiftActivity.setStatus(EnumOfflineActivityStatus.OFF_LINE.getCode()); + wxVtwoAmountGiftActivityMapper.insert(amountGiftActivity); + } + else{ + amountGiftActivity.setUpdateDate(now); + wxVtwoAmountGiftActivityMapper.updateById(amountGiftActivity); + } + if(amountGiftActivity.getAwardList() != null && !amountGiftActivity.getAwardList().isEmpty()){ + wxVtwoActivityAwardService.saveFromActivity(amountGiftActivity,amountGiftActivity.getId(),amountGiftActivity.getAwardList()); + } + + if(amountGiftActivity.getMerchantRule() != null){ + if(EnumOfflineActivityMerchantType.ALL.getCode().equals(amountGiftActivity.getMerchantRule())){ + amountGiftActivity.setMerchantIdList(null); + } + wxVtwoActivityMerchantService.saveFromActivity(amountGiftActivity,amountGiftActivity.getId(),amountGiftActivity.getMerchantIdList()); + } + return true; + } + + private void handlerActivityRules(WxVtwoAmountGiftActivity amountGiftActivity) { + if(amountGiftActivity.getAmountRulesObject() != null){ + amountGiftActivity.setAmountRules(JSONObject.toJSONString(amountGiftActivity.getAmountRulesObject())); + } + if(amountGiftActivity.getRelatedRulesObject() != null){ + amountGiftActivity.setRelatedRules(JSONObject.toJSONString(amountGiftActivity.getRelatedRulesObject())); + } + } + + @Override + public WxVtwoAmountGiftActivity getInfoById(Long id, String tenantId) { + WxVtwoAmountGiftActivity amountGiftActivity = wxVtwoAmountGiftActivityMapper.selectById(id, tenantId); + if (amountGiftActivity == null) { + return null; + } + if(StringUtil.isNotBlank(amountGiftActivity.getAmountRules())){ + amountGiftActivity.setAmountRulesObject(JSONObject.parseArray(amountGiftActivity.getAmountRules(), WxVtwoActivityRuleDetail.class)); + } + if(StringUtil.isNotBlank(amountGiftActivity.getRelatedRules())){ + amountGiftActivity.setRelatedRulesObject(JSONObject.parseArray(amountGiftActivity.getRelatedRules(), WxVtwoActivityRuleDetail.class)); + } + + WxVtwoActivityAward activityAwardQ = new WxVtwoActivityAward(); + activityAwardQ.setTenantId(tenantId); + activityAwardQ.setActivityId(id); + List activityAwardList = wxVtwoActivityAwardMapper.findList(activityAwardQ); + amountGiftActivity.setAwardList(activityAwardList); + if(!EnumOfflineActivityMerchantType.ALL.getCode().equals(amountGiftActivity.getMerchantRule())){ + List activityMerchantList = wxVtwoActivityMerchantService.getActivityMerchantList(id,tenantId); + amountGiftActivity.setMerchanList(activityMerchantList); + } + return amountGiftActivity; + } + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackActivityServiceImpl.java new file mode 100644 index 000000000..9439eac32 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackActivityServiceImpl.java @@ -0,0 +1,186 @@ +package com.iformall.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.iformall.common.IdWorker; +import com.iformall.domain.po.*; +import com.iformall.domain.vo.WxVtwoActivityOrderStatistics; +import com.iformall.domain.vo.WxVtwoActivityRuleDetail; +import com.iformall.enums.*; +import com.iformall.mapper.*; +import com.iformall.service.WxVtwoActivityAwardService; +import com.iformall.service.WxVtwoActivityMerchantService; +import com.iformall.service.WxVtwoCashBackActivityService; +import com.iformall.service.WxVtwoCashBackAwardService; +import jodd.util.StringUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_activity(线下返现活动)】的数据库操作Service实现 +* @createDate 2025-05-19 00:37:40 +*/ +@Service +public class WxVtwoCashBackActivityServiceImpl extends ServiceImpl + implements WxVtwoCashBackActivityService{ + + @Autowired + private WxVtwoCashBackActivityMapper wxVtwoCashBackActivityMapper; + + @Autowired + private WxVtwoCashBackAwardMapper wxVtwoCashBackAwardMapper; + + @Autowired + private WxVtwoActivityMerchantMapper wxVtwoActivityMerchantMapper; + + @Autowired + private WxVtwoActivityOrderMapper wxVtwoActivityOrderMapper; + + @Autowired + private WxVtwoActivityGrantSettlementMapper wxVtwoActivityGrantSettlementMapper; + + @Autowired + private WxVtwoCashBackAwardService wxVtwoCashBackAwardService; + + @Autowired + private WxVtwoActivityMerchantService wxVtwoActivityMerchantService; + + @Override + public PageInfo listAsPage(WxVtwoCashBackActivity cashBackActivity, Integer pageNum, Integer pageSize) { + handlerQuery(cashBackActivity); + PageInfo activityPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxVtwoCashBackActivityMapper.findList(cashBackActivity)); + handlerReturnList(activityPageInfo.getList()); + return activityPageInfo; + } + + private void handlerQuery(WxVtwoCashBackActivity cashBackActivity) { + if (null != cashBackActivity.getStatus()) { + //已上架 + if(EnumOfflineActivityStatus.ON_LINE.getCode().equals(cashBackActivity.getStatus())){ + cashBackActivity.setValidStatus(EnumYesOrNo.NO.getCode()); + } + //已过期 + else if(EnumOfflineActivityStatus.EXPIRE.getCode().equals(cashBackActivity.getStatus())){ + cashBackActivity.setStatus(null); + cashBackActivity.setValidStatus(EnumYesOrNo.YES.getCode()); + } + } + } + + private void handlerReturnList(List list) { + if (null != list && !list.isEmpty()) { + Date now = new Date(); + for (WxVtwoCashBackActivity activity : list) { + if(now.after(activity.getEndTime())){ + activity.setStatus(EnumOfflineActivityStatus.EXPIRE.getCode()); + } + //参与订单数 + WxVtwoActivityOrder activityOrderQ = new WxVtwoActivityOrder(); + activityOrderQ.updateTenantInfo(activity); + activityOrderQ.setCreateDateBegin(activity.getStartTime()); + activityOrderQ.setCreateDateEnd(activity.getEndTime()); + if(EnumOfflineActivityMerchantType.ADD.getCode().equals(activity.getMerchantRule())){ + List merchantIds = wxVtwoActivityMerchantMapper.getMerchantIdList(activity.getId(), activity.getTenantId()); + activityOrderQ.setMerchantIdList(merchantIds); + }else if(EnumOfflineActivityMerchantType.UN_ADD.getCode().equals(activity.getMerchantRule())){ + List merchantIds = wxVtwoActivityMerchantMapper.getMerchantIdList(activity.getId(), activity.getTenantId()); + activityOrderQ.setNotMerchantIdList(merchantIds); + } + List auditStatusStatistics = wxVtwoActivityOrderMapper.auditStatusStatistics(activityOrderQ); + Integer audting = 0, audi_success = 0, audt_fail = 0, invalid = 0; + for(WxVtwoActivityOrderStatistics statistics : auditStatusStatistics){ + if(EnumOfflineActivityRecordStatus.AUDTING.getCode().equals(statistics.getAuditStatus())){ + audting = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.AUDI_SUCCESS.getCode().equals(statistics.getAuditStatus())) { + audi_success = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { + audt_fail = statistics.getCount(); + }else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { + invalid = statistics.getCount(); + } + } + activity.setOrderCount(audting+audi_success+audt_fail+invalid); + activity.setWaitOrderCount(audting); + activity.setSuccessOrderCount(audi_success); + + //参与商户数 + activity.setMershantCount(wxVtwoActivityOrderMapper.getMerchantCount(activityOrderQ)); + + //发放订单数量 + WxVtwoActivityGrantSettlement grantSettlementQ = new WxVtwoActivityGrantSettlement(); + grantSettlementQ.updateTenantInfo(activity); + grantSettlementQ.setActivityId(activity.getId()); + grantSettlementQ.setStatus(EnumYesOrNo.YES.getCode()); + activity.setGrantOrderCount(wxVtwoActivityGrantSettlementMapper.getOrderCount(grantSettlementQ)); + + } + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveOrUpdate(WxVtwoCashBackActivity cashBackActivity) { + Date now = new Date(); + if(cashBackActivity.getId() == null){ + final IdWorker idWorker = IdWorker.get(); + cashBackActivity.setId(idWorker.nextId()); + cashBackActivity.setCreateDate(now); + cashBackActivity.setCreateDate(now); + cashBackActivity.setStatus(EnumOfflineActivityStatus.OFF_LINE.getCode()); + wxVtwoCashBackActivityMapper.insert(cashBackActivity); + } + else{ + cashBackActivity.setUpdateDate(now); + wxVtwoCashBackActivityMapper.updateById(cashBackActivity); + } + if((cashBackActivity.getAmountRulesObject()!=null && !cashBackActivity.getAmountRulesObject().isEmpty()) + || (cashBackActivity.getRelatedRulesObject()!=null && !cashBackActivity.getRelatedRulesObject().isEmpty())){ + wxVtwoCashBackAwardService.saveFromActivity(cashBackActivity,cashBackActivity.getId(),cashBackActivity.getAmountRulesObject(),cashBackActivity.getRelatedRulesObject()); + } + + if(cashBackActivity.getMerchantRule() != null){ + if(EnumOfflineActivityMerchantType.ALL.getCode().equals(cashBackActivity.getMerchantRule())){ + cashBackActivity.setMerchantIdList(null); + } + wxVtwoActivityMerchantService.saveFromActivity(cashBackActivity,cashBackActivity.getId(),cashBackActivity.getMerchantIdList()); + } + return true; + } + + @Override + public WxVtwoCashBackActivity getInfoById(Long id, String tenantId) { + WxVtwoCashBackActivity cashBackActivity = wxVtwoCashBackActivityMapper.selectById(id, tenantId); + if (cashBackActivity == null) { + return null; + } + + WxVtwoCashBackAward cashBackAwardQ = new WxVtwoCashBackAward(); + cashBackAwardQ.setTenantId(tenantId); + cashBackAwardQ.setActivityId(id); + List activityAwardList = wxVtwoCashBackAwardMapper.findList(cashBackAwardQ); + Map> activityAwardMap = activityAwardList.stream().collect(Collectors.groupingBy(WxVtwoCashBackAward::getModelType)); + cashBackActivity.setAmountRulesObject(activityAwardMap.get(EnumOfflineActivityAwardsModeType.AMOUNT.getCode())); + cashBackActivity.setRelatedRulesObject(activityAwardMap.get(EnumOfflineActivityAwardsModeType.COUNT.getCode())); + + if(!EnumOfflineActivityMerchantType.ALL.getCode().equals(cashBackActivity.getMerchantRule())){ + List activityMerchantList = wxVtwoActivityMerchantService.getActivityMerchantList(id,tenantId); + cashBackActivity.setMerchanList(activityMerchantList); + } + return cashBackActivity; + } + + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackAwardServiceImpl.java new file mode 100644 index 000000000..6a502da7a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackAwardServiceImpl.java @@ -0,0 +1,78 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.common.IdWorker; +import com.iformall.domain.po.WxVtwoActivityAward; +import com.iformall.domain.po.WxVtwoCashBackAward; +import com.iformall.domain.po.base.TenantEntity; +import com.iformall.enums.EnumOfflineActivityAwardsModeType; +import com.iformall.service.WxVtwoCashBackAwardService; +import com.iformall.mapper.WxVtwoCashBackAwardMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_award(线下返现活动奖项)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoCashBackAwardServiceImpl extends ServiceImpl + implements WxVtwoCashBackAwardService{ + + @Autowired + private WxVtwoCashBackAwardMapper wxVtwoCashBackAwardMapper; + + @Override + public void saveFromActivity(TenantEntity tenantEntity, Long activityId, List amountRulesObject, List relatedRulesObject) { + WxVtwoCashBackAward activityAwardDel = new WxVtwoCashBackAward(); + activityAwardDel.updateTenantInfo(tenantEntity); + activityAwardDel.setActivityId(activityId); + wxVtwoCashBackAwardMapper.delete(new QueryWrapper<>(activityAwardDel)); + + List awardList = new ArrayList<>(); + final IdWorker idWorker = IdWorker.get(); + Date now = new Date(); + if(amountRulesObject != null && !amountRulesObject.isEmpty()) { + for (WxVtwoCashBackAward activityAward : amountRulesObject) { + if(activityAward.getId() == null){ + activityAward.setId(idWorker.nextId()); + } + activityAward.updateTenantInfo(tenantEntity); + activityAward.setActivityId(activityId); + activityAward.setModelType(EnumOfflineActivityAwardsModeType.AMOUNT.getCode()); + if(activityAward.getCreateDate() == null){ + activityAward.setCreateDate(now); + } + activityAward.setUpdateDate(now); + } + awardList.addAll(amountRulesObject); + } + if(relatedRulesObject != null && !relatedRulesObject.isEmpty()) { + for (WxVtwoCashBackAward activityAward : relatedRulesObject) { + if(activityAward.getId() == null){ + activityAward.setId(idWorker.nextId()); + } + activityAward.updateTenantInfo(tenantEntity); + activityAward.setActivityId(activityId); + activityAward.setModelType(EnumOfflineActivityAwardsModeType.COUNT.getCode()); + if(activityAward.getCreateDate() == null){ + activityAward.setCreateDate(now); + } + activityAward.setUpdateDate(now); + } + awardList.addAll(relatedRulesObject); + } + + wxVtwoCashBackAwardMapper.insertList(awardList); + } +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantAwardServiceImpl.java new file mode 100644 index 000000000..bc5f36931 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantAwardServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoCashBackGrantAward; +import com.iformall.service.WxVtwoCashBackGrantAwardService; +import com.iformall.mapper.WxVtwoCashBackGrantAwardMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_grant_award(线下返现活动发放奖励)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoCashBackGrantAwardServiceImpl extends ServiceImpl + implements WxVtwoCashBackGrantAwardService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantServiceImpl.java new file mode 100644 index 000000000..974061879 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoCashBackGrantServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoCashBackGrant; +import com.iformall.service.WxVtwoCashBackGrantService; +import com.iformall.mapper.WxVtwoCashBackGrantMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_cash_back_grant(线下返现活动发奖)】的数据库操作Service实现 +* @createDate 2025-05-16 00:37:32 +*/ +@Service +public class WxVtwoCashBackGrantServiceImpl extends ServiceImpl + implements WxVtwoCashBackGrantService{ + +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoPrizeDrawActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoPrizeDrawActivityServiceImpl.java new file mode 100644 index 000000000..8d554c17b --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoPrizeDrawActivityServiceImpl.java @@ -0,0 +1,202 @@ +package com.iformall.service.impl; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +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; +import com.iformall.common.IdWorker; +import com.iformall.domain.po.*; +import com.iformall.domain.vo.OfflineActivityRecordStatistics; +import com.iformall.domain.vo.WxVtwoActivityOrderStatistics; +import com.iformall.domain.vo.WxVtwoActivityRule; +import com.iformall.domain.vo.WxVtwoActivityRuleDetail; +import com.iformall.enums.EnumOfflineActivityMerchantType; +import com.iformall.enums.EnumOfflineActivityRecordStatus; +import com.iformall.enums.EnumOfflineActivityStatus; +import com.iformall.enums.EnumYesOrNo; +import com.iformall.mapper.*; +import com.iformall.service.WxVtwoActivityAwardService; +import com.iformall.service.WxVtwoActivityMerchantService; +import com.iformall.service.WxVtwoPrizeDrawActivityService; +import jodd.util.StringUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_prize_draw_activity(线下抽奖活动)】的数据库操作Service实现 +* @createDate 2025-05-19 00:37:40 +*/ +@Service +public class WxVtwoPrizeDrawActivityServiceImpl extends ServiceImpl + implements WxVtwoPrizeDrawActivityService{ + + @Autowired + private WxVtwoPrizeDrawActivityMapper wxVtwoPrizeDrawActivityMapper; + + @Autowired + private WxVtwoActivityAwardMapper wxVtwoActivityAwardMapper; + + @Autowired + private WxVtwoActivityMerchantMapper wxVtwoActivityMerchantMapper; + + @Autowired + private WxVtwoActivityOrderMapper wxVtwoActivityOrderMapper; + + @Autowired + private WxVtwoActivityGrantSettlementMapper wxVtwoActivityGrantSettlementMapper; + + @Autowired + private WxVtwoActivityAwardService wxVtwoActivityAwardService; + + @Autowired + private WxVtwoActivityMerchantService wxVtwoActivityMerchantService; + + + @Override + public PageInfo listAsPage(WxVtwoPrizeDrawActivity prizeDrawActivity, Integer pageNum, Integer pageSize) { + handlerQuery(prizeDrawActivity); + PageInfo activityPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxVtwoPrizeDrawActivityMapper.findList(prizeDrawActivity)); + handlerReturnList(activityPageInfo.getList()); + return activityPageInfo; + } + + private void handlerQuery(WxVtwoPrizeDrawActivity prizeDrawActivity) { + if (null != prizeDrawActivity.getStatus()) { + //已上架 + if(EnumOfflineActivityStatus.ON_LINE.getCode().equals(prizeDrawActivity.getStatus())){ + prizeDrawActivity.setValidStatus(EnumYesOrNo.NO.getCode()); + } + //已过期 + else if(EnumOfflineActivityStatus.EXPIRE.getCode().equals(prizeDrawActivity.getStatus())){ + prizeDrawActivity.setStatus(null); + prizeDrawActivity.setValidStatus(EnumYesOrNo.YES.getCode()); + } + } + } + + private void handlerReturnList(List list) { + if (null != list && !list.isEmpty()) { + Date now = new Date(); + for (WxVtwoPrizeDrawActivity activity : list) { + if(now.after(activity.getEndTime())){ + activity.setStatus(EnumOfflineActivityStatus.EXPIRE.getCode()); + } + //参与订单数 + WxVtwoActivityOrder activityOrderQ = new WxVtwoActivityOrder(); + activityOrderQ.updateTenantInfo(activity); + activityOrderQ.setCreateDateBegin(activity.getStartTime()); + activityOrderQ.setCreateDateEnd(activity.getEndTime()); + if(EnumOfflineActivityMerchantType.ADD.getCode().equals(activity.getMerchantRule())){ + List merchantIds = wxVtwoActivityMerchantMapper.getMerchantIdList(activity.getId(), activity.getTenantId()); + activityOrderQ.setMerchantIdList(merchantIds); + }else if(EnumOfflineActivityMerchantType.UN_ADD.getCode().equals(activity.getMerchantRule())){ + List merchantIds = wxVtwoActivityMerchantMapper.getMerchantIdList(activity.getId(), activity.getTenantId()); + activityOrderQ.setNotMerchantIdList(merchantIds); + } + List auditStatusStatistics = wxVtwoActivityOrderMapper.auditStatusStatistics(activityOrderQ); + Integer audting = 0, audi_success = 0, audt_fail = 0, invalid = 0; + for(WxVtwoActivityOrderStatistics statistics : auditStatusStatistics){ + if(EnumOfflineActivityRecordStatus.AUDTING.getCode().equals(statistics.getAuditStatus())){ + audting = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.AUDI_SUCCESS.getCode().equals(statistics.getAuditStatus())) { + audi_success = statistics.getCount(); + } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { + audt_fail = statistics.getCount(); + }else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { + invalid = statistics.getCount(); + } + } + activity.setOrderCount(audting+audi_success+audt_fail+invalid); + activity.setWaitOrderCount(audting); + activity.setSuccessOrderCount(audi_success); + + //参与商户数 + activity.setMershantCount(wxVtwoActivityOrderMapper.getMerchantCount(activityOrderQ)); + + //发放订单数量 + WxVtwoActivityGrantSettlement grantSettlementQ = new WxVtwoActivityGrantSettlement(); + grantSettlementQ.updateTenantInfo(activity); + grantSettlementQ.setActivityId(activity.getId()); + grantSettlementQ.setStatus(EnumYesOrNo.YES.getCode()); + activity.setGrantOrderCount(wxVtwoActivityGrantSettlementMapper.getOrderCount(grantSettlementQ)); + + } + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveOrUpdate(WxVtwoPrizeDrawActivity prizeDrawActivity) { + handlerActivityRules(prizeDrawActivity); + Date now = new Date(); + if(prizeDrawActivity.getId() == null){ + final IdWorker idWorker = IdWorker.get(); + prizeDrawActivity.setId(idWorker.nextId()); + prizeDrawActivity.setCreateDate(now); + prizeDrawActivity.setCreateDate(now); + prizeDrawActivity.setStatus(EnumOfflineActivityStatus.OFF_LINE.getCode()); + wxVtwoPrizeDrawActivityMapper.insert(prizeDrawActivity); + } + else{ + prizeDrawActivity.setUpdateDate(now); + wxVtwoPrizeDrawActivityMapper.updateById(prizeDrawActivity); + } + if(prizeDrawActivity.getAwardList() != null && !prizeDrawActivity.getAwardList().isEmpty()){ + wxVtwoActivityAwardService.saveFromActivity(prizeDrawActivity,prizeDrawActivity.getId(),prizeDrawActivity.getAwardList()); + } + + if(prizeDrawActivity.getMerchantRule() != null){ + if(EnumOfflineActivityMerchantType.ALL.getCode().equals(prizeDrawActivity.getMerchantRule())){ + prizeDrawActivity.setMerchantIdList(null); + } + wxVtwoActivityMerchantService.saveFromActivity(prizeDrawActivity,prizeDrawActivity.getId(),prizeDrawActivity.getMerchantIdList()); + } + return true; + } + + private void handlerActivityRules(WxVtwoPrizeDrawActivity prizeDrawActivity) { + if(prizeDrawActivity.getAmountRulesObject() != null){ + prizeDrawActivity.setAmountRules(JSONObject.toJSONString(prizeDrawActivity.getAmountRulesObject())); + } + if(prizeDrawActivity.getRelatedRulesObject() != null){ + prizeDrawActivity.setRelatedRules(JSONObject.toJSONString(prizeDrawActivity.getRelatedRulesObject())); + } + } + + @Override + public WxVtwoPrizeDrawActivity getInfoById(Long id, String tenantId) { + WxVtwoPrizeDrawActivity prizeDrawActivity = wxVtwoPrizeDrawActivityMapper.selectById(id, tenantId); + if (prizeDrawActivity == null) { + return null; + } + if(StringUtil.isNotBlank(prizeDrawActivity.getAmountRules())){ + prizeDrawActivity.setAmountRulesObject(JSONObject.parseObject(prizeDrawActivity.getAmountRules(), WxVtwoActivityRule.class)); + } + if(StringUtil.isNotBlank(prizeDrawActivity.getRelatedRules())){ + prizeDrawActivity.setRelatedRulesObject(JSONObject.parseArray(prizeDrawActivity.getRelatedRules(), WxVtwoActivityRuleDetail.class)); + } + + WxVtwoActivityAward activityAwardQ = new WxVtwoActivityAward(); + activityAwardQ.setTenantId(tenantId); + activityAwardQ.setActivityId(id); + List activityAwardList = wxVtwoActivityAwardMapper.findList(activityAwardQ); + prizeDrawActivity.setAwardList(activityAwardList); + if(!EnumOfflineActivityMerchantType.ALL.getCode().equals(prizeDrawActivity.getMerchantRule())){ + List activityMerchantList = wxVtwoActivityMerchantService.getActivityMerchantList(id,tenantId); + prizeDrawActivity.setMerchanList(activityMerchantList); + } + return prizeDrawActivity; + } +} + + + + diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoSpecialTopicActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoSpecialTopicActivityServiceImpl.java new file mode 100644 index 000000000..46e7352c3 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoSpecialTopicActivityServiceImpl.java @@ -0,0 +1,22 @@ +package com.iformall.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.iformall.domain.po.WxVtwoSpecialTopicActivity; +import com.iformall.service.WxVtwoSpecialTopicActivityService; +import com.iformall.mapper.WxVtwoSpecialTopicActivityMapper; +import org.springframework.stereotype.Service; + +/** +* @author xiaohu +* @description 针对表【wx_vtwo_special_topic_activity(线下专题下的活动)】的数据库操作Service实现 +* @createDate 2025-05-19 00:37:40 +*/ +@Service +public class WxVtwoSpecialTopicActivityServiceImpl extends ServiceImpl + implements WxVtwoSpecialTopicActivityService{ + +} + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityAwardMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityAwardMapper.xml new file mode 100644 index 000000000..abe246a6a --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityAwardMapper.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,grade,name, + price,share_rule,mall_share_rate, + merchant_share_rate,create_date,update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `grade` = #{grade} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + insert into wx_vtwo_activity_award + (id, + activity_id,grade,name, + price,share_rule,mall_share_rate, + merchant_share_rate,create_date,update_date) + values + + (#{item.id,jdbcType=BIGINT}, + #{item.activityId,jdbcType=BIGINT},#{item.grade,jdbcType=INTEGER},#{item.name,jdbcType=VARCHAR}, + #{item.price,jdbcType=DECIMAL},#{item.shareRule,jdbcType=SMALLINT},#{item.mallShareRate,jdbcType=DECIMAL}, + #{item.merchantShareRate,jdbcType=DECIMAL},#{item.createDate,jdbcType=TIMESTAMP},#{item.updateDate,jdbcType=TIMESTAMP}) + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantAwardMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantAwardMapper.xml new file mode 100644 index 000000000..037fb6ac0 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantAwardMapper.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,activity_name,grant_id, + order_id,order_amount,mode_type, + min_amount,max_amount,related_count, + award_id,award_grade,award_name, + award_price,award_count,grant_price, + money_rule,mall_share_rate,merchant_share_rate, + status,create_date,update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `order_id` = #{orderId} + + + and `grant_id` = #{grantId} + + + and `mode_type` = #{modeType} + + + and `award_id` = #{awardId} + + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantExportMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantExportMapper.xml new file mode 100644 index 000000000..21030bdd9 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantExportMapper.xml @@ -0,0 +1,113 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,order_id,order_no, + order_amount,merchant_id,merchant_name, + merchant_shop_num,business_id,business_name, + lottery_num,lottery_count,anniversary_lottery_num, + order_create_time,order_audit_status,order_audit_by, + order_audit_name,order_audit_remark,order_audit_time, + vip_num,cus_name,cus_phone, + cus_card,cus_address,legion_id, + legion_name,union_id,union_name, + grant_id,grant_user_name,grant_user_card, + grant_by,grant_by_name,grant_time,grant_remark, + sign_img,grant_detail,grant_price, + mall_share_price,merchant_share_price,mall_share_rate, + merchant_share_rate,tax_amount,status + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `order_id` = #{orderId} + + + and `grant_id` = #{grantId} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantMapper.xml new file mode 100644 index 000000000..8f4eb52e8 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantMapper.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,activity_name,order_money_sum, + order_count,cus_name,cus_phone, + lottery_num,lottery_count,anniversary_lottery_num, + real_name,real_card,remark,sign_img, + status,create_by,create_date, + update_date + + + + where 1 = 1 + + + and `id` = #{id} + + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantOrderMapper.xml new file mode 100644 index 000000000..922fdd191 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantOrderMapper.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + grant_id,order_id,is_amount, + status + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `grant_id` = #{grantId} + + + and `order_id` = #{orderId} + + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantSettlementMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantSettlementMapper.xml new file mode 100644 index 000000000..fadd21e2d --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityGrantSettlementMapper.xml @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,grant_id,grant_award_id, + award_id,grant_price,order_id, + order_no,order_amount,merchant_id, + order_ratio,order_grant_price,mall_share_rate, + merchant_share_rate,order_mall_share_price,order_merchant_share_price, + tax_amount,status,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `grant_id` = #{grantId} + + + and `grant_award_id` = #{grantAwardId} + + + and `award_id` = #{awardId} + + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityMerchantMapper.xml new file mode 100644 index 000000000..4f953706f --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityMerchantMapper.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,merchant_id + + + + where 1 = 1 + + + and `id` = #{id} + + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `merchant_id` = #{merchantId} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + insert into wx_vtwo_activity_merchant + (id, + activity_id,merchant_id) + values + + (#{item.id,jdbcType=BIGINT}, + #{item.activityId,jdbcType=BIGINT},#{item.merchantId,jdbcType=BIGINT}) + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivityOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivityOrderMapper.xml new file mode 100644 index 000000000..57a00db86 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivityOrderMapper.xml @@ -0,0 +1,253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + from_user_id,vip_num,cus_name, + real_cus_name,cus_phone,cus_card, + cus_address,legion_id,legion_name, + union_id,union_name,from_order_id, + order_no,order_amount,merchant_id, + business_id,lottery_num,lottery_count, + anniversary_lottery_num,audit_status,audit_remark, + audit_by,audit_time,increased_points, + create_by,create_date,update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `cus_name` like concat('%', #{cusName},'%') + + + + and `cus_phone` = #{cusPhone} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `merchant_id` = #{merchantId} + + + and `business_id` = #{businessId} + + + and `from_order_id` = #{fromOrderId} + + + + and `order_no` like concat('%', #{orderNo},'%') + + + + and `create_date` >= #{createDateBegin} + + + + and `create_date` <= #{createDateEnd} + + + + and `audit_status` = #{auditStatus} + + + + and merchant_id in + + #{midItem} + + + + + and merchant_id not in + + #{midItem} + + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + + + update wx_vtwo_activity_order + set `audit_status` = #{auditStatus}, + + + `lottery_num` = #{lotteryNum}, + + + `lottery_count` = #{lotteryCount}, + + + `anniversary_lottery_num` = #{anniversaryLotteryNum}, + + + + `audit_remark` = #{auditRemark}, + + + `audit_time` = #{auditTime}, + + + `audit_by` = #{auditBy}, + + `update_date` = #{updateDate} + where id = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + + + + + + + + + + + insert into wx_vtwo_activity_order + (id, + from_user_id,vip_num,cus_name, + real_cus_name,cus_phone,cus_card, + cus_address,legion_id,legion_name, + union_id,union_name,from_order_id, + order_no,order_amount,merchant_id, + business_id,lottery_num,lottery_count, + anniversary_lottery_num,audit_status,audit_remark, + audit_by,audit_time,increased_points, + create_by,create_date,update_date) + values + + (#{item.id,jdbcType=BIGINT}, + #{item.fromUserId,jdbcType=BIGINT},#{item.vipNum,jdbcType=VARCHAR},#{item.cusName,jdbcType=VARCHAR}, + #{item.realCusName,jdbcType=VARCHAR},#{item.cusPhone,jdbcType=VARCHAR},#{item.cusCard,jdbcType=VARCHAR}, + #{item.cusAddress,jdbcType=VARCHAR},#{item.legionId,jdbcType=BIGINT},#{item.legionName,jdbcType=VARCHAR}, + #{item.unionId,jdbcType=BIGINT},#{item.unionName,jdbcType=VARCHAR},#{item.fromOrderId,jdbcType=BIGINT}, + #{item.orderNo,jdbcType=VARCHAR},#{item.orderAmount,jdbcType=DECIMAL},#{item.merchantId,jdbcType=BIGINT}, + #{item.businessId,jdbcType=INTEGER},#{item.lotteryNum,jdbcType=VARCHAR},#{item.lotteryCount,jdbcType=INTEGER}, + #{item.anniversaryLotteryNum,jdbcType=VARCHAR},#{item.auditStatus,jdbcType=INTEGER},#{item.auditRemark,jdbcType=VARCHAR}, + #{item.auditBy,jdbcType=BIGINT},#{item.auditTime,jdbcType=TIMESTAMP},#{item.increasedPoints,jdbcType=INTEGER}, + #{item.createBy,jdbcType=BIGINT}, #{item.createDate,jdbcType=TIMESTAMP},#{item.updateDate,jdbcType=TIMESTAMP}) + + + + + update wx_vtwo_activity_order + set increased_points = #{increasedPoints} + where id = #{id} + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoActivitySpecialTopicMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoActivitySpecialTopicMapper.xml new file mode 100644 index 000000000..6e9272955 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoActivitySpecialTopicMapper.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + name,start_time,end_time, + credit_on_off,credit_config,status, + create_date,update_date + + + + where 1 = 1 + + + and `id` = #{id} + + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `name` like concat('%', #{name},'%') + + + + and `start_time` >= #{begin} + + + + and `end_time` <= #{end} + + + + and `credit_on_off` = #{creditOnOff} + + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoAmountGiftActivityMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoAmountGiftActivityMapper.xml new file mode 100644 index 000000000..e8401a8ef --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoAmountGiftActivityMapper.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + name,start_time,end_time, + amount_model,business_order_limit,amount_rules, + related_model,related_rules,awards_count, + merchant_rule,status,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `name` like concat('%', #{name},'%') + + + + and `start_time` >= #{begin} + + + + and `end_time` <= #{end} + + + + and `merchant_rule` = #{merchantRule} + + + + + and end_time >= now() + + + + and end_time <= now() + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoCashBackActivityMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoCashBackActivityMapper.xml new file mode 100644 index 000000000..1c7bbc601 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoCashBackActivityMapper.xml @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + name,start_time,end_time, + amount_model,business_order_limit,related_model, + cash_back_limit,cash_back_rule,tax_deduction_rules, + merchant_rule,status,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `name` like concat('%', #{name},'%') + + + and `start_time` >= #{begin} + + + + and `end_time` <= #{end} + + + + and `merchant_rule` = #{merchantRule} + + + + + and end_time >= now() + + + + and end_time <= now() + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoCashBackAwardMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoCashBackAwardMapper.xml new file mode 100644 index 000000000..c836fd795 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoCashBackAwardMapper.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,model_type,min_amount, + max_amount,related_count,name, + cash_back_ratio,cash_back_limit,share_rule, + mall_share_rate,merchant_share_rate,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `model_type` = #{modelType} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + insert into wx_vtwo_cash_back_award + (id, + activity_id,model_type,min_amount, + max_amount,related_count,name, + cash_back_ratio,cash_back_limit,share_rule, + mall_share_rate,merchant_share_rate,create_date, + update_date) + values + + (#{item.id,jdbcType=BIGINT}, + #{item.activityId,jdbcType=BIGINT},#{item.modelType,jdbcType=INTEGER},#{item.minAmount,jdbcType=DECIMAL}, + #{item.maxAmount,jdbcType=DECIMAL},#{item.relatedCount,jdbcType=INTEGER},#{item.name,jdbcType=VARCHAR}, + #{item.cashBackRatio,jdbcType=DECIMAL},#{item.cashBackLimit,jdbcType=DECIMAL},#{item.shareRule,jdbcType=INTEGER}, + #{item.mallShareRate,jdbcType=DECIMAL}, #{item.merchantShareRate,jdbcType=DECIMAL},#{item.createDate,jdbcType=TIMESTAMP}, + #{item.updateDate,jdbcType=TIMESTAMP}) + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantAwardMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantAwardMapper.xml new file mode 100644 index 000000000..be65499e0 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantAwardMapper.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,activity_name,grant_id, + record_id,order_amount,mode_type, + min_amount,max_amount,related_count, + award_id,award_name,cash_back_ratio, + cash_back_rule,cash_back,money_rule, + mall_share_rate,merchant_share_rate,tax_deduction_rules, + tax_amount,status,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + and `grant_id` = #{grantId} + + + and `record_id` = #{recordId} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantMapper.xml new file mode 100644 index 000000000..f090237b5 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoCashBackGrantMapper.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + activity_id,activity_name,order_money_sum, + order_count,cus_name,cus_phone, + lottery_num,lottery_count,anniversary_lottery_num, + real_name,real_card,cash_back_limit, + cash_back_rule,cash_back,tax_deduction_rules, + tax_amount,real_cash_back,remark,sign_img, + status,create_by,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `activity_id` = #{activityId} + + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoPrizeDrawActivityMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoPrizeDrawActivityMapper.xml new file mode 100644 index 000000000..3502d62c3 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoPrizeDrawActivityMapper.xml @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + name,start_time,end_time, + amount_model,business_order_limit,amount_rules, + related_model,related_rules,awards_limit, + awards_count,merchant_rule,status, + create_date,update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `name` like concat('%', #{name},'%') + + + and `start_time` >= #{begin} + + + and `end_time` <= #{end} + + + and `merchant_rule` = #{merchantRule} + + + + and end_time >= now() + + + + and end_time <= now() + + + and `status` = #{status} + + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + diff --git a/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml new file mode 100644 index 000000000..1c6664e18 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + id,tenant_id,parent_tenant_id, + special_topic_id,activity_id,activity_type, + activity_name,activity_create_date,activity_start_time, + activity_end_time,activity_status,create_date, + update_date + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` = #{tenantId} + + + and `parent_tenant_id` = #{parentTenantId} + + + and `special_topic_id` = #{specialTopicId} + + order by ${sortColumns} + + + + + +