From 8cafa683992eb48f455a689c785a4b9bd26d31a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E7=90=A6?= Date: Mon, 15 Jun 2026 14:01:00 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=8D=8F=E8=AE=AE=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- member/models/forms/RegisterForm.php | 9 +++++++++ .../modules/v1/controllers/RegisterController.php | 14 +++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/member/models/forms/RegisterForm.php b/member/models/forms/RegisterForm.php index 3c47d60..85caae8 100644 --- a/member/models/forms/RegisterForm.php +++ b/member/models/forms/RegisterForm.php @@ -15,6 +15,7 @@ use common\models\oldDb\Store; use common\models\oldDb\StoreDoctor; use common\models\oldDb\UserPatient; use common\modelsgii\oldDb\PayConfig; +use common\services\SalespersonOrderBindService; use yii\db\Exception; //挂号form @@ -155,6 +156,14 @@ class RegisterForm extends BaseModel $UserRegister->order_number = ($order_number['order_number']??0 ) + 1; $UserRegister->price = $ServiceUser->docService->register_price; $UserRegister->pay_type = $payConfig->pay_type??2;//1微信 2易票联 + if ($UserRegister->hasAttribute('salesperson_id')) { + $bindResult = (new SalespersonOrderBindService())->resolveForOrder( + (int) \Yii::$app->user->id, + $actualStoreId, + time() + ); + $UserRegister->salesperson_id = (int) ($bindResult['salesperson_id'] ?? 0); + } $UserRegister->saveOrFail(); $event = new RegisterEvent();//触发订单创建事件 diff --git a/service/modules/v1/controllers/RegisterController.php b/service/modules/v1/controllers/RegisterController.php index b5ae3a6..0025c49 100644 --- a/service/modules/v1/controllers/RegisterController.php +++ b/service/modules/v1/controllers/RegisterController.php @@ -183,7 +183,19 @@ class RegisterController extends BaseAppController 'age' => function ($m) { return FuncHelper::getAgeFromIdNo($m->patient->id_card); }, - 'sex'=>'patient.sex' + 'sex'=>'patient.sex', + 'salesperson_name' => function ($m) { + if (!$m->hasAttribute('salesperson_id') || (int) $m->salesperson_id <= 0) { + return ''; + } + $row = (new \yii\db\Query()) + ->select(['nick_name', 'phone']) + ->from('xk_salesperson') + ->where(['id' => (int) $m->salesperson_id]) + ->one(); + + return (string) ($row['nick_name'] ?? $row['phone'] ?? ''); + }, ] ]; return $this->create($query, $post);