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 operation_platform = resultSet.getString("operation_platform");
String goods_name = resultSet.getString("goods_name"); String goods_name = resultSet.getString("goods_name");
String timestampPart = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS")); String timestampPart = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"));
String orderNumber = UUID.randomUUID().toString().replaceAll("-", "");
if (StringUtils.isNumeric(name)) { if (StringUtils.isNumeric(name)) {
Integer admin_id = Integer.valueOf(adminService.getId(name)); Integer admin_id = Integer.valueOf(adminService.getId(name));
@ -139,24 +140,24 @@ public class MysqlServiceImpl implements MysqlService {
if (validZeroTypes.contains(gtype)) { if (validZeroTypes.contains(gtype)) {
mysqlStmt.setInt(13, 0); mysqlStmt.setInt(13, 0);
mysqlStmt.setNull(20, java.sql.Types.INTEGER); mysqlStmt.setNull(20, java.sql.Types.INTEGER);
mysqlStmt.setString(1, "ERPCZ_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPCZ_" +orderNumber );
} }
if (validOneTypes.contains(gtype)) { if (validOneTypes.contains(gtype)) {
mysqlStmt.setInt(13, 1); mysqlStmt.setInt(13, 1);
mysqlStmt.setInt(20, 0); mysqlStmt.setInt(20, 0);
mysqlStmt.setString(1, "ERPXF_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPXF_" + orderNumber);
} }
if (validTwoTypes.contains(gtype)) { if (validTwoTypes.contains(gtype)) {
mysqlStmt.setInt(13, 2); mysqlStmt.setInt(13, 2);
mysqlStmt.setInt(20, 0); mysqlStmt.setInt(20, 0);
mysqlStmt.setString(1, "ERPTK_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPTK_" +orderNumber);
mysqlStmt.setString(10, "退款商品"); mysqlStmt.setString(10, "退款商品");
mysqlStmt.setInt(11, 0); mysqlStmt.setInt(11, 0);
} }
if (validThreeTypes.contains(gtype)) { if (validThreeTypes.contains(gtype)) {
mysqlStmt.setInt(13, 3); mysqlStmt.setInt(13, 3);
mysqlStmt.setNull(20, java.sql.Types.INTEGER); mysqlStmt.setNull(20, java.sql.Types.INTEGER);
mysqlStmt.setString(1, "ERPQT_" + timestampPart + randomNumber);
mysqlStmt.setString(1, "ERPQT_" +orderNumber);
} }
mysqlStmt.setInt(2, jwcode); 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 private Integer id; // 客户id
@ExcelProperty("精网号") @ExcelProperty("精网号")
private Integer jwcode; // 精网号 private Integer jwcode; // 精网号
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名 private String name; // 客户姓名
@ExcelProperty("所属地区") @ExcelProperty("所属地区")
private String market; // 所属地区 private String market; // 所属地区
@ -38,9 +38,9 @@ public class User implements Serializable {
private BigDecimal sumGold;// 金币总数 private BigDecimal sumGold;// 金币总数
@ExcelProperty("当前永久金币") @ExcelProperty("当前永久金币")
private BigDecimal currentPermanentGold; // 当前永久金币 private BigDecimal currentPermanentGold; // 当前永久金币
@ExcelProperty("当前六月免费金币")
@ExcelProperty("当前到期六月免费金币")
private BigDecimal currentFreeJune; // 当前六月免费金币 private BigDecimal currentFreeJune; // 当前六月免费金币
@ExcelProperty("当前十二月免费金币")
@ExcelProperty("当前到期十二月免费金币")
private BigDecimal currentFreeDecember; // 当前十二月免费金币 private BigDecimal currentFreeDecember; // 当前十二月免费金币
@ExcelProperty("当前任务金币") @ExcelProperty("当前任务金币")
private BigDecimal currentTaskGold; // 当前任务金币 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; private static final long serialVersionUID = 1L;
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名 private String name; // 客户姓名
@ExcelProperty("订单号")
private String orderCode; // 订单号
@ExcelProperty("精网号") @ExcelProperty("精网号")
private Integer jwcode; // 精网号 private Integer jwcode; // 精网号
@ExcelProperty("所属地区") @ExcelProperty("所属地区")
private String market; // 所属地区 private String market; // 所属地区
@ExcelProperty("商品名称") @ExcelProperty("商品名称")
private String goodsName; // 商品名称 private String goodsName; // 商品名称
@ExcelProperty("充值方式")
@ExcelProperty("消耗平台")
private String payPlatform; // 消费平台 private String payPlatform; // 消费平台
@ExcelProperty("金币总数")
@ExcelProperty("消耗金币总数")
private BigDecimal sumGold; // 金币总数 private BigDecimal sumGold; // 金币总数
@ExcelProperty("永久金币") @ExcelProperty("永久金币")
private BigDecimal permanentGold; // 永久金币 private BigDecimal permanentGold; // 永久金币
@ -49,13 +51,14 @@ public class ConsumeUser implements Serializable {
private BigDecimal taskGold; // 任务金币 private BigDecimal taskGold; // 任务金币
@ExcelProperty("备注") @ExcelProperty("备注")
private String remark; // 备注 private String remark; // 备注
@ExcelProperty("提交人ID")
@ExcelIgnore
// @ExcelProperty("提交人ID")
private Integer adminId; //提交人Id private Integer adminId; //提交人Id
@ExcelProperty("提交人姓名")
@ExcelProperty("提交人")
private String adminName; //提交人姓名 private String adminName; //提交人姓名
@ExcelProperty("是否退款") @ExcelProperty("是否退款")
private Integer isRefund; //是否退款 private Integer isRefund; //是否退款
@ExcelProperty("消时间")
@ExcelProperty("消时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date createTime; // 消费时间 private Date createTime; // 消费时间
@ExcelIgnore @ExcelIgnore

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

@ -26,17 +26,17 @@ public class GoldDetail {
@ExcelIgnore @ExcelIgnore
private String token; private String token;
@ExcelProperty("名")
@ExcelProperty("名")
private String name; // 名称 private String name; // 名称
@ExcelProperty("精网号") @ExcelProperty("精网号")
private Integer jwcode; // 精网号 private Integer jwcode; // 精网号
@ExcelProperty("所属地区") @ExcelProperty("所属地区")
private String market; // 所属地区 private String market; // 所属地区
@ExcelProperty("支付平台")
@ExcelProperty("平台信息")
private String payPlatform; // 支付平台 private String payPlatform; // 支付平台
@ExcelProperty("类型")
@ExcelProperty("更新类型")
private Integer type; // 类型 private Integer type; // 类型
@ExcelProperty("金币")
@ExcelProperty("金币数量")
private BigDecimal sumGold; // 总金币 private BigDecimal sumGold; // 总金币
@ExcelProperty("永久金币") @ExcelProperty("永久金币")
private BigDecimal permanentGold; //永久金币 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; private static final long serialVersionUID = 1L;
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名 private String name; // 客户姓名
@ExcelProperty("订单号")
private String orderCode; // 订单号
@ExcelProperty("精网号") @ExcelProperty("精网号")
private Integer jwcode; // 精网号 private Integer jwcode; // 精网号
@ -56,7 +57,7 @@ public class RechargeUser {
@ExcelProperty("支付方式") @ExcelProperty("支付方式")
private String payModel; // 支付方式 private String payModel; // 支付方式
@ExcelProperty("充值方式")
@ExcelProperty("充值平台")
private String payPlatform; // 充值方式 private String payPlatform; // 充值方式
@ExcelProperty("支付凭证") @ExcelProperty("支付凭证")
@ -64,18 +65,17 @@ public class RechargeUser {
@ExcelProperty("备注") @ExcelProperty("备注")
private String remark; // 备注 private String remark; // 备注
@ExcelProperty("提交人Id")
@ExcelIgnore
private Integer adminId; // 提交人Id private Integer adminId; // 提交人Id
@ExcelProperty("提交人姓名")
@ExcelProperty("提交人")
private String adminName; // 提交人姓名 private String adminName; // 提交人姓名
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
@ExcelProperty("创建时间")
@ExcelProperty("付款时间")
private Date payTime; // 创建时间 private Date payTime; // 创建时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
@ExcelProperty("审核时间")
@ExcelProperty("充值时间")
private Date auditTime; // 审核时间 private Date auditTime; // 审核时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
@ExcelIgnore @ExcelIgnore

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

@ -29,7 +29,7 @@ public class RefundUser {
@ExcelProperty("订单号") @ExcelProperty("订单号")
private String orderCode; // 订单号 private String orderCode; // 订单号
@ExcelProperty("客户姓名")
@ExcelProperty("姓名")
private String name; // 客户姓名 private String name; // 客户姓名
@ExcelProperty("精网号") @ExcelProperty("精网号")
private Integer jwcode; // 精网号 private Integer jwcode; // 精网号
@ -41,7 +41,7 @@ public class RefundUser {
private String refundType; // 退款类型 private String refundType; // 退款类型
@ExcelProperty("退款方式") @ExcelProperty("退款方式")
private Byte refundModel; // 退款方式0全部/1部分退款 private Byte refundModel; // 退款方式0全部/1部分退款
@ExcelProperty("金币总数")
@ExcelProperty("退款金币总数")
private BigDecimal sumGold; // 金币总数 private BigDecimal sumGold; // 金币总数
@ExcelProperty("永久金币") @ExcelProperty("永久金币")
private BigDecimal permanentGold; // 永久金币 private BigDecimal permanentGold; // 永久金币
@ -51,15 +51,16 @@ public class RefundUser {
private BigDecimal taskGold; // 任务金币 private BigDecimal taskGold; // 任务金币
@ExcelProperty("退款原因") @ExcelProperty("退款原因")
private String remark; // 退款原因 private String remark; // 退款原因
@ExcelProperty("提交人ID")
// @ExcelProperty("提交人ID")
@ExcelIgnore
private Integer adminId; //提交人Id private Integer adminId; //提交人Id
@ExcelProperty("提交人姓名")
@ExcelProperty("提交人")
private String adminName; //提交人姓名 private String adminName; //提交人姓名
@ExcelProperty("创建时间")
@ExcelProperty("提交时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date createTime; // 创建时间 private Date createTime; // 创建时间
@ExcelProperty("审核时间")
@ExcelProperty("退款时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
private Date auditTime; // 审核时间 private Date auditTime; // 审核时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") @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 id="selectBy" resultType="com.example.demo.domain.vo.coin.ConsumeUser">
SELECT u.name AS name, SELECT u.name AS name,
ugr.jwcode AS jwcode, ugr.jwcode AS jwcode,
ugr.order_code AS orderCode,
m.name as market, m.name as market,
ugr.goods_name AS goodsName, ugr.goods_name AS goodsName,
ugr.pay_platform AS payPlatform, ugr.pay_platform AS payPlatform,
@ -85,7 +86,8 @@
ugr.task_gold/100 AS taskGold, ugr.task_gold/100 AS taskGold,
ugr.remark AS remark, ugr.remark AS remark,
a.admin_name AS adminName, 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 FROM user_gold_record ugr
left JOIN left JOIN
user u ON u.jwcode = ugr.jwcode user u ON u.jwcode = ugr.jwcode

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

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

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

@ -42,13 +42,13 @@
u.name AS "name", u.name AS "name",
u.jwcode AS "jwcode", u.jwcode AS "jwcode",
m.name AS "market", 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.sum_task_gold AS "historyTaskGold",
u.recharge_num AS "rechargeNum", u.recharge_num AS "rechargeNum",
u.consume_num AS "consumeNum", u.consume_num AS "consumeNum",

Loading…
Cancel
Save