// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\store\controller\setting\payment; use think\response\Json; use app\store\controller\Controller; use app\store\model\PaymentTemplate as PaymentTemplateModel; use think\db\exception\DbException; use app\common\model\UploadFile; /** * 支付模板设置 * Class Template * @package app\store\controller\setting */ class Template extends Controller { /** * 支付模板列表 * @return Json * @throws DbException */ public function list(): Json { //$merchantId = $this->request->param("merchantId"); $model = new PaymentTemplateModel; $list = $model->getList($this->merchantId); return $this->renderSuccess(compact('list')); } /** * 获取全部支付模板 * @return Json * @throws DbException */ public function all(): Json { $model = new PaymentTemplateModel; $list = $model->getAll($this->merchantId); return $this->renderSuccess(compact('list')); } /** * 支付模板详情 * @param int $templateId * @return Json */ public function detail(int $templateId): Json { $detail = PaymentTemplateModel::detail($templateId); if ($detail->isEmpty()) { return $this->renderSuccess(compact('values')); } $detail = $detail->toArray(); if (isset($detail['config']['voucher']['alipayQrCodeId']) && $detail['config']['voucher']['alipayQrCodeId']) { $info = UploadFile::detail($detail['config']['voucher']['alipayQrCodeId']); $detail['config']['voucher']['alipayQrcode'] = $info['preview_url'] ?? ""; } if (isset($detail['config']['voucher']['quickpayQrCodeId']) && $detail['config']['voucher']['quickpayQrCodeId']) { $info = UploadFile::detail($detail['config']['voucher']['quickpayQrCodeId']); $detail['config']['voucher']['quickpayQrCode'] = $info['preview_url'] ?? ""; } if (isset($detail['config']['voucher']['wechatQrCodeId']) && $detail['config']['voucher']['wechatQrCodeId']) { $info = UploadFile::detail($detail['config']['voucher']['wechatQrCodeId']); $detail['config']['voucher']['wechatQrCode'] = $info['preview_url'] ?? ""; } return $this->renderSuccess(compact('detail')); } /** * 添加支付模板 * @return Json * @throws \cores\exception\BaseException */ public function add(): Json { // 新增记录 $model = new PaymentTemplateModel; $data = $this->postData(); $data['merchant_id'] = $this->merchantId; if ($model->add($data)) { return $this->renderSuccess('添加成功'); } return $this->renderError($model->getError() ?: '添加失败'); } /** * 编辑支付模板 * @param int $templateId * @return Json * @throws \cores\exception\BaseException */ public function edit(int $templateId): Json { // 模板详情 $model = PaymentTemplateModel::detail($templateId); // 更新记录 if ($model->edit($this->postData())) { return $this->renderSuccess('更新成功'); } return $this->renderError($model->getError() ?: '更新失败'); } /** * 删除模板 * @param int $templateId * @return Json */ public function delete(int $templateId): Json { // 模板详情 $model = PaymentTemplateModel::detail($templateId); if (!$model->setDelete()) { return $this->renderError($model->getError() ?: '删除失败'); } return $this->renderSuccess('删除成功'); } }