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

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

查看文件

@@ -31,16 +31,6 @@ class Order extends Backend
$this->view->assign("urgentList", $this->model->getUrgentList());
}
/**
* 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法、destroy/restore/recyclebin三个回收站方法
* 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑
* 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改
*/
protected $relationSearch = true;
public function index()
@@ -61,4 +51,49 @@ class Order extends Backend
$result = ['total' => $list->total(), 'rows' => $list->items()];
return json($result);
}
/**
* 工单全景详情
*/
public function detail($ids = null)
{
$row = $this->model->with(['user', 'master'])->find($ids);
if (!$row) {
$this->error(__('No Results were found'));
}
// 1. 多商品/多工项明细
$goodsList = \think\Db::name('order_goods')->where('order_id', $row['id'])->select();
// 2. 现场施工取证图片 (区分报损、过程、完工)
$mediaList = \think\Db::name('order_media')->where('order_id', $row['id'])->order('id asc')->select();
// 3. 履约轨迹日志
$logList = \think\Db::name('order_log')->where('order_id', $row['id'])->order('createtime asc')->select();
// 4. 师傅报价列表
$quoteList = \think\Db::name('order_quote')
->alias('q')
->join('fa_master m', 'q.master_id = m.id', 'LEFT')
->field('q.*, m.realname as master_name, m.mobile as master_mobile, m.score as master_score')
->where('q.order_id', $row['id'])
->order('q.id desc')
->select();
// 5. 客户评价与回复
$review = \think\Db::name('review')->where('order_id', $row['id'])->find();
// 6. 财务结算记录
$settle = \think\Db::name('settle')->where('order_id', $row['id'])->find();
$this->view->assign('row', $row);
$this->view->assign('goodsList', $goodsList);
$this->view->assign('mediaList', $mediaList);
$this->view->assign('logList', $logList);
$this->view->assign('quoteList', $quoteList);
$this->view->assign('review', $review);
$this->view->assign('settle', $settle);
return $this->view->fetch();
}
}