chore: 新增epay和cos插件相关类库及配置文件

- 新增epay v2、v3、v3new版本的支付类库及证书文件
- 新增cos云存储类库文件
- 调整文件上传保存格式为按分类存储
- 修复会员、规则、类目等语言翻译键名
- 新增小程序图标等静态资源文件
这个提交包含在:
YuanWen
2026-11-04 09:33:57 +08:00
父节点 361dffc7d8
当前提交 78d45eea74
共有 1176 个文件被更改,包括 102605 次插入 和 4357 次删除

查看文件

@@ -16,11 +16,12 @@ class Home extends Base
*/
public function index()
{
$cats = Db::name('service_cat')
$rawCats = Db::name('service_cat')
->field('id,name,icon')
->where('status', 'normal')
->order('weigh desc,id asc')
->select();
$cats = $this->formatCats($rawCats);
$hot = Db::name('service')
->field('id,cat_id,name,price_type,base_price,max_price,unit,image,sales')
@@ -52,11 +53,12 @@ class Home extends Base
*/
public function cats()
{
$cats = Db::name('service_cat')
$rawCats = Db::name('service_cat')
->field('id,name,icon')
->where('status', 'normal')
->order('weigh desc,id asc')
->select();
$cats = $this->formatCats($rawCats);
foreach ($cats as &$c) {
$icon = (string)$c['icon'];
@@ -477,6 +479,30 @@ class Home extends Base
return $ret;
}
/**
* 格式化类目列表(统一网络图片 URL)
*/
protected function formatCats($cats)
{
if (empty($cats)) return [];
foreach ($cats as &$c) {
$icon = (string)$c['icon'];
if ($icon !== '') {
if (strpos($icon, 'http') === 0) {
$c['icon_url'] = $icon;
} elseif (strpos($icon, '/') !== false || strpos($icon, '.') !== false) {
$c['icon_url'] = cdnurl($icon, true);
} else {
$c['icon_url'] = '';
}
} else {
$c['icon_url'] = '';
}
}
unset($c);
return $cats;
}
/**
* 单项格式化(价格文案统一由此输出)
*/