50000], ]; } public function attributeLabels() { return [ 'orderSn' => '订单号', 'invoiceRemark' => '发票备注', ]; } /** * 指定校验场景 * @return array */ public function scenarios() { $parentScenarios = parent::scenarios(); $customScenarios = []; return array_merge($parentScenarios, $customScenarios); } /** * @throws Exception */ public function remarkOrderInvoice() { if (!$this->validate()) { return null; } $sn = $this->orderSn; // 订单详情 $orderInfo = Order::findUseDbCalc() ->select('ID,INVOICE_REMARK,SN,STATUS,COUNTRY_ID') ->where("SN=:SN", [':SN' => $sn]) ->asArray() ->one(); if (!$orderInfo) { throw new Exception('订单不存在'); } $db = \Yii::$app->db; $transaction = $db->beginTransaction(); try { Order::updateAll( ['INVOICE_REMARK' => $this->invoiceRemark], 'SN=:SN', ['SN' => $sn] ); $transaction->commit(); } catch(Exception $e) { $transaction->rollBack(); $this->addError('add', $e->getMessage()); return null; } return true; } }