代码提交

This commit is contained in:
zhengzheng 2022-05-05 10:10:42 +08:00
parent 2f2be1c25a
commit 3198879445
8 changed files with 162 additions and 10 deletions

View File

@ -134,9 +134,9 @@ public class ActiveInfoController extends BaseController
list.add(map);
}
}
String json = JSONObject.toJSONString(list);
activeInfo.setListLpNames(json);
activeInfo.setListLsNames("http://localhost:18000/profile/upload/ls/"+activeInfo.getLsFilesName());
mmap.put("active", activeInfo);
return prefix + "/edit";
}

View File

@ -163,6 +163,34 @@ public class CommonController
}
}
/**
* 通用上传列表图
*/
@PostMapping("/uploadsLs")
@ResponseBody
public AjaxResult uploadFilesLs(MultipartFile file) throws Exception
{
try
{
// 上传文件路径
String filePath = RuoYiConfig.getLSUploadPath();
// 上传并返回新文件名称
String fileName = FileUploadUtils.upload(filePath, file);
String url = serverConfig.getUrl() + fileName;
AjaxResult ajax = AjaxResult.success();
ajax.put("url", url);
ajax.put("fileName", fileName);
ajax.put("newFileName", FileUtils.getName(fileName));
ajax.put("originalFilename", file.getOriginalFilename());
return ajax;
}
catch (Exception e)
{
return AjaxResult.error(e.getMessage());
}
}
/**
* 本地资源通用下载
*/

View File

