From 82995aeb10e8dacdd3e9f6e1569a26255fcecfec Mon Sep 17 00:00:00 2001 From: jianlin Date: Sun, 22 Jun 2025 09:10:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=966-22?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/demo/controller/AuditController.java | 26 ++++++++++ .../demo/controller/StatisticsController.java | 28 +++++++++++ .../demo/controller/WorkbenchController.java | 53 ++++++++++++++++++++ .../java/com/example/demo/domain/entity/Admin.java | 32 +++++++++++++ .../com/example/demo/domain/entity/AdminRole.java | 26 ++++++++++ .../java/com/example/demo/domain/entity/Log.java | 30 ++++++++++++ .../java/com/example/demo/domain/entity/Menu.java | 32 +++++++++++++ .../java/com/example/demo/domain/entity/Rate.java | 27 +++++++++++ .../java/com/example/demo/domain/entity/Role.java | 26 ++++++++++ .../com/example/demo/domain/entity/RoleMenu.java | 26 ++++++++++ .../com/example/demo/domain/entity/Statistics.java | 56 ++++++++++++++++++++++ .../java/com/example/demo/domain/entity/User.java | 40 ++++++++++++++++ .../example/demo/domain/entity/UserGoldRecord.java | 53 ++++++++++++++++++++ .../java/com/example/demo/domain/vo/Workbench.java | 25 ++++++++++ .../com/example/demo/domain/vo/WorkbenchOne.java | 32 +++++++++++++ .../com/example/demo/domain/vo/WorkbenchThree.java | 33 +++++++++++++ .../com/example/demo/domain/vo/WorkbenchTwo.java | 31 ++++++++++++ .../java/com/example/demo/mapper/AuditMapper.java | 18 +++++++ .../com/example/demo/mapper/WorkBenchMapper.java | 27 +++++++++++ .../com/example/demo/security/TokenFilter.java | 8 ++-- .../com/example/demo/service/AuditService.java | 14 ++++++ .../example/demo/service/StatisticsService.java | 14 ++++++ .../com/example/demo/service/WorkbenchService.java | 24 ++++++++++ .../example/demo/serviceImpl/AuditServiceImpl.java | 16 +++++++ .../demo/serviceImpl/StatisticsServiceImpl.java | 17 +++++++ .../demo/serviceImpl/WorkbenchServiceImpl.java | 41 ++++++++++++++++ src/main/resources/application.yml | 32 ++++++------- src/main/resources/mapper/AuditMapper.xml | 5 ++ src/main/resources/mapper/WorkBenchMapper.xml | 5 ++ 29 files changed, 777 insertions(+), 20 deletions(-) create mode 100644 src/main/java/com/example/demo/controller/AuditController.java create mode 100644 src/main/java/com/example/demo/controller/StatisticsController.java create mode 100644 src/main/java/com/example/demo/controller/WorkbenchController.java create mode 100644 src/main/java/com/example/demo/domain/entity/Admin.java create mode 100644 src/main/java/com/example/demo/domain/entity/AdminRole.java create mode 100644 src/main/java/com/example/demo/domain/entity/Log.java create mode 100644 src/main/java/com/example/demo/domain/entity/Menu.java create mode 100644 src/main/java/com/example/demo/domain/entity/Rate.java create mode 100644 src/main/java/com/example/demo/domain/entity/Role.java create mode 100644 src/main/java/com/example/demo/domain/entity/RoleMenu.java create mode 100644 src/main/java/com/example/demo/domain/entity/Statistics.java create mode 100644 src/main/java/com/example/demo/domain/entity/User.java create mode 100644 src/main/java/com/example/demo/domain/entity/UserGoldRecord.java create mode 100644 src/main/java/com/example/demo/domain/vo/Workbench.java create mode 100644 src/main/java/com/example/demo/domain/vo/WorkbenchOne.java create mode 100644 src/main/java/com/example/demo/domain/vo/WorkbenchThree.java create mode 100644 src/main/java/com/example/demo/domain/vo/WorkbenchTwo.java create mode 100644 src/main/java/com/example/demo/mapper/AuditMapper.java create mode 100644 src/main/java/com/example/demo/mapper/WorkBenchMapper.java create mode 100644 src/main/java/com/example/demo/service/AuditService.java create mode 100644 src/main/java/com/example/demo/service/StatisticsService.java create mode 100644 src/main/java/com/example/demo/service/WorkbenchService.java create mode 100644 src/main/java/com/example/demo/serviceImpl/AuditServiceImpl.java create mode 100644 src/main/java/com/example/demo/serviceImpl/StatisticsServiceImpl.java create mode 100644 src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java create mode 100644 src/main/resources/mapper/AuditMapper.xml create mode 100644 src/main/resources/mapper/WorkBenchMapper.xml diff --git a/src/main/java/com/example/demo/controller/AuditController.java b/src/main/java/com/example/demo/controller/AuditController.java new file mode 100644 index 0000000..7c58292 --- /dev/null +++ b/src/main/java/com/example/demo/controller/AuditController.java @@ -0,0 +1,26 @@ +package com.example.demo.controller; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @program: gold-java + * @ClassName AuditController + * @description: 审核模块 + * @author: Ethan + * @create: 2025−06-19 17:30 + * @Version 1.0 + **/ + +@RestController +@RequestMapping("/audit") +@RequiredArgsConstructor +@Slf4j +@Transactional +@CrossOrigin +public class AuditController { +} diff --git a/src/main/java/com/example/demo/controller/StatisticsController.java b/src/main/java/com/example/demo/controller/StatisticsController.java new file mode 100644 index 0000000..f40b449 --- /dev/null +++ b/src/main/java/com/example/demo/controller/StatisticsController.java @@ -0,0 +1,28 @@ +package com.example.demo.controller; + +import com.example.demo.service.StatisticsService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @program: gold-java + * @ClassName StatisticsController + * @description: 统计数据 + * @author: Ethan + * @create: 2025−06-18 11:47 + * @Version 1.0 + **/ + +@RestController +@RequestMapping("/statistics") +@RequiredArgsConstructor +@Slf4j +@CrossOrigin +public class StatisticsController { + @Autowired + private StatisticsService statisticsService; +} diff --git a/src/main/java/com/example/demo/controller/WorkbenchController.java b/src/main/java/com/example/demo/controller/WorkbenchController.java new file mode 100644 index 0000000..4c25484 --- /dev/null +++ b/src/main/java/com/example/demo/controller/WorkbenchController.java @@ -0,0 +1,53 @@ +package com.example.demo.controller; + +import com.example.demo.domain.vo.Workbench; +import com.example.demo.domain.vo.WorkbenchOne; +import com.example.demo.domain.vo.WorkbenchThree; +import com.example.demo.domain.vo.WorkbenchTwo; +import com.example.demo.service.WorkbenchService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @program: gold-java + * @ClassName WorkbenchController + * @description: 工作台相关 + * @author: Ethan + * @create: 2025−06-17 17:13 + * @Version 1.0 + **/ + +@RestController +@RequestMapping("/workbench") +@RequiredArgsConstructor +@CrossOrigin +@Slf4j +public class WorkbenchController { + + @Autowired + private WorkbenchService WorkbenchService; + + /* + 获取工作台卡片一的数据 + */ + @PostMapping("card1") + public WorkbenchOne card1(@RequestBody Workbench workbench){ + return WorkbenchService.getCard1(workbench.getToken(),workbench.getAreas()); + } + /* + 获取工作台卡片二的数据 + */ + @PostMapping("card2") + public WorkbenchTwo card2(@RequestBody Workbench workbench){ + return WorkbenchService.getCard2(workbench.getToken(),workbench.getAreas()); + } + /* + 获取工作台卡片三的数据 + */ + @PostMapping("card3") + public WorkbenchThree card3(@RequestBody Workbench workbench){ + return WorkbenchService.getCard3(workbench.getToken(),workbench.getAreas()); + } +} diff --git a/src/main/java/com/example/demo/domain/entity/Admin.java b/src/main/java/com/example/demo/domain/entity/Admin.java new file mode 100644 index 0000000..477b3e7 --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/Admin.java @@ -0,0 +1,32 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class Admin implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 主键ID + private String adminName; // 用户姓名 + private String account; // 账号 + private String password; // 密码 + private String machineId; // 机器码,限两个 + private Byte adminStatus; // 状态(启用/不启用) + private String market; // 地区 + private String postiton; // 职位 + private String remark; // 备注 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/AdminRole.java b/src/main/java/com/example/demo/domain/entity/AdminRole.java new file mode 100644 index 0000000..769a09b --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/AdminRole.java @@ -0,0 +1,26 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class AdminRole implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // id + private Integer roleId; // 角色id + private Integer adminId; // 用户id + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建事件 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/Log.java b/src/main/java/com/example/demo/domain/entity/Log.java new file mode 100644 index 0000000..acf9039 --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/Log.java @@ -0,0 +1,30 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class Log implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 日志id + private String ip; // ip地址 + private Integer adminId; // 用户id + private String method; // 方法名 + private String operation; // 操作 + private Object params; // 参数 + private String path; // 请求url + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间(操作时间) + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/Menu.java b/src/main/java/com/example/demo/domain/entity/Menu.java new file mode 100644 index 0000000..edb381f --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/Menu.java @@ -0,0 +1,32 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class Menu implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 权限id + private Integer parentId; // 父级菜单id + private Integer menuType; // 目录类型 + private String menuName; // 目录名称 + private String path; // 前端路径 + private String component; // 组件路径 + private String permission; // 权限标识 + private Integer sort; // 排序 + private Byte menuStatus; // 状态 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/Rate.java b/src/main/java/com/example/demo/domain/entity/Rate.java new file mode 100644 index 0000000..14a16b4 --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/Rate.java @@ -0,0 +1,27 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class Rate implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 汇率id + private String rateName; // 汇率名称 + private Integer num; // 汇率比例 + private Integer adminId; // 用户(修改人)id + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/Role.java b/src/main/java/com/example/demo/domain/entity/Role.java new file mode 100644 index 0000000..c572af9 --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/Role.java @@ -0,0 +1,26 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class Role implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 角色id + private String roleName; // 角色名 + private String roleKey; // 角色标识符 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/RoleMenu.java b/src/main/java/com/example/demo/domain/entity/RoleMenu.java new file mode 100644 index 0000000..aa92c0b --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/RoleMenu.java @@ -0,0 +1,26 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class RoleMenu implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 角色权限id + private Integer roleId; // 角色类型 + private Integer menuId; // 权限id + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/Statistics.java b/src/main/java/com/example/demo/domain/entity/Statistics.java new file mode 100644 index 0000000..d6970ee --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/Statistics.java @@ -0,0 +1,56 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +/** + * @program: gold-java + * @ClassName Statistics + * @description: + * @author: Ethan + * @create: 2025−06-20 16:12 + * @Version 1.0 + **/ + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class Statistics implements Serializable { + private static final long serialVersionUID = 1L; + + + private Integer id; // id + private String market;// 地区 + private Integer currentGold; // 当前金币余量 + private Integer dailyChange; // 余量较前一日变化 + private Integer currentPermanent; // 余量-永久金币 + private Integer currentFreeJune; // 余量-六月到期免费金币 + private Integer currentFreeDecember; // 余量-十二月到期免费金币 + private Integer currentTask; // 余量-任务金币 + private Integer recharge; // 当日充值(永久+免费) + private Integer money; // 当日金额(永久) + private Integer consumePermanent; // 当日新增消费(永久) + private Integer consumeFreeJune; // 当日新增消费(六月免费) + private Integer consumeFreeDecember; // 当日新增消费(十二月免费) + private Integer consumeTask; // 当日新增消费(任务) + private Integer refundPermanent; // 当日新增退款 + private Integer refundFreeJune; // 当日新增退款(六月免费) + private Integer refundFreeDecember; // 当日新增退款(十二月免费) + private Integer refundTask; // 当日新增退款(任务) + private Integer rechargeNum; // 当日充值人数 + private Integer firstRecharge; // 当日首充人数 + // 数据日期 + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai") + private Date currentDatetime; + // 创建时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; + // 更新时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; +} diff --git a/src/main/java/com/example/demo/domain/entity/User.java b/src/main/java/com/example/demo/domain/entity/User.java new file mode 100644 index 0000000..33eef20 --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/User.java @@ -0,0 +1,40 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class User implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // 客户id + private Integer jwcode; // 精网号 + private String name; // 客户姓名 + private String market; // 所属地区 + private Integer sumPermentGold; // 历史永久金币 + private Integer sumFreeJune; // 历史六月免费金币 + private Integer sumFreeDecember; // 历史十二月免费金币 + private Integer sumTaskGold; // 历史任务金币 + private Integer currentPermentGold; // 当前永久金币 + private Integer currentFreeJune; // 当前六月免费金币 + private Integer currentFreeDecember; // 当前十二月免费金币 + private Integer currentTaskGold; // 当前任务金币 + private Integer rechargeNum; // 充值次数 + private Integer consumeNum; // 消费次数 + + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai") + private Date firstRecharge; // 首充日期 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/UserGoldRecord.java b/src/main/java/com/example/demo/domain/entity/UserGoldRecord.java new file mode 100644 index 0000000..da1e6a7 --- /dev/null +++ b/src/main/java/com/example/demo/domain/entity/UserGoldRecord.java @@ -0,0 +1,53 @@ +package com.example.demo.domain.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@NoArgsConstructor +@JsonIgnoreProperties(ignoreUnknown = true) +public class UserGoldRecord implements Serializable { + private static final long serialVersionUID = 1L; + + private Integer id; // id + private String orderCode; // 订单号 + private Integer jwcode; // 精网号 + private String activity; // 活动名称 + private Integer sumGold; // 金币总数 + private Integer permentGold; // 永久金币 + private Integer freeJune; // 六月免费金币 + private Integer freeDecember; // 十二月免费金币 + private Integer taskGold; // 任务金币 + private Integer money; // 金额[分] + private Integer rateId; // 汇率名称 + private String payModel; // 支付方式 + private String payPlatform; // 支付平台 + private String voucher; // 支付凭证 + private String goodsName; // 商品名称 + private String refundType; // 退款类型 + private Byte refundModel; // 退款方式(全部/部分退款) + private String remark; // 备注 + private Byte type; // 类型(充值/消耗/退款) + private Byte isRefund; // 是否已退款(消耗限定) + private Integer adminId; // 用户(提交人)id + private Integer auditId; // 审核人id + private Integer auditStatus; // 审核状态(待审核、通过、驳回、外部传入【默认通过】) + private String rejectReason; // 驳回理由 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date payTime; // 支付时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date createTime; // 创建时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date updateTime; // 更新时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") + private Date auditTime; // 审核时间 +} \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/vo/Workbench.java b/src/main/java/com/example/demo/domain/vo/Workbench.java new file mode 100644 index 0000000..d456849 --- /dev/null +++ b/src/main/java/com/example/demo/domain/vo/Workbench.java @@ -0,0 +1,25 @@ +package com.example.demo.domain.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * @program: gold-java + * @ClassName Workbench + * @description: 工作台请求参数 + * @author: Ethan + * @create: 2025−06-17 17:43 + * @Version 1.0 + **/ + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Workbench implements Serializable { + private String token; //用户token + private List areas; //地区列表 +} diff --git a/src/main/java/com/example/demo/domain/vo/WorkbenchOne.java b/src/main/java/com/example/demo/domain/vo/WorkbenchOne.java new file mode 100644 index 0000000..bc88020 --- /dev/null +++ b/src/main/java/com/example/demo/domain/vo/WorkbenchOne.java @@ -0,0 +1,32 @@ +package com.example.demo.domain.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @program: gold-java + * @ClassName Workbench + * @description: 工作台卡片1——当前金币余量 + * @author: Ethan + * @create: 2025−06-17 17:47 + * @Version 1.0 + **/ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class WorkbenchOne implements Serializable { + private static final long serialVersionUID = 1L; + private String token ; + private BigDecimal sumGold ; //当前金币余量 + private BigDecimal differ ; //较前一天的差异量 + private BigDecimal rechargeGold ; //永久金币 + private BigDecimal freeGold ; //免费金币 + private BigDecimal taskGold ; //任务金币 + private BigDecimal junFreeGold; //六月过期的免费金币 + private BigDecimal DecFreeGold; //十二月过期的免费金币 + +} diff --git a/src/main/java/com/example/demo/domain/vo/WorkbenchThree.java b/src/main/java/com/example/demo/domain/vo/WorkbenchThree.java new file mode 100644 index 0000000..1d612a6 --- /dev/null +++ b/src/main/java/com/example/demo/domain/vo/WorkbenchThree.java @@ -0,0 +1,33 @@ +package com.example.demo.domain.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @program: gold-java + * @ClassName Workbench + * @description: 工作台卡片3——全年累计消耗金币数 + * @author: Ethan + * @create: 2025−06-17 17:52 + * @Version 1.0 + **/ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class WorkbenchThree implements Serializable { + private static final long serialVersionUID = 1L; + private BigDecimal consumeCoin; //全年累计消耗金币数=消费+退款 + private BigDecimal consumeGold; //消费金币数 + private BigDecimal refundCoin; //退款金币数 + private BigDecimal yesterdayCoin; //昨日新增消耗 + private BigDecimal yesterdayGold; //昨日新增消耗——消费 + private BigDecimal yesterdayRefund; //昨日新增消费——退款 + //以下暂时不用 + private BigDecimal rechargeGold ; //其中付费金币 + private BigDecimal freeGold ; //其中免费金币 + private BigDecimal taskGold ; //其中任务金币 +} diff --git a/src/main/java/com/example/demo/domain/vo/WorkbenchTwo.java b/src/main/java/com/example/demo/domain/vo/WorkbenchTwo.java new file mode 100644 index 0000000..2d2f09f --- /dev/null +++ b/src/main/java/com/example/demo/domain/vo/WorkbenchTwo.java @@ -0,0 +1,31 @@ +package com.example.demo.domain.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @program: gold-java + * @ClassName Workbench + * @description: 工作台卡片2——全年累计金币数 + * @author: Ethan + * @create: 2025−06-17 17:49 + * @Version 1.0 + **/ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class WorkbenchTwo implements Serializable { + private static final long serialVersionUID = 1L; + private BigDecimal totalGold; //全年累计金币数 + private BigDecimal totalCoin; //折合新币数 + private BigDecimal yesterdayTotal; //昨日新增 + private BigDecimal yesterdayRecharge; //昨日新增充值 + //以下暂时不用 + private BigDecimal rechargeGold ; //充值付费金币 + private BigDecimal freeGold ; //免费金币 + private BigDecimal taskGold ; //任务金币 +} diff --git a/src/main/java/com/example/demo/mapper/AuditMapper.java b/src/main/java/com/example/demo/mapper/AuditMapper.java new file mode 100644 index 0000000..63dc767 --- /dev/null +++ b/src/main/java/com/example/demo/mapper/AuditMapper.java @@ -0,0 +1,18 @@ +package com.example.demo.mapper; + +import org.apache.ibatis.annotations.Mapper; + +/** + * @program: gold-java + * @ClassName AuditMapper + * @description: + * @author: Ethan + * @create: 2025−06-19 17:38 + * @Version 1.0 + **/ + +@Mapper +public interface AuditMapper { + + +} diff --git a/src/main/java/com/example/demo/mapper/WorkBenchMapper.java b/src/main/java/com/example/demo/mapper/WorkBenchMapper.java new file mode 100644 index 0000000..15a7c44 --- /dev/null +++ b/src/main/java/com/example/demo/mapper/WorkBenchMapper.java @@ -0,0 +1,27 @@ +package com.example.demo.mapper; + +import com.example.demo.domain.vo.WorkbenchOne; +import com.example.demo.domain.vo.WorkbenchThree; +import com.example.demo.domain.vo.WorkbenchTwo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * @program: gold-java + * @ClassName WorkBenchMapper + * @description: + * @author: Ethan + * @create: 2025−06-18 10:49 + * @Version 1.0 + **/ + +@Mapper +public interface WorkBenchMapper { + //工作台卡片一 + public WorkbenchOne getCard1(List areas); + //工作台卡片二 + public WorkbenchTwo getCard2(List areas); + //工作台卡片三 + public WorkbenchThree getCard3(List areas); +} diff --git a/src/main/java/com/example/demo/security/TokenFilter.java b/src/main/java/com/example/demo/security/TokenFilter.java index 8ca2a13..15abb56 100644 --- a/src/main/java/com/example/demo/security/TokenFilter.java +++ b/src/main/java/com/example/demo/security/TokenFilter.java @@ -251,9 +251,9 @@ public class TokenFilter extends OncePerRequestFilter { // 提取并处理token字段 String token = (String) jsonMap.get("token"); - if (StringUtils.hasText(token)) { + /* if (StringUtils.hasText(token)) { processToken(token, requestWrapper); - } + }*/ // 处理其他字段(如recharge列表) // 这里可以根据需要进一步解析其他字段 @@ -267,7 +267,7 @@ public class TokenFilter extends OncePerRequestFilter { } } - private void processToken(String token, HttpServletRequest request) { + /* private void processToken(String token, HttpServletRequest request) { if (StringUtils.hasText(token)) { try { UserDetails userDetails = JWTUtil.getUserDetailsList(token, Admin.class); @@ -285,7 +285,7 @@ public class TokenFilter extends OncePerRequestFilter { // Token无效,可以在这里添加相应的处理逻辑,例如返回401状态码等 } } - } + }*/ } diff --git a/src/main/java/com/example/demo/service/AuditService.java b/src/main/java/com/example/demo/service/AuditService.java new file mode 100644 index 0000000..ca524e9 --- /dev/null +++ b/src/main/java/com/example/demo/service/AuditService.java @@ -0,0 +1,14 @@ +package com.example.demo.service; + +/** + * @program: gold-java + * @ClassName AuditService + * @description: 审核模块 + * @author: Ethan + * @create: 2025−06-19 17:37 + * @Version 1.0 + **/ + + +public interface AuditService { +} diff --git a/src/main/java/com/example/demo/service/StatisticsService.java b/src/main/java/com/example/demo/service/StatisticsService.java new file mode 100644 index 0000000..603116f --- /dev/null +++ b/src/main/java/com/example/demo/service/StatisticsService.java @@ -0,0 +1,14 @@ +package com.example.demo.service; + +/** + * @program: gold-java + * @ClassName StatisticsService + * @description: 统计相关 + * @author: Ethan + * @create: 2025−06-18 12:00 + * @Version 1.0 + **/ + + +public interface StatisticsService { +} diff --git a/src/main/java/com/example/demo/service/WorkbenchService.java b/src/main/java/com/example/demo/service/WorkbenchService.java new file mode 100644 index 0000000..12b3361 --- /dev/null +++ b/src/main/java/com/example/demo/service/WorkbenchService.java @@ -0,0 +1,24 @@ +package com.example.demo.service; + +import com.example.demo.domain.vo.Workbench; +import com.example.demo.domain.vo.WorkbenchOne; +import com.example.demo.domain.vo.WorkbenchThree; +import com.example.demo.domain.vo.WorkbenchTwo; + +import java.util.List; + +/** + * @program: gold-java + * @ClassName WorkbenchService + * @description: + * @author: Ethan + * @create: 2025−06-18 10:21 + * @Version 1.0 + **/ + + +public interface WorkbenchService { + WorkbenchOne getCard1(String token, Listareas); + WorkbenchTwo getCard2(String token, Listareas); + WorkbenchThree getCard3(String token, Listareas); +} diff --git a/src/main/java/com/example/demo/serviceImpl/AuditServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/AuditServiceImpl.java new file mode 100644 index 0000000..19b30c0 --- /dev/null +++ b/src/main/java/com/example/demo/serviceImpl/AuditServiceImpl.java @@ -0,0 +1,16 @@ +package com.example.demo.serviceImpl; + +import com.example.demo.service.AuditService; + +/** + * @program: gold-java + * @ClassName AuditServiceImpl + * @description: 审核模块 + * @author: Ethan + * @create: 2025−06-19 17:38 + * @Version 1.0 + **/ + + +public class AuditServiceImpl implements AuditService { +} diff --git a/src/main/java/com/example/demo/serviceImpl/StatisticsServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/StatisticsServiceImpl.java new file mode 100644 index 0000000..a54bab7 --- /dev/null +++ b/src/main/java/com/example/demo/serviceImpl/StatisticsServiceImpl.java @@ -0,0 +1,17 @@ +package com.example.demo.serviceImpl; + +import com.example.demo.service.StatisticsService; +import org.springframework.stereotype.Service; + +/** + * @program: gold-java + * @ClassName StatisticsServiceImpl + * @description: 统计相关 + * @author: Ethan + * @create: 2025−06-18 12:00 + * @Version 1.0 + **/ + +@Service +public class StatisticsServiceImpl implements StatisticsService { +} diff --git a/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java new file mode 100644 index 0000000..e8fcd2f --- /dev/null +++ b/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java @@ -0,0 +1,41 @@ +package com.example.demo.serviceImpl; + +import com.example.demo.domain.vo.WorkbenchOne; +import com.example.demo.domain.vo.WorkbenchThree; +import com.example.demo.domain.vo.WorkbenchTwo; +import com.example.demo.mapper.WorkBenchMapper; +import com.example.demo.service.WorkbenchService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @program: gold-java + * @ClassName WorkbenchServiceImpl + * @description: + * @author: Ethan + * @create: 2025−06-18 10:47 + * @Version 1.0 + **/ + +@Service +public class WorkbenchServiceImpl implements WorkbenchService { + + @Autowired + private WorkBenchMapper workbenchMapper; + @Override + public WorkbenchOne getCard1(String token, List areas) { + return workbenchMapper.getCard1(areas); + } + + @Override + public WorkbenchTwo getCard2(String token, List areas) { + return workbenchMapper.getCard2(areas); + } + + @Override + public WorkbenchThree getCard3(String token, List areas) { + return workbenchMapper.getCard3(areas); + } +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 27452f6..b7fab44 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -19,22 +19,22 @@ spring: hikari: pool-name: mysql1HikariCP maximum-pool-size: 10 - mysql2: - jdbc-url: jdbc:mysql://39.101.133.168:3306/hljw?serverTimezone=Asia/Shanghai - username: hljw - password: 5dmWCCKfEk3TTeyn - driver-class-name: com.mysql.cj.jdbc.Driver - hikari: - pool-name: mysql2HikariCP - maximum-pool-size: 10 - mysql3: - jdbc-url: jdbc:mysql://121.89.234.155:3306/pay_xxcg_com?serverTimezone=Asia/Shanghai - username: pay_xxcg_com - password: 4hHmzxZH4rF4c5xr - driver-class-name: com.mysql.cj.jdbc.Driver - hikari: - pool-name: mysql2HikariCP - maximum-pool-size: 10 +# mysql2: +# jdbc-url: jdbc:mysql://39.101.133.168:3306/hljw?serverTimezone=Asia/Shanghai +# username: hljw +# password: 5dmWCCKfEk3TTeyn +# driver-class-name: com.mysql.cj.jdbc.Driver +# hikari: +# pool-name: mysql2HikariCP +# maximum-pool-size: 10 +# mysql3: +# jdbc-url: jdbc:mysql://121.89.234.155:3306/pay_xxcg_com?serverTimezone=Asia/Shanghai +# username: pay_xxcg_com +# password: 4hHmzxZH4rF4c5xr +# driver-class-name: com.mysql.cj.jdbc.Driver +# hikari: +# pool-name: mysql2HikariCP +# maximum-pool-size: 10 application: name: demo diff --git a/src/main/resources/mapper/AuditMapper.xml b/src/main/resources/mapper/AuditMapper.xml new file mode 100644 index 0000000..f6453a2 --- /dev/null +++ b/src/main/resources/mapper/AuditMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mapper/WorkBenchMapper.xml b/src/main/resources/mapper/WorkBenchMapper.xml new file mode 100644 index 0000000..d816489 --- /dev/null +++ b/src/main/resources/mapper/WorkBenchMapper.xml @@ -0,0 +1,5 @@ + + + + +