Kaynağa Gözat

优化代码,添加接口

liuchengsen 1 ay önce
ebeveyn
işleme
82950a4d87

+ 27 - 0
zhijiayun-gateway/src/main/resources/db/migration-v5.sql

@@ -0,0 +1,27 @@
+-- ============================================
+-- migration-v5.sql
+-- 邀请文案微信昵称 & 支付渠道切换追溯相关字段
+-- ============================================
+
+-- 1. t_user 补充微信昵称字段(幂等 ALTER)
+SET @col_exists = (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 't_user' AND COLUMN_NAME = 'wechat_nickname');
+SET @sql = IF(@col_exists = 0, "ALTER TABLE `t_user` ADD COLUMN `wechat_nickname` VARCHAR(128) DEFAULT NULL COMMENT '微信昵称' AFTER `wechat_union_id`", 'SELECT 1');
+PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
+
+-- 2. t_payment_order 补充实际支付渠道字段(幂等 ALTER)
+SET @col_exists = (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 't_payment_order' AND COLUMN_NAME = 'paid_channel');
+SET @sql = IF(@col_exists = 0, "ALTER TABLE `t_payment_order` ADD COLUMN `paid_channel` VARCHAR(20) DEFAULT NULL COMMENT '实际支付渠道:第一次支付成功时的渠道' AFTER `qr_code_url`", 'SELECT 1');
+PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
+
+-- 3. 支付订单重复支付记录表(切换渠道后多个渠道都支付成功时保留证据)
+CREATE TABLE IF NOT EXISTS `t_payment_order_extra_payment` (
+    `id`          BIGINT        NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+    `order_no`    VARCHAR(32)   NOT NULL COMMENT '订单号',
+    `channel`     VARCHAR(20)   NOT NULL COMMENT '实际支付渠道:WECHAT/ALIPAY',
+    `trade_no`    VARCHAR(64)   NOT NULL COMMENT '第三方交易号',
+    `amount`      DECIMAL(10,2) NOT NULL COMMENT '支付金额(元)',
+    `paid_time`   DATETIME      NOT NULL COMMENT '支付时间',
+    `create_time` DATETIME      DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+    PRIMARY KEY (`id`),
+    KEY `idx_order_no` (`order_no`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='支付订单重复支付记录表';

+ 2 - 2
zhijiayun-invite/src/main/java/com/xuekairui/invite/service/InviteService.java

@@ -833,7 +833,7 @@ public class InviteService {
             return user.getNickname();
             return user.getNickname();
         }
         }
         if (user.getPhone() != null && user.getPhone().length() >= 4) {
         if (user.getPhone() != null && user.getPhone().length() >= 4) {
-            return "手机尾号" + user.getPhone().substring(user.getPhone().length() - 4) + "的用户";
+            return "手机尾号" + user.getPhone().substring(user.getPhone().length() - 4);
         }
         }
         return "一位药店用户";
         return "一位药店用户";
     }
     }
@@ -869,7 +869,7 @@ public class InviteService {
 
 
         // 复制文本:与示例文案保持一致,便于用户一键转发
         // 复制文本:与示例文案保持一致,便于用户一键转发
         String copyText = String.format(
         String copyText = String.format(
-            "%s,在这里发现了一个药店采购神器——%s,咱们一起用起来吧!它聚合比价功能特别方便,能快速查到低价,帮你节省采购成本。用我的邀请码 %s 注册,你会获取到会员权益,咱们平台上见!下载链接%s",
+            "我是%s,在这里发现了一个药店采购神器——%s!它聚合比价功能特别方便,能快速查到最低价,帮你节省采购成本。填我的邀请码 %s 完成注册,你也会获得会员权益!下载链接%s",
             inviterNickname,
             inviterNickname,
             config.getAppName(),
             config.getAppName(),
             code.getCode(),
             code.getCode(),