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() ?: '操作失败'); } }