|
|
<?php
declare(strict_types=1);namespace App\Controller;
use App\Constants\v3\LogLabel;use App\Constants\v3\OrderState;use App\Constants\v3\OrderType;use App\Libs\FeiePrintClient;use App\Model\v3\OrderMain;use App\Service\v3\Interfaces\CouponRebateServiceInterface;use App\Service\v3\Interfaces\DeviceServiceInterface;use App\Service\v3\Interfaces\FeiePrintServiceInterface;use App\Service\v3\Interfaces\MiniprogramServiceInterface;use App\Service\v3\Interfaces\MqttServiceInterface;use App\Service\v3\Interfaces\OrderOnlineServiceInterface;use App\Service\v3\Interfaces\SeparateAccountsServiceInterface;use App\Service\v3\Interfaces\UserServiceInterface;use Hyperf\HttpServer\Contract\RequestInterface;use Hyperf\HttpServer\Annotation\AutoController;use Hyperf\Utils\Coroutine;use Hyperf\Utils\ApplicationContext;use Hyperf\Task\TaskExecutor;use Hyperf\Task\Task;use App\TaskWorker\SSDBTask;use App\Commons\Log;use Hyperf\Di\Annotation\Inject;
/** * @AutoController() * Class TestController * @package App\Controller */class TestController extends AbstractController{ private $name = 'default action';
protected $client = null;
/** * @Inject * @var MqttServiceInterface */ protected $mqttService;
/** * @Inject * @var DeviceServiceInterface */ protected $deviceService;
/** * @Inject * @var MiniprogramServiceInterface */ protected $miniprogramService;
/** * @Inject * @var FeiePrintServiceInterface */ protected $feiePrintService;
/** * @Inject * @var UserServiceInterface */ protected $userService;
/** * @Inject * @var CouponRebateServiceInterface */ protected $couponRebateService;
/** * @Inject * @var OrderOnlineServiceInterface */ protected $orderOnlineService;
/** * @Inject * @var SeparateAccountsServiceInterface */ protected $separateAccountsService;
public function index1(RequestInterface $request) { // $container = ApplicationContext::getContainer();
// $exec = $container->get(TaskExecutor::class);
// $result = $exec->execute(new Task([MethodTask::class, 'handle'], [Coroutine::id()]));
// $client = ApplicationContext::getContainer()->get(SSDBTask::class);
// $result = $client->exec("set","bar","1234");
// $result = $client->exec("get","bar");
// $client = ApplicationContext::getContainer()->get(MethodTask::class);
// $result = $client->handle("set");
// //$log = ApplicationContext::getContainer()->get(Log::class);
// $log = $this->log;
//
// $log->push(['test'=>1,'user_id'=>290,'msg'=>'order']);
// $log->event('t1',['test'=>1,'user_id'=>290,'msg'=>'order']);
//
// //$this->name = 'index1 action '. $result;
// return $this->name;
// $time = time();
// $msgInfo = array(
// 'user' => '13161443713@163.com',
// 'stime' => $time,
// 'sig' => sha1('13161443713@163.com' . 'XsaHzgePdyWTfcMX' . $time),
// 'apiname' => 'Open_printMsg',
// 'sn' => '920527381',
// 'content' => '1111',
// 'times' => 1//打印次数
// );
// $this->client = new FeiePrintClient('api.feieyun.cn', 80);
// if (!$this->client->post('/Api/Open/', $msgInfo)) {
// return '12';
// } else {
// //服务器返回的JSON字符串,建议要当做日志记录起来
// $result = $this->client->getContent();
// return $result;
// }
$orderMainId = $this->request->input('order_main_id'); // 查询订单
$orderMain = OrderMain::query() ->where([ 'id' => $orderMainId, 'type' => OrderType::ONLINE, 'state' => OrderState::UNPAID ]) ->first();
// 订单不存在
if (empty($orderMain)) { $this->log->event( LogLabel::ORDER_OFFLINE_PAY_NOTIFY_LOG, ['global_order_id_fail' => $orderMainId] ); return true; } // $orderPaid = $this->orderOfflineService->doPaid($orderMainId);
// var_dump('orderOfflineService', $orderPaid);
// $separate = $this->separateAccountsService->orderOfflinePaid($orderMainId);
// var_dump('separateAccountsService', $separate);
//
// // 喇叭通知,兼容旧音响,MQTT+IOT
// $res = $this->mqttService->speakToStore($orderMainId);
// var_dump('mqttService', $res);
// $res = $this->deviceService->pubMsgToStoreByOrderMainId($orderMainId);
// var_dump('deviceService', $res);
//
// // 公众号模板消息
// $res = $this->miniprogramService->sendTemMsgForOfflineOrder($orderMainId);
// var_dump('miniprogramService', $res);
$res = $this->orderOnlineService->doByPaid($orderMainId); var_dump('orderOnlineService', $res); $res = $this->separateAccountsService->orderOnlinePaid($orderMainId); var_dump('separateAccountsService', $res);
// 优惠券返券
$res = $this->couponRebateService->couponRebateInTask($orderMainId); var_dump('couponRebateService', $res);
// 喇叭通知,兼容旧音响,MQTT+IOT
$res = $this->mqttService->speakToStore($orderMainId); var_dump('mqttService', $res); $res = $this->deviceService->pubMsgToStoreByOrderMainId($orderMainId); var_dump('deviceService', $res);
// 公众号模板消息
$res = $this->miniprogramService->sendTemMsgForOnlineOrder($orderMainId); var_dump('miniprogramService', $res);
// 打印订单,自动打印
$res = $this->feiePrintService->feiePrint($orderMainId); var_dump('feiePrintService', $res); }
public function index2(RequestInterface $request) { $this->name = 'index2 action'; return $this->name; }
public function index3(RequestInterface $request) { return $this->name; }}
|