123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- <?php
- namespace app\store\controller;
- use app\store\model\Printer as PrinterModel;
- use app\store\model\Setting as SettingModel;
- use app\common\library\sms\Driver as SmsDriver;
- /**
- * 系统设置
- * Class Setting
- * @package app\store\controller
- */
- class Setting extends Controller
- {
- /**
- * 商城设置
- * @return mixed
- * @throws \think\exception\DbException
- */
- public function store()
- {
- return $this->updateEvent('store');
- }
- /**
- * 交易设置
- * @return mixed
- * @throws \think\exception\DbException
- */
- public function trade()
- {
- return $this->updateEvent('trade');
- }
- /**
- * 短信通知
- * @return mixed
- * @throws \think\exception\DbException
- */
- public function sms()
- {
- return $this->updateEvent('sms');
- }
- /**
- * 发送订阅消息
- * @return mixed
- * @throws \think\exception\DbException
- */
- public function tplMsg()
- {
- return $this->updateEvent('tplMsg');
- }
- /**
- * 发送短信通知测试
- * @param $AccessKeyId
- * @param $AccessKeySecret
- * @param $sign
- * @param $msg_type
- * @param $template_code
- * @param $accept_phone
- * @return array
- * @throws \think\Exception
- */
- public function smsTest($AccessKeyId, $AccessKeySecret, $sign, $msg_type, $template_code, $accept_phone)
- {
- $SmsDriver = new SmsDriver([
- 'default' => 'aliyun',
- 'engine' => [
- 'aliyun' => [
- 'AccessKeyId' => $AccessKeyId,
- 'AccessKeySecret' => $AccessKeySecret,
- 'sign' => $sign,
- $msg_type => compact('template_code', 'accept_phone'),
- ],
- ],
- ]);
- $templateParams = [];
- if ($msg_type === 'order_pay') {
- $templateParams = ['order_no' => '2018071200000000'];
- }
- if ($SmsDriver->sendSms($msg_type, $templateParams, true)) {
- return $this->renderSuccess('发送成功');
- }
- return $this->renderError('发送失败 ' . $SmsDriver->getError());
- }
- /**
- * 上传设置
- * @return mixed
- * @throws \think\exception\DbException
- */
- public function storage()
- {
- return $this->updateEvent('storage');
- }
- /**
- * 小票打印设置
- * @return mixed
- * @throws \think\exception\DbException
- */
- public function printer()
- {
- // 获取打印机列表
- $printerList = PrinterModel::getAll();
- return $this->updateEvent('printer', compact('printerList'));
- }
- /**
- * 更新商城设置事件
- * @param $key
- * @param $vars
- * @return array|mixed
- * @throws \think\exception\DbException
- */
- private function updateEvent($key, $vars = [])
- {
- if (!$this->request->isAjax()) {
- $vars['values'] = SettingModel::getItem($key);
- return $this->fetch($key, $vars);
- }
- $model = new SettingModel;
- if ($model->edit($key, $this->postData($key))) {
- return $this->renderSuccess('操作成功');
- }
- return $this->renderError($model->getError() ?: '操作失败');
- }
- }
|