货无忧
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
3.5 KiB

1 year ago
"use strict";const e=require("../common/vendor.js"),t={init:()=>new Promise(((e,t)=>{sunmi_print.connect((t=>{console.log(t),"hello"==t.connect?(console.log("打印机成功连接"),e(!0)):e(!1)}))})),getstate:()=>new Promise(((t,i)=>{sunmi_print.getPrinterStatus((i=>{if(console.log("打印机当前状态是:"+i.status),"running"==i.status)t(!0);else{let s;switch(i.status){case"offline":s="打印机未连接";break;case"fault":s="打印机故障";break;case"outpaper":s="打印机缺纸";break;case"hot":s="打印机过热";break;case"open":s="打印机开盖";break;case"error":s="未知错误"}e.index.showToast({title:s,icon:"error"}),t(!1)}}))})),printxie:async e=>{let t=await sunmi_print.labelLocate();console.log(t),setTimeout((()=>{sunmi_print.printText({text:"日期:"+e.rigthnumer+" ",align:2,size:22,bold:!0,underline:!1,compact:!1,skip:!0}),sunmi_print.printText({text:e.title,align:1,size:90,bold:!0,underline:!1,compact:!0,skip:!0}),sunmi_print.printDividingline({style:0,height:"3"}),sunmi_print.printText({text:`件数:${e.number1}`,align:0,size:40,bold:!0,underline:!1,compact:!0,skip:!0}),sunmi_print.printText({text:e.leftnumber,align:0,size:27,bold:!0,underline:!1,compact:!0,skip:!0}),sunmi_print.labelOutput()}),2e3)},initbl:()=>{let e=[],t=plus.android.runtimeMainActivity(),i=plus.android.importClass("android.content.Context"),s=t.getSystemService(i.BLUETOOTH_SERVICE);plus.android.importClass(s);let o=s.getAdapter();plus.android.importClass(o);let n=o.getBondedDevices();plus.android.importClass(n);let l=n.iterator();for(plus.android.importClass(l);l.hasNext();){let t=l.next();plus.android.importClass(t);let i={name:t.getName(),address:t.getAddress(),status:t.getBondState(),uuids:t.getUuids(),op:t};e.push(i)}return e},getbl:(t,i)=>{plus.android.runtimeMainActivity();let s=plus.android.importClass("android.bluetooth.BluetoothAdapter"),o=plus.android.importClass("java.util.UUID").fromString("00001101-0000-1000-8000-00805F9B34FB"),n=s.getDefaultAdapter().getRemoteDevice(t.address);plus.android.importClass(n);let l=n.createInsecureRfcommSocketToServiceRecord(o);if(plus.android.importClass(l),console.log("开始连接打印机:"+t.name),!l.isConnected())if(l.connect(),l.isConnected()){console.log("设备已连接,开始发送打印文件");let e=l.getOutputStream();plus.android.importClass(e),console.log(i);let t=plus.android.invoke(i,"getBytes","gbk");e.write(t),e.flush(),l.close(),l.isConnected()||console.log("设备已关闭")}else e.index.showToast({title:"设备连接失败",icon:"error",duration:2e3})},inittts(){TTSSpeech.init((i=>{0===i?(console.log("引擎初始化成功"),TTSSpeech.setSpeed(100),TTSSpeech.getInstallTTS((i=>{console.log(JSON.stringify(i));let s=!1;i.forEach((e=>{"com.iflytek.speechcloud"==e.name&&(s=!0),console.log(e.label+": "+e.name)})),s||e.index.showModal({title:"安装语音引擎",content:"请选择浏览器下载安装还在直接安装",cancelText:"浏览器安装",confirmText:"直接安装",success:function(e){if(e.confirm){var i=plus.io.convertLocalFileSystemURL("static/TTS.apk");plus.runtime.install(i,{orce:!0},(function(e){t.showToast("更新成功,请重新打开APP"),TTSSpeech.setEngine("com.iflytek.speechcloud"),plus.runtime.quit()}))}else e.cancel&&setTimeout((()=>{plus.runtime.openURL("http://htys.oss-cn-chengdu.aliyuncs.com/htys/5402c622c319fac17c50fe52581cb627.apk"),setTimeout((()=>{plus.runtime.quit()}),2500)}),1500)}})}))):console.log("引擎初始化失败")}),"com.iflytek.speechcloud")},ttsspke:e=>{console.log("语音播报"),e&&TTSSpeech.speak({text:e})}};exports.utils=t;