From 051a52cc86dbc9c531c7b51b5408c8df70591efb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=96=E5=8F=AB?= <392494244@qq.com> Date: Mon, 29 Jan 2024 16:43:48 +0800 Subject: [PATCH] 1 --- modules/api/models/SigningForm.php | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/modules/api/models/SigningForm.php b/modules/api/models/SigningForm.php index 10f377b..ab35ce7 100644 --- a/modules/api/models/SigningForm.php +++ b/modules/api/models/SigningForm.php @@ -3,6 +3,7 @@ namespace app\modules\api\models; use app\models\Goods; +use app\models\GoodsAttr; use app\models\GoodsHub; use app\models\Model; use app\models\Signing; @@ -23,11 +24,13 @@ class SigningForm extends ApiModel public $remark; public $user_id; + public $attr_id; + public function rules() { return [ - [['goods_hub_id', 'company_name', 'brand_name', 'product', 'type', 'number'], 'required'], - [['goods_hub_id', 'number','user_id'], 'integer'], + [['goods_hub_id', 'company_name', 'attr_id', 'brand_name', 'product', 'type', 'number'], 'required'], + [['goods_hub_id', 'number', 'user_id'], 'integer'], [['remark'], 'string'] ]; } @@ -42,6 +45,13 @@ class SigningForm extends ApiModel $goods = Goods::findOne($this->goods_hub_id); + + $goodsAttr = GoodsAttr::findOne(['goods_id' => $goods->id, 'sign_id' => $this->attr_id, 'is_delete' => 0]); + + if (empty($goodsAttr->price)) { + return $this->apiReturnError('价格错误'); + } + if (!$goods) { return $this->apiReturnError('商品id异常'); } @@ -51,7 +61,7 @@ class SigningForm extends ApiModel $signing->order_no = $this->orderNo(); $signing->user_id = $this->user_id; $signing->goods_id = $goods->id; - $signing->moy = $goods->price * $this->number; + $signing->moy = $goodsAttr->price; $signing->company_name = $this->company_name; $signing->brand_name = $this->brand_name; $signing->product = $this->product; @@ -94,7 +104,7 @@ class SigningForm extends ApiModel public function orderList($status, $limit, $page) { - $query = Signing::find()->with(['goods.goodsHub'])->andWhere(['user_id' => $this->user_id])->orderBy(['create_time'=>SORT_DESC]); + $query = Signing::find()->with(['goods.goodsHub'])->andWhere(['user_id' => $this->user_id])->orderBy(['create_time' => SORT_DESC]); if ($status != null) { $query->andWhere(['status' => $status]);