|
|
|
|
@ -4,41 +4,54 @@
|
|
|
|
|
<head>
|
|
|
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
|
|
|
<title>打印</title>
|
|
|
|
|
<script language="javascript" src="/jquery-1.11.2.min.js"></script>
|
|
|
|
|
<script language="javascript" src="/jquery.qrcode.js"></script>
|
|
|
|
|
<script language="javascript" src="/admin/jquery.js"></script>
|
|
|
|
|
<script language="javascript" src="/admin/jquery.qrcode.js"></script>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
//二维码宽高
|
|
|
|
|
var qrcodewidth = 120;
|
|
|
|
|
var qrcodeheight = 120;
|
|
|
|
|
var qrcodewidth = 110;
|
|
|
|
|
var qrcodeheight = 110;
|
|
|
|
|
var qrcodeleft = 30;
|
|
|
|
|
var qrcodetop = 50;
|
|
|
|
|
//canvas宽高
|
|
|
|
|
var canvaswidth = 340;
|
|
|
|
|
var canvaswidth = 302;
|
|
|
|
|
var canvasheight = 188;
|
|
|
|
|
//logo宽高
|
|
|
|
|
var logowidth = 100;
|
|
|
|
|
var logoheight = 100;
|
|
|
|
|
//文字描述位置
|
|
|
|
|
var textleft = qrcodewidth / 2;
|
|
|
|
|
var texttop = qrcodeheight + 70;
|
|
|
|
|
//logo位置
|
|
|
|
|
var logoleft = (qrcodewidth - logowidth) / 2;
|
|
|
|
|
var logotop = (qrcodeheight - logoheight) / 2;
|
|
|
|
|
$(function() {
|
|
|
|
|
var printObj = JSON.parse(getCookie('objs'))
|
|
|
|
|
$(".wrap").html("")
|
|
|
|
|
for (var i = 0; i < printObj.length; i++) {
|
|
|
|
|
var index = parseInt(i) + 1
|
|
|
|
|
$(".wrap").append("<li id='page" + index + "' style='width: 9cm; height: 5cm;'>" +
|
|
|
|
|
"<img src='' style='display: block;width:9cm; height:5cm;'>" +
|
|
|
|
|
"</li>")
|
|
|
|
|
createCode("#page" + index, printObj[i])
|
|
|
|
|
var ids = getIds('ids').split(",")
|
|
|
|
|
for (var i = 0; i < ids.length; i++) {
|
|
|
|
|
getListByid(i + 1, ids[i])
|
|
|
|
|
}
|
|
|
|
|
// createCode()
|
|
|
|
|
console.log(printObj)
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
function getListByid(index, id) {
|
|
|
|
|
$.ajax({
|
|
|
|
|
type: "get",
|
|
|
|
|
timeout: 15000,
|
|
|
|
|
async: false,
|
|
|
|
|
contentType: 'application/json',
|
|
|
|
|
data: {
|
|
|
|
|
id: id,
|
|
|
|
|
table_name: 'inventorys'
|
|
|
|
|
},
|
|
|
|
|
url: 'http://hd-wuziguanli-test.ali251.langye.net/api/admin/base-form/show',
|
|
|
|
|
dataType: "json",
|
|
|
|
|
success: function(result) {
|
|
|
|
|
var printObj = result
|
|
|
|
|
$(".wrap").append("<li id='page" + index + "' style='width: 9cm; height: 5cm;'>" +
|
|
|
|
|
"<img src='' style='display: block;width:8cm; height:5cm;'>" +
|
|
|
|
|
"</li>")
|
|
|
|
|
createCode("#page" + index, printObj)
|
|
|
|
|
$(".load").remove()
|
|
|
|
|
},
|
|
|
|
|
complete: function(xhr, textStatus) {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
// 生成二维码
|
|
|
|
|
function utf16to8(str) {
|
|
|
|
|
var out, i, len, c;
|
|
|
|
|
@ -60,8 +73,8 @@
|
|
|
|
|
return out;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function createCode(id, printObji) {
|
|
|
|
|
console.log(printObji)
|
|
|
|
|
function createCode(id, printObji) {
|
|
|
|
|
// alert(id)
|
|
|
|
|
var qrcode = $(id).qrcode({
|
|
|
|
|
render: 'canvas',
|
|
|
|
|
text: utf16to8(printObji['wuzibianma'] + "-" + printObji['id']),
|
|
|
|
|
@ -81,13 +94,13 @@
|
|
|
|
|
ctx.fillRect(0, 0, canvas.width, canvas.height);
|
|
|
|
|
//设置文字样式
|
|
|
|
|
ctx.fillStyle = '#000000';
|
|
|
|
|
ctx.font = 'bold ' + 16 + 'px Arial';
|
|
|
|
|
ctx.font = 'bold ' + 18 + 'px Arial';
|
|
|
|
|
ctx.textAlign = 'left';
|
|
|
|
|
//文字描述
|
|
|
|
|
ctx.fillText("苏州河道处", 130, 30);
|
|
|
|
|
ctx.fillText("物资编码:" + decodeURI(decodeURI(printObji['wuzibianma'])), qrcodeleft + 140, 65);
|
|
|
|
|
ctx.fillText("资产名称:" + decodeURI(decodeURI(printObji['zichanmingcheng'])), qrcodeleft + 140, 95);
|
|
|
|
|
ctx.fillText("物资类型:" + decodeURI(decodeURI(printObji['wuzileixing'])), qrcodeleft + 140, 125);
|
|
|
|
|
ctx.fillText("苏州河道管理处", 100, 30);
|
|
|
|
|
ctx.fillText("物资编码:" + decodeURI(decodeURI(printObji['wuzibianma'])), qrcodeleft + 120, 65);
|
|
|
|
|
ctx.fillText("资产名称:" + decodeURI(decodeURI(printObji['zichanmingcheng'])), qrcodeleft + 120, 95);
|
|
|
|
|
ctx.fillText("物资类型:" + decodeURI(decodeURI(printObji['wuzileixing'])), qrcodeleft + 120, 125);
|
|
|
|
|
// ctx.fillText("入库数量:" + printObji['rukushuliang'], qrcodeleft + 140, 155);
|
|
|
|
|
ctx.drawImage(img, qrcodeleft, qrcodetop);
|
|
|
|
|
var data = canvas.toDataURL('image/png', 1);
|
|
|
|
|
@ -117,7 +130,7 @@
|
|
|
|
|
marginIgnored: true,
|
|
|
|
|
copyrights: '杰创软件拥有版权 www.jatools.com'
|
|
|
|
|
};
|
|
|
|
|
document.getElementById("jatoolsPrinter").print(myDoc, false); // 直接打印,不弹出打印机设置对话框
|
|
|
|
|
document.getElementById("jatoolsPrinter").print(myDoc, false); // 直接打印,不弹出打印机设置对话框
|
|
|
|
|
// delCookie('objs')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -158,6 +171,15 @@
|
|
|
|
|
var cookieValue = unescape(totalCookie.substring(valueStartAt, valueEndAt));
|
|
|
|
|
return cookieValue;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function getIds(name) {
|
|
|
|
|
var reg = new RegExp("(^|&)" + name.toLowerCase() + "=([^&]*)(&|$)");
|
|
|
|
|
var r = window.location.search.substr(1).toLowerCase().match(reg);
|
|
|
|
|
if (r != null) {
|
|
|
|
|
return unescape(r[2].replace(new RegExp(/(%25)/g), '%').replace(new RegExp(/(%25)/g), '%'));
|
|
|
|
|
}
|
|
|
|
|
return null
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<style>
|
|
|
|
|
body {
|
|
|
|
|
@ -167,7 +189,10 @@
|
|
|
|
|
margin: 0;
|
|
|
|
|
background: #000;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.load{
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 20px;
|
|
|
|
|
}
|
|
|
|
|
ul,
|
|
|
|
|
li {
|
|
|
|
|
padding: 0;
|
|
|
|
|
@ -229,7 +254,8 @@
|
|
|
|
|
</style>
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
|
|
|
|
<div class="lists">
|
|
|
|
|
<div class="lists">
|
|
|
|
|
<div class="load">加载中...</div>
|
|
|
|
|
<ul class="wrap">
|
|
|
|
|
|
|
|
|
|
<div class="clear"></div>
|
|
|
|
|
@ -239,7 +265,7 @@
|
|
|
|
|
<div class="wp">
|
|
|
|
|
<div class="left">生成打印单<br />
|
|
|
|
|
本打印功能只能在IE浏览器使用,非IE浏览器请采用兼容模式<br />
|
|
|
|
|
使用之前需要安装插件(<a href="/jatoolsPrinter_free.zip" target="_blank">点击下载</a>),并正确设置打印机
|
|
|
|
|
使用之前需要安装插件(<a href="/admin/jatoolsPrinter_free.zip" target="_blank">点击下载</a>),并正确设置打印机
|
|
|
|
|
</div>
|
|
|
|
|
<div class="right">
|
|
|
|
|
<input type="button" value="打印" onClick='doPrint(this);'>
|
|
|
|
|
|