Browse Source

Merge remote-tracking branch 'origin/milestone-20250727-金币重构三期' into milestone-20250727-金币重构三期

lijianlin/feature-20250728171217-三期金豆消费相关
lijianlin 2 months ago
parent
commit
78bf3312fb
  1. 9
      src/main/java/com/example/demo/Mysql/MysqlServiceImpl.java
  2. 6
      src/main/java/com/example/demo/domain/entity/User.java
  3. 15
      src/main/java/com/example/demo/domain/vo/coin/ConsumeUser.java
  4. 8
      src/main/java/com/example/demo/domain/vo/coin/GoldDetail.java
  5. 16
      src/main/java/com/example/demo/domain/vo/coin/RechargeUser.java
  6. 13
      src/main/java/com/example/demo/domain/vo/coin/RefundUser.java
  7. 4
      src/main/resources/mapper/ConsumeMapper.xml
  8. 1
      src/main/resources/mapper/RechargeMapper.xml
  9. 14
      src/main/resources/mapper/UserMapper.xml

9
src/main/java/com/example/demo/Mysql/MysqlServiceImpl.java

@ -119,6 +119,7 @@ public class MysqlServiceImpl implements MysqlService {
String operation_platform = resultSet.getString("operation_platform");
String goods_name = resultSet.getString("goods_name");
String timestampPart = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"));
String orderNumber = UUID.randomUUID().toString().replaceAll("-", "");
if (StringUtils.isNumeric(name)) {
Integer admin_id = Integer.valueOf(adminService.getId(name));
@ -139,24 +140,24 @@ public class MysqlServiceImpl implements MysqlService {
if (validZeroTypes.contains(gtype)) {
mysqlStmt.setInt(13, 0);
mysqlStmt.setNull(20, java.sql.Types.INTEGER);
mysqlStmt.setString(1, "ERPCZ_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPCZ_" +orderNumber );
}
if (validOneTypes.contains(gtype)) {
mysqlStmt.setInt(13, 1);
mysqlStmt.setInt(20, 0);
mysqlStmt.setString(1, "ERPXF_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPXF_" + orderNumber);
}
if (validTwoTypes.contains(gtype)) {
mysqlStmt.setInt(13, 2);
mysqlStmt.setInt(20, 0);
mysqlStmt.setString(1, "ERPTK_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPTK_" +orderNumber);
mysqlStmt.setString(10, "退款商品");
mysqlStmt.setInt(11, 0);
}
if (validThreeTypes.contains(gtype)) {
mysqlStmt.setInt(13, 3);
mysqlStmt.setNull(20, java.sql.Types.INTEGER);
mysqlStmt.setString(1, "ERPQT_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPQT_" +orderNumber);
}
mysqlStmt.setInt(2, jwcode);

6
src/main/java/com/example/demo/domain/entity/User.java

@ -22,7 +22,7 @@ public class User implements Serializable {
private Integer id; // 客户id
@ExcelProperty("精网号")
private Integer jwcode; // 精网号
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名
@ExcelProperty("所属地区")
private String market; // 所属地区
@ -38,9 +38,9 @@ public class User implements Serializable {
private BigDecimal sumGold;// 金币总数
@ExcelProperty("当前永久金币")
private BigDecimal currentPermanentGold; // 当前永久金币
@ExcelProperty("当前六月免费金币")
@ExcelProperty("当前到期六月免费金币")
private BigDecimal currentFreeJune; // 当前六月免费金币
@ExcelProperty("当前十二月免费金币")
@ExcelProperty("当前到期十二月免费金币")
private BigDecimal currentFreeDecember; // 当前十二月免费金币
@ExcelProperty("当前任务金币")
private BigDecimal currentTaskGold; // 当前任务金币

15
src/main/java/com/example/demo/domain/vo/coin/ConsumeUser.java

@ -29,17 +29,19 @@ public class ConsumeUser implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名
@ExcelProperty("订单号")
private String orderCode; // 订单号
@ExcelProperty("精网号")
private Integer jwcode; // 精网号
@ExcelProperty("所属地区")
private String market; // 所属地区
@ExcelProperty("商品名称")
private String goodsName; // 商品名称
@ExcelProperty("充值方式")
@ExcelProperty("消耗平台")
private String payPlatform; // 消费平台
@ExcelProperty("金币总数")
@ExcelProperty("消耗金币总数")
private BigDecimal sumGold; // 金币总数
@ExcelProperty("永久金币")
private BigDecimal permanentGold; // 永久金币
@ -49,13 +51,14 @@ public class ConsumeUser implements Serializable {
private BigDecimal taskGold; // 任务金币
@ExcelProperty("备注")
private String remark; // 备注
@ExcelProperty("提交人ID")
@ExcelIgnore
// @ExcelProperty("提交人ID")
private Integer adminId; //提交人Id
@ExcelProperty("提交人姓名")
@ExcelProperty("提交人")
private String adminName; //提交人姓名
@ExcelProperty("是否退款")
private Integer isRefund; //是否退款
@ExcelProperty("消时间")
@ExcelProperty("消时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date createTime; // 消费时间
@ExcelIgnore

8
src/main/java/com/example/demo/domain/vo/coin/GoldDetail.java

@ -26,17 +26,17 @@ public class GoldDetail {
@ExcelIgnore
private String token;
@ExcelProperty("名")
@ExcelProperty("名")
private String name; // 名称
@ExcelProperty("精网号")
private Integer jwcode; // 精网号
@ExcelProperty("所属地区")
private String market; // 所属地区
@ExcelProperty("支付平台")
@ExcelProperty("平台信息")
private String payPlatform; // 支付平台
@ExcelProperty("类型")
@ExcelProperty("更新类型")
private Integer type; // 类型
@ExcelProperty("金币")
@ExcelProperty("金币数量")
private BigDecimal sumGold; // 总金币
@ExcelProperty("永久金币")
private BigDecimal permanentGold; //永久金币

16
src/main/java/com/example/demo/domain/vo/coin/RechargeUser.java

@ -26,9 +26,10 @@ public class RechargeUser {
private static final long serialVersionUID = 1L;
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名
@ExcelProperty("订单号")
private String orderCode; // 订单号
@ExcelProperty("精网号")
private Integer jwcode; // 精网号
@ -56,7 +57,7 @@ public class RechargeUser {
@ExcelProperty("支付方式")
private String payModel; // 支付方式
@ExcelProperty("充值方式")
@ExcelProperty("充值平台")
private String payPlatform; // 充值方式
@ExcelProperty("支付凭证")
@ -64,18 +65,17 @@ public class RechargeUser {
@ExcelProperty("备注")
private String remark; // 备注
@ExcelProperty("提交人Id")
@ExcelIgnore
private Integer adminId; // 提交人Id
@ExcelProperty("提交人姓名")
@ExcelProperty("提交人")
private String adminName; // 提交人姓名
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
@ExcelProperty("创建时间")
@ExcelProperty("付款时间")
private Date payTime; // 创建时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
@ExcelProperty("审核时间")
@ExcelProperty("充值时间")
private Date auditTime; // 审核时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
@ExcelIgnore

13
src/main/java/com/example/demo/domain/vo/coin/RefundUser.java

@ -29,7 +29,7 @@ public class RefundUser {
@ExcelProperty("订单号")
private String orderCode; // 订单号
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名
@ExcelProperty("精网号")
private Integer jwcode; // 精网号
@ -41,7 +41,7 @@ public class RefundUser {
private String refundType; // 退款类型
@ExcelProperty("退款方式")
private Byte refundModel; // 退款方式0全部/1部分退款
@ExcelProperty("金币总数")
@ExcelProperty("退款金币总数")
private BigDecimal sumGold; // 金币总数
@ExcelProperty("永久金币")
private BigDecimal permanentGold; // 永久金币
@ -51,15 +51,16 @@ public class RefundUser {
private BigDecimal taskGold; // 任务金币
@ExcelProperty("退款原因")
private String remark; // 退款原因
@ExcelProperty("提交人ID")
// @ExcelProperty("提交人ID")
@ExcelIgnore
private Integer adminId; //提交人Id
@ExcelProperty("提交人姓名")
@ExcelProperty("提交人")
private String adminName; //提交人姓名
@ExcelProperty("创建时间")
@ExcelProperty("提交时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date createTime; // 创建时间
@ExcelProperty("审核时间")
@ExcelProperty("退款时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date auditTime; // 审核时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")

4
src/main/resources/mapper/ConsumeMapper.xml

@ -76,6 +76,7 @@
<select id="selectBy" resultType="com.example.demo.domain.vo.coin.ConsumeUser">
SELECT u.name AS name,
ugr.jwcode AS jwcode,
ugr.order_code AS orderCode,
m.name as market,
ugr.goods_name AS goodsName,
ugr.pay_platform AS payPlatform,
@ -85,7 +86,8 @@
ugr.task_gold/100 AS taskGold,
ugr.remark AS remark,
a.admin_name AS adminName,
ugr.create_time AS createTime
ugr.create_time AS createTime,
ugr.is_refund AS isRefund
FROM user_gold_record ugr
left JOIN
user u ON u.jwcode = ugr.jwcode

1
src/main/resources/mapper/RechargeMapper.xml

@ -79,6 +79,7 @@
ugr.jwcode AS jwcode,
m.name as market,
ugr.activity AS activity,
ugr.order_code AS orderCode,
ugr.rate_id AS rateId,
r.rate_name AS rateName,
ugr.money/100 AS money,

14
src/main/resources/mapper/UserMapper.xml

@ -42,13 +42,13 @@
u.name AS "name",
u.jwcode AS "jwcode",
m.name AS "market",
(COALESCE(u.current_permanent_gold, 0) + COALESCE(u.current_free_june, 0) + COALESCE(u.current_free_december, 0) + COALESCE(u.current_task_gold, 0)) AS "nowSumGold",
u.current_permanent_gold AS "nowPermanentGold",
(COALESCE(u.current_free_june, 0) + COALESCE(u.current_free_december, 0)) AS "nowFreeGold",
u.current_task_gold AS "nowTaskGold",
(COALESCE(u.sum_permanent_gold, 0) + COALESCE(u.sum_free_june, 0) + COALESCE(u.sum_free_december, 0) + COALESCE(u.sum_task_gold, 0)) AS "historySumGold",
u.sum_permanent_gold AS "historyPermanentGold",
(COALESCE(u.sum_free_june, 0) + COALESCE(u.sum_free_december, 0)) AS "historyFreeGold",
ROUND((IFNULL(u.current_permanent_gold, 0) + IFNULL(u.current_free_june, 0) + IFNULL(u.current_free_december, 0) + IFNULL(u.current_task_gold, 0)) / 100.0, 2) AS nowSumGold,
ROUND(IFNULL(u.current_permanent_gold, 0) / 100.0, 2) AS nowPermanentGold,
ROUND((IFNULL(u.current_free_june, 0) + IFNULL(u.current_free_december, 0)) / 100.0, 2) AS nowFreeGold,
ROUND(IFNULL(u.current_task_gold, 0) / 100.0, 2) AS nowTaskGold,
ROUND((IFNULL(u.sum_permanent_gold, 0) + IFNULL(u.sum_free_june, 0) + IFNULL(u.sum_free_december, 0) + IFNULL(u.sum_task_gold, 0)) / 100.0, 2) AS historySumGold,
ROUND(IFNULL(u.sum_permanent_gold, 0) / 100.0, 2) AS historyPermanentGold,
ROUND((IFNULL(u.sum_free_june, 0) + IFNULL(u.sum_free_december, 0)) / 100.0, 2) AS historyFreeGold,
u.sum_task_gold AS "historyTaskGold",
u.recharge_num AS "rechargeNum",
u.consume_num AS "consumeNum",

Loading…
Cancel
Save