layui 上传 xml

4 篇文章 0 订阅
3 篇文章 0 订阅

前端:

<div class="layui-fluid">
	<div class="layui-row layui-col-space15">
		<div class="layui-col-md12">
			<div class="layui-card">
				<div class="layui-card-header">编辑</div>
				<div class="layui-card-body">
					<script type="text/html" template lay-url="majorTemplate/majorTemplate/{{d.params.id}}" lay-done="layui.data.done(d);">
						<div class="layui-form layui-sy-form" lay-filter="xy-form-addMould" style="height: 800px;margin-left: 100px;">
							<div class="layui-form-item">
								<label class="layui-form-label">模板代码</label>
								<div class="layui-input-block">
									<input class="layui-input" type="text" name="templateNo" id="templateNo" style="border: none;" value="{{d.data.templateNo}}" disabled="disabled">
								</div>
							</div>
							<div class="layui-form-item">
								<label class="layui-form-label">模板名称</label>
								<div class="layui-input-block">
									<input class="layui-input" type="text" name="templateName" id="templateName" lay-verType="tips" value="{{d.data.templateName}}">
								</div>
							</div>
							<div class="layui-form-item">
								<label class="layui-form-label">培养层次</label>
								<div class="layui-input-block">
									<input class="layui-input" type="text" name="subLevel" lay-verType="tips" value="{{d.data.subLevel_Text}}" readonly="readonly">
								</div>
							</div>
							<div class="layui-form-item">
								<label class="layui-form-label">是否上传</label>
								<div class="layui-input-block">
									<input type="radio" name="sex" lay-filter="isupload" value="1" title="是">
									<input type="radio" name="sex" lay-filter="isupload" value="0" title="否" checked>
								</div>
							</div>
							<div class="layui-form-item" id="mbwj" hidden="hidden">
								<label class="layui-form-label">模版文件<font color="red">*</font></label>
								<div class="layui-input-block">
									<button type="button" lay-filter="savepa" class="layui-btn" id="upload"><i class="layui-icon"></i>上传模板</button>
									<span id="uploadResult"></span>
								</div>
							</div>
							<div class="layui-form-item">
								<label class="layui-form-label">模板说明</label>
								<div class="layui-input-block">
									<textarea name="description" id="description" placeholder="请输入内容" class="layui-textarea">{{d.data.description}}</textarea>
								</div>
							</div>

							<div class="layui-form-item">
								<div class="layui-input-block">
									<button class="layui-btn" lay-submit lay-filter="save" id="save">保存</button>
									<button class="layui-btn layui-btn-primary" lay-filter="close" id="close">关闭</button>
								</div>
							</div>
						</div>
					</script>
				</div>
			</div>
		</div>
	</div>
</div>

<script>
	layui.data.done = function(d) {
		layui.use(['form', 'syFormUtil', 'syCommonUtil', 'aesEncrypt', 'syTableSelectUtil', 'upload'], function() {

			var $ = layui.$;
			var upload = layui.upload;
			var formSelects = layui.formSelects;
			layui.form.render();
			layui.syFormUtil('xy-form-addMould').render();

			layui.upload.render({
				elem: '#upload',
				url: layui.setter.base_server + '/majorTemplate/majorTemplate/upload',
				accept: 'file',
				auto: false,
				data: {},
				exts: 'xml',
				headers: {
					access_token: layui.data('layuiAdmin').access_token
				},
				bindAction: '#save',
				choose: function(obj) {
					obj.preview(function(index, file, result) {
						$("#uploadResult").html(file.name);
					});
				},
				before: function(obj) {
					files = obj.pushFile();
					layer.load();
					this.data.templateName = $('#templateName').val();
					this.data.description = $('#description').val();
				},
				done: function(res) {				
					layer.closeAll('loading');
					layer.msg("保存成功!", {}, function() {
						window.location.reload();
					});
				}
			});

			$("#close").click(function() {
				layui.layer.closeAll();
			});

			layui.form.on('submit(save)', function(obj) {
//					console.log(obj);
			});

			layui.form.on('radio(isupload)', function(data) {
				if(data.value === "1") {
					$("#mbwj").show();
				} else {
					$("#mbwj").hide();
				}
			});

		})
	}
</script>

后端:

	@ResponseBody
	@RequestMapping(value = "/upload")
	@AutoLog(logType = CommonConstant.LOG_TYPE_UPDATE,value = "模板导入")
	public Result<String> uploadSchoolSet(@RequestParam(value="file",required = false) MultipartFile uploadFile,@RequestParam(value = "templateName")  String templateName,@RequestParam(value = "description")String description) {
		Result<String> result = new Result<>();
		try {
			String name = uploadFile.getOriginalFilename();
			File file = new File(name);
			Path path = Paths.get(System.getProperty("user.dir"), name );
			file = path.toFile();
			uploadFile.transferTo(file);
			BufferedReader reader = null;
			StringBuffer sbf = new StringBuffer();
			if(file.getName().endsWith("xml")){
				reader = new BufferedReader(new FileReader(file));
				String tempStr;
				while((tempStr = reader.readLine())!=null){
					sbf.append(tempStr);
				}
			}
			String str =  sbf.toString();
			reader.close();
			file.delete();
			String resu = "导入成功";
			if("导入成功".equals(resu)){
				result.success("导入成功!");
			}else{
				result.setMessage("导入失败!");
			}
		}catch (Exception e){
			e.printStackTrace();
		}
		return result;
	}

点击保存后调用上传方法,同时将表单的其它字段和模板一起传到后端

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值