diff --git a/app/Utils/API/PaymentNew.php b/app/Utils/API/PaymentNew.php index 3f8761f..17719ee 100644 --- a/app/Utils/API/PaymentNew.php +++ b/app/Utils/API/PaymentNew.php @@ -10,10 +10,13 @@ use support\Log; */ class PaymentNew { - public static function generate_encrypt_value($data, $secret_key) + + protected static $secret_key = "sZ2wAfh1lMkxBVrlY4uZY8Fj92E4scFf"; + protected static $ShopUserLongId = "776ae472-d4fc-435c-9639-be5763138d95"; + protected static function generate_encrypt_value($data) { - // 1. 过滤掉 EncryptValue 和值为 null 的参数 - $filtered_data = array_filter($data, function($value, $key) { + // 1. 过滤掉 EncryptValue 和值为 null 的参数 + $filtered_data = array_filter($data, function ($value, $key) { return $key !== 'EncryptValue' && $value !== null; }, ARRAY_FILTER_USE_BOTH); @@ -36,10 +39,10 @@ class PaymentNew // 移除最后一个多余的 & $param_str = rtrim($param_str, '&'); // 添加 HashKey - $param_str .= "&HashKey=" . trim($secret_key); + $param_str .= "&HashKey=" . trim(self::$secret_key); // 输出拼接后的字符串以供调试(可选) - echo "Lowercase string: $param_str\n"; + // echo "Lowercase string: $param_str\n"; // 4. 转换为小写 $param_str = strtolower($param_str); @@ -54,21 +57,19 @@ class PaymentNew /** * 转账 */ - public static function pushMoney($money, $payeeAccountName, $payeeAccountNumber, $payeeBankName,$orderId) + public static function pushMoney($money, $payeeAccountName, $payeeAccountNumber, $payeeBankName, $orderId) { - $secret_key = "sZ2wAfh1lMkxBVrlY4uZY8Fj92E4scFf"; $url = "https://mdf.hr5688.com/api/createPaymentOrder"; $PaymentChannelId = 0; - if($payeeBankName == "bKash"){ + if ($payeeBankName == "bKash") { $PaymentChannelId = 34; - }else{ + } else { $PaymentChannelId = 35; } // Guzzle HTTP client $client = new Client(); - var_dump(11111111111); - var_dump($orderId); + // var_dump($orderId); // 请求数据 $payload = [ "Amount" => $money, @@ -80,15 +81,13 @@ class PaymentNew "PayeeIFSCCode" => "", "PaymentChannelId" => $PaymentChannelId, "ShopInformUrl" => "http://149.129.107.38", - "ShopOrderId" => $orderId."", + "ShopOrderId" => $orderId . "", "ShopUserLongId" => "776ae472-d4fc-435c-9639-be5763138d95" ]; - var_dump($payload); // 生成加密值 - $encrypt_value = self::generate_encrypt_value($payload, $secret_key); - var_dump($encrypt_value); + $encrypt_value = self::generate_encrypt_value($payload); + $payload["EncryptValue"] = $encrypt_value; - var_dump($encrypt_value); try { // 发送 POST 请求 $response = $client->post($url, [ @@ -98,7 +97,6 @@ class PaymentNew 'Content-Type' => 'application/json', ] ]); - var_dump($response); // 获取响应内容 $responseBody = $response->getBody()->getContents(); $httpCode = $response->getStatusCode(); @@ -106,13 +104,51 @@ class PaymentNew if ($httpCode == 200) { echo $responseBody; } else { - echo "Error: HTTP Code $httpCode\n"; + Log::warning("请求支付api失败状态码:" . $httpCode . "responseBody:" . $responseBody); echo $responseBody; } return $responseBody; } catch (\GuzzleHttp\Exception\RequestException $e) { - echo "Request failed: " . $e->getMessage(); + Log::warning("请求支付api失未知失败:" . $e->getMessage()); + } + } + /** + * 查询商户余额 + * 返回-1则是失败 其他是余额 + */ + public static function shopGetBalance() + { + $url = "https://mdf.hr5688.com/api/shopGetBalance"; + $payload = [ + "CurrencyId" => 11, + "ShopUserLongId" => "776ae472-d4fc-435c-9639-be5763138d95" + ]; + $encrypt_value = self::generate_encrypt_value($payload); + $payload["EncryptValue"] = $encrypt_value; + $client = new Client(); + try { + // 发送 POST 请求 + $response = $client->post($url, [ + 'json' => $payload, + 'headers' => [ + 'Accept' => 'application/json', + 'Content-Type' => 'application/json', + ] + ]); + // 获取响应内容 + $responseBody = $response->getBody()->getContents(); + $httpCode = $response->getStatusCode(); + + if ($httpCode == 200) { + return json_decode($responseBody)->AmountAvailable; + } else { + + Log::warning("请求支付api失败状态码:" . $httpCode . "responseBody:" . $responseBody); + return -1; + } + } catch (\GuzzleHttp\Exception\RequestException $e) { + Log::warning("请求支付api失未知失败:" . $e->getMessage()); } } } diff --git a/app/Utils/API/SendCode.php b/app/Utils/API/SendCode.php index 9979e5c..1a75b37 100644 --- a/app/Utils/API/SendCode.php +++ b/app/Utils/API/SendCode.php @@ -81,11 +81,10 @@ class SendCode return $responseData['status']; } if($responseData['code'] == 1){ - Log::warning("token无效"); + Log::warning("号商api token无效"); return 2; } if($responseData['code'] == 2){ - echo('2WS号不存在'); return 3; } return -1; diff --git a/app/controller/IndexController.php b/app/controller/IndexController.php index 4e56544..08cc537 100644 --- a/app/controller/IndexController.php +++ b/app/controller/IndexController.php @@ -2,6 +2,7 @@ namespace app\controller; +use App\Utils\API\PaymentNew; use support\Request; use App\Utils\ApiResponse; @@ -12,6 +13,7 @@ class IndexController public function index(Request $request) { + var_dump(PaymentNew::shopGetBalance()); return response()->file(public_path() . '/index.html'); } diff --git a/app/controller/admin/api/v1/DashboardController.php b/app/controller/admin/api/v1/DashboardController.php index c68facf..f330659 100644 --- a/app/controller/admin/api/v1/DashboardController.php +++ b/app/controller/admin/api/v1/DashboardController.php @@ -55,9 +55,18 @@ class DashboardController * 登录人数 注册人数 提款人数 默认今天 */ $res = []; - $res['user_total'] = User::count(); - $res['register'] = User::where('f_id',0)->count(); - $res['inviteregistration'] =User::where('f_id','>',0)->count(); // 统计不同的 user_id 个数; + + // 获取今天的开始和结束时间 + $data = $request->post(); + $startOfDay = $data['start_time']; // 今天的开始时间(00:00:00) + $endOfDay = $data['end_time']; // 今天的结束时间(23:59:59) + + $login = User::whereBetween('login_time', [ $startOfDay, $endOfDay])->count(); + $registration = User::whereBetween('created_at', [ \Carbon\Carbon::createFromTimestamp($startOfDay)->toDateTimeString(), \Carbon\Carbon::createFromTimestamp($endOfDay)->toDateTimeString()])->count(); + $withdraw=Withdraw::whereBetween('createtime2', [ \Carbon\Carbon::createFromTimestamp($startOfDay)->toDateTimeString(), \Carbon\Carbon::createFromTimestamp($endOfDay)->toDateTimeString()])->count();; + $res['login']=$login; + $res['registration']=$registration; + $res['withdraw']=$withdraw; return ApiResponse::success(200, $res); } } diff --git a/app/model/APP/Announcement.php b/app/model/APP/Announcement.php deleted file mode 100644 index 8bd2b11..0000000 --- a/app/model/APP/Announcement.php +++ /dev/null @@ -1,110 +0,0 @@ - 'integer', - 'updatetime' => 'integer', - 'status' => 'integer', - ]; - - /** - * 获取创建时间的格式化值 - * - * @param mixed $value - * @return string - */ - public function getCreatetimeAttribute($value) - { - return date('Y-m-d H:i:s', $value); - } - - /** - * 获取更新时间的格式化值 - * - * @param mixed $value - * @return string - */ - public function getUpdatetimeAttribute($value) - { - return date('Y-m-d H:i:s', $value); - } - - /** - * 获取状态文本 - * - * @param mixed $value - * @return string - */ - public function getStatusTextAttribute($value) - { - return $value ?? '未设置'; - } -} -/** - * CREATE TABLE `announcements` ( - `id` INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY COMMENT 'ID (主键)', - `title` VARCHAR(255) NOT NULL COMMENT '标题', - `content` TEXT NOT NULL COMMENT '内容 (包含 HTML)', - `status` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '状态 0禁用 1启用', - `status_text` VARCHAR(255) DEFAULT NULL COMMENT '状态文本', - `createtime` INT(11) UNSIGNED NOT NULL COMMENT '创建时间', - `updatetime` INT(11) UNSIGNED DEFAULT NULL COMMENT '更新时间', - KEY `status` (`status`), - KEY `createtime` (`createtime`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='公告表'; - - */ \ No newline at end of file diff --git a/app/model/APP/AppUser.php b/app/model/APP/AppUser.php deleted file mode 100644 index eddb3c9..0000000 --- a/app/model/APP/AppUser.php +++ /dev/null @@ -1,179 +0,0 @@ - 'float', - 'admin_money' => 'float', - 'all_team_money' => 'float', - 'task_income_money' => 'float', - 'today_task_income' => 'float', - 'today_team_income' => 'float', - 'growth_value' => 'integer', - 'withdraw_money' => 'float', - 'createtime' => 'integer', - 'updatetime' => 'integer', - 'status' => 'integer', - ]; - - /** - * 获取登录时间的格式化值 - * - * @param mixed $value - * @return string - */ - public function getLoginTimeAttribute($value) - { - return date('Y-m-d H:i:s', $value); - } - - /** - * 获取创建时间的格式化值 - * - * @param mixed $value - * @return string - */ - public function getCreatetimeAttribute($value) - { - return date('Y-m-d H:i:s', $value); - } - - /** - * 获取更新时间的格式化值 - * - * @param mixed $value - * @return string - */ - public function getUpdatetimeAttribute($value) - { - return date('Y-m-d H:i:s', $value); - } -} - -/** - * CREATE TABLE `users` ( - `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID', - `username` VARCHAR(255) NOT NULL COMMENT '用户名', - `invite_code` VARCHAR(255) NOT NULL COMMENT '邀请码', - `is_active` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否激活 (0:未激活, 1:已激活)', - `login_ip` VARCHAR(45) NOT NULL COMMENT '最后登录IP', - `join_ip` VARCHAR(45) NOT NULL COMMENT '注册IP', - `login_time` INT(11) NOT NULL COMMENT '最后登录时间 (Unix时间戳)', - `prev_time` INT(11) NOT NULL COMMENT '上次活动时间 (Unix时间戳)', - `status` TINYINT(1) NOT NULL DEFAULT 1 COMMENT '状态 (1: 正常, 0: 禁用)', - `money` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '账户余额', - `admin_money` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '管理员账户余额', - `all_team_money` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '团队总金额', - `task_income_money` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '任务收入金额', - `task_status` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '任务状态 (0: 未完成, 1: 完成)', - `today_task_income` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '今天的任务收入', - `today_team_income` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '今天的团队收入', - `growth_value` INT(11) NOT NULL DEFAULT 0 COMMENT '成长值', - `vip_id` INT(11) NOT NULL DEFAULT 0 COMMENT 'VIP等级ID', - `withdraw_money` DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT '可提现金额', - `f_id` INT(11) NOT NULL DEFAULT 0 COMMENT '上一级用户ID', - `ff_id` INT(11) NOT NULL DEFAULT 0 COMMENT '上上级用户ID', - `fff_id` INT(11) NOT NULL DEFAULT 0 COMMENT '上上上级用户ID', - `top_id` INT(11) NOT NULL DEFAULT 0 COMMENT '最高层级ID', - `path` TEXT NOT NULL COMMENT '用户路径', - `remark` TEXT DEFAULT NULL COMMENT '备注', - `createtime` INT(11) NOT NULL COMMENT '创建时间 (Unix时间戳)', - `updatetime` INT(11) NOT NULL DEFAULT 0 COMMENT '更新时间 (Unix时间戳)', - PRIMARY KEY (`id`), - UNIQUE KEY `invite_code` (`invite_code`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表'; - - */ diff --git a/app/model/Test.php b/app/model/Test.php deleted file mode 100644 index 92d70e3..0000000 --- a/app/model/Test.php +++ /dev/null @@ -1,29 +0,0 @@ -delete(); - Log::warning("账户不存在",$value->phone); + Log::warning("ws 在第三方api不存在 ws号".$value->phone); } // UserPhoneLogDao::setOnlineTimeByPhone($value->phone, $status, $currentTimestamp); // $value->last_time = $currentTimestamp;