From 12702a79c1b003f3ce6cf77bc940dc2e1f66a058 Mon Sep 17 00:00:00 2001 From: zhengzheng <18918765049@163.com> Date: Sun, 15 May 2022 17:06:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/busi/AdvertDataController.java | 15 +- .../controller/common/CommonController.java | 29 +-- zt-admin/src/main/resources/application.yml | 6 +- .../resources/templates/advert/info/add.html | 74 ++----- .../resources/templates/advert/info/edit.html | 184 ++++-------------- 5 files changed, 69 insertions(+), 239 deletions(-) diff --git a/zt-admin/src/main/java/com/wuzhen/web/controller/busi/AdvertDataController.java b/zt-admin/src/main/java/com/wuzhen/web/controller/busi/AdvertDataController.java index 2ba4ce2c6..3e0a4a00a 100644 --- a/zt-admin/src/main/java/com/wuzhen/web/controller/busi/AdvertDataController.java +++ b/zt-admin/src/main/java/com/wuzhen/web/controller/busi/AdvertDataController.java @@ -99,20 +99,9 @@ public class AdvertDataController extends BaseController AdvertInfo advertInfo = advertDataService.selectAdvertDataById(id); String fileNames = advertInfo.getBannerPicUrl(); - String[] fileNamesArray = null; - List list =new ArrayList(); - if (fileNames !=null && !"".equals(fileNames)){ - fileNamesArray = fileNames.split(","); - for (int i = 0; i < fileNamesArray.length; i++) { - HashMap map = new HashMap(); - map.put("id",i); - map.put("filename",fileNamesArray[i]); - map.put("filepath","http://"+this.getAdress()+":18000/profile/upload/ba/"+fileNamesArray[i]); - list.add(map); - } + if(fileNames!=null && !"".equals(fileNames)){ + advertInfo.setBannerBaNames("http://"+this.getAdress()+":18000/profile/upload/ba/"+fileNames); } - String json = JSONObject.toJSONString(list); - advertInfo.setBannerBaNames(json); mmap.put("advert", advertInfo); return prefix + "/edit"; } diff --git a/zt-admin/src/main/java/com/wuzhen/web/controller/common/CommonController.java b/zt-admin/src/main/java/com/wuzhen/web/controller/common/CommonController.java index 6f2542ece..1c21650d0 100644 --- a/zt-admin/src/main/java/com/wuzhen/web/controller/common/CommonController.java +++ b/zt-admin/src/main/java/com/wuzhen/web/controller/common/CommonController.java @@ -141,31 +141,20 @@ public class CommonController */ @PostMapping("/uploadsBanner") @ResponseBody - public AjaxResult uploadFilesBanner(List files) throws Exception + public AjaxResult uploadFilesBanner(MultipartFile file) throws Exception { try { // 上传文件路径 String filePath = RuoYiConfig.getBAUploadPath(); - List urls = new ArrayList(); - List fileNames = new ArrayList(); - List newFileNames = new ArrayList(); - List originalFilenames = new ArrayList(); - for (MultipartFile file : files) - { - // 上传并返回新文件名称 - String fileName = FileUploadUtils.upload(filePath, file); - String url = serverConfig.getUrl() + fileName; - urls.add(url); - fileNames.add(fileName); - newFileNames.add(FileUtils.getName(fileName)); - originalFilenames.add(file.getOriginalFilename()); - } + // 上传并返回新文件名称 + String fileName = FileUploadUtils.upload(filePath, file); + String url = serverConfig.getUrl() + fileName; AjaxResult ajax = AjaxResult.success(); - ajax.put("urls", StringUtils.join(urls, FILE_DELIMETER)); - ajax.put("fileNames", StringUtils.join(fileNames, FILE_DELIMETER)); - ajax.put("newFileNames", StringUtils.join(newFileNames, FILE_DELIMETER)); - ajax.put("originalFilenames", StringUtils.join(originalFilenames, FILE_DELIMETER)); + ajax.put("url", url); + ajax.put("fileName", fileName); + ajax.put("newFileName", FileUtils.getName(fileName)); + ajax.put("originalFilename", file.getOriginalFilename()); return ajax; } catch (Exception e) @@ -177,7 +166,7 @@ public class CommonController /** - * 通用上传请求(多个) + * 通用上传请求 */ @PostMapping("/uploadsFp") @ResponseBody diff --git a/zt-admin/src/main/resources/application.yml b/zt-admin/src/main/resources/application.yml index ea9c8c675..9e4ade117 100644 --- a/zt-admin/src/main/resources/application.yml +++ b/zt-admin/src/main/resources/application.yml @@ -3,13 +3,13 @@ wuzhen: # 名称 name: 乌镇展厅小程序 # 版本 - version: 4.7.3 + version: 1.0.3 # 版权年份 copyrightYear: 2022 # 实例演示开关 demoEnabled: false # 文件路径 示例( Windows配置 D:/images11,Linux配置 /www/wwwroot) - profile: D:/images11 + profile: /www/wwwroot fp: http://47.94.96.229:18001/fp/ lp: http://47.94.96.229:18001/lp/ # 获取ip地址开关 @@ -61,7 +61,7 @@ spring: time-zone: GMT+8 date-format: yyyy-MM-dd HH:mm:ss profiles: - active: druid + active: prd # 文件上传 servlet: multipart: diff --git a/zt-admin/src/main/resources/templates/advert/info/add.html b/zt-admin/src/main/resources/templates/advert/info/add.html index c4fbbfd71..23ba0adef 100644 --- a/zt-admin/src/main/resources/templates/advert/info/add.html +++ b/zt-admin/src/main/resources/templates/advert/info/add.html @@ -33,7 +33,7 @@
- +
@@ -68,67 +68,25 @@ } $(function () { - - // TODO: 上传 - // 多图上传 - var cacheImgs = {}; - $("#multipleFile").fileinput({ + // 广告位单图上传 + $("#singleFile").fileinput({ uploadUrl: ctx + 'common/uploadsBanner', - showUploadedThumbs: true, - showUpload: false, - uploadAsync: false - }).on('filebatchuploadsuccess', function (event, data, previewId, index) { - console.log('filebatchuploadsuccess', event, data, previewId, index); - var rsp = data.response; - var urls = rsp.newFileNames || ''; - var value = $("#bannerPicUrl").val() || ''; - var list = []; - if (value) { - var list = value.split(','); - } - list = list.concat(urls.split(',')) - $("#bannerPicUrl").val(list.join(',')); - var a = $("#bannerPicUrl").val(); - alert(rsp.newFileNames); - alert(a); + maxFileCount: 1, + layoutTemplates: { + footer: '',//隐藏全部小图标 + }, + autoReplace: true }).on('fileuploaded', function (event, data, previewId, index) { - cacheImgs[previewId] = data.response.newFileNames; - var rsp = data.response; - var value = $("#bannerPicUrl").val() || ''; - var list = []; - var res = []; - var r_val = rsp.newFileNames; - var list = value.split(','); - list.forEach(function (item) { - if ((item !== r_val) && (item !=='') ) { - res.push(item); - } - }) - res.push(r_val); - console.log('end:', res); - $("#bannerPicUrl").val(res); - var c = $("#bannerPicUrl").val(); - console.log('fileuploaded: c:', c); - }).on('filesuccessremove', function (event, data, previewId, index) { - - var urls = cacheImgs[data]; - delete cacheImgs[data]; - var value = $("#bannerPicUrl").val() || '';; - var list = value.split(','); - var res = []; - list.forEach(function (item) { - if ((item !== urls) && (item !=='')) { - res.push(item); - } - }) - $("#bannerPicUrl").val(res); - var d = $("#bannerPicUrl").val(); - console.log('filesuccessremove: d:', d); - }).on('filecleared', function (event, data, msg) { - alert('全部删除'); + var rsp = data.response; + $("#bannerPicUrl").val(rsp.newFileName); + log.info("return url:" + rsp.url) + log.info("reutrn fileName:" + rsp.fileName) + log.info("reutrn newFileName:" + rsp.newFileName) + log.info("return originalFilename:" + rsp.originalFilename) + }).on('fileremoved', function (event, id, index) { + $("input[name='" + event.currentTarget.id + "']").val('') $("#bannerPicUrl").val(''); }) - }); diff --git a/zt-admin/src/main/resources/templates/advert/info/edit.html b/zt-admin/src/main/resources/templates/advert/info/edit.html index 8fa1a46b7..bbf6d6afa 100644 --- a/zt-admin/src/main/resources/templates/advert/info/edit.html +++ b/zt-admin/src/main/resources/templates/advert/info/edit.html @@ -36,7 +36,7 @@
- +
@@ -105,155 +105,49 @@ } - function initIdCardFile(){ - - //测试图片回显 - var a = $("input[name='bannerBaNames']").val(); - // alert(a); - var initialList = eval("("+a+")"); - var previewJson = new Array();//回显文件数组 - var initPreviewConfig = new Array(); - if (initialList != null && initialList.length) { - for (var i = 0; i < initialList.length; i++) { - previewJson[i] = initialList[i].filepath; - //alert(initialList[i].filepath); - //组装图片配置 - var tjson = { - type: getFileTypeFromUrl(initialList[i].filepath), - caption: initialList[i].filename, // 展示的文件名 - url: 'idcardremove', // 删除url 必填,可以写一个空方法,不然无法删除初始化图片 - key: initialList[i].id, // 删除时Ajax向后台传递的参数 - /* extra: function() { - return {"id":id}; - } */ //这里也可以携带格外的参数 - }; - initPreviewConfig[i] = tjson; - } - } - // 多图上传 - var cacheImgs = {}; - var g_value = $("#bannerPicUrl").val() || ''; - var g_list = g_value.split(','); - // 多图上传 - var cacheImgs = {}; - var g_value = $("#bannerPicUrl").val() || ''; - var g_list = g_value.split(','); - $("#multipleFile").fileinput({ - uploadUrl: ctx + 'common/uploadsBanner',//上传路径 - fileActionSettings: { - uploadClass: 'hideBtn' - }, - overwriteInitial: false, - initialPreviewAsData: true, - initialPreview: previewJson, - initialPreviewConfig: initPreviewConfig, - // uploadAsync:false, 需要使用异步 - layoutTemplates: { - actionUpload: '',//去除上传预览缩略图中的上传图片 - }, - showPreview: true,//是否显示预览 - showUpload: false,//不显示底部上传按钮 - showRemove: false,//不显示底部清空按钮 - showCaption: true,//显示底部上传按钮左侧文本(完全是为了美观) - }).on('filebatchuploadsuccess', function (event, data, previewId, index) { - var rsp = data.response; - }).on('fileuploaded', function (event, data, previewId, index) { - - cacheImgs[previewId] = data.response.newFileNames; - var rsp = data.response; - var value = $("#bannerPicUrl").val() || ''; - var list = []; - var res = []; - var r_val = rsp.newFileNames; - var list = value.split(','); - list.forEach(function (item) { - if ((item !== r_val) && (item !=='') ) { - res.push(item); - } - }) - res.push(r_val); - console.log('end:', res); - $("#bannerPicUrl").val(res); - var c = $("#bannerPicUrl").val(); - console.log('fileuploaded: c:', c); - - }).on('filebatchselected', function (event, files) { - $(this).fileinput("upload");//这里会根据uploadAsync值自动去执行对应的回调函 - }).on('filebatchuploaderror', function (event, data, msg) { - //批量上传失败提示 - var _maxRequestSize = 10240; - _allFileSize = 0; - if (_allFileSize > _maxRequestSize) { - msg = "上传文件总大小(" + (_allFileSize / 1024).toFixed(2) + "MB)超出限制(" + (_maxRequestSize / 1024).toFixed(2) + "MB)"; - $('#input-id').fileinput('clear'); - $.modal.msgWarning(msg); - } - }).on('fileclear', function (event, previewId, extra) { - //拒绝移除 如果给移除上传控件所有内容的功能,则系统会重新初始化回显的文件,那么我的 initInputFileImg()函数完全不起作用了,所以,禁用它 - return false; - }).on('fileerror', function (event, data, msg) { - console.log("--------------------fileerror--------------------"); - console.log(data); - console.log(msg); - $.modal.msgError("上传失败"); - }).on('filepreremove', function (event, key) { - $.modal.msgSuccess("移除成功-1"); - }).on('filebeforedelete', function (event, key) { - $.modal.msgSuccess("移除成功-2"); - console.log('filebeforedelete',event,key); - var value = $("#bannerPicUrl").val() || ''; - var list = value.split(','); - var res = []; - for (var i = 0; i < list.length; i++) { - if(list[i]!==g_list[key]){ - res.push(list[i]); - } - } - $("#bannerPicUrl").val(res); - var f = $("#bannerPicUrl").val(); - console.log('filesuccessremove: f:', f); - }).on('filesuccessremove', function (event, data, previewId, index) { - $.modal.msgSuccess("移除成功-3"); - var urls = cacheImgs[data]; - delete cacheImgs[data]; - var value = $("#bannerPicUrl").val() || ''; - var list = value.split(','); - var res = []; - list.forEach(function (item) { - if ((item !== urls) && (item !=='')) { - res.push(item); - } - }) - $("#bannerPicUrl").val(res); - var d = $("#bannerPicUrl").val(); - console.log('filesuccessremove: d:', d); - }); - - } - + $(document).ready(function () { //调用上面的初始化方法 - initIdCardFile(); - initInputFileImg(); + + var a = $("input[name='bannerBaNames']").val(); + var b= []; + if (a.endsWith('null')){ + b= [] + }else{ + b= [a] + } + console.log('a:', a); + // 单图上传 + $("#singleFile").fileinput({ + uploadUrl: ctx + 'common/uploadsBanner', + maxFileCount: 1, + initialPreviewAsData: true, + initialPreview: b, + layoutTemplates: { + footer: '',//隐藏全部小图标 + }, + showRemove: true, //不显示底部清空按钮 + autoReplace: true + }).on('fileuploaded', function (event, data, previewId, index) { + var rsp = data.response; + $("#bannerPicUrl").val(rsp.newFileName); + log.info("return bannerPicUrl url:" + rsp.url) + log.info("reutrn bannerPicUrl fileName:" + rsp.fileName) + log.info("reutrn bannerPicUrl newFileName:" + rsp.newFileName) + log.info("return bannerPicUrl originalFilename:" + rsp.originalFilename) + }).on('fileremoved', function (event, id, index) { + $("input[name='" + event.currentTarget.id + "']").val(''); + + }).on('filebeforedelete', function (event, key) { + $.modal.msgSuccess("移除成功-2"); + + }) + + }); - function getFileTypeFromUrl(url) { - if (url.endsWith('gif') || url.endsWith('jpg') || url.endsWith('jpeg') || url.endsWith('png')) { - return 'image'; - } - if (url.endsWith('mp4')) { - return 'video'; - } - } - - //回显文件 对应的div里追加 hidden_img - function initInputFileImg(){ - $(".file-sortable").each(function(){ - var tempFileName = $(this).find('.kv-file-content').find('.file-preview-image').attr("src"); - $(this).find('.kv-file-content').eq(0).parent().append(""); - }) - } +