fuc/src/Services/Tg/Hook/Mod/Test.php
2025-08-29 13:19:24 +08:00

153 lines
3.7 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
//declare(strict_types=1);
namespace App\Services\Tg\Hook\Mod;
use App\Models\Order as ModelOrder;
use App\Models\User as ModelUser;
use App\Utils\Tools;
//use App\Services\DB;
use App\Services\Cron;
use App\Command\Cron as CommandCron;
final class Test extends Base
{
// id:1778 测试员test1,可着它嚯嚯
public function cron($aParam)
{
$sFunc = $aParam["aArg"][1];
$job = new Cron();
return $job->$sFunc();
}
public function smtpClearDayCount()
{
$job = new Cron();
$job->smtpClearDayCount();
}
public function runMailBulk()
{
Cron::processEmailQueue_bulk();
}
private function OrderFormat($v)
{
$v['create_time'] = date("Y-m-d H:i:m", $v['create_time']);
$v['update_time'] = date("Y-m-d H:i:m", $v['update_time']);
$v['product_content'] = json_decode($v['product_content']);
return $v;
}
private function ValueTypeFormat($sValue)
{
list($sValue, $sValueType) = explode("#", $sValue);
if ($sValueType) {
if ($sValueType == "gb") {
$sValue = Tools::tomGbToB($sValue);
} else if ($sValueType == "date") {
$sValue = strtotime($sValue);
}
}
return $sValue;
}
public function OrderSet($aParam)
{
$iId = $aParam['aOption'][1];
$sField = $aParam['aOption'][2];
$sValue = $aParam['aArg'][1];
$sValue = $this->ValueTypeFormat($sValue);
if (!$iId) {
return "参数不对";
}
$oOrder = ModelOrder::find($iId);
if ($oOrder) {
$oOrder->$sField = $sValue;
$r = $oOrder->save();
} else {
$r = '没有';
}
return $r;
}
public function UserSet($aParam)
{
$iId = 1778;
$sField = $aParam['aOption'][1];
$sValue = $aParam['aArg'][1];
$sValue = $this->ValueTypeFormat($sValue);
$oUser = ModelUser::find($iId);
if ($oUser) {
$oUser->$sField = $sValue;
$r = $oUser->save();
} else {
$r = '没有';
}
return $r;
}
public function OrderLimit($aParam)
{
$iUserId = 1778;
$iLimit = $aParam['aArg'][1] ?? 3;
$aOrderList = ModelOrder::where("user_id", $iUserId)->orderBy('id', 'desc')->limit($iLimit)->get()->toArray();
foreach ($aOrderList as $v) {
$aOrderSingle = $this->OrderFormat($v);
$sMsg = json_encode($aOrderSingle, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
$this->oTGHttp->sendToTG($sMsg);
}
$this->oHttp::response(200, 'ok');
}
public function OrderClone($aParam)
{
$iId = $aParam['aArg'][1];
$oOrder = ModelOrder::find($iId);
$oOrderNew = $oOrder->replicate();
return $oOrderNew->save();
}
public function OrderStatusList()
{
$tmp = [
"pending_payment" => "等待付款",
"paid_gateway" => "已付款 - 通道",
"paid_balance" => "已付款 - 余额",
"paid_admin" => "已付款 - 管理员",
"pending_activation" => "等待激活",
"cancelled" => "取消",
"activated" => "已激活",
"expired" => "过期",
"说明" => "付款之后是已付款状态,走一次cron变成等待激活",
];
return json_encode($tmp, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
}
}