修改图片和视频上传版本

This commit is contained in:
Renpc-kilig 2024-08-05 15:24:21 +08:00
parent 066e5b0dc2
commit 58663cb26c
11 changed files with 712 additions and 330 deletions

View File

@ -137,6 +137,12 @@
<if test="icon2 != null and icon2 != ''">
icon2 = #{icon2},
</if>
<if test="icon1 == null or icon1 == ''">
icon1 = '',
</if>
<if test="icon2 == null or icon2 == ''">
icon2 = '',
</if>
<if test="titleFir != null and titleFir != ''">
title_fir = #{titleFir},
</if>
@ -149,6 +155,12 @@
<if test="video != null and video != ''">
video = #{video},
</if>
<if test="photo == null or photo == ''">
photo = '',
</if>
<if test="video == null or video == ''">
video = '',
</if>
<if test="content != null and content != ''">
content = #{content},
</if>

View File

@ -136,6 +136,12 @@
<if test="video != null and video != ''">
video = #{video},
</if>
<if test="photo == null or photo == ''">
photo = '',
</if>
<if test="video == null or video == ''">
video = '',
</if>
<if test="dictId != null and dictId != ''">
dict_id = #{dictId},
</if>

View File

@ -118,6 +118,12 @@
<if test="video != null and video != ''">
video = #{video},
</if>
<if test="photo == null or photo == ''">
photo = '',
</if>
<if test="video == null or video == ''">
video = '',
</if>
<if test="content != null and content != ''">
content = #{content},
</if>

View File

@ -161,6 +161,15 @@
<if test="video != null and video != ''">
video = #{video},
</if>
<if test="coverPhoto == null or coverPhoto == ''">
cover_photo = '',
</if>
<if test="photo == null or photo == ''">
photo = '',
</if>
<if test="video == null or video == ''">
video = '',
</if>
<if test="newsType != null and newsType != ''">
news_type = #{newsType},
</if>

View File

