From 7bad70d747a1c73ad3953e8faf0d5e57ed9ee1df Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期一, 28 十月 2024 14:36:42 +0800 Subject: [PATCH] xiugai --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/SignDayUtil.java | 27 ++++++ ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TVip.java | 156 +++++++++++++++++++++++++++++++++++++++ ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserVipDetailController.java | 3 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java | 7 + ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserSign.java | 2 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java | 2 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserVipDetail.java | 3 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 2 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java | 2 9 files changed, 199 insertions(+), 5 deletions(-) diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserSign.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserSign.java index 9f40e3a..022da3d 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserSign.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserSign.java @@ -54,6 +54,8 @@ @TableField("create_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime createTime; + @TableField(exist = false) + private Integer continueDays; } diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserVipDetail.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserVipDetail.java index 865d080..701a010 100644 --- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserVipDetail.java +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUserVipDetail.java @@ -91,6 +91,9 @@ @TableField(exist = false) private Integer type; + @TableField(exist = false) + private TVip vip; + } diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TVip.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TVip.java new file mode 100644 index 0000000..830ebda --- /dev/null +++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TVip.java @@ -0,0 +1,156 @@ +package com.ruoyi.account.api.model; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.core.web.domain.BasePojo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * <p> + * + * </p> + * + * @author 无关风月 + * @since 2024-08-06 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("t_vip") +@ApiModel(value="TVip对象", description="") +public class TVip extends BasePojo { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "会员名称") + @TableField("name") + private String name; + + @ApiModelProperty(value = "前端是否显示(0=否,1=是)") + @TableField("reveal") + private Integer reveal; + + @ApiModelProperty(value = "月卡价格") + @TableField("monthly_card") + private BigDecimal monthlyCard; + + @ApiModelProperty(value = "月卡显示(0=否,1=是)") + @TableField("monthly_card_reveal") + private Integer monthlyCardReveal; + + @ApiModelProperty(value = "月卡折扣") + @TableField("monthly_card_discount") + private BigDecimal monthlyCardDiscount; + + @ApiModelProperty(value = "月卡折扣开始时间") + @TableField("monthly_card_discount_start") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime monthlyCardDiscountStart; + + @ApiModelProperty(value = "月卡折扣结束时间") + @TableField("monthly_card_discount_end") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime monthlyCardDiscountEnd; + + @ApiModelProperty(value = "月卡折扣显示(0=否,1=是)") + @TableField("monthly_card_discount_reveal") + private Integer monthlyCardDiscountReveal; + + @ApiModelProperty(value = "季卡价格") + @TableField("season_card") + private BigDecimal seasonCard; + + @ApiModelProperty(value = "季卡显示(0=否,1=是)") + @TableField("season_card_reveal") + private Integer seasonCardReveal; + + @ApiModelProperty(value = "季卡折扣") + @TableField("season_card_discount") + private BigDecimal seasonCardDiscount; + + @ApiModelProperty(value = "季卡折扣开始时间") + @TableField("season_card_discount_start") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime seasonCardDiscountStart; + + @ApiModelProperty(value = "季卡折扣结束时间") + @TableField("season_card_discount_end") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime seasonCardDiscountEnd; + + @ApiModelProperty(value = "季卡折扣显示(0=否,1=是)") + @TableField("season_card_discount_reveal") + private Integer seasonCardDiscountReveal; + + @ApiModelProperty(value = "年卡价格") + @TableField("annual_card") + private BigDecimal annualCard; + + @ApiModelProperty(value = "年卡显示(0=否,1=是)") + @TableField("annual_card_reveal") + private Integer annualCardReveal; + + @ApiModelProperty(value = "年卡折扣") + @TableField("annual_card_discount") + private BigDecimal annualCardDiscount; + + @ApiModelProperty(value = "年卡折扣开始时间") + @TableField("annual_card_discount_start") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime annualCardDiscountStart; + + @ApiModelProperty(value = "年卡折扣结束时间") + @TableField("annual_card_discount_end") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime annualCardDiscountEnd; + + @ApiModelProperty(value = "年卡折扣显示(0=否,1=是)") + @TableField("annual_card_discount_reveal") + private Integer annualCardDiscountReveal; + + @ApiModelProperty(value = "折扣次数") + @TableField("discount_times") + private Integer discountTimes; + + @ApiModelProperty(value = "最高抵扣金额") + @TableField("maximum_deduction") + private BigDecimal maximumDeduction; + + @ApiModelProperty(value = "抵扣类型(1=服务费)") + @TableField("deduction_type") + private Integer deductionType; + + @ApiModelProperty(value = "优惠券[{\"id\":1,\"number\":1}]") + @TableField("coupon") + private String coupon; + + @ApiModelProperty(value = "双倍积分开关(0=否,1=是)") + @TableField("double_integration") + private Integer doubleIntegration; + + @ApiModelProperty(value = "商城专享价开关(0=否,1=是)") + @TableField("mall_exclusive_price") + private Integer mallExclusivePrice; + @ApiModelProperty(value = "内部会员折扣") + @TableField("discount") + private BigDecimal discount; + @ApiModelProperty(value = "添加的会员类型 1常规 2内部") + @TableField("type") + private Integer type; + + @ApiModelProperty(value = "优惠券名称和张数 后台列表展示使用") + @TableField(exist = false) + private String couponName; + + +} diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java index 2fb1b42..5d89233 100644 --- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java +++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java @@ -48,5 +48,5 @@ R<UploadRealTimeMonitoringPageData> getAll(@RequestBody MongoChargingOrderQuery mongoChargingOrderQuery); @PostMapping("/uploadRealTimeMonitoringData/delete") - R delete(@RequestParam String id); + R delete(@RequestParam("id") String id); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java index 01c39c3..6a9293c 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java @@ -40,6 +40,7 @@ import com.ruoyi.order.api.model.TGrantVip; import com.ruoyi.other.api.domain.*; import com.ruoyi.other.api.domain.TCoupon; +import com.ruoyi.other.api.domain.TVip; import com.ruoyi.other.api.dto.UnitListQueryDto; import com.ruoyi.other.api.feignClient.IntegralRuleClient; import com.ruoyi.other.api.feignClient.OtherClient; @@ -705,7 +706,7 @@ @ApiOperation(value = "优惠卷详情(1可使用2不可用)", tags = {"小程序-个人中心"}) - @GetMapping(value = "/user/coupon/getById") + @PostMapping(value = "/user/coupon/getById") public R<TAppCoupon> couponGetById(@RequestParam("id")Long id) { TAppCoupon appCoupon = appCouponService.getById(id); appCoupon.setUid(id.toString()); @@ -964,6 +965,10 @@ .eq(TAppUserSign::getAppUserId, userId) .orderByDesc(TAppUserSign::getSignDay) .list(); + for (TAppUserSign signRecord : signRecords) { + int i = signDayUtil.calculateContinuousSignDays1(signRecord.getAppUserId(), signRecord.getSignDay()); + signRecord.setContinueDays(i); + } return R.ok(signRecords); } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserVipDetailController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserVipDetailController.java index 54a2d3b..27c8667 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserVipDetailController.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserVipDetailController.java @@ -4,13 +4,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.account.api.dto.SendCouponDto; import com.ruoyi.account.api.model.TAppUserVipDetail; +import com.ruoyi.account.api.model.TVip; import com.ruoyi.account.api.vo.GetAppUserVipDetail; import com.ruoyi.account.service.TAppUserVipDetailService; import com.ruoyi.account.util.VipInfoDto; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.other.api.domain.TCoupon; -import com.ruoyi.other.api.domain.TVip; import com.ruoyi.other.api.dto.VipCouponDto; import com.ruoyi.other.api.feignClient.OtherClient; import com.ruoyi.other.api.feignClient.VipClient; @@ -67,6 +67,7 @@ // TVip data = vipClient.getInfo1(tAppUserVipDetail.getVipId()).getData(); tAppUserVipDetail.setVipName(tVip.getName()); tAppUserVipDetail.setType(tVip.getType()); + tAppUserVipDetail.setVip(tVip); } } diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/SignDayUtil.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/SignDayUtil.java index 3431f5f..f2f1b87 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/SignDayUtil.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/util/SignDayUtil.java @@ -4,7 +4,9 @@ import cn.hutool.core.date.DateUtil; import com.ruoyi.account.api.model.TAppUserSign; import com.ruoyi.account.service.TAppUserSignService; +import org.springframework.cglib.core.Local; import org.springframework.stereotype.Component; +import sun.rmi.server.LoaderHandler; import javax.annotation.Resource; import java.time.LocalDate; @@ -48,6 +50,31 @@ return calculateMaxContinuousSignDays(signDays); } + public int calculateContinuousSignDays1(Long userId, LocalDate date) { + DateTime startOfMonth = DateUtil.beginOfMonth(new Date()); +// DateTime endOfMonth = DateUtil.endOfMonth(new Date()); + // 获取用户的所有签到记录 + List<TAppUserSign> signRecords = signService.lambdaQuery() + .between(TAppUserSign::getSignDay, startOfMonth, date) + .eq(TAppUserSign::getAppUserId, userId) + .orderByDesc(TAppUserSign::getSignDay) + .list(); + + // 如果没有签到记录,则返回0 + if (signRecords.isEmpty()) { + return 0; + } + + // 将签到日期转换为 LocalDate 列表,并按照日期排序 + List<LocalDate> signDays = signRecords.stream() + .map(TAppUserSign::getSignDay) + .sorted() + .collect(Collectors.toList()); + + // 计算连续签到的最大天数 + return calculateMaxContinuousSignDays(signDays); + } + /** * 根据签到日期列表计算连续签到的最大天数 * @param signDays 签到日期列表 diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java index a254b05..44457bb 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java @@ -842,7 +842,7 @@ @ResponseBody - @PostMapping(value = "/watch/delete") + @GetMapping(value = "/watch/deletes") @ApiOperation(value = "监控订单-删除", tags = {"管理后台-订单管理"}) public R watchChargingOrder(@RequestParam String id) { uploadRealTimeMonitoringDataClient.delete(id); diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java index 05af7e9..3ea9ee4 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java @@ -351,7 +351,7 @@ //调起支付 PaymentOrder paymentOrder = new PaymentOrder(); paymentOrder.setCode(shopOrder.getCode()); - paymentOrder.setAmount(exchangeDto.getOrderPrice()); + paymentOrder.setAmount(exchangeDto.getPayPrice()); paymentOrder.setOpenId(user.getWxOpenid()); paymentOrder.setDescription("购买商品"); R<Map<String, Object>> mapR = wxPaymentClient.orderPay(paymentOrder); -- Gitblit v1.7.1