| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- import { CCPrintingAPI } from '@/utils/CCPrintingAPI.min.vue'
- export function GetPrinters() {
- let cfgData = {}
- const resolveData = {
- printer: '',
- printers: []
- }
- cfgData.XAction = 'Printers'
- cfgData.XOpenId = process.env.VUE_APP_PRINTER_OPENID
- cfgData.XTokens = process.env.VUE_APP_PRINTER_TOKENS
- return new Promise((resolve, reject) => {
- CCPrintingAPI.Excute(
- cfgData,
- function(XTimeout) {},
- function(XFail) {
- reject('API可能未安装或未启动')
- },
- function(XSuccess) {
- var apiResult = JSON.parse(XSuccess.trim())
- if (apiResult.Status * 1 === 1) {
- // 获取到打印机列表
- if (apiResult.Message.length > 1) {
- for (var i = 1; i < apiResult.Message.length; i++) {
- resolveData.printers.push({
- label: apiResult.Message[i],
- value: apiResult.Message[i]
- })
- }
- // 设置上次使用的打印机
- resolveData.printer = resolveData.printers[0]
- }
- }
- resolve(resolveData)
- }
- )
- })
- }
- export function Print({ printer, Preview, TemplateURL, TemplateName, PrintData }) {
- var cfgData = {}
- cfgData.XAction = 'Print'
- cfgData.XOpenId = process.env.VUE_APP_PRINTER_OPENID
- cfgData.XTokens = process.env.VUE_APP_PRINTER_TOKENS
- /* 指定打印机*/
- cfgData.PrinterName = printer
- if (Preview) cfgData.Preview = Preview
- /* 模板方式,0-客户端模板,1-远程模板,
- 2-如果本地模板存在,使用本地,不存在使用远程模板,3-不使用模板*/
- cfgData.TemplateMode = '2'
- /* 远程模板URL或本地模板的文件夹*/
- // cfgData.TemplateURL = "http://img.51321.cn/web/chicore/VPrinting/API";
- // cfgData.TemplateURL = 'http://113.105.183.190:9167/bucket159'
- cfgData.TemplateURL = TemplateURL
- // cfgData.TemplateURL = "D:\\\\";
- /* 模板文件名*/
- // cfgData.TemplateName = "183601-70X40.Lblx";
- // cfgData.TemplateName = '2024-04-10-16-10-49-1712736650022_Label3.Lblx'
- cfgData.TemplateName = TemplateName
- // cfgData.TemplateName = "Label2.Lblx";
- /* 打印数据的类型,0-数组,1-Json数组,元素为JSON对象,字段:值*/
- cfgData.PrintDataType = 1
- cfgData.PrintData = JSON.stringify(PrintData)
- /* 打印 发送给打印机进行打印*/
- return new Promise((resolve, reject) => {
- CCPrintingAPI.Excute(cfgData,
- function(XTimeout) { },
- function(XFail) {
- reject('API可能未安装或未启动')
- },
- function(XSuccess) {
- var apiResult = JSON.parse(XSuccess.trim())
- if (apiResult.Status === '1') {
- resolve(apiResult.Message)
- // document.getElementById("tipsmessage").innerHTML = apiResult.Message[0] + apiResult.Message[1];
- }
- }
- )
- })
- }
|