seven 3 天之前
父节点
当前提交
0d64f20626
共有 2 个文件被更改,包括 34 次插入13 次删除
  1. 1 1
      app/Constants/StepStatus.php
  2. 33 12
      app/Services/SanJinRechargeService.php

+ 1 - 1
app/Constants/StepStatus.php

@@ -33,5 +33,5 @@ class StepStatus
     const QB_INPUT_CARD_NO = 19;//输入 银行卡号/支付宝账号
     const QB_INPUT_ACCOUNT = 20;//输入 姓名
 
-
+    const INPUT_RECHARGE_SJ_MONEY = 21;//输入 三斤充值金额
 }

+ 33 - 12
app/Services/SanJinRechargeService.php

@@ -41,6 +41,38 @@ class SanJinRechargeService
         }
 
 
+        // 支付通道
+        $pattern = '/^topup_channel@@(.+)$/';
+        if (preg_match($pattern, $data, $matches)) {
+            $k = $matches[1]; 
+            
+            // 验证 $k 是否有效
+            $channel = SanJinService::$CHANNEL;
+            if (!isset($channel[$k])) {
+                // 处理无效的通道
+                $text = "无效的支付通道!";
+                $res = [
+                    'chat_id' => $chatId,
+                    'text' => $text
+                ];
+                $telegram->sendMessage($res);
+                return;
+            }
+            
+            $data = [];
+            $data['payment_type'] = $k;
+            $data['amount'] = 0;
+            Cache::put($chatId.'_sj_payment', $data); 
+            Cache::put(get_step_key($chatId), StepStatus::INPUT_RECHARGE_SJ_MONEY);
+            
+            $text = "请输入预充值金额!";
+            $res = [
+                'chat_id' => $chatId,
+                'text' => $text
+            ];
+            $telegram->editMessageText($res);
+        }
+
         // //选择银行卡号
         // $pattern = "/^withdrawAddress@@choose_qb_\d+$/";
         // if (preg_match($pattern, $data)) {
@@ -96,21 +128,10 @@ class SanJinRechargeService
     public static function onMessage($chatId, $text, $messageId, $stepStatus)
     {
         switch ($stepStatus) {
-            case StepStatus::INPUT_WITHDRAW_QB_MONEY://输入提现金额
+            case StepStatus::INPUT_RECHARGE_SJ_MONEY://输入提现金额
                 $res = SanJinRechargeService::inputQbAmount($chatId, $text, $messageId);
                 return $res;
                 break;
-            case StepStatus::QB_INPUT_BANK_NAME://输入银行名称
-                $res = SanJinRechargeService::inputBankName($chatId, $text, $messageId);
-                return $res;
-            case StepStatus::QB_INPUT_CARD_NO://输入银行卡号/支付宝账号
-                $res = SanJinRechargeService::inputCardNo($chatId, $text, $messageId);
-                return $res;
-                break;
-            case StepStatus::QB_INPUT_ACCOUNT://输入姓名
-                $res = SanJinRechargeService::inputAccount($chatId, $text, $messageId);
-                return $res;
-                break;
         }
         return null;
     }