Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
纵之格
ShopXO
提交
ec0420fb
ShopXO
项目概览
纵之格
/
ShopXO
通知
394
Star
16
Fork
11
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
ShopXO
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
ec0420fb
编写于
11月 21, 2022
作者:
G
gongfuxiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
系统更新必须先更新待更新的插件
上级
0b2bdcf7
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
53 addition
and
1 deletion
+53
-1
app/service/PluginsService.php
app/service/PluginsService.php
+44
-1
app/service/SystemUpgradeService.php
app/service/SystemUpgradeService.php
+9
-0
未找到文件。
app/service/PluginsService.php
浏览文件 @
ec0420fb
...
...
@@ -523,7 +523,7 @@ class PluginsService
$time
=
3600
;
$key
=
'plugins_upgrade_check_info'
;
$res
=
MyCache
(
$key
);
if
(
empty
(
$res
))
if
(
empty
(
$res
)
||
(
isset
(
$params
[
'is_force_new'
])
&&
$params
[
'is_force_new'
]
==
1
)
)
{
if
(
!
empty
(
$params
)
&&
!
empty
(
$params
[
'db_data'
])
&&
is_array
(
$params
[
'db_data'
]))
{
...
...
@@ -587,5 +587,48 @@ class PluginsService
$data
=
Db
::
name
(
'Plugins'
)
->
field
(
'id,name,plugins'
)
->
where
([
'is_enable'
=>
1
])
->
order
(
PluginsAdminService
::
$plugins_order_by
)
->
select
()
->
toArray
();
return
empty
(
$data
)
?
[]
:
$data
;
}
/**
* 插件新版本检查
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2022-11-21
* @desc description
* @param [string] $plugins [插件标识、空则全部]
*/
public
static
function
PluginsNewVersionCheck
(
$plugins
=
''
)
{
// 是否存在插件未更新的情况
$where
=
empty
(
$plugins
)
?
[]
:
[
'plugins'
=>
$plugins
];
$plugins_list
=
Db
::
name
(
'Plugins'
)
->
where
(
$where
)
->
column
(
'plugins'
);
if
(
!
empty
(
$plugins_list
))
{
$data
=
[];
foreach
(
$plugins_list
as
$plugins
)
{
$config
=
PluginsAdminService
::
GetPluginsConfig
(
$plugins
);
if
(
!
empty
(
$config
[
'base'
]))
{
$data
[
$plugins
]
=
$config
[
'base'
];
}
}
if
(
!
empty
(
$data
))
{
$check
=
self
::
PluginsUpgradeInfo
([
'db_data'
=>
$data
,
'is_force_new'
=>
1
]);
if
(
isset
(
$check
[
'code'
])
&&
$check
[
'code'
]
==
0
&&
!
empty
(
$check
[
'data'
]))
{
foreach
(
$check
[
'data'
]
as
$v
)
{
if
(
isset
(
$data
[
$v
[
'plugins'
]]))
{
return
DataReturn
(
'('
.
$data
[
$v
[
'plugins'
]][
'name'
]
.
' v'
.
$v
[
'version_new'
]
.
')插件有新版本待更新'
,
-
1
);
}
}
}
}
}
return
DataReturn
(
'无需要更新的插件'
,
0
);
}
}
?>
\ No newline at end of file
app/service/SystemUpgradeService.php
浏览文件 @
ec0420fb
...
...
@@ -11,6 +11,7 @@
namespace
app\service
;
use
app\service\SqlConsoleService
;
use
app\service\PluginsService
;
/**
* 系统更新服务层
...
...
@@ -41,6 +42,14 @@ class SystemUpgradeService
*/
public
static
function
Run
(
$params
=
[])
{
// 是否存在插件未更新的情况
$plugins_check
=
PluginsService
::
PluginsNewVersionCheck
();
if
(
$plugins_check
[
'code'
]
!=
0
)
{
return
$plugins_check
;
}
return
DataReturn
(
'test'
,
-
1
);
// 参数校验
$ret
=
self
::
ParamsCheck
(
$params
);
if
(
$ret
[
'code'
]
!=
0
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录