src/main/java/com/zy/asrs/controller/AppVersionController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/static/js/appVersion/appVersion.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/appVersion/appVersion.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/AppVersionController.java
@@ -13,6 +13,7 @@ import com.zy.asrs.service.AppVersionService; import com.zy.common.web.BaseController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.core.io.ClassPathResource; import org.springframework.util.ClassUtils; import org.springframework.web.bind.annotation.*; @@ -20,12 +21,16 @@ import javax.servlet.http.HttpServletResponse; import java.io.*; import java.net.InetAddress; import java.net.UnknownHostException; import java.text.SimpleDateFormat; import java.util.*; @RestController public class AppVersionController extends BaseController { @Value("${server.port}") private String port; @Autowired private AppVersionService appVersionService; @@ -218,31 +223,18 @@ response.setStatus(404); } } @RequestMapping("/appVersion/downloadApp/{filename}/qrDownload") public void qrDownload(@PathVariable String filename, HttpServletResponse response) { @RequestMapping("/appVersion/downloadApp/getIp") public R qrDownload() { String ipAddress = ""; String url = ""; try { ClassPathResource pathResource = new ClassPathResource("appVersion/" + filename); File file = pathResource.getFile(); InputStream inputStream = pathResource.getInputStream(); //输出文件 InputStream fis = new BufferedInputStream(inputStream); byte[] buffer = new byte[fis.available()]; fis.read(buffer); fis.close(); response.reset(); //获取文件的名字再浏览器下载页面 String name = file.getName(); response.addHeader("Content-Disposition", "attachment;filename=" + new String(name.getBytes(), "iso-8859-1")); response.addHeader("Content-Length", "" + file.length()); OutputStream out = new BufferedOutputStream(response.getOutputStream()); response.setContentType("application/octet-stream"); out.write(buffer); out.flush(); out.close(); } catch (Exception e) { InetAddress inetAddress = InetAddress.getLocalHost(); ipAddress = inetAddress.getHostAddress(); System.out.println("本机IP地址:" + ipAddress); } catch (UnknownHostException e) { e.printStackTrace(); response.setStatus(404); } url = "http://" + ipAddress + ":" + port; return R.ok().add(url); } } src/main/webapp/static/js/appVersion/appVersion.js
@@ -1,4 +1,5 @@ var pageCurr; var odtotr; layui.config({ base: baseUrl + "/static/layui/lay/modules/" }).use(['table','laydate', 'form', 'admin','upload'], function(){ @@ -135,6 +136,7 @@ // 监听行工具事件 table.on('tool(appVersion)', function(obj){ var data = obj.data; odtotr = data switch (obj.event) { case 'edit': showEditModel(data); @@ -177,15 +179,36 @@ parent.location.reload() }) }else{ var ipAddress = ''; $.ajax({ url: baseUrl+"/appVersion/downloadApp/getIp", headers: {'token': localStorage.getItem('token')}, method: 'POST', cache: false, processData: false, contentType: false, success: function (res) { ipAddress = res.data admin.open({ type: 1, area: '600px', area: '400px', title: 'APP下载', content: $('#qrCode').html(), content: `<div> <img class="template-code" src="${baseUrl}/mac/code/auth?type=2¶m=${ipAddress}/${baseUrl}/appVersion/downloadApp/${data.path}" width="100%"> </div> <div style="height: 50px;display: flex;align-items: center;justify-content: center"> <button class="layui-btn layui-btn-sm" lay-event="down" onclick="download()">下载到本地</button> </div>`, success: function (layero, dIndex) { } }) } }) // window.open(baseUrl + "/appVersion/downloadApp/" + data.path); } break; @@ -301,3 +324,10 @@ page: {curr: pageCurr} }); } function download() { console.log(1) layer.closeAll(); window.open(baseUrl + "/appVersion/downloadApp/" + odtotr.path); } src/main/webapp/views/appVersion/appVersion.html
@@ -42,6 +42,7 @@ </div> </div> <form id="uploadFile" enctype="multipart/form-data" style="display: none;" > <input type="file" name="file" id="appFile"> <input type="button" value="上传"/> @@ -63,9 +64,14 @@ <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/appVersion/appVersion.js" charset="utf-8"></script> <div id="qrCode" class="template-barcode"> <div>123</div> </div> </body> <!-- 表单弹窗 --> @@ -112,11 +118,11 @@ </script> <!-- 二维码下载弹窗 --> <script type="text/html" id="qrCode"> <div>123</div> <script type="text/template" id="templatePreview1" class="template-barcode"> {{#each data}} <img class="template-code template-qrcode" src="{{this.barcodeUrl}}" width="80%"> <img class="template-code" src="{{this.barcodeUrl}}" width="90%"> {{/each}} </script> </html>