id, $this->authStore)) { $store = HappinessStore::find() ->where(['mall_id' => $this->mall_id, 'user_id' => $this->user_id, 'status' => StatusEnum::ENABLED]) ->one(); if (empty($store)) { \Yii::$app->response->data = ['code' => 1, 'msg' => '您非门店身份']; \Yii::$app->response->send(); return; } $this->store_id = $store->id; } return $action; } //扫码后请求 public function actionScanCode() { $params = Yii::$app->request->get(); $params['mall_id'] = $this->mall_id; $params['user_id'] = $this->user_id; $params['user'] = $this->user; $res = HappinessCashierOrder::scanCode($params); if ($res === false) return $this->error(HappinessCashierOrder::getStaticError()); return $this->success('操作成功', $res); } //添加订单 public function actionCreate() { $params = Yii::$app->request->post(); $store = HappinessStore::findOne(['id' => $params['store_id'],'status' => StatusEnum::ENABLED]); if (empty($store)) return $this->error('门店不存在'); $params['mall_id'] = $this->mall_id; $params['user_id'] = $this->user_id; $params['title'] = $store['store_name'] . ':收银台订单'; $params['user'] = $this->user; $res = HappinessCashierOrder::createOrder($params); if ($res === false) return $this->error(HappinessCashierOrder::getStaticError()); return $this->success('操作成功', $res); } //收款码 public function actionPaymentCode() { $params = Yii::$app->request->get(); $H5Url = \Yii::$app->services->setting->platform->get('system.h5_url'); $cashier = \Yii::$app->services->setting->addons->get($this->mall_id, HappinessEnum::ADDONS_NAME, 'cashier'); $returnData = [ 'store_id' => $this->store_id, 'cashier_bg_img' => $cashier['cashier_bg_img'] ?? '', 'h5_url' => $H5Url, ]; return $this->success('请求成功', $returnData); } /** * 关闭收银台订单 * @return mixed|null */ public function actionClose() { $params = \Yii::$app->request->post(); $res = \Yii::$app->services->validate->validate($params, [ [['trade_id'], 'required'], ]); if ($res === false) return $this->error(\Yii::$app->services->validate->getErrorMessage()); $payment_order = PaymentTradeOrder::findOne(['trade_id'=>$params['trade_id'],'is_pay'=>0]); $data = [ 'order_no' => $payment_order['order_no'], 'user_id' => $this->user_id, 'mall_id' => $this->mall_id, 'operator_id' => $this->user_id, 'operator_name' => $this->user['nickname']??'', ]; HappinessCashierOrder::close($data); return $this->success('操作成功'); } }