添加打印机
This commit is contained in:
@@ -50,6 +50,7 @@
|
||||
import html2canvas from 'html2canvas';
|
||||
// #endif
|
||||
import uQRCode from '@/uni_modules/Sansnn-uQRCode/js_sdk/uqrcode/uqrcode.js'; // npm install uqrcodejs
|
||||
import getLodop from '@/common/js/LodopFuncs.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
@@ -77,6 +78,55 @@
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
print() {
|
||||
var date = new Date();
|
||||
var year = date.getFullYear(); //月份从0~11,所以加一
|
||||
let month = date.getMonth();
|
||||
var dateArr = [
|
||||
date.getMonth() + 1,
|
||||
date.getDate(),
|
||||
date.getHours(),
|
||||
date.getMinutes(),
|
||||
date.getSeconds(),
|
||||
];
|
||||
//如果格式是MM则需要此步骤,如果是M格式则此循环注释掉
|
||||
for (var i = 0; i < dateArr.length; i++) {
|
||||
if (dateArr[i] >= 1 && dateArr[i] <= 9) {
|
||||
dateArr[i] = "0" + dateArr[i];
|
||||
}
|
||||
}
|
||||
var strDate =
|
||||
year +
|
||||
"-" +
|
||||
dateArr[0] +
|
||||
"-" +
|
||||
dateArr[1] +
|
||||
" " +
|
||||
dateArr[2] +
|
||||
":" +
|
||||
dateArr[3] +
|
||||
":" +
|
||||
dateArr[4];
|
||||
let LODOP = getLodop();
|
||||
if (LODOP == null) {
|
||||
alert('请先安装打印控件')
|
||||
return;
|
||||
}
|
||||
LODOP.PRINT_INIT('')
|
||||
// 设置打印纸大小
|
||||
LODOP.SET_PRINT_PAGESIZE(1, 800, '300px', "");
|
||||
// 二维码控制大小
|
||||
LODOP.ADD_PRINT_BARCODE('', '30px', '150px', '150px', "QRCode", this.datares.url); //打印产品代码条码
|
||||
LODOP.SET_PRINT_MODE("PRINT_PAGE_PERCENT", "Full-Width "); //设置打印风格,这里是等宽打印
|
||||
LODOP.SET_PRINTER_INDEX("GP-58MB Series"); //设置默认打印机(这里用的是打印机名称)
|
||||
// 文字内容
|
||||
LODOP.ADD_PRINT_HTM('150px', '5px', "100%", "100%",
|
||||
`<div style="width: 100%;font-size: 12px; ">销售方名称:${this.datares.title}</div><div style="width: 100%;font-size: 12px; margin-top:6px;">开票金额:${this.datares.price}</div><div style="width: 100%;font-size: 12px; margin-top:6px;">生成时间:${strDate}</div><div style="width: 100%;font-size: 12px; margin-top:6px;">${this.datares.string1}</div><div style="width: 100%;font-size: 14px; margin-top: 15px;">您可以使用微信,扫码开票</div>`
|
||||
);
|
||||
LODOP.SET_LICENSES("", "DCFF409304DFCEB3E2C644BF96CD0720", "", "");
|
||||
// LODOP.PREVIEW(); //带预览的打印
|
||||
LODOP.PRINT()
|
||||
},
|
||||
box_class() {
|
||||
uni.navigateBack();
|
||||
},
|
||||
@@ -148,7 +198,6 @@
|
||||
// 获取uQRCode实例
|
||||
var qr = new uQRCode();
|
||||
// 设置二维码内容
|
||||
console.log(lane)
|
||||
qr.data = this.datares.url;
|
||||
// 设置二维码大小,必须与canvas设置的宽高一致
|
||||
qr.size = this.size;
|
||||
@@ -160,6 +209,12 @@
|
||||
qr.canvasContext = canvasContext;
|
||||
// 调用绘制方法将二维码图案绘制到canvas上
|
||||
qr.drawCanvas();
|
||||
setTimeout(() => {
|
||||
let info = uni.getSystemInfoSync();
|
||||
if (info.deviceType == 'pc') {
|
||||
this.print()
|
||||
}
|
||||
}, 1000)
|
||||
},
|
||||
requestlang() {
|
||||
uni.request({
|
||||
|
||||
Reference in New Issue
Block a user