From 718295efada762c2206a5d0aab547fc81c1311a4 Mon Sep 17 00:00:00 2001 From: linyaostalker <602604991@qq.com> Date: Thu, 12 Dec 2019 10:24:41 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=95=B0=E6=8D=AE=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E6=96=87=E4=BB=B6=E6=93=8D=E4=BD=9C=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/file/logic/file/FileManager.php | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/backend/modules/file/logic/file/FileManager.php b/backend/modules/file/logic/file/FileManager.php index 0613b60..a5e1d66 100755 --- a/backend/modules/file/logic/file/FileManager.php +++ b/backend/modules/file/logic/file/FileManager.php @@ -5,9 +5,11 @@ namespace backend\modules\file\logic\file; use backend\modules\file\models\ars\File; use backend\modules\file\models\ars\TemFile; +use Exception; use yii\web\HttpException; use yii; use yii\web\ServerErrorHttpException; +use backend\modules\goods\logic\goods\GoodsManager; class FileManager { @@ -124,4 +126,32 @@ class FileManager } return true; } + + /** + * @param yii\base\Model|$dataModel //数据模型 + * @param $fileIdStrName //表单中临时保存的文件id字符串组合(以,隔开) + * @param string $fileNameInModel //需要保存到数据库中的数据表字段名称 + * @param $fileOldIdStr //数据库中已经保存的文件id字符串组合(以,隔开) + * @param File|$fileType //File模型中定义的own_type常量 + * @return bool + * @throws Exception + * 数据模型保存文件操作 + */ + public static function saveFileInModel($dataModel, $fileIdStrName, $fileOldIdStr, $fileType, $fileNameInModel = '') + { + if (is_array($dataModel)) { + Yii::$app->session->setFlash('error', '数据模型不得为数组'); + return false; + } + $fileNewIdStr = $dataModel->$fileIdStrName; + $dataModel->save(); + $saveFileRes = GoodsManager::saveFile(explode(',', $fileNewIdStr), $dataModel, explode(',', $fileOldIdStr), $fileType); + if ($fileNameInModel) { + if ($saveFileRes['status']) { + $dataModel->$fileNameInModel = $saveFileRes['first_file_id']; + $dataModel->save(); + } + } + return true; + } } \ No newline at end of file