From 72b303e00d6d16acc50b7fe0c01f58736b2fc445 Mon Sep 17 00:00:00 2001 From: lanzu_qsy <334039090@qq.com> Date: Sat, 5 Sep 2020 17:38:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9C=8D=E5=8A=A1=E5=95=86?= =?UTF-8?q?=E6=8F=90=E7=8E=B0=E7=94=B3=E8=AF=B7=E7=9F=AD=E4=BF=A1=E9=80=9A?= =?UTF-8?q?=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Common/Sms.php | 22 +++++++++++++ .../Controllers/LanzuMpWithdrawController.php | 32 ++++++++++++------- app/Admin/Controllers/Test.php | 14 ++++++-- 3 files changed, 54 insertions(+), 14 deletions(-) diff --git a/app/Admin/Common/Sms.php b/app/Admin/Common/Sms.php index 0309edf..70df640 100644 --- a/app/Admin/Common/Sms.php +++ b/app/Admin/Common/Sms.php @@ -8,6 +8,7 @@ use AlibabaCloud\Client\AlibabaCloud; use AlibabaCloud\Client\Exception\ClientException; use AlibabaCloud\Client\Exception\ServerException; use Dcat\Admin\Controllers\AdminController; +use Graze\GuzzleHttp\JsonRpc\Client; class Sms extends AdminController { @@ -38,4 +39,25 @@ class Sms extends AdminController echo $e->getErrorMessage() . PHP_EOL; } } + + /** + * 远程RPC调用 + * @param $phone + * @param $template + * @param $templateParams + * @param string $signName + * @return string + */ + public static function rpcSent($phone, $template, $templateParams, $signName='懒族生活') + { + $client = Client::factory(env('RPC_SITE_HOST')); + $request = $client->request(uniqid(),'/alisms/sent', [ + 'phone' => $phone, + 'template'=>$template, + 'templateParams'=> json_encode($templateParams), + 'signName'=>$signName, + ]); + $response = $client->send($request); + return $response->getBody()->getContents(); + } } diff --git a/app/Admin/Controllers/LanzuMpWithdrawController.php b/app/Admin/Controllers/LanzuMpWithdrawController.php index 30a4d99..5f7b499 100755 --- a/app/Admin/Controllers/LanzuMpWithdrawController.php +++ b/app/Admin/Controllers/LanzuMpWithdrawController.php @@ -14,6 +14,7 @@ use Dcat\Admin\Show; use Dcat\Admin\Admin; use Dcat\Admin\Controllers\AdminController; use App\Models\MpBalance; +use Illuminate\Support\Facades\Log; class LanzuMpWithdrawController extends AdminController { @@ -33,7 +34,7 @@ class LanzuMpWithdrawController extends AdminController } return Grid::make($buider, function (Grid $grid) use ($current_user) { - $grid->model()->orderBy('created_at','desc'); + $grid->model()->orderBy('created_at', 'desc'); $grid->id->sortable(); $grid->column('mpInfo.name', '服务商名字'); $grid->money; @@ -55,7 +56,7 @@ class LanzuMpWithdrawController extends AdminController }); if ($current_user->isRole('lanzu_mp')) { $grid->disableEditButton(); - }else{ + } else { $grid->disableCreateButton(); } }); @@ -205,21 +206,28 @@ class LanzuMpWithdrawController extends AdminController $form->number('money', '提现金额')->required()->min(0); $form->ignore(['balance']); //添加成功之后,扣减掉可提现金额 - $form->saved(function (Form $form, $result) use ($mpb,$mp) { + $form->saved(function (Form $form, $id) use ($mpb, $mp) { if ($form->isCreating()) { - if ($result) { + if ($id) { $mpb->balance = $mpb->balance - $form->money; $mpb->save(); //发送短信通知 - $params = [ - 'RegionId' => "cn-shenzhen", - 'PhoneNumbers' => env('SMS_MM_TEL'), - 'SignName' => "懒族生活", - 'TemplateCode' => "SMS_201680806", - 'TemplateParam' => json_encode(['name'=>"[{$mp->name}]",'money'=>$form->money.'元']), - ]; - Sms::sent($params); + $phone = env('SMS_MP_TEL'); + $template = env('SMS_MP_TEMPLATE'); + $templateParams = ['name' => "({$mp->name})", 'money' => $form->money . '元']; + $signName = env('SMS_MP_SIGN_NAME'); + $result = Sms::rpcSent($phone, $template, $templateParams, $signName); + $result = json_decode($result); + if ($result->result->Code != 'OK') { + $msg = $result->result->Message; + Log::error('发送短信失败', [ + 'Message'=>$msg, + 'name'=>$mp->name, + 'money'=>$form->money, + 'id'=>$id + ]); + } } } }); diff --git a/app/Admin/Controllers/Test.php b/app/Admin/Controllers/Test.php index 456f503..d527dc2 100644 --- a/app/Admin/Controllers/Test.php +++ b/app/Admin/Controllers/Test.php @@ -9,6 +9,7 @@ use AlibabaCloud\Client\Exception\ClientException; use AlibabaCloud\Client\Exception\ServerException; use Dcat\Admin\Controllers\AdminController; use Graze\GuzzleHttp\JsonRpc\Client; +use Illuminate\Support\Facades\Log; class Test extends AdminController { @@ -48,9 +49,18 @@ class Test extends AdminController public function testRpc() { - $client = Client::factory('http://store.api.lanzulive.com:9505'); - $request = $client->request(uniqid(),'/myrpc/mymethod', ['args' => null]); + $client = Client::factory(env('RPC_SITE_HOST')); + $request = $client->request(uniqid(),'/alisms/sent', [ + 'phone' => 13481194554, + 'template'=>'SMS_201720790', + 'templateParams'=> json_encode(['name'=>"[DESION]",'money'=>'200元']), + ]); $response = $client->send($request); + $result = json_decode($response->getBody()->getContents()); + if ($result->result->Code != 'OK') { + $msg = $result->result->Message; + Log::error('发送短信失败', ['Message'=>$msg]); + } return $response->getBody()->getContents(); }