From 33658ae5597c9e395545fac39d8fe4bfc732f2ca Mon Sep 17 00:00:00 2001 From: lisy <linlangsur163@163.com> Date: 星期五, 07 七月 2023 18:37:36 +0800 Subject: [PATCH] account:充值记录-实体类 --- cloud-server-account/src/main/java/com/dsh/account/entity/RechargeRecords.java | 79 +++++++++++++++ cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | 83 +++++++++++++++- cloud-server-account/src/main/java/com/dsh/account/enums/RechargeRecordEnum.java | 26 +++++ cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java | 16 +++ cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml | 6 + cloud-server-account/src/main/java/com/dsh/account/service/RechargeRecordsService.java | 16 +++ cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java | 20 ++++ 7 files changed, 240 insertions(+), 6 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/entity/RechargeRecords.java b/cloud-server-account/src/main/java/com/dsh/account/entity/RechargeRecords.java new file mode 100644 index 0000000..05d3117 --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/entity/RechargeRecords.java @@ -0,0 +1,79 @@ +package com.dsh.account.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * <p> + * 充值记录 + * </p> + * + * @author jqs + * @since 2023-07-07 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_recharge_records") +public class RechargeRecords extends Model<RechargeRecords> { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 流水号 + */ + private String code; + /** + * 用户id + */ + private Integer appUserId; + /** + * 充值金额 + */ + private BigDecimal amount; + /** + * 玩湃币 + */ + private Integer playPaiCoins; + /** + * 支付状态(1=待支付,2=已支付) + */ + private Integer payStatus; + /** + * 支付时间 + */ + private Date payTime; + /** + * 第三方支付流水号 + */ + private String orderNumber; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + private Integer state; + /** + * 添加时间 + */ + private Date insertTime; + + + @Override + protected Serializable pkVal() { + return this.id; + } + +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/enums/RechargeRecordEnum.java b/cloud-server-account/src/main/java/com/dsh/account/enums/RechargeRecordEnum.java new file mode 100644 index 0000000..a19401c --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/enums/RechargeRecordEnum.java @@ -0,0 +1,26 @@ +package com.dsh.account.enums; + + + +public enum RechargeRecordEnum { + COURSE_PACKAGE_PURCHASE("课包购买"), + VENUE_RESERVATION("场地预约"), + SMART_STADIUM("智慧球场"), + ANNUAL_MEMBERSHIP("年度会员"), + CONTINUATION_PAYMENT("续课"), + RECHARGE("充值玩湃币"), + EVENT_REGISTRATION("赛事报名"), + CANCEL_EVENT_REGISTRATION("取消赛事报名"), + CANCEL_VENUE_RESERVATION("取消场地预约"), + + + ; + String msg; + + RechargeRecordEnum() { + } + + RechargeRecordEnum(String msg) { + this.msg = msg; + } +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java b/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java new file mode 100644 index 0000000..30237b2 --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/mapper/RechargeRecordsMapper.java @@ -0,0 +1,16 @@ +package com.dsh.account.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsh.account.entity.RechargeRecords; + +/** + * <p> + * 充值记录 Mapper 接口 + * </p> + * + * @author jqs + * @since 2023-07-07 + */ +public interface RechargeRecordsMapper extends BaseMapper<RechargeRecords> { + +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/RechargeRecordsService.java b/cloud-server-account/src/main/java/com/dsh/account/service/RechargeRecordsService.java new file mode 100644 index 0000000..183fd4d --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/service/RechargeRecordsService.java @@ -0,0 +1,16 @@ +package com.dsh.account.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dsh.account.entity.RechargeRecords; + +/** + * <p> + * 充值记录 服务类 + * </p> + * + * @author jqs + * @since 2023-07-07 + */ +public interface RechargeRecordsService extends IService<RechargeRecords> { + +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java new file mode 100644 index 0000000..83729db --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java @@ -0,0 +1,20 @@ +package com.dsh.account.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsh.account.entity.RechargeRecords; +import com.dsh.account.mapper.RechargeRecordsMapper; +import com.dsh.account.service.RechargeRecordsService; +import org.springframework.stereotype.Service; + +/** + * <p> + * 充值记录 服务实现类 + * </p> + * + * @author jqs + * @since 2023-07-07 + */ +@Service +public class RechargeRecordsServiceImpl extends ServiceImpl<RechargeRecordsMapper, RechargeRecords> implements RechargeRecordsService { + +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java index 2111e73..de01b85 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java @@ -3,8 +3,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsh.account.entity.RechargeRecords; import com.dsh.account.entity.TAppUser; import com.dsh.account.entity.TStudent; +import com.dsh.account.entity.VipPayment; +import com.dsh.account.enums.RechargeRecordEnum; import com.dsh.account.feignclient.activity.MerChandiseClient; import com.dsh.account.feignclient.course.CoursePaymentClient; import com.dsh.account.feignclient.course.model.CourseOfStoreVo; @@ -14,8 +17,10 @@ import com.dsh.account.feignclient.other.StoreClient; import com.dsh.account.feignclient.other.model.Store; import com.dsh.account.feignclient.other.model.TImgConfig; +import com.dsh.account.mapper.RechargeRecordsMapper; import com.dsh.account.mapper.TAppUserMapper; import com.dsh.account.mapper.TStudentMapper; +import com.dsh.account.mapper.VipPaymentMapper; import com.dsh.account.model.AddAppUserVo; import com.dsh.account.model.JoinPlayPaiVo; import com.dsh.account.model.LoginSMSCodeVo; @@ -35,6 +40,7 @@ import org.springframework.web.bind.annotation.RequestBody; import javax.annotation.Resource; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -83,10 +89,11 @@ @Resource private ImgConfigClient icfgClient; + @Resource + private VipPaymentMapper vipPaymentMapper; - - - + @Resource + private RechargeRecordsMapper rrMapper; @Override public ClassInfoVo queryUserOfStus(Integer id,String latitude,String longitude) { @@ -464,17 +471,81 @@ @Override public BillingDetailsVo queryUserBillingDetails(String yearMonth, Integer recordId) { BillingDetailsVo vo = new BillingDetailsVo(); + List<BillingDetailsVo.ConsumeDetail> details = new ArrayList<>(); + + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM-dd HH:mm"); if (null != yearMonth){ + Date monthStart = DateTimeHelper.getCurrentIdetMouthStart(yearMonth); Date monthEnd = DateTimeHelper.getCurrentIdeaMouthEnd(yearMonth); +// 1.赛事报名 +// 2.课包购买 - +// 3.场地预约 +// 4.智慧球场 +// 5.年度会员 + List<VipPayment> vipPayments = vipPaymentMapper.selectList(new QueryWrapper<VipPayment>() + .eq("payStatus",2 ) + .between("insertTime",monthStart, monthEnd)); + if (vipPayments.size() > 0){ + for (VipPayment vipPayment : vipPayments) { + BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); + consumeDetail.setConsumeName(RechargeRecordEnum.ANNUAL_MEMBERSHIP.name()); + consumeDetail.setConsumeTime(simpleDateFormat.format(vipPayment.getInsertTime())); + consumeDetail.setConsumeAmount("+"+vipPayment.getAmount()); + details.add(consumeDetail); + } + } +// 6.续课 +// 7.充值 + List<RechargeRecords> rechargeRecords = rrMapper.selectList(new QueryWrapper<RechargeRecords>() + .eq("payStatus", 2) + .between("insertTime",monthStart, monthEnd)); + if (rechargeRecords.size() > 0){ + for (RechargeRecords rechargeRecord : rechargeRecords) { + BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); + consumeDetail.setConsumeName(RechargeRecordEnum.RECHARGE.name()+":"+rechargeRecord.getPlayPaiCoins()); + consumeDetail.setConsumeTime(simpleDateFormat.format(rechargeRecord.getInsertTime())); + consumeDetail.setConsumeAmount("+"+rechargeRecord.getAmount()); + details.add(consumeDetail); + } + } }else { Date currentMouthStart = DateTimeHelper.getCurrentMouthStart(); Date currentMouthEnd = DateTimeHelper.getCurrentMouthEnd(); - - +// 1.赛事报名 +// 2.课包购买 +// 3.场地预约 +// 4.智慧球场 +// 5.年度会员 + List<VipPayment> vipPayments = vipPaymentMapper.selectList(new QueryWrapper<VipPayment>() + .eq("payStatus",2 ) + .between("insertTime",currentMouthStart, currentMouthEnd)); + if (vipPayments.size() > 0){ + for (VipPayment vipPayment : vipPayments) { + BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); + consumeDetail.setConsumeName(RechargeRecordEnum.ANNUAL_MEMBERSHIP.name()); + consumeDetail.setConsumeTime(simpleDateFormat.format(vipPayment.getInsertTime())); + consumeDetail.setConsumeAmount("+"+vipPayment.getAmount()); + details.add(consumeDetail); + } + } +// 6.续课 +// 7.充值 + List<RechargeRecords> rechargeRecords = rrMapper.selectList(new QueryWrapper<RechargeRecords>() + .eq("payStatus", 2) + .between("insertTime",currentMouthStart, currentMouthEnd)); + if (rechargeRecords.size() > 0){ + for (RechargeRecords rechargeRecord : rechargeRecords) { + BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); + consumeDetail.setConsumeName(RechargeRecordEnum.RECHARGE.name()+":"+rechargeRecord.getPlayPaiCoins()); + consumeDetail.setConsumeTime(simpleDateFormat.format(rechargeRecord.getInsertTime())); + consumeDetail.setConsumeAmount("+"+rechargeRecord.getAmount()); + details.add(consumeDetail); + } + } } + vo.setDetails(details); return vo; } diff --git a/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml b/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml new file mode 100644 index 0000000..48dd4bb --- /dev/null +++ b/cloud-server-account/src/main/resources/mapper/RechargeRecordsMapper.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.dsh.account.mapper.RechargeRecordsMapper"> + + +</mapper> -- Gitblit v1.7.1