This commit is contained in:
Hankin 2026-04-23 16:01:25 +08:00
parent 0b384dbdfc
commit 28a113f05f
2 changed files with 17 additions and 9 deletions

View File

@ -47,12 +47,4 @@ class Handler extends ExceptionHandler
// //
}); });
} }
public function render($request, Throwable $e)
{
if ($e instanceof TypeError && str_contains($e->getMessage(), 'Argument')) {
return response()->json(['message' => 'Invalid parameter type'], 400);
}
return parent::render($request, $e);
}
} }

View File

@ -6,12 +6,29 @@ use App\Facades\WechatPayService;
use App\Http\Response\ResponseJson; use App\Http\Response\ResponseJson;
use Exception; use Exception;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
class WechatPayController extends Controller class WechatPayController extends Controller
{ {
use ResponseJson; use ResponseJson;
function mchTransfer(Request $request) function mchTransfer(Request $request)
{ {
$rules = [
"trade_no" => "required",
"openid" => "required",
"amount" => "required",
"remark" => "required"
];
$input = $request->all();
$validator = Validator::make($input, $rules, $messages = [
'required' => 'The :attribute field is required.',
]);
foreach ($validator->errors()->all() as $message) {
return $this->failure($message);
}
$trade_no = $request->trade_no; $trade_no = $request->trade_no;
$scene_id = $request->scene_id; $scene_id = $request->scene_id;
if (empty($scene_id)) { if (empty($scene_id)) {
@ -22,7 +39,6 @@ class WechatPayController extends Controller
$remark = $request->remark; $remark = $request->remark;
try { try {
$res = WechatPayService::mchTransfer($trade_no, $scene_id, $openid, $amount, $remark, []); $res = WechatPayService::mchTransfer($trade_no, $scene_id, $openid, $amount, $remark, []);
} catch (Exception $e) { } catch (Exception $e) {
return $this->failure($e->getMessage()); return $this->failure($e->getMessage());
} }