|
@@ -2,6 +2,15 @@ package com.yiqi.api.controller.activity;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.yiqi.activity.domain.ActivityApplyOrg;
|
|
|
+import com.yiqi.activity.domain.ActivityClothItem;
|
|
|
+import com.yiqi.activity.domain.vo.ActivityClothItemVO;
|
|
|
+import com.yiqi.activity.domain.vo.ActivityDiscountInfoQueryVO;
|
|
|
+import com.yiqi.activity.domain.vo.ActivityDiscountInfoVO;
|
|
|
+import com.yiqi.activity.service.*;
|
|
|
+import com.yiqi.common.core.domain.AjaxResult;
|
|
|
+import com.yiqi.common.core.domain.vo.SelectItemVO;
|
|
|
+import com.yiqi.common.enums.*;
|
|
|
import com.yiqi.common.exception.ServiceException;
|
|
|
import com.yiqi.activity.domain.ActivityCouponInfo;
|
|
|
import com.yiqi.activity.domain.ActivityInfo;
|
|
@@ -11,24 +20,21 @@ import com.yiqi.activity.domain.vo.ActivityCouponItemVO;
|
|
|
import com.yiqi.activity.domain.vo.weapp.WeAppActivityCouponInfoVO;
|
|
|
import com.yiqi.activity.domain.vo.weapp.WeAppActivityCouponQueryVO;
|
|
|
import com.yiqi.activity.domain.vo.weapp.WeAppActivityDiscountQueryVO;
|
|
|
-import com.yiqi.activity.service.IActivityCouponInfoService;
|
|
|
-import com.yiqi.activity.service.IActivityCouponItemService;
|
|
|
-import com.yiqi.activity.service.IActivityInfoService;
|
|
|
import com.yiqi.app.domain.AppUser;
|
|
|
import com.yiqi.app.service.IAppUserService;
|
|
|
import com.yiqi.common.constant.UrlConstants;
|
|
|
import com.yiqi.common.core.controller.BaseController;
|
|
|
import com.yiqi.common.core.domain.AuthHolder;
|
|
|
import com.yiqi.common.core.domain.R;
|
|
|
-import com.yiqi.common.enums.OrderActivityStatusType;
|
|
|
-import com.yiqi.common.enums.StatusType;
|
|
|
-import com.yiqi.common.enums.SysBoolType;
|
|
|
import com.yiqi.order.domain.OrderActivity;
|
|
|
import com.yiqi.order.service.IOrderActivityService;
|
|
|
+import com.yiqi.system.domain.SysStore;
|
|
|
+import com.yiqi.system.service.ISysStoreService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.util.List;
|
|
@@ -42,11 +48,13 @@ public class WeAppActivityDiscountController extends BaseController {
|
|
|
@Autowired
|
|
|
private IActivityInfoService activityInfoService;
|
|
|
@Autowired
|
|
|
- private IActivityCouponInfoService activityCouponInfoService;
|
|
|
+ private IActivityDiscountInfoService activityDiscountInfoService;
|
|
|
@Autowired
|
|
|
- private IActivityCouponItemService activityCouponItemService;
|
|
|
+ private ISysStoreService sysStoreService;
|
|
|
@Autowired
|
|
|
- private IOrderActivityService orderActivityService;
|
|
|
+ private IActivityClothItemService activityClothItemService;
|
|
|
+ @Autowired
|
|
|
+ private IActivityApplyOrgService activityApplyOrgService;
|
|
|
@Autowired
|
|
|
private IAppUserService appUserService;
|
|
|
/**
|
|
@@ -59,29 +67,70 @@ public class WeAppActivityDiscountController extends BaseController {
|
|
|
return R.ok(list);
|
|
|
}
|
|
|
|
|
|
-// /**
|
|
|
-// * 查询全场折扣活动明细
|
|
|
-// */
|
|
|
-// @GetMapping("/getInfoActivityId")
|
|
|
-// @ApiOperation(value = "查询全场折扣活动明细")
|
|
|
-// public R<WeAppActivityCouponInfoVO> getInfoActivityId(@RequestParam Long activityId) {
|
|
|
-// WeAppActivityCouponInfoVO weAppActivityCouponInfoVO = new WeAppActivityCouponInfoVO();
|
|
|
-// ActivityInfo activityInfo = activityInfoService.getOne(new QueryWrapper<ActivityInfo>()
|
|
|
-// .lambda().eq(ActivityInfo::getId,activityId));
|
|
|
-// BeanUtils.copyProperties(activityInfo,weAppActivityCouponInfoVO);
|
|
|
-// ActivityCouponInfo activityCouponInfo = activityCouponInfoService
|
|
|
-// .getOne(new QueryWrapper<ActivityCouponInfo>().lambda()
|
|
|
-// .eq(ActivityCouponInfo::getActivityId,activityId));
|
|
|
-// BeanUtils.copyProperties(activityCouponInfo,weAppActivityCouponInfoVO);
|
|
|
-// List<ActivityCouponItemVO> list = activityCouponItemService.selectActivityCouponItemListByActivityId(activityId);
|
|
|
-// weAppActivityCouponInfoVO.setActivityCouponItemVOS(list);
|
|
|
-// weAppActivityCouponInfoVO.setHasBuyNum(orderActivityService.count(new QueryWrapper<OrderActivity>()
|
|
|
-// .lambda().eq(OrderActivity::getActivityId,activityId)
|
|
|
-// .eq(OrderActivity::getAppUserId, AuthHolder.userId())
|
|
|
-// .ne(OrderActivity::getOrderStatus, OrderActivityStatusType.REFUND.getCode())
|
|
|
-// .ne(OrderActivity::getOrderStatus,OrderActivityStatusType.CANCEL_ORDER.getCode())));
|
|
|
-// return R.ok(weAppActivityCouponInfoVO);
|
|
|
-// }
|
|
|
+ /**
|
|
|
+ * 获取全场折扣活动详细信息
|
|
|
+ */
|
|
|
+ @PreAuthorize("@ss.hasPermi('activity:discountInfo:query')")
|
|
|
+ @GetMapping(value = "getInfo")
|
|
|
+ @ApiOperation(value = "获取全场折扣活动详细信息")
|
|
|
+ public AjaxResult getInfo(@RequestParam(value = "id", required = false) Long id) {
|
|
|
+ if (id == null) {
|
|
|
+ ActivityDiscountInfoVO activityDiscountInfoVO = new ActivityDiscountInfoVO();
|
|
|
+ activityDiscountInfoVO.setStoreVOS(sysStoreService.list(
|
|
|
+ new QueryWrapper<SysStore>().lambda()
|
|
|
+ .eq(SysStore::getDelFlag, DeleteStatus.OK.getCode())
|
|
|
+ .eq(SysStore::getStatus, StatusType.OK.getCode())).stream()
|
|
|
+ .map(SelectItemVO::new).collect(Collectors.toList()));
|
|
|
+ return success(activityDiscountInfoVO);
|
|
|
+ }
|
|
|
+ ActivityInfo activityInfo = activityInfoService.selectActivityInfoById(id);
|
|
|
+ if (activityInfo == null || !ActivityType.all_discount.getCode().equals(activityInfo.getActivityType())) {
|
|
|
+ throw new ServiceException("未查询到活动");
|
|
|
+ }
|
|
|
+ ActivityDiscountInfoVO activityDiscountInfoVO = new ActivityDiscountInfoVO();
|
|
|
+ BeanUtils.copyProperties(activityInfo, activityDiscountInfoVO);
|
|
|
+ activityDiscountInfoVO.setStoreVOS(sysStoreService.list(
|
|
|
+ new QueryWrapper<SysStore>().lambda()
|
|
|
+ .eq(SysStore::getDelFlag, DeleteStatus.OK.getCode())
|
|
|
+ .eq(SysStore::getStatus, StatusType.OK.getCode())).stream()
|
|
|
+ .map(SelectItemVO::new).collect(Collectors.toList()));
|
|
|
+ activityDiscountInfoVO.setSelectStoreIds(activityApplyOrgService.list(new QueryWrapper<ActivityApplyOrg>()
|
|
|
+ .lambda().eq(ActivityApplyOrg::getActivityId, id))
|
|
|
+ .stream().filter(item -> SourceType.STORE.getCode().equals(item.getSourceType()))
|
|
|
+ .map(ActivityApplyOrg::getOrgId).collect(Collectors.toList()));
|
|
|
+ // 为了编辑的时候,直接按id去更新活动信息
|
|
|
+ activityDiscountInfoVO.setId(activityInfo.getId());
|
|
|
+ return success(activityDiscountInfoVO);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取门店折扣活动列表
|
|
|
+ */
|
|
|
+ @GetMapping(value = "getDiscountByStoreId")
|
|
|
+ @ApiOperation(value = "获取门店折扣活动列表")
|
|
|
+ public R getDiscountListByStoreId(Long storeId) {
|
|
|
+ List<ActivityDiscountInfoQueryVO> list = activityDiscountInfoService.getDiscountListByStoreId(storeId);
|
|
|
+ for (ActivityDiscountInfoQueryVO activityDiscountInfoQueryVO : list) {
|
|
|
+ if (activityDiscountInfoQueryVO.getUserScope().equals(UserScopeType.NEW.getCode())) {
|
|
|
+ if (!appUserService.checkUserIsNewUser(AuthHolder.userId())) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (activityDiscountInfoQueryVO.getUserScope().equals(UserScopeType.MEMBER.getCode())) {
|
|
|
+ if (!appUserService.checkUserIsMember(AuthHolder.userId())) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //指定衣服
|
|
|
+ if (activityDiscountInfoQueryVO.getClothScope().equals("1")) {
|
|
|
+ ActivityClothItem activityClothItem = new ActivityClothItem();
|
|
|
+ activityClothItem.setActivityId(activityDiscountInfoQueryVO.getId());
|
|
|
+ List<ActivityClothItemVO> activityClothItemVOList = activityClothItemService.selectActivityClothItemList(activityClothItem);
|
|
|
+ activityDiscountInfoQueryVO.setActivityClothItemVOList(activityClothItemVOList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return R.ok(list);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|