Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
openApi
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hj
openApi
Commits
1373f38b
Commit
1373f38b
authored
Jun 30, 2025
by
hj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新提交
parent
da0c1e7c
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
141 additions
and
167 deletions
+141
-167
server/app/Services/Api/AuthService.php
server/app/Services/Api/AuthService.php
+0
-0
server/app/Services/Api/ChemicalsMsdsService.php
server/app/Services/Api/ChemicalsMsdsService.php
+7
-121
server/app/Services/Traits/Msds/MsdsTrait.php
server/app/Services/Traits/Msds/MsdsTrait.php
+134
-0
server/database/seeds/production/PermissionsSeeder.php
server/database/seeds/production/PermissionsSeeder.php
+0
-46
No files found.
server/app/Services/AuthService.php
→
server/app/Services/A
pi/A
uthService.php
View file @
1373f38b
File moved
server/app/Services/Api/ChemicalsMsdsService.php
View file @
1373f38b
...
@@ -3,12 +3,12 @@
...
@@ -3,12 +3,12 @@
namespace
App\Services\Api
;
namespace
App\Services\Api
;
use
App\Services\FileService
;
use
App\Services\FileService
;
use
App\Services\Traits\Msds\MsdsTrait
;
use
App\Services\Traits\Pdf\BasePdfTemplate
;
use
App\Services\Traits\Pdf\BasePdfTemplate
;
use
Illuminate\Support\Facades\Storage
;
class
ChemicalsMsdsService
class
ChemicalsMsdsService
{
{
use
BasePdfTemplate
;
use
BasePdfTemplate
, MsdsTrait
;
public
function
getMsds
(
$cas
,
$type
=
null
,
$comInfo
=
null
)
public
function
getMsds
(
$cas
,
$type
=
null
,
$comInfo
=
null
)
{
{
...
@@ -25,129 +25,15 @@ class ChemicalsMsdsService
...
@@ -25,129 +25,15 @@ class ChemicalsMsdsService
$msds_html
=
file_get_contents
(
env
(
'MSDS_FILE_DIR'
)
.
'/'
.
$cas
.
'/'
.
$cas
.
'_sds_'
.
$type
.
'.html'
);
$msds_html
=
file_get_contents
(
env
(
'MSDS_FILE_DIR'
)
.
'/'
.
$cas
.
'/'
.
$cas
.
'_sds_'
.
$type
.
'.html'
);
if
(
$msds_html
){
if
(
$msds_html
){
if
(
!
is_null
(
$comInfo
)){
$platformParams
=
[];
if
(
!
is_null
(
$comInfo
))
{
$platformParams
=
json_decode
(
$comInfo
[
'platform_params'
],
true
);
$platformParams
=
json_decode
(
$comInfo
[
'platform_params'
],
true
);
$msds_html
=
preg_replace
(
'/<dt>企业名称:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>企业名称:</dt> <dd>'
.
$platformParams
[
'company_name'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>企业地址:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>企业地址:</dt> <dd>'
.
$platformParams
[
'company_address'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>传真:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>传真:</dt> <dd>'
.
$platformParams
[
'company_fax'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>联系电话:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>联系电话:</dt> <dd>'
.
$platformParams
[
'company_phone'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>企业应急电话:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>企业应急电话:</dt> <dd>'
.
$platformParams
[
'company_urgency_phone'
]
.
'</dd>'
,
$msds_html
);
$logo
=
$platformParams
[
'company_logo'
];
}
}
switch
(
$type
){
//$logo = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANgAAABWCAYAAACtmlhFAAAACXBIWXMAAAsTAAALEwEAmpwYAAA5n2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDI1LTAyLTIxVDExOjA5OjE3KzA4OjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMjUtMDItMjFUMTM6MDU6NDIrMDg6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDI1LTAyLTIxVDEzOjA1OjQyKzA4OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjdjYTJmMGI3LWNlZmMtYTU0ZC04ZjM0LWVlNDc0NzhkZDNlYTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDoyMjQyNDgyQjQ2MTIxMUVFQkM5NUNBMTFBMjZFRkY3QjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDoyMjQyNDgyODQ2MTIxMUVFQkM5NUNBMTFBMjZFRkY3Qjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDoyMjQyNDgyOTQ2MTIxMUVFQkM5NUNBMTFBMjZFRkY3Qjwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjIyNDI0ODJCNDYxMjExRUVCQzk1Q0ExMUEyNkVGRjdCPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3Y2EyZjBiNy1jZWZjLWE1NGQtOGYzNC1lZTQ3NDc4ZGQzZWE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjUtMDItMjFUMTM6MDU6NDIrMDg6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT42NTUzNTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MjE2PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjg2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz61v3eaAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAXnSURBVHja7J1djtswDIRDV/dqb9MrtbfpxQr2pQsE2WRjWfwZUkOgQB82iUTNZ5KyTMvx/deNRqNNm3785++fn/Lqj4SA0WjzUL2yR9gO+oxGW4PrHqpvP34rAaPRrsH1NBX8gOoDtHvICBiNtgDXI2iPkBEwWoZgZ/6hmtxuN/lqg4OA0bKEuQIkZPR6VpN9+/FbCRitAmSnNhsQbXCtacmQadHx6/8o9SlyMUWkdYlmMPaqFiNgNNr1C8PL+18EjEZzjFwEjAZVy4CmlFN14kcUu7/xzE2OvqIUwpVvBKyXAB8/K4TLJIqdvgf3eGyKgF28mZgITgfI1BksNf4+mRnzfV22++MqmnSVjLz3Uw0wCfCly43uZxseg2CVSqu6RLHskxwrWYs8QMUabHJxIgQ5k3JIoPC61aHpaz0AnScAi5QJWaWNCSkEU8paDyCw0H4nCrKMqGjt3+qHd93WejSFq2u6hFI76SJo26zPaAaW9e903PTwjJavQKsAlMtaDzDRd3pOqFp9ZZmSauAYrH63ZIpYMWp5jsXypraCQxZds0JGyQEkeCkO1owItdF8vSGTZHBhAItcfPRmKGc2B85CpiBCX/WH1/EoRQZ4EKxQ58sJyBRNJEGgRUf0EJ+NIkJXR2hQNiMUSLgVLlqKDNZXgH1ViCvI4limG5IwBwUTa+X6CXos4wsBIJ34loIp0cyVWJqBhRLp0/2E0DJgR7EI/eAKl6D480gWPUX1OS233FncDS5B09TgQpXYCNDNgdNJf8HYkTjojMdSqgpRgOeiTt95ph+93MCzoHFiYVeak6BtHb8aG8Kh3ndjeHUipEsK3rLD1GE4ETkJFxeI9ixatVy7MTkhiydaKew+FxBN/nwbwGYXLTo11MawdBLhdruf7IuIVYdZiRElenkAVSoDOgId37HnIEpNQmMEgwNKG81ll/q23PyOIIFwY8MfbKHY90gRaXZwnb2RinBfkUA7p4iVopeC/6YUEp4szluS14U1WCAoHjuJq2Bpku8kCMDWNpwXSwoCafVyO4sbw5YQ6EVfsdZKBgwVLg34bnECywIuNZxrB8hS3go6QCZu3fAk4wV3ls1q1ElAO6X7K1HbDLjhNAHvHuXVxWTRQDO6mxf6MTdPQCULsOjBd9hlkubzi7ioRveAvAzaSHDUlQFX7eCbUTPtkAKupuZhkXw4Cc3K0dVEJwDiQ4NancUuyDqJbjzKQ6y+Prna/s3j1bpZbf+0A2AWQhJjAewElndLb9SoVQ62Yew8cXK4GAlSHRfTS4CRLfS0MFzP6noP2KYi+QicuJWYV17mN+NwmVjIzGI/E8rZuXnuoN53pF5dezM7nMWR9USrOP6GBMP16lWtCDfaZzIbCdQBTLetrBfw7Xi+zeI9XzpxVY484hQZSc+2tjvTBs/9YjSMBaLNxJ4B1yxYZvVCAfME1kUTHR+4lObjzury6+lXBfhely7BI9kBFaJPxHgFQOQWGwwIa3XmLaJXU3RGsA3hUiDIulxcxSrKDaBJ7Wgr6Z4Cijdi40ATatGSp+l3j14rfTfQXwaPeAJHbwm9To5FkUTXBV2iqQT5QArPs4UejgRHssfDdd96waXO4xcQgBUJML4OCOeqrre8yNWtu5SiAOaZm+9af13xl/eFTosKWypANgIHIGALVBnUKLgEEK5SF+kRNNHIRy5QROUxNrTxRsHl9T5vyQBMi8KFHAVnbyZrA19oAW24QzaShLQDUBr0+Ssi8YriaqwTrQ7ZaACR5bgEaFwzDWvUULRWTWArdQxzg2xwIwEa+Jkop7eYLlLvHs1HhynURnMxz6RaUnTe+kb8XjXRu9YJvFg/AKaNRbjbgj9GM8+1JUhNIphVZ6lnwqh8A9ziWay056V2Aaxy9JLgz7FWJGRtazBpFHkQorsk/Kb1ODTxt80AEzAx0TD8iLCJdKV9W2jbNrZY2y+KeZy2V0DdpI9hvFkYwsXIxcxiwQ46jHDR/GswOr5/msg1BotgNEYu2qL9GwA1hdQ0UwcxugAAAABJRU5ErkJggg==';
case
'cn'
:
$msds_html
=
$this
->
getCnMsds
(
$msds_html
,
$platformParams
);
break
;
preg_match
(
'/<body>[\s]*?<style>(?<bodyStyle>[\s\S]*?)<\/style>/i'
,
$msds_html
,
$bodyStyle
);
$bodyStyle
[
'bodyStyle'
]
=
"<style>body{ font-family: 'msyh'; font-size: 0.8rem; font-weight: normal; display: block;} h2{font-size: 2.0rem; text-align: center;}.container { padding-right: 5px;padding-left: 5px;margin-right: auto;margin-left: auto;width: 100%;} .sds-cn dd p { font-weight: normal; margin-left: 20px; }"
.
$bodyStyle
[
'bodyStyle'
]
.
"</style><body>"
;
// 格式化处理
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?\{[\s]*?line-height: 1.5;[\s]*?\}/i'
,
'.sds-cn{line-height: 2.5;}'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?\.b-a[\s]*?\{[\s]*?border: 1px solid #000000;[\s]*?\}/i'
,
'.sds-cn .b-a { border: 1px solid #000000; margin-left:10px;}'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?dd.clearfix[\s]*?\{ margin-left: 20px;[\s]*?\}/i'
,
'.sds-cn dd.clearfix { width:80% }'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?dt[\s]*?\{[\s]*?float: left; font-weight: bold; clear: left; [\s]*?\}/i'
,
'.sds-cn dt { float: left; font-weight: normal; clear: left; }'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?\.list-line[\s]*?li:before[\s]*?\{ content: " —— " \}/i'
,
'.sds-cn .list-line li:before { content: " -- " }'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?p[\s]*?\{[\s]*?margin:[\s]*?0; \}/i'
,
'.sds-cn p { margin: 0 15px;word-wrap:break-word; }'
,
$bodyStyle
[
'bodyStyle'
]);
$msds_html
=
preg_replace
(
'/<html>/i'
,
'<html lang="zh_CN no-js">'
,
$msds_html
);
//$msds_html = preg_replace('/<meta[\s]*?charset=[\"]UTF\-8[\"]/i', '<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">', $msds_html);
$msds_html
=
preg_replace
(
'/<body><style>(?<bodyStyle>[\s\S]*?)<\/style>/i'
,
'@body@'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<\/body>/'
,
'</body>'
,
preg_replace
(
'/@body@/'
,
$bodyStyle
[
'bodyStyle'
],
$msds_html
));
//$msds_html = preg_replace('/@body@/', $newMsdsHtml, $msds_html);
if
(
preg_match
(
'/<div[\s]*?class=[\\\'|\"]sds-cn[\\\'|\"]>/i'
,
$msds_html
)){
$msds_html
=
str_replace
(
'<div class="sds-cn">'
,
'<div class="sds-cn"><h2 style="height:100px"><img src="'
.
$logo
.
'" style="text-align:center;height:90px;"></h2>'
,
$msds_html
);
}
if
(
preg_match
(
'/<div[\s]*?class=[\\\'|\"]sds-cn-header[\\\'|\"]>(?<content>[\s\S]+?)<\/div>/i'
,
$msds_html
,
$content
)){
$msds_html
=
str_replace
(
'化学品安全技术说明书 '
,
'<h2 style="font-size: 1.5rem;font-weight: bold">化学品安全技术说明书 </h2>'
,
$msds_html
);
}
if
(
preg_match
(
'/<div[\s]*?class=[\\\'|\"]sds-cn-content[\\\'|\"]>(?<content>[\s\S]+?)<\/div><\/body>/i'
,
$msds_html
,
$content
)){
if
(
$content
[
'content'
]){
preg_match_all
(
'/(?<title>[\s\S]*?)<dl>(?<dlContent>[\s\S]*?)<\/dl>/i'
,
$content
[
'content'
],
$dlContent
);
if
(
$dlContent
[
'dlContent'
]){
$newMsdsHtml
=
''
;
foreach
(
$dlContent
[
'dlContent'
]
as
$key
=>
$dl
){
$msds_html
=
str_replace
(
$dlContent
[
'title'
][
$key
],
'<h2 style="font-size: 1.3rem;font-weight: bold">'
.
$dlContent
[
'title'
][
$key
]
.
'</h2>'
,
$msds_html
);
if
(
in_array
(
$key
,
[
0
,
5
,
9
])){
$dlHtml
=
''
;
if
(
$dlContent
[
'title'
][
$key
]){
//$dlHtml = '<h2 style="font-size: 20px; text-align: center;" align="center">'.$dlContent['title'][$key].'</h2>';
preg_match_all
(
'/<dt>(?<cTitle>[\s\S]*?)<\/dt>[\s]*?<dd[\s\S]*?>(?<cContent>[\s\S]*?)<\/dd>/i'
,
$dl
,
$ddContent
);
if
(
$ddContent
){
foreach
(
$ddContent
[
'cTitle'
]
as
$k
=>
$c
){
$dlHtml
.=
'<div><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal">'
.
$ddContent
[
'cContent'
][
$k
]
.
'</span></div>'
;
}
}
}
$msds_html
=
str_replace
(
$dl
,
$dlHtml
,
$msds_html
);
}
if
(
in_array
(
$key
,
[
1
,
2
,
3
,
4
,
6
,
7
,
8
,
10
,
11
,
12
])){
preg_match_all
(
'/<dt>(?<cTitle>[\s\S]*?)<\/dt>[\s]*?<dd[\s\S]*?>(?<cContent>[\s\S]*?)<\/dd>/i'
,
$dl
,
$ddContent
);
if
(
$ddContent
){
$dlHtml
=
''
;
foreach
(
$ddContent
[
'cTitle'
]
as
$k
=>
$c
){
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;">'
.
$ddContent
[
'cContent'
][
$k
]
.
'</span></div>'
;
}
}
$msds_html
=
str_replace
(
$dl
,
$dlHtml
,
$msds_html
);
}
if
(
$key
==
13
){
preg_match_all
(
'/<dt>(?<cTitle>[\s\S]*?)<\/dt>[\s]*?<dd[\s\S]*?>(?<cContent>[\s\S]*?)<\/dd>/i'
,
$dl
,
$ddContent
);
if
(
$ddContent
){
$dlHtml
=
''
;
foreach
(
$ddContent
[
'cTitle'
]
as
$k
=>
$c
){
if
(
$k
==
(
count
(
$ddContent
[
'cTitle'
])
-
1
)){
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;"><p>'
.
$ddContent
[
'cContent'
][
$k
]
.
'</p></span></div>'
;
}
else
{
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;">'
.
$ddContent
[
'cContent'
][
$k
]
.
'</span></div>'
;
}
}
}
$msds_html
=
str_replace
(
$dl
,
$dlHtml
,
$msds_html
);
}
}
}
if
(
preg_match
(
'/<h2[\s]*?style=[\\\'|\"]font-size: 1.3rem;font-weight: bold[\\\'|\"]>[\s]*?(?<cTitle>第9部分 理化特性)(?<content>[\s\S]*?)<\/h2>/i'
,
$msds_html
,
$content
)){
if
(
$content
[
'content'
]){
$msds_html
=
str_replace
(
$content
[
'cTitle'
],
$content
[
'cTitle'
]
.
'</h2>'
,
$msds_html
);
$tableInfo
=
str_replace
(
'第10部分 稳定性和反应性'
,
''
,
$content
[
'content'
]);
$tableInfo
.=
'<h2 style="font-size: 1.3rem;font-weight: bold">第10部分 稳定性和反应性</h2>'
;
$msds_html
=
str_replace
(
$content
[
'content'
],
$tableInfo
,
$msds_html
);
}
}
if
(
preg_match
(
'/<h2[\s]*?style=[\\\'|\"]font-size: 1.3rem;font-weight: bold[\\\'|\"]>[\s]*?第15部分 法规信息(?<content>[\s\S]*?)<\/h2>/i'
,
$msds_html
,
$content
)){
if
(
$content
[
'content'
]){
$dlHtml
=
''
;
preg_match
(
'/<p>(?<cTitle>[\s\S]*?)<\/p>[\s]*?<u>(?<cContent>[\s\S]*?)<\/u>/i'
,
$content
[
'content'
],
$c
);
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
[
'cTitle'
]
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;"><p>'
.
$c
[
'cContent'
]
.
'</p></span></div>'
;
$msds_html
=
str_replace
(
$content
[
'content'
],
'</h2>'
.
str_replace
(
'</h2>'
,
''
,
$content
[
'content'
]),
$msds_html
);
$msds_html
=
str_replace
(
$content
[
'content'
],
$dlHtml
,
$msds_html
);
}
}
/*preg_match('/(?<title>第[\s]*?3[\s\S]+?)<table[\s]*?class=[\\\'|\"]table-text-center avoid-page-break-inside[\\\'|\"]>[\s\S]*?<\/table>/i', $content['content'], $tableContent);
if($tableContent['title']){
$msds_html = str_replace($tableContent['title'],'<h2 style="font-size: 1.3rem;font-weight: bold">'.$tableContent['title'].'</h2>', $msds_html);
}
preg_match('/(?<title>第4[\s\S]*?)<dl>[\s\S]*?<\/dl>/i', $content['content'], $dlContent);
if($dlContent['title']){
$msds_html = str_replace($dlContent['title'],'<h2 style="font-size: 1.3rem;font-weight: bold">'.$dlContent['title'].'</h2>', $msds_html);
}*/
}
}
}
//$logo = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANgAAABWCAYAAACtmlhFAAAACXBIWXMAAAsTAAALEwEAmpwYAAA5n2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDI1LTAyLTIxVDExOjA5OjE3KzA4OjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMjUtMDItMjFUMTM6MDU6NDIrMDg6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDI1LTAyLTIxVDEzOjA1OjQyKzA4OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjdjYTJmMGI3LWNlZmMtYTU0ZC04ZjM0LWVlNDc0NzhkZDNlYTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDoyMjQyNDgyQjQ2MTIxMUVFQkM5NUNBMTFBMjZFRkY3QjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDoyMjQyNDgyODQ2MTIxMUVFQkM5NUNBMTFBMjZFRkY3Qjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDoyMjQyNDgyOTQ2MTIxMUVFQkM5NUNBMTFBMjZFRkY3Qjwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjIyNDI0ODJCNDYxMjExRUVCQzk1Q0ExMUEyNkVGRjdCPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3Y2EyZjBiNy1jZWZjLWE1NGQtOGYzNC1lZTQ3NDc4ZGQzZWE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMjUtMDItMjFUMTM6MDU6NDIrMDg6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT42NTUzNTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MjE2PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjg2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz61v3eaAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAXnSURBVHja7J1djtswDIRDV/dqb9MrtbfpxQr2pQsE2WRjWfwZUkOgQB82iUTNZ5KyTMvx/deNRqNNm3785++fn/Lqj4SA0WjzUL2yR9gO+oxGW4PrHqpvP34rAaPRrsH1NBX8gOoDtHvICBiNtgDXI2iPkBEwWoZgZ/6hmtxuN/lqg4OA0bKEuQIkZPR6VpN9+/FbCRitAmSnNhsQbXCtacmQadHx6/8o9SlyMUWkdYlmMPaqFiNgNNr1C8PL+18EjEZzjFwEjAZVy4CmlFN14kcUu7/xzE2OvqIUwpVvBKyXAB8/K4TLJIqdvgf3eGyKgF28mZgITgfI1BksNf4+mRnzfV22++MqmnSVjLz3Uw0wCfCly43uZxseg2CVSqu6RLHskxwrWYs8QMUabHJxIgQ5k3JIoPC61aHpaz0AnScAi5QJWaWNCSkEU8paDyCw0H4nCrKMqGjt3+qHd93WejSFq2u6hFI76SJo26zPaAaW9e903PTwjJavQKsAlMtaDzDRd3pOqFp9ZZmSauAYrH63ZIpYMWp5jsXypraCQxZds0JGyQEkeCkO1owItdF8vSGTZHBhAItcfPRmKGc2B85CpiBCX/WH1/EoRQZ4EKxQ58sJyBRNJEGgRUf0EJ+NIkJXR2hQNiMUSLgVLlqKDNZXgH1ViCvI4limG5IwBwUTa+X6CXos4wsBIJ34loIp0cyVWJqBhRLp0/2E0DJgR7EI/eAKl6D480gWPUX1OS233FncDS5B09TgQpXYCNDNgdNJf8HYkTjojMdSqgpRgOeiTt95ph+93MCzoHFiYVeak6BtHb8aG8Kh3ndjeHUipEsK3rLD1GE4ETkJFxeI9ixatVy7MTkhiydaKew+FxBN/nwbwGYXLTo11MawdBLhdruf7IuIVYdZiRElenkAVSoDOgId37HnIEpNQmMEgwNKG81ll/q23PyOIIFwY8MfbKHY90gRaXZwnb2RinBfkUA7p4iVopeC/6YUEp4szluS14U1WCAoHjuJq2Bpku8kCMDWNpwXSwoCafVyO4sbw5YQ6EVfsdZKBgwVLg34bnECywIuNZxrB8hS3go6QCZu3fAk4wV3ls1q1ElAO6X7K1HbDLjhNAHvHuXVxWTRQDO6mxf6MTdPQCULsOjBd9hlkubzi7ioRveAvAzaSHDUlQFX7eCbUTPtkAKupuZhkXw4Cc3K0dVEJwDiQ4NancUuyDqJbjzKQ6y+Prna/s3j1bpZbf+0A2AWQhJjAewElndLb9SoVQ62Yew8cXK4GAlSHRfTS4CRLfS0MFzP6noP2KYi+QicuJWYV17mN+NwmVjIzGI/E8rZuXnuoN53pF5dezM7nMWR9USrOP6GBMP16lWtCDfaZzIbCdQBTLetrBfw7Xi+zeI9XzpxVY484hQZSc+2tjvTBs/9YjSMBaLNxJ4B1yxYZvVCAfME1kUTHR+4lObjzury6+lXBfhely7BI9kBFaJPxHgFQOQWGwwIa3XmLaJXU3RGsA3hUiDIulxcxSrKDaBJ7Wgr6Z4Cijdi40ATatGSp+l3j14rfTfQXwaPeAJHbwm9To5FkUTXBV2iqQT5QArPs4UejgRHssfDdd96waXO4xcQgBUJML4OCOeqrre8yNWtu5SiAOaZm+9af13xl/eFTosKWypANgIHIGALVBnUKLgEEK5SF+kRNNHIRy5QROUxNrTxRsHl9T5vyQBMi8KFHAVnbyZrA19oAW24QzaShLQDUBr0+Ssi8YriaqwTrQ7ZaACR5bgEaFwzDWvUULRWTWArdQxzg2xwIwEa+Jkop7eYLlLvHs1HhynURnMxz6RaUnTe+kb8XjXRu9YJvFg/AKaNRbjbgj9GM8+1JUhNIphVZ6lnwqh8A9ziWay056V2Aaxy9JLgz7FWJGRtazBpFHkQorsk/Kb1ODTxt80AEzAx0TD8iLCJdKV9W2jbNrZY2y+KeZy2V0DdpI9hvFkYwsXIxcxiwQ46jHDR/GswOr5/msg1BotgNEYu2qL9GwA1hdQ0UwcxugAAAABJRU5ErkJggg==';
//file_put_contents('./test.html', $msds_html);
//file_put_contents('./test.html', $msds_html);
//$msds_html = file_get_contents('./test.html');
//$msds_html = file_get_contents('./test.html');
...
...
server/app/Services/Traits/Msds/MsdsTrait.php
0 → 100644
View file @
1373f38b
<?php
namespace
App\Services\Traits\Msds
;
use
App\Services\Traits\BaseService
;
trait
MsdsTrait
{
use
BaseService
;
public
function
getCnMsds
(
$msds_html
,
$params
)
{
if
(
!
empty
(
$params
)){
$msds_html
=
preg_replace
(
'/<dt>企业名称:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>企业名称:</dt> <dd>'
.
$params
[
'company_name'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>企业地址:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>企业地址:</dt> <dd>'
.
$params
[
'company_address'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>传真:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>传真:</dt> <dd>'
.
$params
[
'company_fax'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>联系电话:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>联系电话:</dt> <dd>'
.
$params
[
'company_phone'
]
.
'</dd>'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<dt>企业应急电话:<\/dt>[\s\S]*?<dd>[\s\S]*?<\/dd>/i'
,
'<dt>企业应急电话:</dt> <dd>'
.
$params
[
'company_urgency_phone'
]
.
'</dd>'
,
$msds_html
);
}
preg_match
(
'/<body>[\s]*?<style>(?<bodyStyle>[\s\S]*?)<\/style>/i'
,
$msds_html
,
$bodyStyle
);
$bodyStyle
[
'bodyStyle'
]
=
"<style>body{ font-family: 'msyh'; font-size: 0.8rem; font-weight: normal; display: block;} h2{font-size: 2.0rem; text-align: center;}.container { padding-right: 5px;padding-left: 5px;margin-right: auto;margin-left: auto;width: 100%;} .sds-cn dd p { font-weight: normal; margin-left: 20px; }"
.
$bodyStyle
[
'bodyStyle'
]
.
"</style><body>"
;
// 格式化处理
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?\{[\s]*?line-height: 1.5;[\s]*?\}/i'
,
'.sds-cn{line-height: 2.5;}'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?\.b-a[\s]*?\{[\s]*?border: 1px solid #000000;[\s]*?\}/i'
,
'.sds-cn .b-a { border: 1px solid #000000; margin-left:10px;}'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?dd.clearfix[\s]*?\{ margin-left: 20px;[\s]*?\}/i'
,
'.sds-cn dd.clearfix { width:80% }'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?dt[\s]*?\{[\s]*?float: left; font-weight: bold; clear: left; [\s]*?\}/i'
,
'.sds-cn dt { float: left; font-weight: normal; clear: left; }'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?\.list-line[\s]*?li:before[\s]*?\{ content: " —— " \}/i'
,
'.sds-cn .list-line li:before { content: " -- " }'
,
$bodyStyle
[
'bodyStyle'
]);
$bodyStyle
[
'bodyStyle'
]
=
preg_replace
(
'/\.sds-cn[\s]*?p[\s]*?\{[\s]*?margin:[\s]*?0; \}/i'
,
'.sds-cn p { margin: 0 15px;word-wrap:break-word; }'
,
$bodyStyle
[
'bodyStyle'
]);
$msds_html
=
preg_replace
(
'/<html>/i'
,
'<html lang="zh_CN no-js">'
,
$msds_html
);
//$msds_html = preg_replace('/<meta[\s]*?charset=[\"]UTF\-8[\"]/i', '<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">', $msds_html);
$msds_html
=
preg_replace
(
'/<body><style>(?<bodyStyle>[\s\S]*?)<\/style>/i'
,
'@body@'
,
$msds_html
);
$msds_html
=
preg_replace
(
'/<\/body>/'
,
'</body>'
,
preg_replace
(
'/@body@/'
,
$bodyStyle
[
'bodyStyle'
],
$msds_html
));
//$msds_html = preg_replace('/@body@/', $newMsdsHtml, $msds_html);
if
(
preg_match
(
'/<div[\s]*?class=[\\\'|\"]sds-cn[\\\'|\"]>/i'
,
$msds_html
)){
$msds_html
=
str_replace
(
'<div class="sds-cn">'
,
'<div class="sds-cn"><h2 style="height:100px"><img src="'
.
$params
[
'company_logo'
]
.
'" style="text-align:center;height:90px;"></h2>'
,
$msds_html
);
}
if
(
preg_match
(
'/<div[\s]*?class=[\\\'|\"]sds-cn-header[\\\'|\"]>(?<content>[\s\S]+?)<\/div>/i'
,
$msds_html
,
$content
)){
$msds_html
=
str_replace
(
'化学品安全技术说明书 '
,
'<h2 style="font-size: 1.5rem;font-weight: bold">化学品安全技术说明书 </h2>'
,
$msds_html
);
}
if
(
preg_match
(
'/<div[\s]*?class=[\\\'|\"]sds-cn-content[\\\'|\"]>(?<content>[\s\S]+?)<\/div><\/body>/i'
,
$msds_html
,
$content
)){
if
(
$content
[
'content'
]){
preg_match_all
(
'/(?<title>[\s\S]*?)<dl>(?<dlContent>[\s\S]*?)<\/dl>/i'
,
$content
[
'content'
],
$dlContent
);
if
(
$dlContent
[
'dlContent'
]){
$newMsdsHtml
=
''
;
foreach
(
$dlContent
[
'dlContent'
]
as
$key
=>
$dl
){
$msds_html
=
str_replace
(
$dlContent
[
'title'
][
$key
],
'<h2 style="font-size: 1.3rem;font-weight: bold">'
.
$dlContent
[
'title'
][
$key
]
.
'</h2>'
,
$msds_html
);
if
(
in_array
(
$key
,
[
0
,
5
,
9
])){
$dlHtml
=
''
;
if
(
$dlContent
[
'title'
][
$key
]){
//$dlHtml = '<h2 style="font-size: 20px; text-align: center;" align="center">'.$dlContent['title'][$key].'</h2>';
preg_match_all
(
'/<dt>(?<cTitle>[\s\S]*?)<\/dt>[\s]*?<dd[\s\S]*?>(?<cContent>[\s\S]*?)<\/dd>/i'
,
$dl
,
$ddContent
);
if
(
$ddContent
){
foreach
(
$ddContent
[
'cTitle'
]
as
$k
=>
$c
){
$dlHtml
.=
'<div><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal">'
.
$ddContent
[
'cContent'
][
$k
]
.
'</span></div>'
;
}
}
}
$msds_html
=
str_replace
(
$dl
,
$dlHtml
,
$msds_html
);
}
if
(
in_array
(
$key
,
[
1
,
2
,
3
,
4
,
6
,
7
,
8
,
10
,
11
,
12
])){
preg_match_all
(
'/<dt>(?<cTitle>[\s\S]*?)<\/dt>[\s]*?<dd[\s\S]*?>(?<cContent>[\s\S]*?)<\/dd>/i'
,
$dl
,
$ddContent
);
if
(
$ddContent
){
$dlHtml
=
''
;
foreach
(
$ddContent
[
'cTitle'
]
as
$k
=>
$c
){
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;">'
.
$ddContent
[
'cContent'
][
$k
]
.
'</span></div>'
;
}
}
$msds_html
=
str_replace
(
$dl
,
$dlHtml
,
$msds_html
);
}
if
(
$key
==
13
){
preg_match_all
(
'/<dt>(?<cTitle>[\s\S]*?)<\/dt>[\s]*?<dd[\s\S]*?>(?<cContent>[\s\S]*?)<\/dd>/i'
,
$dl
,
$ddContent
);
if
(
$ddContent
){
$dlHtml
=
''
;
foreach
(
$ddContent
[
'cTitle'
]
as
$k
=>
$c
){
if
(
$k
==
(
count
(
$ddContent
[
'cTitle'
])
-
1
)){
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;"><p>'
.
$ddContent
[
'cContent'
][
$k
]
.
'</p></span></div>'
;
}
else
{
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;">'
.
$ddContent
[
'cContent'
][
$k
]
.
'</span></div>'
;
}
}
}
$msds_html
=
str_replace
(
$dl
,
$dlHtml
,
$msds_html
);
}
}
}
if
(
preg_match
(
'/<h2[\s]*?style=[\\\'|\"]font-size: 1.3rem;font-weight: bold[\\\'|\"]>[\s]*?(?<cTitle>第9部分 理化特性)(?<content>[\s\S]*?)<\/h2>/i'
,
$msds_html
,
$content
)){
if
(
$content
[
'content'
]){
$msds_html
=
str_replace
(
$content
[
'cTitle'
],
$content
[
'cTitle'
]
.
'</h2>'
,
$msds_html
);
$tableInfo
=
str_replace
(
'第10部分 稳定性和反应性'
,
''
,
$content
[
'content'
]);
$tableInfo
.=
'<h2 style="font-size: 1.3rem;font-weight: bold">第10部分 稳定性和反应性</h2>'
;
$msds_html
=
str_replace
(
$content
[
'content'
],
$tableInfo
,
$msds_html
);
}
}
if
(
preg_match
(
'/<h2[\s]*?style=[\\\'|\"]font-size: 1.3rem;font-weight: bold[\\\'|\"]>[\s]*?第15部分 法规信息(?<content>[\s\S]*?)<\/h2>/i'
,
$msds_html
,
$content
)){
if
(
$content
[
'content'
]){
$dlHtml
=
''
;
preg_match
(
'/<p>(?<cTitle>[\s\S]*?)<\/p>[\s]*?<u>(?<cContent>[\s\S]*?)<\/u>/i'
,
$content
[
'content'
],
$c
);
$dlHtml
.=
'<div style="width:90%"><span style="margin: 0;"><b>'
.
$c
[
'cTitle'
]
.
'</b></span>'
;
$dlHtml
.=
'<span style="font-weight: normal;"><p>'
.
$c
[
'cContent'
]
.
'</p></span></div>'
;
$msds_html
=
str_replace
(
$content
[
'content'
],
'</h2>'
.
str_replace
(
'</h2>'
,
''
,
$content
[
'content'
]),
$msds_html
);
$msds_html
=
str_replace
(
$content
[
'content'
],
$dlHtml
,
$msds_html
);
}
}
/*preg_match('/(?<title>第[\s]*?3[\s\S]+?)<table[\s]*?class=[\\\'|\"]table-text-center avoid-page-break-inside[\\\'|\"]>[\s\S]*?<\/table>/i', $content['content'], $tableContent);
if($tableContent['title']){
$msds_html = str_replace($tableContent['title'],'<h2 style="font-size: 1.3rem;font-weight: bold">'.$tableContent['title'].'</h2>', $msds_html);
}
preg_match('/(?<title>第4[\s\S]*?)<dl>[\s\S]*?<\/dl>/i', $content['content'], $dlContent);
if($dlContent['title']){
$msds_html = str_replace($dlContent['title'],'<h2 style="font-size: 1.3rem;font-weight: bold">'.$dlContent['title'].'</h2>', $msds_html);
}*/
}
}
return
$msds_html
;
}
}
server/database/seeds/production/PermissionsSeeder.php
deleted
100644 → 0
View file @
da0c1e7c
<?php
/*
* This file is part of the Jiannei/lumen-api-starter.
*
* (c) Jiannei <longjian.huang@foxmail.com>
*
* This source file is subject to the MIT license that is bundled
* with this source code in the file LICENSE.
*/
use
App\Repositories\Enums\PermissionEnum
;
use
App\Repositories\Enums\RoleEnum
;
use
Illuminate\Database\Seeder
;
use
Illuminate\Support\Facades\DB
;
use
Spatie\Permission\Contracts\Permission
as
PermissionContract
;
use
Spatie\Permission\Contracts\Role
as
RoleContract
;
use
Spatie\Permission\PermissionRegistrar
;
class
PermissionsSeeder
extends
Seeder
{
public
function
run
()
{
app
(
PermissionRegistrar
::
class
)
->
forgetCachedPermissions
();
$permissionClass
=
app
(
PermissionContract
::
class
);
$roleClass
=
app
(
RoleContract
::
class
);
DB
::
statement
(
'SET FOREIGN_KEY_CHECKS = 0'
);
// 禁用外键约束
DB
::
table
(
$roleClass
->
getTable
())
->
truncate
();
DB
::
table
(
$permissionClass
->
getTable
())
->
truncate
();
DB
::
statement
(
'SET FOREIGN_KEY_CHECKS = 1'
);
// 启用外键约束
$roles
=
RoleEnum
::
makeRoles
();
foreach
(
$roles
as
$item
)
{
$roleClass
->
create
(
$item
);
}
$permissions
=
PermissionEnum
::
makePermissions
();
foreach
(
$permissions
as
$item
)
{
$permissionClass
::
create
(
$item
);
}
}
}
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