diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoActivityOrderController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoActivityOrderController.java index 3b1e07c6d..ca6af8552 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoActivityOrderController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoActivityOrderController.java @@ -83,7 +83,7 @@ public class WxVtwoActivityOrderController extends BaseController { TenantEntity tenantInfo = getTenantInfo(); activityOrder.updateTenantInfo(tenantInfo); activityOrder.setSortColumns(SortField.CreateDate_DESC); - wxVtwoActivityOrderService.exportData(request,response,activityOrder); + wxVtwoActivityOrderService.exportData(request,response,activityOrder,null); } @ApiVersion(group = SwaggerConstant.V_A_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 index 683417310..3ef376e12 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoAmountGiftActivityController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoAmountGiftActivityController.java @@ -6,26 +6,32 @@ 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.*; 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.exception.MallinkException; +import com.iformall.service.WxVtwoActivityOrderService; 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.apache.commons.lang3.StringUtils; 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; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @author alascor @@ -40,6 +46,9 @@ public class WxVtwoAmountGiftActivityController extends BaseController { @Autowired private WxVtwoAmountGiftActivityService wxVtwoAmountGiftActivityService; + @Autowired + private WxVtwoActivityOrderService wxVtwoActivityOrderService; + @ApiVersion(group = SwaggerConstant.V_A_2_0) @ApiOperation("分页列表接口") @GetMapping("list") @@ -135,4 +144,87 @@ public class WxVtwoAmountGiftActivityController extends BaseController { return new ResultData(amountGiftActivity); } + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单统计") + @GetMapping("orderStatistics") + public ResultData orderStatistics(@ModelAttribute WxVtwoActivityOrder activityOrder) { + if(activityOrder.getActivityId() == null){ + return new ResultData(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + return new ResultData(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoAmountGiftActivity activity = wxVtwoAmountGiftActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + return new ResultData(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime()); + + WxVtwoActivityOrder orderOne = wxVtwoActivityOrderService.getlimitOne(activityOrder); + if(orderOne == null){ + Map result = new HashMap<>(); + result.put("cus_name","查无此人"); + result.put("cus_phone",activityOrder.getCusPhone()); + return new ResultData(result); + } + Map statisticsMap = wxVtwoActivityOrderService.getStatistics(activityOrder); + statisticsMap.put("cus_name",orderOne.getCusName()); + statisticsMap.put("cus_phone",orderOne.getCusPhone()); + return new ResultData(statisticsMap); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单列表") + @GetMapping("orderList") + @ApiImplicitParams({}) + public ResultData orderList(@ModelAttribute WxVtwoActivityOrder activityOrder) { + if(activityOrder.getActivityId() == null){ + return new ResultData(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + return new ResultData(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoAmountGiftActivity activity = wxVtwoAmountGiftActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + return new ResultData(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime());; + activityOrder.setSortColumns(SortField.CreateDate_DESC); + List orderList = wxVtwoActivityOrderService.findList(activityOrder,activity.getId()); + + return new ResultData(orderList); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单导出") + @GetMapping("/orderExport") + public void orderExport(@ModelAttribute WxVtwoActivityOrder activityOrder, HttpServletRequest request, HttpServletResponse response) { + + if(activityOrder.getActivityId() == null){ + throw new MallinkException(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + throw new MallinkException(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoAmountGiftActivity activity = wxVtwoAmountGiftActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + throw new MallinkException(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime());; + activityOrder.setSortColumns(SortField.CreateDate_DESC); + wxVtwoActivityOrderService.exportData(request,response,activityOrder,activity.getId()); + } + } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java index ed6738b2c..31ec4ccae 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoCashBackActivityController.java @@ -6,27 +6,32 @@ 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.*; 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.exception.MallinkException; +import com.iformall.service.WxVtwoActivityOrderService; 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.apache.commons.lang3.StringUtils; 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; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @author alascor @@ -41,6 +46,9 @@ public class WxVtwoCashBackActivityController extends BaseController { @Autowired private WxVtwoCashBackActivityService wxVtwoCashBackActivityService; + @Autowired + private WxVtwoActivityOrderService wxVtwoActivityOrderService; + @ApiVersion(group = SwaggerConstant.V_A_2_0) @ApiOperation("分页列表接口") @GetMapping("list") @@ -158,4 +166,87 @@ public class WxVtwoCashBackActivityController extends BaseController { return new ResultData(cashBackActivity); } + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单统计") + @GetMapping("orderStatistics") + public ResultData orderStatistics(@ModelAttribute WxVtwoActivityOrder activityOrder) { + if(activityOrder.getActivityId() == null){ + return new ResultData(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + return new ResultData(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoCashBackActivity activity = wxVtwoCashBackActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + return new ResultData(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime()); + + WxVtwoActivityOrder orderOne = wxVtwoActivityOrderService.getlimitOne(activityOrder); + if(orderOne == null){ + Map result = new HashMap<>(); + result.put("cus_name","查无此人"); + result.put("cus_phone",activityOrder.getCusPhone()); + return new ResultData(result); + } + Map statisticsMap = wxVtwoActivityOrderService.getStatistics(activityOrder); + statisticsMap.put("cus_name",orderOne.getCusName()); + statisticsMap.put("cus_phone",orderOne.getCusPhone()); + return new ResultData(statisticsMap); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单列表") + @GetMapping("orderList") + @ApiImplicitParams({}) + public ResultData orderList(@ModelAttribute WxVtwoActivityOrder activityOrder) { + if(activityOrder.getActivityId() == null){ + return new ResultData(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + return new ResultData(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoCashBackActivity activity = wxVtwoCashBackActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + return new ResultData(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime());; + activityOrder.setSortColumns(SortField.CreateDate_DESC); + List orderList = wxVtwoActivityOrderService.findList(activityOrder,activity.getId()); + + return new ResultData(orderList); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单导出") + @GetMapping("/orderExport") + public void orderExport(@ModelAttribute WxVtwoActivityOrder activityOrder, HttpServletRequest request, HttpServletResponse response) { + + if(activityOrder.getActivityId() == null){ + throw new MallinkException(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + throw new MallinkException(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoCashBackActivity activity = wxVtwoCashBackActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + throw new MallinkException(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime());; + activityOrder.setSortColumns(SortField.CreateDate_DESC); + wxVtwoActivityOrderService.exportData(request,response,activityOrder,activity.getId()); + } + } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java index 6dbb6a09a..89dfa9e9b 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java @@ -15,11 +15,13 @@ import com.iformall.enums.*; import com.iformall.exception.MallinkException; import com.iformall.service.WxOfflineActivityGrantAwardService; import com.iformall.service.WxOfflineActivityService; +import com.iformall.service.WxVtwoActivityOrderService; 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.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -28,6 +30,9 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @author alascor @@ -42,6 +47,9 @@ public class WxVtwoPrizeDrawActivityController extends BaseController { @Autowired private WxVtwoPrizeDrawActivityService wxVtwoPrizeDrawActivityService; + @Autowired + private WxVtwoActivityOrderService wxVtwoActivityOrderService; + @ApiVersion(group = SwaggerConstant.V_A_2_0) @ApiOperation("分页列表接口") @GetMapping("list") @@ -137,4 +145,87 @@ public class WxVtwoPrizeDrawActivityController extends BaseController { return new ResultData(prizeDrawActivity); } + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单统计") + @GetMapping("orderStatistics") + public ResultData orderStatistics(@ModelAttribute WxVtwoActivityOrder activityOrder) { + if(activityOrder.getActivityId() == null){ + return new ResultData(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + return new ResultData(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoPrizeDrawActivity activity = wxVtwoPrizeDrawActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + return new ResultData(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime()); + + WxVtwoActivityOrder orderOne = wxVtwoActivityOrderService.getlimitOne(activityOrder); + if(orderOne == null){ + Map result = new HashMap<>(); + result.put("cus_name","查无此人"); + result.put("cus_phone",activityOrder.getCusPhone()); + return new ResultData(result); + } + Map statisticsMap = wxVtwoActivityOrderService.getStatistics(activityOrder); + statisticsMap.put("cus_name",orderOne.getCusName()); + statisticsMap.put("cus_phone",orderOne.getCusPhone()); + return new ResultData(statisticsMap); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单列表") + @GetMapping("orderList") + @ApiImplicitParams({}) + public ResultData orderList(@ModelAttribute WxVtwoActivityOrder activityOrder) { + if(activityOrder.getActivityId() == null){ + return new ResultData(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + return new ResultData(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoPrizeDrawActivity activity = wxVtwoPrizeDrawActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + return new ResultData(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime());; + activityOrder.setSortColumns(SortField.CreateDate_DESC); + List orderList = wxVtwoActivityOrderService.findList(activityOrder,activity.getId()); + + return new ResultData(orderList); + } + + @ApiVersion(group = SwaggerConstant.V_A_2_0) + @ApiOperation("参加活动用户订单导出") + @GetMapping("/orderExport") + public void orderExport(@ModelAttribute WxVtwoActivityOrder activityOrder, HttpServletRequest request, HttpServletResponse response) { + + if(activityOrder.getActivityId() == null){ + throw new MallinkException(Result.ERROR,"活动ID 为空"); + } + if(StringUtils.isBlank(activityOrder.getCusPhone())){ + throw new MallinkException(Result.ERROR,"请输入用户手机号"); + } + + TenantEntity tenantInfo = getTenantInfo(); + WxVtwoPrizeDrawActivity activity = wxVtwoPrizeDrawActivityService.getById(activityOrder.getActivityId(), tenantInfo.getTenantId()); + if(activity == null){ + throw new MallinkException(Result.ERROR,"未查询到活动"); + } + activityOrder.updateTenantInfo(tenantInfo); + activityOrder.setCreateDateBegin(activity.getStartTime()); + activityOrder.setCreateDateEnd(activity.getEndTime());; + activityOrder.setSortColumns(SortField.CreateDate_DESC); + wxVtwoActivityOrderService.exportData(request,response,activityOrder,activity.getId()); + } + } diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxVtwoActivityOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxVtwoActivityOrderController.java index e18377c39..d4b6ebbcb 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxVtwoActivityOrderController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxVtwoActivityOrderController.java @@ -97,7 +97,7 @@ public class WxVtwoActivityOrderController extends BaseController { TenantEntity tenantInfo = getTenantInfo(); activityOrder.updateTenantInfo(tenantInfo); activityOrder.setMerchantId(getLoginBUser().getMerchantId()); - Map statisticsMap = wxVtwoActivityOrderService.getStatistics(activityOrder); + Map statisticsMap = wxVtwoActivityOrderService.getStatistics(activityOrder); return new ResultData(statisticsMap); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java index 8d28526a6..c4518e9fd 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityGrantOrder.java @@ -26,6 +26,12 @@ public class WxVtwoActivityGrantOrder extends TenantEntity { @TableField(value = "grant_id") private Long grantId; + /** + * 活动id + */ + @TableField(value = "activity_id") + private Long activityId; + /** * 订单id */ diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java index 762c88cff..fa56f2f35 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivityOrder.java @@ -248,4 +248,7 @@ public class WxVtwoActivityOrder extends TenantEntity { */ @TableField(value = "update_date") private Date updateDate; + + @TableField(exist = false) + private Long activityId; } \ 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 index bb67509d7..4f24928c0 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivitySpecialTopic.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxVtwoActivitySpecialTopic.java @@ -10,7 +10,6 @@ import java.util.Date; import java.util.List; import com.iformall.domain.vo.WxVtwoActivityCreditRule; -import com.iformall.enums.EnumYesOrNo; import lombok.Data; /** diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumVtwoActivityGrantStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumVtwoActivityGrantStatus.java new file mode 100644 index 000000000..afd336177 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumVtwoActivityGrantStatus.java @@ -0,0 +1,36 @@ +package com.iformall.enums; + +/** + * Created by Stormeye on 2018/08/09. + */ +public enum EnumVtwoActivityGrantStatus { + + VALID(1, "有效"), + NOT_VALID(0, "无效") + ; + + public static EnumVtwoActivityGrantStatus getEnum(Integer code) { + for (EnumVtwoActivityGrantStatus value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumVtwoActivityGrantStatus(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java index 150f686e3..b3a9fcab4 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoActivityOrderService.java @@ -19,12 +19,12 @@ public interface WxVtwoActivityOrderService extends IService listAsPage(WxVtwoActivityOrder record, Integer pageNum, Integer pageSize); - void handlerList(TenantEntity tenantEntity, List recordList); + List findList(WxVtwoActivityOrder record, Long activityId); WxVtwoActivityOrder getById(Long id, String tenantId); WxVtwoActivityOrder getInfoById(Long id, String tenantId); - Map getStatistics(WxVtwoActivityOrder record); + Map getStatistics(WxVtwoActivityOrder record); void auditRecord(WxVtwoActivityOrder record, Long userId); @@ -32,8 +32,10 @@ public interface WxVtwoActivityOrderService extends IService orderStatistics(TenantEntity tenantInfo); - void exportData(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityOrder record); + void exportData(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityOrder record, Long activityId); Integer getWaitAudiCount(TenantEntity tenantInfo); + WxVtwoActivityOrder getlimitOne(WxVtwoActivityOrder activityOrder); + } diff --git a/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java b/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java index d0f6c7d7b..bbe5c33a0 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxVtwoAmountGiftActivityService.java @@ -3,6 +3,7 @@ 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.WxVtwoCashBackActivity; import com.iformall.domain.po.WxVtwoPrizeDrawActivity; /** @@ -16,4 +17,5 @@ public interface WxVtwoAmountGiftActivityService extends IService listAsPage(WxVtwoPrizeDrawActivity prizeDrawActivity, Integer pageNum, Integer pageSize); WxVtwoPrizeDrawActivity getInfoById(Long id, String tenantId); + + WxVtwoPrizeDrawActivity getById(Long id, String tenantId); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java index 4ccace442..ec5fac926 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityMerchantServiceImpl.java @@ -7,8 +7,6 @@ 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; diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java index c5f70fb78..c9830b2aa 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java @@ -1,11 +1,13 @@ package com.iformall.service.impl; import com.aliyun.openservices.shade.org.apache.commons.lang3.StringUtils; +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.po.base.BaseEntity; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.vo.*; import com.iformall.enums.*; @@ -38,6 +40,9 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl findList(WxVtwoActivityOrder record, Long activityId) { + handlerQuery(record); + List recordList = wxVtwoActivityOrderMapper.findList(record); + handlerList(record,recordList); + handlerOrderStatus(activityId,recordList); + return recordList; + } + private void handlerQuery(WxVtwoActivityOrder record) { //商户处理 if (StringUtils.isNotBlank(record.getMerchantName())) { @@ -81,8 +95,7 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl recordList) { + private void handlerList(TenantEntity tenantEntity, List recordList) { if (recordList == null || recordList.size() <= 0) { return; } @@ -120,6 +133,26 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl recordList){ + if(activityId == null){ + return; + } + if (recordList == null || recordList.size() <= 0) { + return; + } + for (WxVtwoActivityOrder record : recordList) { + WxVtwoActivityGrantOrder grantOrder = new WxVtwoActivityGrantOrder(); + grantOrder.updateTenantInfo(record); + grantOrder.setActivityId(activityId); + grantOrder.setOrderId(record.getId()); + grantOrder.setStatus(EnumVtwoActivityGrantStatus.VALID.getCode()); + Integer orderGrantCount = wxVtwoActivityGrantOrderMapper.selectCount(new QueryWrapper<>(grantOrder)); + if(orderGrantCount > 0){ + record.setAuditStatus(EnumOfflineActivityRecordStatus.IS_GRANT.getCode()); + } + } + } + @Override public boolean saveOrUpdate(WxVtwoActivityOrder activityOrder) { if(activityOrder.getMerchantId() != null){ @@ -160,24 +193,29 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl getStatistics(WxVtwoActivityOrder record) { + public Map getStatistics(WxVtwoActivityOrder record) { List auditStatusStatistics = wxVtwoActivityOrderMapper.auditStatusStatistics(record); - Map result = new HashMap<>(); + Map result = new HashMap<>(); Integer audting = 0, audi_success = 0, audt_fail = 0, invalid = 0; + BigDecimal sum_success = BigDecimal.ZERO, sum_fail = BigDecimal.ZERO; 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(); + sum_success = statistics.getSumMoney(); } else if (EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(statistics.getAuditStatus())) { audt_fail = statistics.getCount(); + sum_fail = statistics.getSumMoney(); } else if (EnumOfflineActivityRecordStatus.INVALID.getCode().equals(statistics.getAuditStatus())) { invalid = statistics.getCount(); } } result.put("audting",audting); result.put("audi_success",audi_success); + result.put("sum_success",sum_success); result.put("audt_fail",audt_fail); + result.put("sum_fail",sum_fail); result.put("invalid",invalid); result.put("sum_count",audting+audi_success+audt_fail+invalid); return result; @@ -317,10 +355,8 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl list = wxVtwoActivityOrderMapper.findList(record); - handlerList(record,list); + public void exportData(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityOrder record, Long activityId) { + List list = this.findList(record, activityId); excelService.exportExcel(list, null, "活动订单列表", WxOfflineActivityRecord.class, "活动订单列表.xlsx", response, false); } @@ -332,6 +368,12 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl listAsPage(WxVtwoAmountGiftActivity amountGiftActivity, Integer pageNum, Integer pageSize) { handlerQuery(amountGiftActivity); @@ -213,6 +217,10 @@ public class WxVtwoAmountGiftActivityServiceImpl extends ServiceImpl listAsPage(WxVtwoCashBackActivity cashBackActivity, Integer pageNum, Integer pageSize) { handlerQuery(cashBackActivity); @@ -216,6 +216,10 @@ public class WxVtwoCashBackActivityServiceImpl extends ServiceImpl listAsPage(WxVtwoPrizeDrawActivity prizeDrawActivity, Integer pageNum, Integer pageSize) { @@ -218,6 +222,12 @@ public class WxVtwoPrizeDrawActivityServiceImpl extends ServiceImpl + @@ -16,8 +17,8 @@ id,tenant_id,parent_tenant_id, - grant_id,order_id,is_amount, - status + grant_id,activity_id,order_id, + is_amount, status @@ -34,6 +35,9 @@ and `grant_id` = #{grantId} + + and `activity_id` = #{activityId} + and `order_id` = #{orderId} diff --git a/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml b/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml index 62f84b734..2cd5a6826 100644 --- a/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxVtwoSpecialTopicActivityMapper.xml @@ -56,7 +56,7 @@ - insert into wx_vtwo_activity_award + insert into wx_vtwo_special_topic_activity (id, special_topic_id,activity_id,activity_type, activity_name,activity_create_date,activity_start_time, @@ -73,7 +73,7 @@ - update wx_vtwo_activity_award + update wx_vtwo_special_topic_activity set `activity_name` = #{activityName},