From: Alexander Smirnov Date: Sat, 26 Oct 2024 14:31:47 +0000 (+0300) Subject: [ERP-231] исправляет matrix-erp раздел X-Git-Tag: 1.6~20^2~8 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=0f8ce40ec4183ea06ce49331677cad7c46799f11;p=erp24_rep%2Fyii-erp24%2F.git [ERP-231] исправляет matrix-erp раздел --- diff --git a/docker/nginx/conf/nginx.conf b/docker/nginx/conf/nginx.conf index 8baaa720..9689c6d2 100644 --- a/docker/nginx/conf/nginx.conf +++ b/docker/nginx/conf/nginx.conf @@ -32,6 +32,10 @@ http { listen [::]:80; server_name erp24; + location ~ /uploads/.*\.(js|css|jpg|png|ico|woff|woff2|ttf) { + root /www; + } + location ~ .*\.(js|css|jpg|png|ico|woff|woff2|ttf) { root /www/web; } @@ -56,6 +60,10 @@ http { server_name erp24; + location ~ /uploads/.*\.(js|css|jpg|png|ico|woff|woff2|ttf) { + root /www; + } + location ~ .*\.(js|css|jpg|png|ico|woff|woff2|ttf) { root /www/web; } diff --git a/erp24/controllers/MatrixErpController.php b/erp24/controllers/MatrixErpController.php index d0ddafb9..9b650013 100644 --- a/erp24/controllers/MatrixErpController.php +++ b/erp24/controllers/MatrixErpController.php @@ -133,7 +133,7 @@ class MatrixErpController extends Controller { $model = $this->findModel($id); $modelProperty = MatrixErpProperty::find()->where(['guid' => $model->guid])->one(); - $matrixErpMedia = MatrixErpMedia::find()->where(['guid' => $model->guid])->with('files')->all(); + $matrixErpMedia = MatrixErpMedia::find()->where(['guid' => $model->guid])->with('file')->all(); if (empty($modelProperty)) { $modelProperty = new MatrixErpProperty(); $modelProperty->guid = $model->guid; @@ -182,62 +182,18 @@ class MatrixErpController extends Controller if (empty($modelMatrixErpProperty)) { $modelMatrixErpProperty = new MatrixErpProperty(); $modelMatrixErpProperty->guid = $modelMatrixErp->guid; - } - - $isSetModelsMatrixErpMedia = false; - - $modelsMatrixErpMedia = MatrixErpMedia::find()->where(['guid' => $modelMatrixErp->guid])->with('files')->all(); -// $modelsMatrixErpMedia, //$modelsMatrixErpMedia = [new MatrixErpMedia()]; - if (empty($modelsMatrixErpMedia)) { - $modelsMatrixErpMediaRow = new MatrixErpMedia(); - $modelsMatrixErpMediaRow->guid = $modelMatrixErp->guid; - $modelsMatrixErpMedia = [$modelsMatrixErpMediaRow]; - } else { - $isSetModelsMatrixErpMedia = true; - } - - if ($this->request->isPost && $modelMatrixErp->load($this->request->post()) && $modelMatrixErp->save()) { - return $this->redirect(['view', 'id' => $modelMatrixErp->id]); + $modelMatrixErpProperty->save(); } $filterModel = DynamicModel::validateData([ 'imageFile', ], [ - [ - [ - 'imageFile', - ], - 'image', - - ], + [['imageFile',], 'image',], ]); - $modelsMatrixErpMediaArray = []; - - -// if ($isSetModelsMatrixErpMedia) { -// -// foreach ($modelsMatrixErpMedia as $media) { -// if (!empty($media->id)) { -// /** @var MatrixErpMedia $media */ -// $modelsMatrixErpMediaArray[] = ArrayHelper::getValue($media->getRelatedRecords(), 'files'); -//// $media->mediaFiles = ArrayHelper::getValue($media->getRelatedRecords(), 'files'); -// } -//// $modelsMatrixErpMedia->mediaFiles = ArrayHelper::getValue($modelsMatrixErpMedia->getRelatedRecords(), 'files'); -//// $modelsMatrixErpMedia->mediaFiles = $modelsMatrixErpMedia; -// } -// -//// $modelsMatrixErpMedia->mediaFiles = [ -//// -////]; -// -// } - $modelMatrixErpProperty->mediaFiles = $modelsMatrixErpMedia; - return $this->render('/matrix_erp/update', [ 'modelMatrixErp' => $modelMatrixErp, 'modelMatrixErpProperty' => $modelMatrixErpProperty, - 'modelsMatrixErpMedia' => $modelsMatrixErpMedia, 'filterModel' => $filterModel, ]); } diff --git a/erp24/controllers/MatrixErpPropertyController.php b/erp24/controllers/MatrixErpPropertyController.php index 7d0b5323..fce3f4f4 100644 --- a/erp24/controllers/MatrixErpPropertyController.php +++ b/erp24/controllers/MatrixErpPropertyController.php @@ -99,201 +99,142 @@ class MatrixErpPropertyController extends Controller * @return string|\yii\web\Response * @throws NotFoundHttpException if the model cannot be found */ - public function actionUpdate($id = null) + public function actionUpdate() { - $session = Yii::$app->session; - $request = Yii::$app->getRequest(); + $adminId = Yii::$app->user->id; - $adminId = $session->get('admin_id'); - - - - - if (!empty($id)) { - $model = $this->findModel($id); - } else { - $model = new MatrixErpProperty(); - - if ($this->request->isPost) { - $modelMatrixErp = new MatrixErp(); - $modelMatrixErp->load($this->request->post()); + $model = new MatrixErpProperty(); - $matrixErpId = $modelMatrixErp->id; + if ($this->request->isPost) { + $modelMatrixErp = new MatrixErp(); + $modelMatrixErp->load($this->request->post()); - if ($model->load($this->request->post())) { - if (!empty($model->id)) { - $modelEdit = $this->findModel($model->id); - $modelEdit->load($this->request->post()); + $matrixErpId = $modelMatrixErp->id; - $modelEdit->updated_at = date("Y-m-d H:i:s"); - $modelEdit->updated_admin_id = $adminId; + if ($model->load($this->request->post())) { + if (!empty($model->id)) { + $modelEdit = $this->findModel($model->id); + $modelEdit->load($this->request->post()); - } else { - $modelEdit = $model; - $modelEdit->date = date("Y-m-d H:i:s"); - $modelEdit->created_at = date("Y-m-d H:i:s"); - $modelEdit->created_admin_id = $adminId; - } + $modelEdit->updated_at = date("Y-m-d H:i:s"); + $modelEdit->updated_admin_id = $adminId; + } else { + $modelEdit = $model; + $modelEdit->date = date("Y-m-d H:i:s"); + $modelEdit->created_at = date("Y-m-d H:i:s"); + $modelEdit->created_admin_id = $adminId; + } + if (!empty($modelEdit->image_id)) { + $oldFile = Images::find()->where(['id' => $modelEdit->image_id])->one(); + } - if (!empty($modelEdit->image_id)) { - $oldFile = Images::find()->where(['id' => $modelEdit->image_id])->one(); + if ($modelEdit->validate()) { + if (empty($modelEdit->id)) { + unset($modelEdit->id); } + $modelEdit->save(); - $modelsMatrixErpMedia = [new MatrixErpMedia()]; - - $validate = $modelEdit->validate(); - - if ($validate) { - $modelEdit->save(); - - if (Yii::$app->request->isPost) { - $uploadImageForm = new UploadImageForm(); - - if ($uploadImageForm->load($this->request->post())) { - $test=1; - } - $uploadImage = UploadedFile::getInstanceByName('MatrixErpProperty[imageFile]'); - - $uploadMediaFiles = LoadFileHelper::getInstancesByName('MatrixErpMedia', true); - - $modelsMediaFiles = []; - if (!empty($uploadMediaFiles)) { - $modelsMediaFiles = ArrayHelper::getValue($uploadMediaFiles, 'mediaFiles'); - } - - -// $mediaFiles = MultipleModel::createMultipleModel(MatrixErpProperty::classname(), 'MatrixErpProperty', 'mediaFiles', []); -// MultipleModel::loadMultipleFromArray($modelEdit, $modelEdit->mediaFiles , '', $mediaFiles); - $modelsMatrixErpMedia = MultipleModel::createMultipleModel(MatrixErpMedia::classname(), 'MatrixErpProperty', 'mediaFiles'); - $postMatrixErpProperty = $this->request->post('MatrixErpProperty'); - $loadDataMatrixErpMedia = ArrayHelper::getValue($postMatrixErpProperty, 'mediaFiles'); - if (!empty($loadDataMatrixErpMedia)) { - MultipleModel::loadMultipleFromArray($modelsMatrixErpMedia, $loadDataMatrixErpMedia , '',[]); - } + if (Yii::$app->request->isPost) { + $uploadImage = UploadedFile::getInstanceByName('MatrixErpProperty[imageFile]'); - $loadMediaIds = ArrayHelper::getColumn($modelsMatrixErpMedia, 'id'); + $modelsMatrixErpMedia = MultipleModel::createMultipleModel(MatrixErpMedia::class, + 'MatrixErpProperty', 'mediaFiles'); + $postMatrixErpProperty = $this->request->post('MatrixErpProperty'); + $loadDataMatrixErpMedia = ArrayHelper::getValue($postMatrixErpProperty, 'mediaFiles'); + if (!empty($loadDataMatrixErpMedia)) { + MultipleModel::loadMultipleFromArray($modelsMatrixErpMedia, $loadDataMatrixErpMedia , '',[]); + } - if (!empty(array_filter($loadMediaIds))) { - $MatrixErpMediaOld = MatrixErpMedia::find()->andWhere(['guid' => $modelEdit->guid])->andWhere(['NOT IN','id', $loadMediaIds])->all(); - } - if (!empty($MatrixErpMediaOld)) { - foreach ($MatrixErpMediaOld as $item) { - /** @var MatrixErpMedia $item */ - if (!empty($item->file_id)) { - $fileRow = Files::find()->where(['id' => $item->file_id])->one(); + $loadMediaIds = ArrayHelper::getColumn($modelsMatrixErpMedia, 'id'); - /** @var Files $fileRow */ - unlink('./' . $fileRow->url); - $fileRow->delete(); + $MatrixErpMediaOld = MatrixErpMedia::find()->andWhere(['guid' => $modelEdit->guid]) + ->andWhere(['NOT IN','id', array_filter($loadMediaIds)])->all(); + if (!empty($MatrixErpMediaOld)) { + foreach ($MatrixErpMediaOld as $item) { + /** @var MatrixErpMedia $item */ + if (!empty($item->file_id)) { + $fileRow = Files::find()->where(['id' => $item->file_id])->one(); + if ($fileRow) { + /** @var Files $fileRow */ + @unlink('./' . $fileRow->url); + $fileRow->delete(); } - $item->delete(); } + $item->delete(); } + } - - - $infos = FileService::uploadFileMultilevel('MatrixErpProperty', $adminId, ['mediaFiles','mediaFile']); - - foreach ($modelsMatrixErpMedia as $key => $modelMatrixErpMedia) { - if (!empty( $modelMatrixErpMedia->id)) { - $modelMatrixErpMediaIdRow = $modelMatrixErpMedia->id; - /** @var MatrixErpMedia $modelMatrixErpMediaRow */ - $modelMatrixErpMediaRow = MatrixErpMedia::find()->where(['id'=>$modelMatrixErpMediaIdRow])->one(); - $loadDataMatrixErpMediaByKey = $loadDataMatrixErpMedia[$key]; - if (!empty($loadDataMatrixErpMediaByKey)) { - if (!empty($modelMatrixErpMediaRow)) { - $modelMatrixErpMediaRow->load($loadDataMatrixErpMediaByKey,''); - } else { - /** @var MatrixErpMedia $modelMatrixErpMediaRow */ - $modelMatrixErpMediaRow = $modelMatrixErpMedia; - } + $infos = FileService::uploadFileMultilevel('MatrixErpProperty', $adminId, ['mediaFiles','mediaFile']); + + foreach ($modelsMatrixErpMedia as $key => $modelMatrixErpMedia) { + if (!empty($modelMatrixErpMedia->id)) { + $modelMatrixErpMediaRow = MatrixErpMedia::find()->where(['id'=> $modelMatrixErpMedia->id])->one(); + /** @var MatrixErpMedia $modelMatrixErpMediaRow */ + if (!empty($loadDataMatrixErpMedia[$key])) { + if (!empty($modelMatrixErpMediaRow)) { + $modelMatrixErpMediaRow->load($loadDataMatrixErpMedia[$key],''); + } else { + $modelMatrixErpMediaRow = $modelMatrixErpMedia; } - } else { - - /** @var MatrixErpMedia $modelMatrixErpMediaRow */ - $modelMatrixErpMediaRow = $modelMatrixErpMedia; } + } else { + /** @var MatrixErpMedia $modelMatrixErpMediaRow */ + /** @var MatrixErpMedia $modelMatrixErpMedia */ + $modelMatrixErpMediaRow = $modelMatrixErpMedia; + } - if (!empty($modelsMediaFiles[$key])) { - - - if ($infos) { - if (array_key_exists($key, $infos) && !empty( $infos[$key])) { - $info = $infos[$key]; - - $file = new Files(); - $file->created_at = date("Y-m-d H:i:s"); - $file->entity_id = $modelEdit->id; - $file->entity = "matrix_media"; - $file->file_type = $info['fileType']; - $file->url = $info['target_base_dir']; - $file->save(false); - - $modelMatrixErpMediaRow->file_id = $file->id; + if (array_key_exists($key, $infos) && !empty($infos[$key])) { + $info = $infos[$key]; - } - } + $file = new Files(); + $file->created_at = date("Y-m-d H:i:s"); + $file->entity_id = $modelEdit->id; + $file->entity = "matrix_media"; + $file->file_type = $info['fileType']; + $file->url = $info['target_base_file']; + $file->save(false); + $modelMatrixErpMediaRow->file_id = $file->id; + } + if ($modelMatrixErpMediaRow->isNewRecord) { + $modelMatrixErpMediaRow->guid = $modelEdit->guid; + $modelMatrixErpMediaRow->created_admin_id = $adminId; + $modelMatrixErpMediaRow->date = date("Y-m-d H:i:s"); + $modelMatrixErpMediaRow->created_at = date("Y-m-d H:i:s"); + } + if ($modelMatrixErpMediaRow->validate()) { + if (empty($modelMatrixErpMediaRow->id)) { + unset($modelMatrixErpMediaRow->id); } - if (!empty($modelMatrixErpMediaRow)) { - $modelMatrixErpMediaRow->guid = $modelEdit->guid; - $modelMatrixErpMediaRow->created_admin_id = $adminId; - $modelMatrixErpMediaRow->date = date("Y-m-d H:i:s"); - $modelMatrixErpMediaRow->created_at = date("Y-m-d H:i:s"); - $validateRow = $modelMatrixErpMediaRow->validate(); - if ($validateRow) { - $modelMatrixErpMediaRow->save(); - } - } + $modelMatrixErpMediaRow->save(); } + } + if ($uploadImage) { + if (Images::isImageFile(($uploadImage), ['png', 'jpg'])) { + $image = new Images(); + $imageId = $image->loadImage(($uploadImage)); - if ($uploadImage) { - if (Images::isImageFile(($uploadImage), ['png', 'jpg'])) { - $image = new Images(); - $imageId = $image->loadImage(($uploadImage)); - - if (!empty($imageId)) { - $modelEdit->image_id = $imageId; + if (!empty($imageId)) { + $modelEdit->image_id = $imageId; - if (!empty($oldFile)) { - $oldFile->delete(); - } - $modelEdit->save(); + if (!empty($oldFile)) { + $oldFile->delete(); } + $modelEdit->save(); } } } - - return $this->redirect(['matrix-erp/view', 'id' => $matrixErpId]); } + + return $this->redirect(['matrix-erp/view', 'id' => $matrixErpId]); } } } - - /**/ -// $form->field($model, 'date')->textInput(['maxlength' => true]) -// -// $form->field($model, 'created_admin_id')->textInput() -// -// $form->field($model, 'created_at')->textInput() -// -// $form->field($model, 'updated_admin_id')->textInput() -// -// $form->field($model, 'updated_at')->textInput() - /**/ - -// if ($this->request->isPost && $model->load($this->request->post()) && $model->save()) { -// return $this->redirect(['matrix_erp/view', 'id' => $model->matrix_erp_id]); -// } -// -// return $this->render('update', [ -// 'model' => $model, -// ]); } /** diff --git a/erp24/helpers/File.php b/erp24/helpers/File.php index 45ac5d34..0a21adec 100644 --- a/erp24/helpers/File.php +++ b/erp24/helpers/File.php @@ -70,7 +70,7 @@ class File extends FileHelper } $substr = substr($filename, 0, 2); - $rootPath = Yii::getAlias("uploads{$prefixStr}/{$substr}/{$filename}"); + $rootPath = Yii::getAlias("@uploads{$prefixStr}/{$substr}/{$filename}"); if (file_exists($rootPath)) { return $rootPath; } else { diff --git a/erp24/helpers/ImageHelper.php b/erp24/helpers/ImageHelper.php index 39be8905..7b744a13 100644 --- a/erp24/helpers/ImageHelper.php +++ b/erp24/helpers/ImageHelper.php @@ -33,7 +33,7 @@ class ImageHelper public static function getImage($imageId, $width = 300, $height = 200) { $image = ''; $modelImage = \yii_app\records\Images::findOne(['id' => $imageId]); - if ($modelImage) { + if ($modelImage && File::src($modelImage->filename, 'images') != null) { $fileName = File::src($modelImage->filename, 'images'); $relaFileName = File::getRealName($imageId); $imageThumbRow = File::getResizedImageByName($modelImage->filename, $width, $height); @@ -55,10 +55,7 @@ class ImageHelper foreach ($images as $imageIdRow) { $modelImage = \yii_app\records\Images::findOne(['id' => $imageIdRow]); - $relaFileName = null; - $required = true; - if ($modelImage) { - $required = false; + if ($modelImage && File::src($modelImage->filename, 'images') != null) { $fileName = File::src($modelImage->filename, 'images'); $relaFileName = File::getRealName($imageIdRow); $imageThumbRow = File::getResizedImageByName($modelImage->filename, $w , $h); diff --git a/erp24/records/MatrixErpMedia.php b/erp24/records/MatrixErpMedia.php index 1df22c93..37415baf 100644 --- a/erp24/records/MatrixErpMedia.php +++ b/erp24/records/MatrixErpMedia.php @@ -20,9 +20,8 @@ use Yii; */ class MatrixErpMedia extends \yii\db\ActiveRecord { - public $mediaFile; -// public $mediaFiles; + /** * {@inheritdoc} */ @@ -39,7 +38,7 @@ class MatrixErpMedia extends \yii\db\ActiveRecord return [ [['guid', 'name', 'date'], 'required'], [['description'], 'string'], - [['mediaFiles'], 'safe'], + [['mediaFiles', 'id'], 'safe'], [['file_id', 'created_admin_id', 'updated_admin_id'], 'integer'], [['guid', 'name', 'date', 'created_at', 'updated_at'], 'string', 'max' => 100], ]; @@ -65,7 +64,7 @@ class MatrixErpMedia extends \yii\db\ActiveRecord } - public function getFiles() { + public function getFile() { return $this->hasOne(Files::class, ['id' => 'file_id'])->andWhere(['like', 'entity', 'matrix_media']); } } diff --git a/erp24/records/MatrixErpProperty.php b/erp24/records/MatrixErpProperty.php index 01572022..1699e31f 100644 --- a/erp24/records/MatrixErpProperty.php +++ b/erp24/records/MatrixErpProperty.php @@ -21,7 +21,7 @@ use Yii; class MatrixErpProperty extends \yii\db\ActiveRecord { public $imageFile; - public $mediaFiles; + /** * {@inheritdoc} */ @@ -45,7 +45,7 @@ class MatrixErpProperty extends \yii\db\ActiveRecord ], 'file', 'skipOnEmpty' => true, 'extensions' => 'png, jpg', 'checkExtensionByMimeType' => false ], - [['mediaFile'], 'safe'], + [['mediaFile', 'id'], 'safe'], [['guid', 'date', 'created_at', 'updated_at'], 'string', 'max' => 100], [['url_link_video'], 'string', 'max' => 255], ]; @@ -69,4 +69,8 @@ class MatrixErpProperty extends \yii\db\ActiveRecord 'updated_at' => 'Updated At', ]; } + + public function getMediaFiles() { + return $this->hasMany(MatrixErpMedia::class, ['guid' => 'guid']); + } } diff --git a/erp24/services/FileService.php b/erp24/services/FileService.php index a77a03ef..31bee4fd 100755 --- a/erp24/services/FileService.php +++ b/erp24/services/FileService.php @@ -20,6 +20,10 @@ class FileService $result = []; for ($i=0; $i < $countfiles; $i++) { $filename = $_FILES[$label]["name"][$i]; + if (!$filename) { + $result[] = null; + continue; + } $target_file = $target_dir . date("His") . $i . basename($filename); $uploadOk = 1; @@ -193,24 +197,26 @@ class FileService $target_dir = $uploadDir."/$admin_id/" . date("Y") . "/" . date("m") . "/" . date("d") . "/"; $target_base_dir = "/uploads/$admin_id/" . date("Y") . "/" . date("m") . "/" . date("d") . "/"; if ($isMultiple) { - $filesKeyName = $label.'.name'; - $filesKeyName = $label.'.tmp_name'; if (!empty($multilevelKey[0])) { $filesKeyName = $label.'.name.' . $multilevelKey[0]; $filesTempName = $label.'.tmp_name.' . $multilevelKey[0]; } - $filesNames = ArrayHelper::getValue($_FILES,$filesKeyName); - $filesTempNames = ArrayHelper::getValue($_FILES,$filesTempName); + $filesNames = ArrayHelper::getValue($_FILES,$filesKeyName) ?? []; + $filesNamesKeys = array_keys($filesNames); + $filesNames = array_values($filesNames); $countFiles = count($filesNames); - $countfiles = count($_FILES[$label]["name"]); $result = []; for ($i=0; $i < $countFiles; $i++) { + $filesKeyNameRowBeforeReindexing = $filesNamesKeys[$i] . '.' . $multilevelKey[1]; $filesKeyNameRow = $i . '.' . $multilevelKey[1]; -// $filesKeyNameRow = $i . '.' . $multilevelKey; - $filename = ArrayHelper::getValue($filesNames,$filesKeyNameRow); -// $filename = $_FILES[$label]["name"][$i]; + $filename = ArrayHelper::getValue($filesNames, $filesKeyNameRow); + if (!$filename) { + $result [] = null; + continue; + } $target_file = $target_dir . date("His") . $i . basename($filename); + $target_base_file = $target_base_dir . date("His") . $i . basename($filename); $uploadOk = 1; $fileType = strtolower(pathinfo($target_file, PATHINFO_EXTENSION)); @@ -224,10 +230,10 @@ class FileService if (!is_dir($target_dir)) { mkdir($target_dir, 0777, true); } - $filesTempNameRow = $filesTempName . '.' . $filesKeyNameRow; + $filesTempNameRow = $filesTempName . '.' . $filesKeyNameRowBeforeReindexing; $filesTempRow = ArrayHelper::getValue($_FILES,$filesTempNameRow); if (move_uploaded_file($filesTempRow, $target_file)) { - $result[] = compact('fileType', 'target_file', 'target_base_dir'); + $result[] = compact('fileType', 'target_file', 'target_base_dir', 'target_base_file'); } else { $result[] = []; } @@ -246,7 +252,9 @@ class FileService $result = ''; if ($file->file_type == 'image' && $drawImage) { - $result = ImageHelper::drawImage($file->url); + ob_start(); + ImageHelper::drawImage($file->url); + $result = ob_get_clean(); } else { $result = " $file->url]) . "' class='btn btn-link' target='_blank' data-pjax='0'>" . basename($file->url) . ""; } diff --git a/erp24/views/matrix_erp/update.php b/erp24/views/matrix_erp/update.php index 7722a0d8..3a4411b2 100644 --- a/erp24/views/matrix_erp/update.php +++ b/erp24/views/matrix_erp/update.php @@ -5,13 +5,10 @@ use yii\helpers\Html; use yii\widgets\DetailView; /** @var yii\web\View $this */ -/** @var yii_app\records\MatrixErpProperty $modelProperty */ -/** @var yii_app\records\MatrixErpMedia $modelsMatrixErpMedia */ /** @var DynamicModel $filterModel */ /** @var yii_app\records\MatrixErp $modelMatrixErp */ /** @var yii_app\records\MatrixErpProperty $modelMatrixErpProperty */ -/** @var yii_app\records\MatrixErpMedia $modelsMatrixErpMedia */ $this->title = 'Изменение свойств матричного букета: ' . $modelMatrixErp->name; $this->params['breadcrumbs'][] = ['label' => 'Matrix Erps', 'url' => ['index']]; @@ -79,11 +76,8 @@ $this->params['breadcrumbs'][] = 'Update'; render('/matrix_erp_property/_form', [ 'filterModel' => $filterModel, - 'modelMatrixErp' => $modelMatrixErp, 'modelMatrixErpProperty' => $modelMatrixErpProperty, - 'modelsMatrixErpMedia' => $modelsMatrixErpMedia, - ]) ?> \ No newline at end of file diff --git a/erp24/views/matrix_erp/view.php b/erp24/views/matrix_erp/view.php index d1eb3d50..041a8bbd 100644 --- a/erp24/views/matrix_erp/view.php +++ b/erp24/views/matrix_erp/view.php @@ -10,7 +10,7 @@ use yii_app\services\FileService; /** @var yii\web\View $this */ /** @var yii_app\records\MatrixErp $model */ /** @var yii_app\records\MatrixErpProperty $modelProperty */ -/** @var yii_app\records\MatrixErpMedia $matrixErpMedia */ +/** @var yii_app\records\MatrixErpMedia[] $matrixErpMedia */ $this->title = $model->name; $this->params['breadcrumbs'][] = ['label' => 'Matrix Erps', 'url' => ['index']]; @@ -132,26 +132,13 @@ $this->params['breadcrumbs'][] = $this->title; - - getRelatedRecords(),'files'); - if (!empty($filesRow)) { - $fileRow = FileService::getFile($filesRow); - } - - ?> - - name?> - - - + + + name ?> + file) ? + (FileService::getFile($matrixErpMediaRow->file, true) ?? '') : '' ?> + + diff --git a/erp24/views/matrix_erp_property/_form.php b/erp24/views/matrix_erp_property/_form.php index 6f697670..5d293331 100644 --- a/erp24/views/matrix_erp_property/_form.php +++ b/erp24/views/matrix_erp_property/_form.php @@ -11,7 +11,6 @@ use yii_app\services\FileService; /** @var yii\web\View $this */ /** @var yii_app\records\MatrixErp $modelMatrixErp */ /** @var yii_app\records\MatrixErpProperty $modelMatrixErpProperty */ -/** @var yii_app\records\MatrixErpMedia $modelsMatrixErpMedia */ /** @var yii\widgets\ActiveForm $form */ ?> @@ -50,7 +49,7 @@ use yii_app\services\FileService;
field($modelMatrixErpProperty, 'mediaFiles')->widget(MultipleInput::className(), [ - 'min' => 1, + 'min' => 0, 'max' => 100, 'columns' => [ [ @@ -104,17 +103,10 @@ use yii_app\services\FileService; 'name' => 'images_row', 'type' => BaseColumn::TYPE_STATIC, 'value' => function($data) { -// $images = WriteOffsErp::getImagesList($product->imagesWriteOffsErp); - if (!empty($data)) { - $filesRow = ArrayHelper::getValue($data->getRelatedRecords(),'files'); - if (!empty($filesRow)) { - $fileRow = FileService::getFile($filesRow); - } - if (!empty($fileRow)) { - $resultData = $fileRow; - } + /* @var $data \yii_app\records\MatrixErpMedia */ + if (!empty($data->file)) { + $resultData = FileService::getFile($data->file); } - $test = 33; return $resultData ?? ''; }, 'headerOptions' => [ @@ -126,17 +118,14 @@ use yii_app\services\FileService; [ 'name' => 'mediaFile', - 'title' => 'Файлы', + 'title' => 'Файл', 'type' => 'fileInput', 'options' => [ - 'multiple' => 'false', + 'multiple' => 'false', 'name' => 'file_name', 'class' => 'file' - - ], - 'columnOptions' => [ // 'style' => 'width: 250px;', // 'class' => 'custom-css-class'