Browse Source

update telegram

Tokumeikoi 4 years ago
parent
commit
2e13bab3d8

+ 21 - 0
app/Http/Controllers/Guest/TelegramController.php

@@ -6,6 +6,7 @@ use App\Services\TelegramService;
 use Illuminate\Http\Request;
 use App\Http\Controllers\Controller;
 use App\Models\User;
+use App\Utils\Helper;
 
 class TelegramController extends Controller
 {
@@ -26,6 +27,8 @@ class TelegramController extends Controller
             switch($this->msg->command) {
                 case '/bind': $this->bind();
                     break;
+                case '/traffic': $this->traffic();
+                    break;
                 default: $this->help();
             }
         } catch (\Exception $e) {
@@ -84,4 +87,22 @@ class TelegramController extends Controller
         $text = implode(PHP_EOL, $commands);
         $telegramService->sendMessage($msg->chat_id, "你可以使用以下命令进行操作:\n\n$text", 'markdown');
     }
+
+    private function traffic()
+    {
+        $msg = $this->msg;
+        if (!$msg->is_private) return;
+        $user = User::where('telegram_id', $msg->chat_id)->first();
+        if (!$user) {
+            $this->help();
+            return;
+        }
+        $transferEnable = Helper::trafficConvert($user->transfer_enable);
+        $up = Helper::trafficConvert($user->u);
+        $down = Helper::trafficConvert($user->d);
+        $remaining = Helper::trafficConvert($user->transfer_enable - ($user->u + $user->d));
+        $text = "🚥流量查询———————————————\n总流量:`{$transferEnable}`\n已用上行:`{$up}`\n已用下行:`{$down}`\n剩余流量:`{$remaining}`";
+        $telegramService = new TelegramService();
+        $telegramService->sendMessage($msg->chat_id, $text, 'markdown');
+    }
 }

+ 1 - 2
app/Http/Controllers/User/TicketController.php

@@ -10,7 +10,6 @@ use App\Models\User;
 use Illuminate\Http\Request;
 use App\Models\Ticket;
 use App\Models\TicketMessage;
-use App\Utils\Helper;
 use Illuminate\Support\Facades\DB;
 
 class TicketController extends Controller
@@ -194,7 +193,7 @@ class TicketController extends Controller
             ->where('telegram_id', '!=', NULL)
             ->get();
         foreach ($users as $user) {
-            $text = "📮工单提醒\n———————————————\n主题:\n`{$ticket->subject}`\n内容:\n`{$ticketMessage->message}`";
+            $text = "📮工单提醒 #{$ticket->id}\n———————————————\n主题:\n`{$ticket->subject}`\n内容:\n`{$ticketMessage->message}`";
             SendTelegramJob::dispatch($user->telegram_id, $text);
         }
     }

+ 18 - 0
app/Utils/Helper.php

@@ -98,4 +98,22 @@ class Helper
         if (!in_array($suffix, $suffixs)) return false;
         return true;
     }
+
+    public static function trafficConvert(int $byte)
+    {
+        $kb = 1024;
+        $mb = 1048576;
+        $gb = 1073741824;
+        if ($byte > $gb) {
+            return round($byte / $gb, 2) . ' GB';
+        } else if ($byte > $mb) {
+            return round($byte / $mb, 2) . ' MB';
+        } else if ($byte > $kb) {
+            return round($byte / $kb, 2) . ' KB';
+        } else if ($byte < 0) {
+            return 0;
+        } else {
+            return round($byte, 2) . ' B';
+        }
+    }
 }

File diff suppressed because it is too large
+ 0 - 0
public/assets/user/umi.js


Some files were not shown because too many files changed in this diff