2023-12-04 14:40:47 +08:00

347 lines
15 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* @author Any
* @description KISS
* @date 2021年10月5日
* @version 1.0.0
*
* _____LOG_____
*
*/
use app\widgets\PickFile;
use app\widgets\GoodsSku;
use app\assets\UeditorAsset;
UeditorAsset::register($this);
$this->title = $model->isNewRecord ? '添加冠军' : '编辑冠军';
$this->params['breadcrumbs'][] = ['label' => '冠军', 'url' => [\Yii::$app->urlManager->createUrl(["admin/mall/goods/index"])]];
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="layui-fluid">
<div class="layui-card">
<div class="layui-card-header"><?= $this->title ?></div>
<div class="layui-card-body">
<div class="layui-row">
<div class="layui-col-md12">
<div class="layui-form">
<div class="layui-form-item">
<label class="layui-form-label required">冠军名称</label>
<div class="layui-input-inline">
<input name="name" placeholder="请输入冠军名称" autocomplete="off"
class="layui-input" value="<?= $model->goodsHub->name ?>" lay-verify="required">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<?= PickFile::widget([
'accept' => 'images',
'id' => 'cover_pic',
'name' => 'cover_pic',
'label' => '封面',
'value' => $model->goodsHub ? $model->goodsHub->cover_pic : '',
'tip' => '图片大小750×750',
'required' => true,
'imageCompressEnable' => 1,
'imageCompressBorder' => 750,
]) ?>
<div class="layui-form-item">
<label class="layui-form-label required">冠军级别</label>
<div class="layui-input-block" style="width: 200px">
<select name="cat_id">
<option value=""></option>
<?php foreach ($cat_list as $key => $val): ?>
<option value="<?= $val['id'] ?>" <?= $val['id'] == $model->goodsCat->cat_id ? 'selected' : '' ?>><?= $val['name'] ?></option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label required">冠军分类</label>
<div class="layui-input-block" style="width: 200px">
<select name="cat1_id">
<option value=""></option>
<?php foreach ($cat_list1 as $key => $val): ?>
<option value="<?= $val['id'] ?>" <?= $val['id'] == $model->goodsCat->cat1_id ? 'selected' : '' ?>><?= $val['name'] ?></option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label required">签约价格</label>
<div class="layui-input-block" style="width: 200px">
<select name="cat2_id">
<option value=""></option>
<?php foreach ($cat_list2 as $key => $val): ?>
<option value="<?= $val['id'] ?>" <?= $val['id'] == $model->goodsCat->cat2_id ? 'selected' : '' ?>><?= $val['name'] ?></option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label ">多冠组合</label>
<div class="layui-input-block" style="width: 200px">
<select name="cat3_id">
<option value=""></option>
<?php foreach ($cat_list3 as $key => $val): ?>
<option value="<?= $val['id'] ?>" <?= $val['id'] == $model->goodsCat->cat3_id ? 'selected' : '' ?>><?= $val['name'] ?></option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label required">交付权益</label>
<div class="layui-input-block" style="width: 200px">
<select name="cat4_id">
<option value=""></option>
<?php foreach ($cat_list4 as $key => $val): ?>
<option value="<?= $val['id'] ?>" <?= $val['id'] == $model->goodsCat->cat4_id ? 'selected' : '' ?>><?= $val['name'] ?></option>
<?php endforeach; ?>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label required">出生日期</label>
<div class="layui-input-inline">
<input type="date" name="date" placeholder="请输入出生日期" autocomplete="off"
class="layui-input" value="<?= $model->date ?>" lay-verify="required">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label required">代表奖项</label>
<div class="layui-input-inline">
<input name="subtitle" placeholder="请输入代表奖项" autocomplete="off"
class="layui-input" value="<?= $model->goodsHub->subtitle ?>"
lay-verify="required">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<div class="layui-form-item">
<label class="layui-form-label required">签约价格</label>
<div class="layui-input-inline">
<input type="number" name="price" placeholder="请输入售价" autocomplete="off"
class="layui-input" value="<?= $model->price ?>" lay-verify="required">
</div>
<div class="layui-form-mid layui-word-aux"></div>
</div>
<?= PickFile::widget([
'multiple' => true,
'accept' => 'images',
'id' => 'pic_urls',
'name' => 'pic_urls',
'label' => '冠军轮播图(多张)',
'value' => $model->goodsHub ? $model->goodsHub->pic_urls : '',
'tip' => '图片大小750×750',
'required' => true,
// 'imageCompressEnable' => 1,
// 'imageCompressBorder' => 750,
]) ?>
<?= PickFile::widget([
'accept' => 'images',
'id' => 'banner_urls',
'name' => 'banner_urls',
'label' => '冠军详情图',
'value' => $model->goodsHub ? $model->goodsHub->banner_urls : '',
// 'tip' => '图片大小750×750',
'required' => true,
'imageCompressEnable' => 1,
'imageCompressBorder' => 750,
]) ?>
<?= PickFile::widget([
'multiple' => true,
'accept' => 'images',
'id' => 'video_banner_urls',
'name' => 'video_banner_urls',
'label' => '冠军视频封面图',
'value' => $model->goodsHub ? $model->goodsHub->video_banner_urls : '',
'tip' => '图片大小750×750',
'required' => true,
// 'imageCompressEnable' => 1,
// 'imageCompressBorder' => 750,
]) ?>
<?php
if (!empty($model->goodsHub->video_url)) {
$json_de = json_decode($model->goodsHub->video_url, true);
$temp_arr = [];
foreach ($json_de as $key => $val) {
$explode = explode('/', $val);
$end = end($explode);
//
$temp_arr[] = [
'name' => $end,
'url' => $val,
];
}
$model->goodsHub->video_url = json_encode($temp_arr, JSON_UNESCAPED_UNICODE);
}
?>
<?= PickFile::widget([
'accept' => 'file',
'multiple' => true,
'id' => 'video_url',
'name' => 'video_url',
'label' => '冠军视频',
'value' => $model->goodsHub ? $model->goodsHub->video_url : '',
'tip' => '视频最大50M',
'required' => false
]) ?>
<div class="layui-form-item">
<div class="layui-input-block">
<div class="">
<button class="layui-btn" lay-submit="" lay-filter="layui-form-submit">保存</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
<?php $this->beginBlock('js_script_wrap') ?>
layui.config({
base: '/statics/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(['index', 'user'], function () {
var $ = layui.$
, setter = layui.setter
, admin = layui.admin
, form = layui.form
, router = layui.router()
, search = router.search;
form.render();
//提交
var submitLock = false;
form.on('submit(layui-form-submit)', function (obj) {
if (submitLock) {
return false;
}
submitLock = true;
//请求登入接口
//console.log(obj)
var url = '<?= \Yii::$app->urlManager->createUrl(["/admin/mall/goods/edit", 'id' => $model->id ? $model->id : 0]) ?>';
var returnUrl = "<?= $return_url ?>";
var data = obj.field;
var urls = []
urls = window._filelist_video_url.map(function (val) {
console.log(val)
return val.url
})
data.video_url = JSON.stringify(urls);
// if (data.use_attr == 1) {
// for (var i in data.attr) {
// if (!data.attr[i]['price'] || data.attr[i]['price'] * 1 < 0) {
// submitLock = false;
// return layer.msg('价格不能为空或小于0');
// }
// if (!data.attr[i]['stock'] || data.attr[i]['stock'] * 1 < 0) {
// submitLock = false;
// return layer.msg('库存不能为空或小于0');
// }
// }
// }
data.video_banner_urls = JSON.stringify(_gallery_video_banner_urls);
data.pic_urls = JSON.stringify(_gallery_pic_urls);
data._csrf = _csrf;
console.log(data)
$.ajax(url, {
type: "POST",
dataType: "json",
data: data,
timeout: 10000,
success: function (res) {
if (res.code == 0) {
layer.msg(res.msg, {
offset: '15px'
, icon: 1
, time: 1000
}, function () {
if (returnUrl) {
location.href = returnUrl;
} else {
location.reload();
}
});
} else {
layer.msg(res.msg, {
offset: '15px'
, icon: 2
, time: 1000
}, function () {
});
}
},
error: function (xhr, type, err) {
layer.msg(xhr.responseText, {
offset: '15px'
, icon: 2
, time: 1000
}, function () {
});
},
complete: function () {
submitLock = false;
}
})
});
});
<?php $this->endBlock(); ?>
</script>
<?php $this->registerJs($this->blocks['js_script_wrap'], \yii\web\View::POS_END); ?>