From 94f34a5cf9ab374afbaefd566bc0a3dc8a4616dd Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期六, 25 十一月 2023 11:14:37 +0800 Subject: [PATCH] 同步 --- cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java | 125 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 117 insertions(+), 8 deletions(-) diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java index ec98b26..808d160 100644 --- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java +++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/IntroduceRewardsController.java @@ -1,18 +1,28 @@ package com.dsh.activity.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dsh.activity.entity.BodySideAppointment; import com.dsh.activity.entity.IntroduceRewards; +import com.dsh.activity.feignclient.account.AppUserClient; import com.dsh.activity.feignclient.model.IntrduceOfUserRequest; import com.dsh.activity.feignclient.model.PurchaseRecordVo; +import com.dsh.activity.feignclient.other.model.Store; +import com.dsh.activity.model.*; import com.dsh.activity.service.IntroduceRewardsService; +import com.dsh.activity.service.IntroduceUserService; import io.swagger.annotations.Api; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.text.Format; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.stream.Collectors; @Api @CrossOrigin @@ -20,12 +30,94 @@ @RequestMapping("") public class IntroduceRewardsController { - @Autowired private IntroduceRewardsService idrService; + @Autowired + private IntroduceUserService introduceUserService; + private final SimpleDateFormat mat = new SimpleDateFormat("MM-dd HH:mm"); + /** + * 获取介绍有礼-参与用户记录表 + * @return + */ + @RequestMapping("/base/introduceUser/listAllUser") + public List<IntroduceUser> listAllUser(@RequestBody IntroduceUserQuery query){ + return introduceUserService.listAll(query); + } + /** + * 通过id获取介绍有礼 + * @return + */ + @RequestMapping("/base/introduce/getInfoById") + public IntroduceRewards getInfoById(@RequestBody Integer id){ + return idrService.getById(id); + + } + /** + * 获取介绍有礼记录表 + * @return + */ + @RequestMapping("/base/introduce/listAll") + public List<IntroduceVO> listAll(@RequestBody IntroduceQuery query){ + Date date = new Date(); + List<IntroduceVO> introduceVOS = idrService.listAll(query); + for (IntroduceVO introduceVO : introduceVOS) { + + Date startTime = introduceVO.getStartTime(); + Date endTime = introduceVO.getEndTime(); + if (date.after(startTime) && date.before(endTime)) { + introduceVO.setActivityState(1); + } else if (date.before(startTime)) { + introduceVO.setActivityState(2); + } else if (date.after(endTime)) { + introduceVO.setActivityState(3); + } + } + return introduceVOS; + } + /** + * 增加/修改介绍有礼记录 + * @return + */ + @RequestMapping("/base/introduce/addIntroduce") + public Object addIntroduce(@RequestBody IntroduceRewards introduceRewards){ + + + if (introduceRewards.getId()!=null){ + IntroduceRewards byId = idrService.getById(introduceRewards.getId()); + // 判断当前活动有没有开始 如果开始了不能编辑赠送课时数 不能编辑活动开始时间 + Date endTime = byId.getEndTime(); + Date startTime = byId.getStartTime(); + Date local = new Date(); + if (startTime.before(local)&&endTime.after(local)){ + // 证明当前活动已开始 + // 判断有没有修改开始时间 + if (!introduceRewards.getStartTime().equals(byId.getStartTime())){ + // 表示不能修改开始时间 + return 5002; + } + if (!introduceRewards.getGiveClass().equals(byId.getGiveClass())){ + // 表示不能修改赠送课时数 + return 5001; + } + } + return idrService.updateById(introduceRewards); + }else { + introduceRewards.setInsertTime(new Date()); + return idrService.save(introduceRewards); + } + } + + /** + * 上/下架介绍有礼 type = 1上架 type=2下架 + * @return + */ + @RequestMapping("/base/introduce/changeState") + public Object changeState(@RequestBody IntroduceChangeStateDTO dto){ + return idrService.changeState(dto); + } @PostMapping("/base/introduce/useOfRewards") public List<PurchaseRecordVo> queryAppUsersofIntroduce(@RequestBody IntrduceOfUserRequest request){ @@ -33,14 +125,31 @@ List<IntroduceRewards> list = idrService.list(new QueryWrapper<IntroduceRewards>() .ge("startTime",request.getStartTime()) .lt("endTime",request.getEndTime())); - IntroduceRewards introduceRewards = list.get(0); - request.getUserIds().forEach( userId -> { - PurchaseRecordVo recordVo = new PurchaseRecordVo(); - recordVo.setPurchaseAmount("+"+introduceRewards.getGiveClass()); - recordVo.setPurchaseType("介绍有礼"); - recordVos.add(recordVo); - } ); + if (request.getUserIds().size() > 0 && list.size() > 0){ + IntroduceRewards introduceRewards = list.get(0); + request.getUserIds().forEach( userId -> { + PurchaseRecordVo recordVo = new PurchaseRecordVo(); + recordVo.setPurchaseAmount("+"+introduceRewards.getGiveClass()); + recordVo.setPurchaseType("介绍有礼"); + recordVos.add(recordVo); + } ); + } return recordVos; } + @PostMapping("/base/introduce/getGiftList") + @ResponseBody + public IntroduceRewards getGiftList(@RequestBody String cityCode){ + List<IntroduceRewards> list = idrService.list(new LambdaQueryWrapper<IntroduceRewards>() + .eq(IntroduceRewards::getCityCode,cityCode) + .le(IntroduceRewards::getStartTime,new Date()) + .ge(IntroduceRewards::getEndTime,new Date()) + .orderByDesc(IntroduceRewards::getInsertTime) + .last("LIMIT 1")); + if (list.size()>0){ + return list.get(0); + } + return null; + } + } -- Gitblit v1.7.1