|
@@ -332,7 +332,12 @@ let vm = new Vue({
|
|
|
data: JSON.stringify(rowId),
|
|
|
success: function (r) {
|
|
|
if (r.ticket != null) {
|
|
|
- alert('打印小票完成');
|
|
|
+ // printArea(r.ticket);
|
|
|
+ var content = getPrintContent(r.ticket);
|
|
|
+ printArea(content);
|
|
|
+ alert("操作成功");
|
|
|
+ }else{
|
|
|
+ alert("操作失败");
|
|
|
}
|
|
|
}
|
|
|
});
|
|
@@ -411,4 +416,182 @@ let vm = new Vue({
|
|
|
vm.shippings = r.list;
|
|
|
});
|
|
|
}
|
|
|
-});
|
|
|
+});
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ // var printAreaCount = 0;
|
|
|
+ // function printArea(ticket) {
|
|
|
+ // var idPrefix = "printArea_";
|
|
|
+ // removePrintArea(idPrefix + printAreaCount);
|
|
|
+ // printAreaCount++;
|
|
|
+ // var iframeId = idPrefix + printAreaCount;
|
|
|
+ // var iframeStyle = 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;';
|
|
|
+ // iframe = document.createElement('IFRAME');
|
|
|
+ // $(iframe).attr({
|
|
|
+ // style: iframeStyle,
|
|
|
+ // id: iframeId
|
|
|
+ // });
|
|
|
+ // document.body.appendChild(iframe);
|
|
|
+ // var doc = iframe.contentWindow.document;
|
|
|
+ // $(document).find("link").filter(function () {
|
|
|
+ // return $(this).attr("rel").toLowerCase() == "stylesheet";
|
|
|
+ // }).each(
|
|
|
+ // function () {
|
|
|
+ // doc.write('<link type="text/css" rel="stylesheet" href="'
|
|
|
+ // + $(this).attr("href") + '" >');
|
|
|
+ // });
|
|
|
+ // doc.write('<div class="">' + content
|
|
|
+ // + '</div>');
|
|
|
+ // doc.close();
|
|
|
+ // var frameWindow = iframe.contentWindow;
|
|
|
+ // frameWindow.close();
|
|
|
+ // frameWindow.focus();
|
|
|
+ // frameWindow.print();
|
|
|
+ // }
|
|
|
+ // var removePrintArea = function (id) {
|
|
|
+ // $("iframe#" + id).remove();
|
|
|
+ // };
|
|
|
+
|
|
|
+ function getPrintContent(ticket) {
|
|
|
+ var content = "<div style=\"width: 250px;font-family: 微软雅黑;font-size: 8px;\">";
|
|
|
+ //小票头
|
|
|
+ content += "<div style=\"text-align: center;width: 100%;font-weight:bold;font-size: 13px;\">";
|
|
|
+ content += ticket.ticketHead.title;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "会员:" + ticket.ticketHead.memberId;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "订单号:" + ticket.ticketHead.orderId;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "交易时间:" + ticket.ticketHead.tradeTime;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;overflow:hidden;white-space: nowrap;\">--------------------------------------------------</div>";
|
|
|
+ //商品信息
|
|
|
+ content += "<table style=\"width: 100%;\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
|
|
|
+ content += "<tr>";
|
|
|
+ content += "<td style=\"width: 50%;text-align: left;font-size: 10px;font-weight: bold;\">商品名称</td>";
|
|
|
+ content += "<td style=\"width: 17%;text-align: right;font-size: 10px;font-weight: bold;\">单价</td>";
|
|
|
+ content += "<td style=\"width: 15%;text-align: right;font-size: 10px;font-weight: bold;\">数量</td>";
|
|
|
+ content += "<td style=\"width: 18%;text-align: right;font-size: 10px;font-weight: bold;\">小计</td>";
|
|
|
+ content += "</tr>";
|
|
|
+ content += "</table>";
|
|
|
+ content += "<div style=\"width: 100%;overflow:hidden;white-space: nowrap;\">--------------------------------------------------</div>";
|
|
|
+ content += "<table style=\"width: 100%;\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
|
|
|
+ for (var i=0;i< ticket.goods.length;i++){
|
|
|
+ content += "<tr>";
|
|
|
+ content += "<td style=\"width: 50%;text-align: left;font-size: 8px;padding-top: 8px;\">";
|
|
|
+ content += "<table style=\"width: 100%;\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
|
|
|
+ content += "<tr>";
|
|
|
+ content += "<td style=\"text-align: left;font-size: 8px;vertical-align:top;\">#</td>";
|
|
|
+ content += "<td style=\"text-align: left;font-size: 8px;\">" + ticket.goods[i].gname + "</td>";
|
|
|
+ content += "</tr>";
|
|
|
+ content += "</table>";
|
|
|
+ content += "</td>";
|
|
|
+ content += "<td style=\"width: 17%;text-align: right;font-size: 8px;vertical-align:bottom;padding-top: 8px;\">" + ticket.goods[i].uprice + "</td>";
|
|
|
+ content += "<td style=\"width: 15%;text-align: right;font-size: 8px;vertical-align:bottom;padding-top: 8px;\">" + ticket.goods[i].num + "</td>";
|
|
|
+ content += "<td style=\"width: 18%;text-align: right;font-size: 8px;vertical-align:bottom;padding-top: 8px;\">" + ticket.goods[i].subtotal + "元</td>";
|
|
|
+ content += "</tr>";
|
|
|
+
|
|
|
+ }
|
|
|
+ content += "</table>";
|
|
|
+ content += "<div style=\"width: 100%;overflow:hidden;white-space: nowrap;\">--------------------------------------------------</div>";
|
|
|
+ //收银信息
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "<span style=\"float: left;width: 50%;text-align: left;\">商品合计:</span>";
|
|
|
+ content += "<span style=\"float: left;width: 17%;text-align: left;\">" + ticket.cashInfo.goodsTotal + "件</span>";
|
|
|
+ content += "<span style=\"float: right;width: 33%;text-align: right;\">" + ticket.cashInfo.total + "元</span>";
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "<span style=\"float: left;width: 50%;text-align: left;\">实收:</span>";
|
|
|
+ content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.receipts + "元</span>";
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "<span style=\"float: left;width: 50%;text-align: left;\">找零:</span>";
|
|
|
+ content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.oddChange + "元</span>";
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "<span style=\"float: left;width: 50%;text-align: left;\">优惠券:</span>";
|
|
|
+ content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.coupon + "元</span>";
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "<span style=\"float: left;width: 50%;text-align: left;\">运费:</span>";
|
|
|
+ content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.freight + "元</span>";
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "<span style=\"float: left;width: 50%;text-align: left;\">支付渠道:</span>";
|
|
|
+ content += "<span style=\"float: right;width: 50%;text-align: right;\">" + ticket.cashInfo.paymentMode + "</span>";
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;overflow:hidden;white-space: nowrap;\">--------------------------------------------------</div>";
|
|
|
+ //海关清单信息
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "订单号:" + ticket.cusListing.orderId;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "运单编号:" + ticket.cusListing.waybillId;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "海关清单号:" + ticket.cusListing.invtNo;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "收货人:" + ticket.cusListing.consignee;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "收货人电话:" + ticket.cusListing.consigneeTel;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "始发地:" + ticket.cusListing.originAddress;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "交货地:" + ticket.cusListing.deliveryAddress;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;overflow:hidden;white-space: nowrap;\">--------------------------------------------------</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += ticket.ticketFoot.summary;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "客服电话:" + ticket.ticketFoot.serviceTel;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += "网址:" + ticket.ticketFoot.url1;
|
|
|
+ content += "</div>";
|
|
|
+ content += "<div style=\"width: 100%;\">";
|
|
|
+ content += ticket.ticketFoot.welcome;
|
|
|
+ content += "</div>";
|
|
|
+ return content;
|
|
|
+ }
|
|
|
+ var printAreaCount = 0;
|
|
|
+ function printArea(content) {
|
|
|
+ var idPrefix = "printArea_";
|
|
|
+ removePrintArea(idPrefix + printAreaCount);
|
|
|
+ printAreaCount++;
|
|
|
+ var iframeId = idPrefix + printAreaCount;
|
|
|
+ var iframeStyle = 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;';
|
|
|
+ iframe = document.createElement('IFRAME');
|
|
|
+ $(iframe).attr({
|
|
|
+ style: iframeStyle,
|
|
|
+ id: iframeId
|
|
|
+ });
|
|
|
+ document.body.appendChild(iframe);
|
|
|
+ var doc = iframe.contentWindow.document;
|
|
|
+ doc.open();
|
|
|
+ //$(document).find("link").filter(function () {
|
|
|
+ //return $(this).attr("rel").toLowerCase() == "stylesheet";
|
|
|
+ //}).each(
|
|
|
+ //function () {
|
|
|
+ //doc.write('<link type="text/css" rel="stylesheet" href="'
|
|
|
+ //+ $(this).attr("href") + '" >');
|
|
|
+ //});
|
|
|
+ doc.write('<div class="">' + content
|
|
|
+ + '</div>');
|
|
|
+ doc.close();
|
|
|
+ var frameWindow = iframe.contentWindow;
|
|
|
+ frameWindow.close();
|
|
|
+ frameWindow.focus();
|
|
|
+ frameWindow.print();
|
|
|
+ }
|
|
|
+ var removePrintArea = function (id) {
|
|
|
+ $("iframe#" + id).remove();
|
|
|
+ };
|