Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
alading2018
ShopXO
提交
adaf561e
ShopXO
项目概览
alading2018
/
ShopXO
与 Fork 源项目一致
Fork自
纵之格 / ShopXO
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
ShopXO
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
adaf561e
编写于
11月 07, 2021
作者:
G
gongfuxiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
新增获取分类所有父级id
上级
83e1c226
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
61 addition
and
4 deletion
+61
-4
app/service/GoodsService.php
app/service/GoodsService.php
+61
-4
未找到文件。
app/service/GoodsService.php
浏览文件 @
adaf561e
...
...
@@ -392,10 +392,12 @@ class GoodsService
{
$ids
=
explode
(
','
,
$ids
);
}
$where
=
[
'pid'
=>
$ids
];
$where
=
[
[
'pid'
,
'in'
,
$ids
],
];
if
(
$is_enable
!==
null
)
{
$where
[
'is_enable'
]
=
$is_enable
;
$where
[
]
=
[
'is_enable'
,
'='
,
$is_enable
]
;
}
// 级别记录处理
...
...
@@ -425,8 +427,63 @@ class GoodsService
}
}
}
$data
=
empty
(
$data
)
?
$ids
:
array_unique
(
array_merge
(
$ids
,
$data
));
return
$data
;
return
empty
(
$data
)
?
$ids
:
array_unique
(
array_merge
(
$ids
,
$data
));
}
/**
* 获取商品分类的所有上级分类id
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2018-08-29
* @desc description
* @param [array] $ids [分类id数组]
* @param [int] $is_enable [是否启用 null, 0否, 1是]
* @param [int] $level [指定级别 null, 整数、默认则全部下级]
*/
public
static
function
GoodsCategoryParentIds
(
$ids
=
[],
$is_enable
=
null
,
$level
=
null
)
{
if
(
!
is_array
(
$ids
))
{
$ids
=
explode
(
','
,
$ids
);
}
$where
=
[
[
'id'
,
'in'
,
$ids
],
[
'pid'
,
'>'
,
0
],
];
if
(
$is_enable
!==
null
)
{
$where
[]
=
[
'is_enable'
,
'='
,
$is_enable
];
}
// 级别记录处理
if
(
$level
!==
null
)
{
if
(
is_array
(
$level
))
{
$level
[
'temp'
]
+=
1
;
}
else
{
$level
=
[
'value'
=>
$level
,
'temp'
=>
1
,
];
}
}
// 是否超过级别限制
if
(
$level
===
null
||
$level
[
'temp'
]
<
$level
[
'value'
])
{
$data
=
Db
::
name
(
'GoodsCategory'
)
->
where
(
$where
)
->
column
(
'pid'
);
if
(
!
empty
(
$data
))
{
$temp
=
self
::
GoodsCategoryParentIds
(
$data
,
$is_enable
,
$level
);
if
(
!
empty
(
$temp
))
{
$data
=
array_merge
(
$data
,
$temp
);
}
}
}
return
empty
(
$data
)
?
$ids
:
array_unique
(
array_merge
(
$ids
,
$data
));
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录