model = Printer::find()->where(['store_id' => $this->store_id, 'is_delete' => 0, 'md_id' => 0]); } public function rules() { return [ [['id'], 'integer'], [['name', 'printer_type'], 'string'], [['printer_setting'], 'safe'] ]; } //档口管理 public function getPrinteConfig(){ try { $this->initPrint(); $model = $this->model; $printer = $model->orderBy('id desc')->select('id, name, printer_type, printer_setting')->asArray()->one(); if (!empty($printer)) { if (!empty($printer['printer_setting'])) { $printer['printer_setting'] = json_decode($printer['printer_setting'], true) ?: null; } else { $printer['printer_setting'] = null; } } else { $printer = [ 'id' => 0, 'name' => '', 'printer_type' => 'kdt2',//kdt2 = 365云打印(编号kdt2) yilianyun-k4 = 易联云(易联云开放API接口v1.4.0) // feie = 飞鹅打印机 gp = 佳博云打印(GP-5890XIII/GP-5890XIV) 'printer_setting' => null ]; } return [ 'code' => 0, 'msg' => "获取成功", 'data' => [ 'data' => $printer ] ]; } catch (\Exception $e) { return [ 'code' => 1, 'msg' => $e->getMessage(), ]; } } //档口管理 public function savePrinteConfig(){ try { $this->initPrint(); $model = $this->model; $id = $this->id; $name = $this->name; $store_id = $this->store_id; $printer_setting = $this->printer_setting; $printer_type = $this->printer_type; $printer = $model->andWhere(['id' => $id])->one(); if (!$printer) { $printer = new Printer(); } if (empty($name) || empty($printer_type)) { throw new \Exception("名称不能为空"); } $printer->store_id = $store_id; $printer->name = $name; $printer->printer_type = $printer_type; $printer->printer_setting = json_encode($printer_setting); if (!$printer->save()) { throw new \Exception(json_encode($printer->errors)); } return [ 'code' => 0, 'msg' => "设置成功" ]; } catch (\Exception $e) { return [ 'code' => 1, 'msg' => $e->getMessage(), ]; } } }