@ -11,6 +11,7 @@
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-role-add" enctype="multipart/form-data">
<input id="lpFilesName" name="lpFilesName" type="hidden"/>
<input id="lsFilesName" name="lsFilesName" type="hidden"/>
<div class="form-group">
<label class="col-sm-3 control-label is-required">活动标题:</label>
<div class="col-sm-8">
@ -32,6 +33,18 @@
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">活动列表图片上传:</label>
<div class="col-sm-8">
<div class="file-loading">
<input id="singleFile" name="file" type="file">
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">报名要求:</label>
<div class="col-sm-8">
@ -43,7 +56,7 @@
<div class="form-group">
<label class="col-sm-3 control-label is-required">活动图片:</label>
<label class="col-sm-3 control-label is-required">活动明细图片:</label>
<div class="col-sm-8">
<div class="file-loading">
@ -109,7 +122,6 @@
$(document).ready(function(){setup_draggable();$("#n-columns").on("change",function(){var v=$(this).val();if(v==="1"){var $col=$(".form-body .col-md-12").toggle(true);$(".form-body .col-md-6 .draggable").each(function(i,el){$(this).remove().appendTo($col)});$(".form-body .col-md-6").toggle(false)}else{var $col=$(".form-body .col-md-6").toggle(true);$(".form-body .col-md-12 .draggable").each(function(i,el){$(this).remove().appendTo(i%2?$col[1]:$col[0])});$(".form-body .col-md-12").toggle(false)}});$("#copy-to-clipboard").on("click",function(){var $copy=$(".form-body").clone().appendTo(document.body);$copy.find(".tools, :hidden").remove();$.each(["draggable","droppable","sortable","dropped","ui-sortable","ui-draggable","ui-droppable","form-body"],function(i,c){$copy.find("."+c).removeClass(c).removeAttr("style")});var html=html_beautify($copy.html());$copy.remove();$modal=get_modal(html).modal("show");$modal.find(".btn").remove();$modal.find(".modal-title").html("复制HTML代码");$modal.find(":input:first").select().focus();return false})});var setup_draggable=function(){$(".draggable").draggable({appendTo:"body",helper:"clone"});$(".droppable").droppable({accept:".draggable",helper:"clone",hoverClass:"droppable-active",drop:function(event,ui){$(".empty-form").remove();var $orig=$(ui.draggable);if(!$(ui.draggable).hasClass("dropped")){var $el=$orig.clone().addClass("dropped").css({"position":"static","left":null,"right":null}).appendTo(this);if($el.find("label").hasClass("radio-box")){$el=$el.html('<label class="col-sm-3 control-label">单选框:</label>'+'<div class="col-sm-9">'+'<label class="radio-box"><input type="radio" checked="" value="option1" id="optionsRadios1" name="optionsRadios">选项1</label>'+'<label class="radio-box"><input type="radio" value="option2" id="optionsRadios2" name="optionsRadios">选项2</label>'+"</div>")}else{if($el.find("label").hasClass("check-box")){$el=$el.html('<label class="col-sm-3 control-label">复选框:</label>'+'<div class="col-sm-9">'+'<label class="check-box">'+'<input type="checkbox" value="option1" id="inlineCheckbox1">选项1</label>'+'<label class="check-box">'+'<input type="checkbox" value="option2" id="inlineCheckbox2">选项2</label>'+'<label class="check-box">'+'<input type="checkbox" value="option3" id="inlineCheckbox3">选项3</label>'+"</div>")}}var id=$orig.find(":input").attr("id");if(id){id=id.split("-").slice(0,-1).join("-")+"-"+(parseInt(id.split("-").slice(-1)[0])+1);$orig.find(":input").attr("id",id);$orig.find("label").attr("for",id)}$('<p class="tools col-sm-12 col-sm-offset-3"> <a class="edit-link">编辑HTML<a> | <a class="remove-link">移除</a></p>').appendTo($el)}else{if($(this)[0]!=$orig.parent()[0]){var $el=$orig.clone().css({"position":"static","left":null,"right":null}).appendTo(this);$orig.remove()}}}}).sortable()};var get_modal=function(content){var modal=$('<div class="modal" style="overflow: auto;" tabindex="-1"> <div class="modal-dialog"><div class="modal-content"><div class="modal-header"><a type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</a><h4 class="modal-title">编辑HTML</h4></div><div class="modal-body ui-front"> <textarea class="form-control textarea-show-src" style="min-height: 200px; margin-bottom: 10px;font-family: Monaco, Fixed"></textarea><button class="btn btn-success">更新HTML</button></div></div></div></div>').appendTo(document.body);var doms=document.getElementsByClassName("textarea-show-src");for(var i=0;i<doms.length;i++){doms.item(i).innerHTML=content}return modal};$(document).on("click",".edit-link",function(ev){var $el=$(this).parent().parent();var $el_copy=$el.clone();var $edit_btn=$el_copy.find(".edit-link").parent().remove();var $modal=get_modal(html_beautify($el_copy.html())).modal("show");$modal.find(":input:first").focus();$modal.find(".btn-success").click(function(ev2){var html=$modal.find("textarea").val();if(!html){$el.remove()}else{$el.html(html);$edit_btn.appendTo($el)}$modal.modal("hide");return false})});$(document).on("click",".remove-link",function(ev){$(this).parent().parent().remove()});$(".input-group.date").datetimepicker({format:"yyyy-mm-dd",minView:"month",autoclose:true});
</script>
<script type="text/javascript">
@ -137,6 +149,30 @@
}
$(function () {
// 单图上传
$("#singleFile").fileinput({
uploadUrl: ctx + 'common/uploadsLs',
maxFileCount: 1,
layoutTemplates: {
footer: '',//隐藏全部小图标
},
autoReplace: true
}).on('fileuploaded', function (event, data, previewId, index) {
var rsp = data.response;
$("#lsFilesName").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('')
$("#lsFilesName").val('');
})
// TODO: 上传
// 多图上传
var cacheImgs = {};

View File

@ -12,6 +12,10 @@
<input id="roleId" name="id" type="hidden" th:field="*{id}" />
<input id="lpFilesName" name="lpFilesName" type="hidden" th:field="*{lpFilesName}"/>
<input id="listLpNames" name="listLpNames" type="hidden" th:field="*{listLpNames}"/>
<input id="lsFilesName" name="lsFilesName" type="hidden" th:field="*{lsFilesName}"/>
<input id="listLsNames" name="listLsNames" type="hidden" th:field="*{listLsNames}"/>
<div class="form-group">
<label class="col-sm-3 control-label is-required">活动标题:</label>
<div class="col-sm-8">
@ -59,6 +63,15 @@
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">活动列表图片上传:</label>
<div class="col-sm-8">
<div class="file-loading">
<input id="singleFile" name="file" type="file">
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">报名要求:</label>
<div class="col-sm-8">
@ -68,7 +81,7 @@
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">活动图片:</label>
<label class="col-sm-3 control-label is-required">活动明细图片:</label>
<div class="col-sm-8">
<div class="file-loading">
@ -122,6 +135,7 @@
var activeType = $("select[name='activeType']").val();
var isEnroll = $("select[name='isEnroll']").val();
var lpFilesName = $("input[name='lpFilesName']").val();
var lsFilesName = $("input[name='lsFilesName']").val();
var status = $("select[name='status']").val();
var remark = $("input[name='remark']").val();
var address =$("textarea[name='address']").val();
@ -139,6 +153,7 @@
"activeType": activeType,
"isEnroll": isEnroll,
"lpFilesName": lpFilesName,
"lsFilesName": lsFilesName,
"status": status,
"remark": remark
},
@ -278,6 +293,43 @@
$(document).ready(function () {
var a = $("input[name='listLsNames']").val();
var b= [];
if (a.endsWith('null')){
b= []
}else{
b= [a]
}
console.log('a', a);
// 单图上传
$("#singleFile").fileinput({
uploadUrl: ctx + 'common/uploadsLs',
maxFileCount: 1,
initialPreviewAsData: true,
initialPreview: b,
layoutTemplates: {
footer: '',//隐藏全部小图标
},
showRemove: true, //不显示底部清空按钮
autoReplace: true
}).on('fileuploaded', function (event, data, previewId, index) {
var rsp = data.response;
$("#lsFilesName").val(rsp.newFileName);
log.info("return lsFilesName url" + rsp.url)
log.info("reutrn lsFilesName fileName" + rsp.fileName)
log.info("reutrn lsFilesName newFileName" + rsp.newFileName)
log.info("return lsFilesName originalFilename" + rsp.originalFilename)
}).on('fileremoved', function (event, id, index) {
$("input[name='" + event.currentTarget.id + "']").val('')
}).on('filebeforedelete', function (event, key) {
$.modal.msgSuccess("移除成功-2");
})
initIdCardFile(); //调用上面的初始化方法
initInputFileImg();

View File

@ -20,12 +20,17 @@
</div>
<div class="form-group">
<label class="font-noraml">首页活动图片上传</label>
<div class="file-loading">
<input id="singleFile" name="file" type="file">
<label class="col-sm-3 control-label is-required">首页活动图片上传:</label>
<div class="col-sm-8">
<div class="file-loading">
<input id="singleFile" name="file" type="file">
</div>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />

View File

@ -141,6 +141,15 @@ public class RuoYiConfig
}
/**
* 获取列表上传路径
*/
public static String getLSUploadPath()
{
return getProfile() + "/upload/ls";
}
/**
* 获取列表上传路径
*/

View File

@ -75,6 +75,17 @@ public class ActiveInfo extends BaseEntity {
private String fpFilesName;
private String lsFilesName;
public String getLsFilesName() {
return lsFilesName;
}
public void setLsFilesName(String lsFilesName) {
this.lsFilesName = lsFilesName;
}
public String getListLpNames() {
return listLpNames;
@ -105,7 +116,15 @@ public class ActiveInfo extends BaseEntity {
this.fpFilesName = fpFilesName;
}
private String listLsNames ;
public String getListLsNames() {
return listLsNames;
}
public void setListLsNames(String listLsNames) {
this.listLsNames = listLsNames;
}
@ -122,7 +141,6 @@ public class ActiveInfo extends BaseEntity {
private MultipartFile activeFirstPic;
/**
* 活动图片地址
*/
@ -299,7 +317,7 @@ public class ActiveInfo extends BaseEntity {
.append("updateTime", getUpdateTime())
.append("fpFilesName", getFpFilesName())
.append("lpFilesName", getLpFilesName())
.append("lsFilesName", getLsFilesName())
.append("remark", getRemark())
.append("address", getAddress())
.toString();

View File

@ -25,11 +25,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="address" column="address" />
<result property="lpFilesName" column="lp_files_name" />
<result property="fpFilesName" column="fp_files_name" />
<result property="lsFilesName" column="ls_files_name" />
<result property="isEnroll" column="is_enroll" />
</resultMap>
<sql id="selectActiveVo">
select r.id, r.active_title, r.active_desc,r.active_start_date,r.active_end_date, r.active_pic_url, r.active_frist_pic_url,r.is_frist_page, r.active_type, r.status, r.del_flag, r.create_time, r.remark, r.address,r.is_enroll,lp_files_name,fp_files_name
select r.id, r.active_title, r.active_desc,r.active_start_date,r.active_end_date, r.active_pic_url, r.active_frist_pic_url,r.is_frist_page, r.active_type, r.status, r.del_flag, r.create_time, r.remark, r.address,r.is_enroll,lp_files_name,ls_files_name,fp_files_name
from active_info r
</sql>
@ -96,6 +97,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
<if test="address != null and address != ''">address = #{address},</if>
<if test="lpFilesName != null ">lp_files_name = #{lpFilesName},</if>
<if test="lsFilesName != null ">ls_files_name = #{lsFilesName},</if>
<if test="isEnroll != null and isEnroll != ''">is_enroll = #{isEnroll},</if>
update_time = sysdate()
</set>
@ -128,6 +130,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createBy != null and createBy != ''">create_by,</if>
<if test="address != null and address != ''">address,</if>
<if test="lpFilesName != null and lpFilesName != ''">lp_files_name,</if>
<if test="lsFilesName != null and lsFilesName != ''">ls_files_name,</if>
<if test="fpFilesName != null and fpFilesName != ''">fp_files_name,</if>
<if test="isEnroll != null and isEnroll != ''">is_enroll,</if>
create_time
@ -143,6 +146,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createBy != null and createBy != ''">#{createBy},</if>
<if test="address != null and address != ''">#{address},</if>
<if test="lpFilesName != null and lpFilesName != ''">#{lpFilesName},</if>
<if test="lsFilesName != null and lsFilesName != ''">#{lsFilesName},</if>
<if test="fpFilesName != null and fpFilesName != ''">#{fpFilesName},</if>
<if test="isEnroll != null and isEnroll != ''">#{isEnroll},</if>
sysdate()