Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
meibuyu-rpc
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
without authentication
meibuyu-rpc
Commits
42770b90
Commit
42770b90
authored
Aug 25, 2020
by
王源
🎧
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加phpspreadsheet异常处理器,加入引用其它表格异常返回
parent
d744cc4b
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
51 additions
and
3 deletions
+51
-3
ConfigProvider.php
src/ConfigProvider.php
+1
-0
MicroExceptionHandler.php
src/Exceptions/Handler/MicroExceptionHandler.php
+2
-2
PhpSpreadsheetExceptionHandler.php
src/Exceptions/Handler/PhpSpreadsheetExceptionHandler.php
+46
-0
QueryExceptionHandler.php
src/Exceptions/Handler/QueryExceptionHandler.php
+2
-1
No files found.
src/ConfigProvider.php
View file @
42770b90
...
@@ -19,6 +19,7 @@ class ConfigProvider
...
@@ -19,6 +19,7 @@ class ConfigProvider
'http'
=>
[
'http'
=>
[
\Meibuyu\Micro\Exceptions\Handler\MicroExceptionHandler
::
class
,
\Meibuyu\Micro\Exceptions\Handler\MicroExceptionHandler
::
class
,
\Meibuyu\Micro\Exceptions\Handler\QueryExceptionHandler
::
class
,
\Meibuyu\Micro\Exceptions\Handler\QueryExceptionHandler
::
class
,
\Meibuyu\Micro\Exceptions\Handler\PhpSpreadsheetExceptionHandler
::
class
,
\Meibuyu\Micro\Exceptions\Handler\AppExceptionHandler
::
class
,
\Meibuyu\Micro\Exceptions\Handler\AppExceptionHandler
::
class
,
],
],
],
],
...
...
src/Exceptions/Handler/MicroExceptionHandler.php
View file @
42770b90
...
@@ -9,7 +9,6 @@
...
@@ -9,7 +9,6 @@
namespace
Meibuyu\Micro\Exceptions\Handler
;
namespace
Meibuyu\Micro\Exceptions\Handler
;
use
Hyperf\ExceptionHandler\ExceptionHandler
;
use
Hyperf\ExceptionHandler\ExceptionHandler
;
use
Hyperf\HttpMessage\Stream\SwooleStream
;
use
Hyperf\HttpMessage\Stream\SwooleStream
;
use
Meibuyu\Micro\Exceptions\HttpResponseException
;
use
Meibuyu\Micro\Exceptions\HttpResponseException
;
...
@@ -53,4 +52,5 @@ class MicroExceptionHandler extends ExceptionHandler
...
@@ -53,4 +52,5 @@ class MicroExceptionHandler extends ExceptionHandler
{
{
return
true
;
return
true
;
}
}
}
}
src/Exceptions/Handler/PhpSpreadsheetExceptionHandler.php
0 → 100644
View file @
42770b90
<?php
/**
* Created by PhpStorm.
* User: Zero
* Date: 2020/8/24
* Time: 18:05
*/
namespace
Meibuyu\Micro\Exceptions\Handler
;
use
Hyperf\ExceptionHandler\ExceptionHandler
;
use
Hyperf\HttpMessage\Stream\SwooleStream
;
use
PhpOffice\PhpSpreadsheet\Exception
as
PhpSpreadsheetException
;
use
Psr\Http\Message\ResponseInterface
;
use
Throwable
;
class
PhpSpreadsheetExceptionHandler
extends
ExceptionHandler
{
public
function
handle
(
Throwable
$throwable
,
ResponseInterface
$response
)
{
$error
=
$throwable
->
getMessage
();
if
(
strpos
(
$error
,
'Formula Error'
)
!==
false
)
{
$msg
=
'表格公式错误, 请检查是否引用其它表格数据'
;
return
$this
->
jsonResponse
(
$msg
,
$response
);
}
return
$response
;
}
public
function
jsonResponse
(
$msg
,
ResponseInterface
$response
)
{
// 阻止异常冒泡
$this
->
stopPropagation
();
// 格式化输出
$data
=
json_encode
([
'code'
=>
400
,
'msg'
=>
$msg
,
],
JSON_UNESCAPED_UNICODE
);
return
$response
->
withAddedHeader
(
'content-type'
,
'application/json'
)
->
withBody
(
new
SwooleStream
(
$data
));
}
public
function
isValid
(
Throwable
$throwable
)
:
bool
{
return
$throwable
instanceof
PhpSpreadsheetException
;
}
}
src/Exceptions/Handler/QueryExceptionHandler.php
View file @
42770b90
...
@@ -42,4 +42,5 @@ class QueryExceptionHandler extends ExceptionHandler
...
@@ -42,4 +42,5 @@ class QueryExceptionHandler extends ExceptionHandler
{
{
return
$throwable
instanceof
QueryException
;
return
$throwable
instanceof
QueryException
;
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment