From 1dfc08be9433fecdc40b6038e5868ccd8a34671a Mon Sep 17 00:00:00 2001 From: linyaostalker <602604991@qq.com> Date: Tue, 17 Dec 2019 11:19:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=BC=80=E5=8F=91=E5=9C=A8=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E4=BF=AE=E6=94=B9=E8=BF=90=E8=B4=B9=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E5=A4=84=E7=90=86=E5=8C=BA=E5=9F=9F=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E6=96=B9=E6=B3=95=EF=BC=8C=E4=BF=AE=E6=94=B9=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controllers/ExpressTemplateController.php | 21 +++++++------------ backend/modules/shop/logic/ShopManager.php | 17 +++++++++++++++ 2 files changed, 25 insertions(+), 13 deletions(-) diff --git a/backend/modules/shop/controllers/ExpressTemplateController.php b/backend/modules/shop/controllers/ExpressTemplateController.php index 3ee18a9..223faf5 100755 --- a/backend/modules/shop/controllers/ExpressTemplateController.php +++ b/backend/modules/shop/controllers/ExpressTemplateController.php @@ -4,6 +4,7 @@ namespace backend\modules\shop\controllers; use backend\modules\shop\logic\ShopManager; use backend\modules\shop\models\searchs\ExpressAreaSearch; +use http\Url; use Throwable; use Yii; use backend\modules\shop\models\ars\ExpressTemplate; @@ -205,14 +206,11 @@ class ExpressTemplateController extends Controller $data['status'] = 2; return $data; } - if (Yii::$app->request->post('area') == null) { - return $this->redirect(Yii::$app->request->referrer . '?status=1'); + $area = Yii::$app->request->post('area'); + if ($area == null) { + return $this->redirect(Yii::$app->request->referrer . '&status=1'); } - $cityIds = array_keys(Yii::$app->request->post('area')); - $data['city'] = implode(',', $cityIds); - $model->load($data, ''); - ShopManager::expressAreaScaleDate($model, $expressTemplateModel); //按比例转换数据 - $model->save(); + ShopManager::dealAreaInExpressArea($area, $model, $expressTemplateModel); return $this->redirect('express-area-list?id='.$model->express_template); } @@ -247,14 +245,11 @@ class ExpressTemplateController extends Controller $data = Yii::$app->request->post('ExpressArea'); if ($data) { - if (Yii::$app->request->post('area') == null) { + $area = Yii::$app->request->post('area'); + if ($area == null) { return $this->redirect(Yii::$app->request->referrer . '&status=1'); } - $cityIds = array_keys(Yii::$app->request->post('area')); - $data['city'] = implode(',', $cityIds); - $model->load($data, ''); - ShopManager::expressAreaScaleDate($model, $expressTemplateModel); //按比例转换数据 - $model->save(); + ShopManager::dealAreaInExpressArea($area, $model, $expressTemplateModel); return $this->redirect('express-area-list?id='.$model->express_template); } diff --git a/backend/modules/shop/logic/ShopManager.php b/backend/modules/shop/logic/ShopManager.php index d81c36f..bde5b00 100644 --- a/backend/modules/shop/logic/ShopManager.php +++ b/backend/modules/shop/logic/ShopManager.php @@ -119,4 +119,21 @@ class ShopManager } return array_values($data); } + + /** + * 处理所选区域数据 + * @param $area + * @param ExpressArea|$expressAreaModel + * @param ExpressTemplate|$expressTemplateModel + * @return bool + */ + public static function dealAreaInExpressArea($area, $expressAreaModel, $expressTemplateModel) + { + $cityIds = array_keys($area); + $data['city'] = implode(',', $cityIds); + $expressAreaModel->load($data, ''); + self::expressAreaScaleDate($expressAreaModel, $expressTemplateModel); //按比例转换数据 + $expressAreaModel->save(); + return true; + } } \ No newline at end of file