From 2da79f8364653941c59c3a6f5aec261ab9ea22ac Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 02 七月 2020 15:36:01 +0800
Subject: [PATCH] #
---
src/main/webapp/static/js/trayCode/trayCode.js | 11 +++++++++++
src/main/java/com/zy/asrs/controller/MatCodeController.java | 2 ++
src/main/webapp/views/trayCode/tray.html | 27 +++++++++++++++++++++------
src/main/webapp/views/trayCode/trayCode.html | 14 ++++++++++++++
src/main/java/com/zy/common/config/AdminInterceptor.java | 2 +-
src/main/java/com/zy/asrs/controller/TrayCodeController.java | 4 ++--
6 files changed, 51 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MatCodeController.java b/src/main/java/com/zy/asrs/controller/MatCodeController.java
index 8ca68d0..1594efb 100644
--- a/src/main/java/com/zy/asrs/controller/MatCodeController.java
+++ b/src/main/java/com/zy/asrs/controller/MatCodeController.java
@@ -16,6 +16,7 @@
import com.zy.asrs.entity.MatCodePrint;
import com.zy.asrs.service.MatCodeService;
import com.zy.common.CodeRes;
+import com.zy.common.config.AdminInterceptor;
import com.zy.common.utils.BarcodeUtils;
import com.zy.common.utils.QrCode;
import com.zy.common.utils.excel.matcode.MatCodeExcel;
@@ -183,6 +184,7 @@
public R matCodeBarcode(@RequestParam(defaultValue = "1") Integer type
, @RequestParam String param
, HttpServletResponse response) throws Exception {
+ AdminInterceptor.cors(response);
if (Cools.isEmpty(param)){
return R.parse(BaseRes.EMPTY);
}
diff --git a/src/main/java/com/zy/asrs/controller/TrayCodeController.java b/src/main/java/com/zy/asrs/controller/TrayCodeController.java
index 4c039be..e404fc4 100644
--- a/src/main/java/com/zy/asrs/controller/TrayCodeController.java
+++ b/src/main/java/com/zy/asrs/controller/TrayCodeController.java
@@ -132,9 +132,9 @@
if (count <= 0) {
return R.error("鏁伴噺蹇呴』澶т簬闆�");
}
- List<String> res = new ArrayList<>();
+ List<Map<String, Object>> res = new ArrayList<>();
for (int i = 0; i<count; i++) {
- res.add(String.valueOf(Integer.parseInt(startNo)+i));
+ res.add(Cools.add("item", String.valueOf(Integer.parseInt(startNo)+i)));
}
return R.ok().add(res);
}
diff --git a/src/main/java/com/zy/common/config/AdminInterceptor.java b/src/main/java/com/zy/common/config/AdminInterceptor.java
index b3b9fd4..07b18d7 100644
--- a/src/main/java/com/zy/common/config/AdminInterceptor.java
+++ b/src/main/java/com/zy/common/config/AdminInterceptor.java
@@ -144,7 +144,7 @@
/**
* 璺ㄥ煙
*/
- private void cors(HttpServletResponse response){
+ public static void cors(HttpServletResponse response){
// 璺ㄥ煙璁剧疆
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Credentials", "true");
diff --git a/src/main/webapp/static/js/trayCode/trayCode.js b/src/main/webapp/static/js/trayCode/trayCode.js
index 6119f5c..91b56e2 100644
--- a/src/main/webapp/static/js/trayCode/trayCode.js
+++ b/src/main/webapp/static/js/trayCode/trayCode.js
@@ -297,6 +297,17 @@
});
+function printPreview(content) {
+ var tpl = $('#trayCodeTemplate').html();
+ var template = Handlebars.compile(tpl);
+ var html = template(content);
+ let box = $("#printBox");
+ box.html(html);
+ box.show();
+ box.print();
+ box.hide();
+}
+
// 鍏抽棴鍔ㄤ綔
$(document).on('click','#data-detail-close', function () {
parent.layer.closeAll();
diff --git a/src/main/webapp/views/trayCode/tray.html b/src/main/webapp/views/trayCode/tray.html
index 2b37552..bd53dcc 100644
--- a/src/main/webapp/views/trayCode/tray.html
+++ b/src/main/webapp/views/trayCode/tray.html
@@ -72,7 +72,7 @@
</div>
</div>
<div class="layui-form-item cool-button-contain">
- <button class="layui-btn layui-btn-normal" lay-filter="print" lay-submit="">鎵撳嵃</button>
+ <button class="layui-btn layui-btn-normal" id="print" lay-filter="print" lay-submit="">鎵撳嵃</button>
<button class="layui-btn layui-btn-primary" id="cancel">鍙栨秷</button>
</div>
</form>
@@ -89,15 +89,30 @@
let form = layui.form;
form.on('submit(print)', function (data) {
- http.post(baseUrl + '/trayCode/print/preview', data.field, function (res) {
-
- console.log(res.data)
+ $.ajax({
+ url: baseUrl+"/trayCode/print/preview",
+ headers: {'token': localStorage.getItem('token')},
+ data: data.field,
+ method: 'POST',
+ async: false,
+ success: function (res) {
+ if (res.code === 200){
+ for (let i=0;i<res.data.length;i++){
+ res.data[i]["barcodeUrl"]=baseUrl+"/macCode/code/auth?type=1¶m="+res.data[i].item;
+ }
+ parent.printPreview(res);
+ // parent.layer.close(parent.layer.getFrameIndex(window.name));
+ } else if (res.code === 403){
+ top.location.href = baseUrl+"/";
+ }else {
+ layer.msg(res.msg)
+ }
+ }
})
});
$('#cancel').click(function () {
- var index = parent.layer.getFrameIndex(window.name);
- parent.layer.close(index);
+ parent.layer.close(parent.layer.getFrameIndex(window.name));
})
});
diff --git a/src/main/webapp/views/trayCode/trayCode.html b/src/main/webapp/views/trayCode/trayCode.html
index 35bc93e..31cd466 100644
--- a/src/main/webapp/views/trayCode/trayCode.html
+++ b/src/main/webapp/views/trayCode/trayCode.html
@@ -9,6 +9,7 @@
<link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
<link rel="stylesheet" href="../../static/css/cool.css" media="all">
<link rel="stylesheet" href="../../static/css/common.css" media="all">
+ <link rel="stylesheet" href="../../static/css/print.css" media="all">
</head>
<body>
@@ -36,6 +37,9 @@
<div class="layui-form">
<table class="layui-hide" id="trayCode" lay-filter="trayCode"></table>
</div>
+
+<div id="printBox" style="display: block"></div>
+
<script type="text/html" id="toolbar">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-normal" id="btn-tray" lay-event="btnTray"><i class="layui-icon layui-icon-print" style="font-size: 15px"></i>鐢熸垚鎵樼洏鐮�</button>
@@ -50,6 +54,8 @@
<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/jquery/jQuery.print.js"></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/trayCode/trayCode.js" charset="utf-8"></script>
@@ -57,5 +63,13 @@
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
</body>
+<script type="text/template" id="trayCodeTemplate">
+ {{#each data}}
+ <img class="template-code" src="{{this.barcodeUrl}}" width="90%">
+ <div style="letter-spacing: 2px;margin-top: 1px; text-align: center">
+ <span>{{this.item}}</span>
+ </div>
+ {{/each}}
+</script>
</html>
--
Gitblit v1.9.1