@ -34,66 +34,25 @@
<input type="text" id="titleSec" name="titleSec" class="layui-input" value="" placeholder="请输入二级标题" maxlength="100">
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">图标1</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="icon1Btn"><i class="fa fa-upload"></i> 上传图标1</button>
<input type="hidden" id="icon1" name="icon1">
<div class="layui-btn-container" id="icon1FileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="icon1FileDownload" type="text/html">
{{# var fileName = 'icon1'; }}
{{# if(d[fileName].length > 0) { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-image-box">
<span class="upload-image-span">
<img src="route/file/download/false/{{item.fileId}}" align="加载失败">
</span>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-image" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="icon1RemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 9) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="图标1" data-name="icon1" lay-filter="icon1UploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="icon1FileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">图标2</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="icon2Btn"><i class="fa fa-upload"></i> 上传图标2</button>
<input type="hidden" id="icon2" name="icon2">
<div class="layui-btn-container" id="icon2FileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="icon2FileDownload" type="text/html">
{{# var fileName = 'icon2'; }}
{{# if(d[fileName].length > 0) { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-image-box">
<span class="upload-image-span">
<img src="route/file/download/false/{{item.fileId}}" align="加载失败">
</span>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-image" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="icon2RemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 9) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="图标2" data-name="icon2" lay-filter="icon2UploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="icon2FileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">内容</label>
<div class="layui-input-block">
@ -106,64 +65,25 @@
<input type="text" id="color" name="color" class="layui-input" value="" placeholder="背景颜色" maxlength="100">
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">图片</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="photoBtn"><i class="fa fa-upload"></i> 上传图片</button>
<input type="hidden" id="photo" name="photo">
<div class="layui-btn-container" id="photoFileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="photoFileDownload" type="text/html">
{{# var fileName = 'photo'; }}
{{# if(d[fileName].length > 0) { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-image-box">
<span class="upload-image-span">
<img src="route/file/download/false/{{item.fileId}}" align="加载失败">
</span>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-image" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="photoRemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 9) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="图片" data-name="photo" lay-filter="photoUploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="photoFileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">视频</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="videoBtn"><i class="fa fa-upload"></i> 上传视频</button>
<input type="hidden" id="video" name="video">
<div class="layui-btn-container" id="videoFileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="videoFileDownload" type="text/html">
{{# var fileName = 'video' }}
{{# if(d[fileName] != '') { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-video-box">
<div id="{{fileName}}{{i}}" style="width:300px; height:200px;"></div>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-video" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="videoRemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 1) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="视频" data-name="video" lay-filter="videoUploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="videoFileBox">最多可上传一个视频</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">备用字段</label>
<div class="layui-input-block">
@ -197,16 +117,240 @@
base: 'assets/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(['index', 'form', 'laydate', 'laytpl'], function(){
}).use(['index', 'form', 'laydate', 'laytpl', 'upload'], function(){
var $ = layui.$;
var form = layui.form;
var laytpl = layui.laytpl;
var laydate = layui.laydate;
var wangEditor = window.wangEditor;
var upload = layui.upload;
var wangEditorObj = {};
var viewerObj = {};
var contentId = top.restAjax.params(window.location.href).contentId;
// 初始化视频上传
var videosArray = [];
function renderVideo() {
var $previewImgsFileBox = $('#videoFileBox');
var imgs = '';
$.each(videosArray, function(index, item) {
imgs += `
<div class="img">
<video style="width: 100px;" controls>
<source src="route/file/download/true/${item}">
</video>
<!--<video src="route/file/download/true/${item}" style="width: 100px;">-->
<a href="javascript:void(0);" class="img-remove-video-btn" data-type="video" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventVideo() {
upload.render({
elem: '#videoBtn',
url: top.restAjax.path('api/file/uploadvideo', []),
field: 'video',
accept: 'video',
acceptMime: 'video/*',
done: function(res) {
top.dialog.msg('上传成功');
videosArray.push(res.data);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length >= 1) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-video-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'video') {
videosArray.splice(index, 1);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length < 9) {
var $uploadLogoBtn = $('#videoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
// 初始化图片图片上传
var photosArray = [];
function renderPhoto() {
var $previewImgsFileBox = $('#photoFileBox');
var imgs = '';
$.each(photosArray, function(index, item) {
imgs += `
<div class="img">
<img src="route/file/download/true/${item}" style="width: 100px;">
<a href="javascript:void(0);" class="img-remove-btn" data-type="photo" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEvent() {
upload.render({
elem: '#photoBtn',
url: top.restAjax.path('api/file/uploadimage', []),
field: 'image',
accept: 'images',
acceptMime: 'image/*',
done: function(res) {
top.dialog.msg('上传成功');
photosArray.push(res.data);
renderPhoto();
$('#photo').val(photosArray.join(','));
if(photosArray.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'photo') {
photosArray.splice(index, 1);
renderPhoto();
$('#photo').val(photosArray.join(','));
if(photosArray.length < 9) {
var $uploadLogoBtn = $('#photoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
// 初始化图片图片上传
var icon1Array = [];
function renderIcon1() {
var $previewImgsFileBox = $('#icon1FileBox');
var imgs = '';
$.each(icon1Array, function(index, item) {
imgs += `
<div class="img">
<img src="route/file/download/true/${item}" style="width: 100px;">
<a href="javascript:void(0);" class="img-remove-icon1-btn" data-type="photo" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventIcon1() {
upload.render({
elem: '#icon1Btn',
url: top.restAjax.path('api/file/uploadimage', []),
field: 'image',
accept: 'images',
acceptMime: 'image/*',
done: function(res) {
top.dialog.msg('上传成功');
icon1Array.push(res.data);
renderIcon1();
$('#icon1').val(icon1Array.join(','));
if(icon1Array.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-icon1-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'photo') {
icon1Array.splice(index, 1);
renderIcon1();
$('#icon1').val(icon1Array.join(','));
if(icon1Array.length < 9) {
var $uploadLogoBtn = $('#icon1Btn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
// 初始化图片图片上传
var icon2Array = [];
function renderIcon2() {
var $previewImgsFileBox = $('#icon2FileBox');
var imgs = '';
$.each(icon2Array, function(index, item) {
imgs += `
<div class="img">
<img src="route/file/download/true/${item}" style="width: 100px;">
<a href="javascript:void(0);" class="img-remove-icon2-btn" data-type="photo" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventIcon2() {
upload.render({
elem: '#icon2Btn',
url: top.restAjax.path('api/file/uploadimage', []),
field: 'image',
accept: 'images',
acceptMime: 'image/*',
done: function(res) {
top.dialog.msg('上传成功');
icon2Array.push(res.data);
renderIcon2();
$('#icon2').val(icon2Array.join(','));
if(icon2Array.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-icon2-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'photo') {
icon2Array.splice(index, 1);
renderIcon2();
$('#icon2').val(icon2Array.join(','));
if(icon2Array.length < 9) {
var $uploadLogoBtn = $('#icon2Btn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
function closeBox() {
parent.layer.close(parent.layer.getFrameIndex(window.name));
}
@ -488,10 +632,10 @@
// 初始化内容
function initData() {
initIcon1UploadFile();
initIcon2UploadFile();
initPhotoUploadFile();
initVideoUploadFile();
initEvent();
initEventVideo();
initEventIcon1();
initEventIcon2();
initContentRichText();
}
initData();

View File

@ -34,66 +34,25 @@
<input type="text" id="titleSec" name="titleSec" class="layui-input" value="" placeholder="请输入二级标题" maxlength="100">
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">图标1</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="icon1Btn"><i class="fa fa-upload"></i> 上传图标1</button>
<input type="hidden" id="icon1" name="icon1">
<div class="layui-btn-container" id="icon1FileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="icon1FileDownload" type="text/html">
{{# var fileName = 'icon1'; }}
{{# if(d[fileName].length > 0) { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-image-box">
<span class="upload-image-span">
<img src="route/file/download/false/{{item.fileId}}" align="加载失败">
</span>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-image" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="icon1RemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 9) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="图标1" data-name="icon1" lay-filter="icon1UploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="icon1FileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">图标2</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="icon2Btn"><i class="fa fa-upload"></i> 上传图标2</button>
<input type="hidden" id="icon2" name="icon2">
<div class="layui-btn-container" id="icon2FileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="icon2FileDownload" type="text/html">
{{# var fileName = 'icon2'; }}
{{# if(d[fileName].length > 0) { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-image-box">
<span class="upload-image-span">
<img src="route/file/download/false/{{item.fileId}}" align="加载失败">
</span>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-image" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="icon2RemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 9) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="图标2" data-name="icon2" lay-filter="icon2UploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="icon2FileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">内容</label>
<div class="layui-input-block">
@ -106,64 +65,25 @@
<input type="text" id="color" name="color" class="layui-input" value="" placeholder="背景颜色" maxlength="100">
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">图片</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="photoBtn"><i class="fa fa-upload"></i> 上传图片</button>
<input type="hidden" id="photo" name="photo">
<div class="layui-btn-container" id="photoFileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="photoFileDownload" type="text/html">
{{# var fileName = 'photo'; }}
{{# if(d[fileName].length > 0) { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-image-box">
<span class="upload-image-span">
<img src="route/file/download/false/{{item.fileId}}" align="加载失败">
</span>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-image" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="photoRemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 9) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="图片" data-name="photo" lay-filter="photoUploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="photoFileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">视频</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="videoBtn"><i class="fa fa-upload"></i> 上传视频</button>
<input type="hidden" id="video" name="video">
<div class="layui-btn-container" id="videoFileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="videoFileDownload" type="text/html">
{{# var fileName = 'video' }}
{{# if(d[fileName] != '') { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-video-box">
<div id="{{fileName}}{{i}}" style="width:300px; height:200px;"></div>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-video" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="videoRemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 1) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="视频" data-name="video" lay-filter="videoUploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="videoFileBox">最多可上传一个视频</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">备用字段</label>
<div class="layui-input-block">
@ -197,17 +117,242 @@
base: 'assets/layuiadmin/' //静态资源所在路径
}).extend({
index: 'lib/index' //主入口模块
}).use(['index', 'form', 'laydate', 'laytpl'], function(){
}).use(['index', 'form', 'laydate', 'laytpl', 'upload'], function(){
var $ = layui.$;
var form = layui.form;
var laytpl = layui.laytpl;
var laydate = layui.laydate;
var upload = layui.upload;
var contentSubId = top.restAjax.params(window.location.href).contentSubId;
var wangEditor = window.wangEditor;
var wangEditorObj = {};
var viewerObj = {};
// 初始化视频上传
var videosArray = [];
function renderVideo() {
$('#video').val(videosArray.join(','));
var $previewImgsFileBox = $('#videoFileBox');
var imgs = '';
$.each(videosArray, function(index, item) {
imgs += `
<div class="img">
<video style="width: 100px;" controls>
<source src="route/file/download/true/${item}">
</video>
<!--<video src="route/file/download/true/${item}" style="width: 100px;">-->
<a href="javascript:void(0);" class="img-remove-video-btn" data-type="video" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventVideo() {
upload.render({
elem: '#videoBtn',
url: top.restAjax.path('api/file/uploadvideo', []),
field: 'video',
accept: 'video',
acceptMime: 'video/*',
done: function(res) {
top.dialog.msg('上传成功');
videosArray.push(res.data);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length >= 1) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-video-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'video') {
videosArray.splice(index, 1);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length < 9) {
var $uploadLogoBtn = $('#videoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
// 初始化图片图片上传
var photosArray = [];
function renderPhoto() {
var $previewImgsFileBox = $('#photoFileBox');
var imgs = '';
$.each(photosArray, function(index, item) {
imgs += `
<div class="img">
<img src="route/file/download/true/${item}" style="width: 100px;">
<a href="javascript:void(0);" class="img-remove-btn" data-type="photo" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEvent() {
upload.render({
elem: '#photoBtn',
url: top.restAjax.path('api/file/uploadimage', []),
field: 'image',
accept: 'images',
acceptMime: 'image/*',
done: function(res) {
top.dialog.msg('上传成功');
photosArray.push(res.data);
renderPhoto();
$('#photo').val(photosArray.join(','));
if(photosArray.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'photo') {
photosArray.splice(index, 1);
renderPhoto();
$('#photo').val(photosArray.join(','));
if(photosArray.length < 9) {
var $uploadLogoBtn = $('#photoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
// 初始化图片图片上传
var icon1Array = [];
function renderIcon1() {
var $previewImgsFileBox = $('#icon1FileBox');
var imgs = '';
$.each(icon1Array, function(index, item) {
imgs += `
<div class="img">
<img src="route/file/download/true/${item}" style="width: 100px;">
<a href="javascript:void(0);" class="img-remove-icon1-btn" data-type="photo" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventIcon1() {
upload.render({
elem: '#icon1Btn',
url: top.restAjax.path('api/file/uploadimage', []),
field: 'image',
accept: 'images',
acceptMime: 'image/*',
done: function(res) {
top.dialog.msg('上传成功');
icon1Array.push(res.data);
renderIcon1();
$('#icon1').val(icon1Array.join(','));
if(icon1Array.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-icon1-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'photo') {
icon1Array.splice(index, 1);
renderIcon1();
$('#icon1').val(icon1Array.join(','));
if(icon1Array.length < 9) {
var $uploadLogoBtn = $('#icon1Btn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
// 初始化图片图片上传
var icon2Array = [];
function renderIcon2() {
var $previewImgsFileBox = $('#icon2FileBox');
var imgs = '';
$.each(icon2Array, function(index, item) {
imgs += `
<div class="img">
<img src="route/file/download/true/${item}" style="width: 100px;">
<a href="javascript:void(0);" class="img-remove-icon2-btn" data-type="photo" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventIcon2() {
upload.render({
elem: '#icon2Btn',
url: top.restAjax.path('api/file/uploadimage', []),
field: 'image',
accept: 'images',
acceptMime: 'image/*',
done: function(res) {
top.dialog.msg('上传成功');
icon2Array.push(res.data);
renderIcon2();
$('#icon2').val(icon2Array.join(','));
if(icon2Array.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-icon2-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'photo') {
icon2Array.splice(index, 1);
renderIcon2();
$('#icon2').val(icon2Array.join(','));
if(icon2Array.length < 9) {
var $uploadLogoBtn = $('#icon2Btn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
function closeBox() {
parent.layer.close(parent.layer.getFrameIndex(window.name));
}
@ -492,17 +637,37 @@
function initData() {
var loadLayerIndex;
top.restAjax.get(top.restAjax.path('api/contentSub/get/{contentSubId}', [contentSubId]), {}, null, function(code, data) {
var videoValue = data.video;
delete data.video;
var dataFormData = {};
for(var i in data) {
dataFormData[i] = data[i] +'';
}
form.val('dataForm', dataFormData);
form.render(null, 'dataForm');
initIcon1UploadFile();
initIcon2UploadFile();
initPhotoUploadFile();
initVideoUploadFile();
initContentRichText(data['content']);
if (data.icon1) {
icon1Array = data.icon1.split(',');
renderIcon1();
}
if (data.icon2) {
icon2Array = data.icon2.split(',');
renderIcon2();
}
if (data.photo) {
photosArray = data.photo.split(',');
renderPhoto();
}
if (videoValue) {
videosArray = videoValue.split(',');
renderVideo();
}
}, function(code, data) {
top.dialog.msg(data.msg);
}, function() {
@ -512,7 +677,11 @@
});
}
initData();
initEvent();
initEventVideo();
initEventIcon1();
initEventIcon2();
// 提交表单
form.on('submit(submitForm)', function(formData) {
top.dialog.confirm(top.dataMessage.commit, function(index) {

View File

@ -68,34 +68,15 @@
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">视频</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="videoBtn"><i class="fa fa-upload"></i> 上传视频</button>
<input type="hidden" id="video" name="video">
<div class="layui-btn-container" id="videoFileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="videoFileDownload" type="text/html">
{{# var fileName = 'video' }}
{{# if(d[fileName] != '') { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-video-box">
<div id="{{fileName}}{{i}}" style="width:300px; height:200px;"></div>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-video" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="videoRemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 1) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="视频" data-name="video" lay-filter="videoUploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="videoFileBox">最多可上传一个视频</div>
</div>
</div>
<div class="layui-form-item layui-layout-admin">
<div class="layui-input-block">
<div class="layui-footer" style="left: 0;">
@ -128,6 +109,64 @@
var wangEditorObj = {};
var viewerObj = {};
// 初始化视频上传
var videosArray = [];
function renderVideo() {
var $previewImgsFileBox = $('#videoFileBox');
var imgs = '';
$.each(videosArray, function(index, item) {
imgs += `
<div class="img">
<video style="width: 100px;" controls>
<source src="route/file/download/true/${item}">
</video>
<!--<video src="route/file/download/true/${item}" style="width: 100px;">-->
<a href="javascript:void(0);" class="img-remove-video-btn" data-type="video" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventVideo() {
upload.render({
elem: '#videoBtn',
url: top.restAjax.path('api/file/uploadvideo', []),
field: 'video',
accept: 'video',
acceptMime: 'video/*',
done: function(res) {
top.dialog.msg('上传成功');
videosArray.push(res.data);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length >= 1) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-video-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'video') {
videosArray.splice(index, 1);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length < 9) {
var $uploadLogoBtn = $('#videoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
function initDictIdSelect() {
top.restAjax.get(top.restAjax.path('api/data/listallbyparentid/b6144a18-c5ea-4286-89fb-441172803d07', []), {}, null, function(code, data, args) {
console.log(data)
@ -322,7 +361,7 @@
function initData() {
initContentRichText();
initEvent();
initVideoUploadFile();
initEventVideo();
initDictIdSelect();
}
initData();

View File

@ -66,34 +66,16 @@
<div class="img-container" id="photoFileBox">最多可上传九张图片</div>
</div>
</div>
<div class="layui-form-item layui-form-text">
<div class="layui-form-item">
<label class="layui-form-label">视频</label>
<div class="layui-input-block">
<button type="button" class="layui-btn layui-btn-sm" id="videoBtn"><i class="fa fa-upload"></i> 上传视频</button>
<input type="hidden" id="video" name="video">
<div class="layui-btn-container" id="videoFileBox" style="border: 1px solid #e6e6e6;"></div>
<script id="videoFileDownload" type="text/html">
{{# var fileName = 'video' }}
{{# if(d[fileName] != '') { }}
{{# var files = d[fileName];}}
{{# for(var i = 0, item = files[i]; item = files[i++];) { }}
<div class="upload-video-box">
<div id="{{fileName}}{{i}}" style="width:300px; height:200px;"></div>
<a class="layui-btn layui-btn-xs layui-btn-danger text-danger remove-video" href="javascript:void(0);" lay-form-button data-id="{{item.fileId}}" data-name="{{fileName}}" lay-filter="videoRemoveFile">
<i class="fa fa-trash-o"></i>
</a>
</div>
{{# } }}
{{# } }}
{{# if(d[fileName].length < 1) { }}
<div class="upload-image-box" style="width: auto; height: auto; padding: 5px;">
<a href="javascript:void(0);" lay-form-button data-explain="视频" data-name="video" lay-filter="videoUploadFile">
<i class="fa fa-plus-square-o" style="font-size: 70px;"></i>
</a>
</div>
{{# } }}
</script>
<div class="img-container" id="videoFileBox">最多可上传一个视频</div>
</div>
</div>
<div class="layui-form-item layui-layout-admin">
<div class="layui-input-block">
<div class="layui-footer" style="left: 0;">
@ -128,6 +110,65 @@
var viewerObj = {};
var upload = layui.upload;
// 初始化视频上传
var videosArray = [];
function renderVideo() {
$('#video').val(videosArray.join(','));
var $previewImgsFileBox = $('#videoFileBox');
var imgs = '';
$.each(videosArray, function(index, item) {
imgs += `
<div class="img">
<video style="width: 100px;" controls>
<source src="route/file/download/true/${item}">
</video>
<!--<video src="route/file/download/true/${item}" style="width: 100px;">-->
<a href="javascript:void(0);" class="img-remove-video-btn" data-type="video" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
})
$previewImgsFileBox.empty();
$previewImgsFileBox.append(imgs);
}
function initEventVideo() {
upload.render({
elem: '#videoBtn',
url: top.restAjax.path('api/file/uploadvideo', []),
field: 'video',
accept: 'video',
acceptMime: 'video/*',
done: function(res) {
top.dialog.msg('上传成功');
videosArray.push(res.data);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length >= 9) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
},
error: function(){
top.dialog.msg('上传异常');
}
});
$(document).on('click', '.img-remove-video-btn', function() {
var index = this.dataset.index;
var type = this.dataset.type;
if(type === 'video') {
videosArray.splice(index, 1);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length < 1) {
var $uploadLogoBtn = $('#videoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
}
}
})
}
function initDictIdSelect(selectValue) {
top.restAjax.get(top.restAjax.path('api/data/listallbyparentid/b6144a18-c5ea-4286-89fb-441172803d07', []), {}, null, function(code, data, args) {
laytpl(document.getElementById('dictIdSelectTemplate').innerHTML).render(data, function(html) {
@ -327,6 +368,9 @@
function initData() {
var loadLayerIndex;
top.restAjax.get(top.restAjax.path('api/content/get/{contentId}', [contentId]), {}, null, function(code, data) {
var videoValue = data.video;
delete data.video;
var dataFormData = {};
for(var i in data) {
dataFormData[i] = data[i] +'';
@ -335,10 +379,16 @@
form.render(null, 'dataForm');
initContentRichText(data['content']);
initDictIdSelect(data['dictId']);
initVideoUploadFile();
photosArray = data.photo.split(',');
renderPhoto();
if (data.photo) {
photosArray = data.photo.split(',');
renderPhoto();
}
if (videoValue) {
videosArray = videoValue.split(',');
renderVideo();
}
}, function(code, data) {
top.dialog.msg(data.msg);
@ -350,7 +400,8 @@
}
initData();
initEvent();
initEventVideo();
// 提交表单
form.on('submit(saveForm)', function(formData) {
formData.field.sendStatus = 'save';

View File

@ -95,6 +95,7 @@
var videosArray = [];
function renderVideo() {
$('#video').val(videosArray.join(','));
var $previewImgsFileBox = $('#videoFileBox');
var imgs = '';
$.each(videosArray, function(index, item) {
@ -341,9 +342,7 @@
dataFormData[i] = data[i] +'';
}
console.log(videoValue)
if (videoValue) {
alert()
videosArray = videoValue.split(',');
renderVideo();
}

View File

@ -180,7 +180,7 @@
videosArray.push(res.data);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length >= 9) {
if(videosArray.length >= 1) {
this.elem.attr('disabled', 'disabled');
this.elem.addClass('layui-disabled')
}
@ -196,7 +196,7 @@
videosArray.splice(index, 1);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length < 9) {
if(videosArray.length < 1) {
var $uploadLogoBtn = $('#videoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');

View File

@ -153,6 +153,7 @@
var videosArray = [];
function renderVideo() {
$('#video').val(videosArray.join(','));
var $previewImgsFileBox = $('#videoFileBox');
var imgs = '';
$.each(videosArray, function(index, item) {
@ -161,7 +162,6 @@
<video style="width: 100px;" controls>
<source src="route/file/download/true/${item}">
</video>
<!--<video src="route/file/download/true/${item}" style="width: 100px;">-->
<a href="javascript:void(0);" class="img-remove-video-btn" data-type="video" data-index="${index}"><i class="fa fa-remove"></i></a>
</div>
`
@ -198,7 +198,7 @@
videosArray.splice(index, 1);
renderVideo();
$('#video').val(videosArray.join(','));
if(videosArray.length < 9) {
if(videosArray.length < 1) {
var $uploadLogoBtn = $('#videoBtn');
$uploadLogoBtn.removeAttr('disabled', 'disabled');
$uploadLogoBtn.removeClass('layui-disabled');
@ -371,21 +371,6 @@
});
}
// 初始化视频
function initVideo(fileName, data) {
for(var i = 0, item; item = data[i++];) {
var player = new ckplayer({
container: '#'+ fileName + i,
variable: 'player',
flashplayer: false,
video: {
file: 'route/file/download/true/'+ item.fileId,
type: 'video/mp4'
}
});
}
}
// 初始化内容富文本
function initContentRichText(value) {
var editor = new wangEditor('#content');
@ -410,51 +395,6 @@
wangEditorObj['content'] = editor;
}
// 初始化视频视频上传
function initVideoUploadFile() {
var files = $('#video').val();
initFileList('video', files, initVideo);
form.on('button(videoUploadFile)', function(obj) {
var name = this.dataset.name;
var explain = this.dataset.explain;
top.dialog.file({
type: 'video',
title: '上传'+ explain,
width: '400px',
height: '420px',
maxFileCount: '1',
onClose: function() {
var uploadFileArray = top.dialog.dialogData.uploadFileArray;
if(typeof(uploadFileArray) != 'undefined' && uploadFileArray.length > 0) {
var files = $('#'+ name).val();
for(var j = 0, file = uploadFileArray[j]; file = uploadFileArray[j++];) {
if(files.length > 0) {
files += ',';
}
files += file.data;
}
initFileList(name, files, initVideo);
}
}
});
});
form.on('button(videoRemoveFile)', function(obj) {
var name = this.dataset.name;
var id = this.dataset.id;
var files = $('#'+ name).val().replace(id, '');
files = files.replace(/\,+/g, ',');
if(files.charAt(0) == ',') {
files = files.substring(1);
}
if(files.charAt(files.length - 1) == ',') {
files = files.substring(0, files.length - 1);
}
initFileList(name, files, initVideo);
});
}
// 初始化新闻类型选择部门
function initNewsTypeSelectDepartment() {
$(document.body).on('click', '#newsTypeSelectDepartment', function() {
@ -486,14 +426,21 @@
for(var i in data) {
dataFormData[i] = data[i] +'';
}
coverPhotosArray = data.photo.split(',');
renderCoverPhoto();
photosArray = data.photo.split(',');
renderPhoto();
if (data.coverPhoto) {
coverPhotosArray = data.coverPhoto.split(',');
renderCoverPhoto();
}
videosArray = videoValue.split(',');
renderVideo();
if (data.photo) {
photosArray = data.photo.split(',');
renderPhoto();
}
if (videoValue) {
videosArray = videoValue.split(',');
renderVideo();
}
form.val('dataForm', dataFormData);
form.render(null, 'dataForm');