diff --git a/src/main/java/com/yxt/yyth/api/lpkgiftcard/AppletVo.java b/src/main/java/com/yxt/yyth/api/lpkgiftcard/AppletVo.java index eb5a82f..d156a4f 100644 --- a/src/main/java/com/yxt/yyth/api/lpkgiftcard/AppletVo.java +++ b/src/main/java/com/yxt/yyth/api/lpkgiftcard/AppletVo.java @@ -49,6 +49,7 @@ public class AppletVo { private String serialNumber; + public String getStart() { SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -84,6 +85,7 @@ public class AppletVo { } } } + reserveDate=start; return start; } diff --git a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardRest.java b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardRest.java index 99ddd67..e71ba5b 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardRest.java +++ b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardRest.java @@ -43,6 +43,11 @@ public class LpkGiftCardRest { public ResultBean gifCardByCustomerSid(@RequestBody PagerQuery query) { return lpkGiftCardService.getGifCardByCustomerSid(query); } + @GetMapping("/isSaturAndSun/{cardSid}") + @ApiOperation(value = "获取时间段的周六日") + public ResultBean isSaturAndSun(@PathVariable("cardSid") String cardSid) { + return lpkGiftCardService.isSaturAndSun(cardSid); + } @GetMapping("/getGifCardBySid/{sid}") @ApiOperation(value = "获取礼包卡的详情信息") diff --git a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java index 570e76d..eab75d8 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java +++ b/src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java @@ -4,6 +4,11 @@ import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.img.ImgUtil; + + +import java.time.DayOfWeek; +import java.time.Period; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import cn.hutool.extra.qrcode.QrCodeUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -22,7 +27,6 @@ import com.yxt.yyth.api.lpkgiftbag.LpkGiftBag; import com.yxt.yyth.api.lpkgiftbaggoods.LpkGiftBagGoodsVo; import com.yxt.yyth.api.lpkgiftcard.*; import com.yxt.yyth.api.lpkgoods.LpkGoods; -import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrder; import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrderCardVo; import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrderVo; import com.yxt.yyth.api.lpkreserveordergoods.LpkReserveOrderGoods; @@ -37,7 +41,6 @@ import com.yxt.yyth.biz.lpkgoods.LpkGoodsService; import com.yxt.yyth.biz.lpkreserveorder.LpkReserveOrderService; import com.yxt.yyth.biz.lpkreserveordergoods.LpkReserveOrderGoodsService; import com.yxt.yyth.biz.lpkstore.LpkStoreService; -import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -48,8 +51,8 @@ import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; -import java.io.OutputStream; import java.text.SimpleDateFormat; +import java.time.LocalDate; import java.util.*; /** @@ -575,4 +578,85 @@ public class LpkGiftCardService extends MybatisBaseService isSaturAndSun(String cardSid) { + ResultBean rb = new ResultBean().fail(); + AppletVo vo=getGifCardBySid(cardSid).getData(); + LocalDate now = DateUtil.parse(vo.getStart()).toSqlDate().toLocalDate(); + LocalDate endD = DateUtil.parse(vo.getEnd()).toSqlDate().toLocalDate(); + List weekMap = new ArrayList<>(); + // 第一个星期六 +// LocalDate saturday = now.with(firstInMonth(DayOfWeek.SATURDAY)); + LocalDate saturday = now.with(DayOfWeek.SATURDAY); + do { + if (CollectionUtils.isEmpty(weekMap)) { + weekMap.add(saturday.toString()); + } else { + weekMap.add(saturday.toString()); + } + // 迭代一个星期 + saturday = saturday.plus(Period.ofDays(7)); + System.out.println(saturday.compareTo(endD)); + } while (saturday.compareTo(endD)<1); + // 第一个星期天 + LocalDate sunday = now.with(DayOfWeek.SUNDAY); + do { + if (CollectionUtils.isEmpty(weekMap)) { + weekMap.add(saturday.toString()); + } else { + weekMap.add(sunday.toString()); + } + // 迭代一个星期 + sunday = sunday.plus(Period.ofDays(7)); + System.out.println(sunday.compareTo(endD)); + } while (sunday.compareTo(endD)<1); + Object [] array=weekMap.stream().sorted().toArray(); + return rb.success().setData(array); + } + public static void main(String[] args) { + String startDate="2023-12-16"; + String endDate="2024-12-14"; + LocalDate now = DateUtil.parse(startDate).toSqlDate().toLocalDate(); + LocalDate endD = DateUtil.parse(endDate).toSqlDate().toLocalDate(); + List weekMap = new ArrayList<>(); + // 第一个星期六 +// LocalDate saturday = now.with(firstInMonth(DayOfWeek.SATURDAY)); + LocalDate saturday = now.with(DayOfWeek.SATURDAY); + do { + if (CollectionUtils.isEmpty(weekMap)) { + weekMap.add(saturday.toString()); + } else { + weekMap.add(saturday.toString()); + } + // 迭代一个星期 + saturday = saturday.plus(Period.ofDays(7)); + System.out.println(saturday.compareTo(endD)); + } while (saturday.compareTo(endD)<1); + // 第一个星期天 + LocalDate sunday = now.with(DayOfWeek.SUNDAY); + do { + if (CollectionUtils.isEmpty(weekMap)) { + weekMap.add(saturday.toString()); + } else { + weekMap.add(sunday.toString()); + } + // 迭代一个星期 + sunday = sunday.plus(Period.ofDays(7)); + System.out.println(sunday.compareTo(endD)); + } while (sunday.compareTo(endD)<1); + Object [] array=weekMap.stream().sorted().toArray(); + + System.out.println(array); + } + + +// public static void main(String[] args) { +// LocalDate start = LocalDate.of(2021, Month.JANUARY, 1); // 设置起始日期为2021年1月1日 +// LocalDate end = LocalDate.now(); // 设置结束日期为当前日期 +// +// Stream dates = start.datesUntil(end).filter(date -> date.getDayOfWeek() == DayOfWeek.SATURDAY || date.getDayOfWeek() == DayOfWeek.SUNDAY); +// +// for (LocalDate date : dates) { +// System.out.println(date); +// } +// } } diff --git a/src/main/java/com/yxt/yyth/biz/lpkreserveorder/LpkReserveOrderService.java b/src/main/java/com/yxt/yyth/biz/lpkreserveorder/LpkReserveOrderService.java index 5e3d9e2..d46eeb1 100644 --- a/src/main/java/com/yxt/yyth/biz/lpkreserveorder/LpkReserveOrderService.java +++ b/src/main/java/com/yxt/yyth/biz/lpkreserveorder/LpkReserveOrderService.java @@ -2,6 +2,7 @@ package com.yxt.yyth.biz.lpkreserveorder; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -31,6 +32,7 @@ import com.yxt.yyth.biz.lpkstore.LpkStoreService; import io.swagger.annotations.ApiOperation; import org.apache.commons.collections.list.AbstractLinkedList; import org.apache.poi.ss.formula.functions.T; +import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.bind.annotation.PostMapping; @@ -65,7 +67,11 @@ public class LpkReserveOrderService extends MybatisBaseService> orderList(PagerQuery pq) { ResultBean rb = ResultBean.fireFail(); LpkReserveOrderQuery query = pq.getParams();