diff --git a/.env.development b/.env.development index ed4cc9c..cfb0a56 100644 --- a/.env.development +++ b/.env.development @@ -3,10 +3,10 @@ ENV = development # 正式ws -VITE_API_WSS = 'wss://cashier.sxczgkj.cn/client' +# VITE_API_WSS = 'wss://cashier.sxczgkj.cn/client' #测试ws -# VITE_API_WSS = 'wss://wxcashiertest.sxczgkj.cn/client' +VITE_API_WSS = 'wss://wxcashiertest.sxczgkj.cn/client' # 阿伟本地ws # VITE_API_WSS = 'ws://192.168.2.17:9998/client' @@ -22,7 +22,7 @@ VITE_API_PHP_URL = 'http://192.168.2.33:1666/index.php/api' # VITE_API_URL = 'http://192.168.2.41:10589/cashier-client' # 测试 -# VITE_API_URL = 'https://cashier-client.sxczgkj.cn/cashier-client' +VITE_API_URL = 'https://cashier-client.sxczgkj.cn/cashier-client' # 正式 -VITE_API_URL = 'https://cashierclient.sxczgkj.cn/cashier-client' \ No newline at end of file +# VITE_API_URL = 'https://cashierclient.sxczgkj.cn/cashier-client' \ No newline at end of file diff --git a/.env.production b/.env.production index 66fd823..d443f20 100644 --- a/.env.production +++ b/.env.production @@ -2,16 +2,16 @@ ENV = production # 正式ws -VITE_API_WSS = 'wss://cashier.sxczgkj.cn/client' +# VITE_API_WSS = 'wss://cashier.sxczgkj.cn/client' #测试ws -# VITE_API_WSS = 'wss://wxcashiertest.sxczgkj.cn/client' +VITE_API_WSS = 'wss://wxcashiertest.sxczgkj.cn/client' # 测试 php VITE_API_PHP_URL = 'http://192.168.2.33:1666/index.php/api' # 测试 -# VITE_API_URL = 'https://cashier-client.sxczgkj.cn/cashier-client' +VITE_API_URL = 'https://cashier-client.sxczgkj.cn/cashier-client' # 线上环境接口地址 -VITE_API_URL = 'https://cashierclient.sxczgkj.cn/cashier-client/' \ No newline at end of file +# VITE_API_URL = 'https://cashierclient.sxczgkj.cn/cashier-client/' \ No newline at end of file diff --git a/dist-electron/main.js b/dist-electron/main.js index 0b8ea67..33bc60f 100644 --- a/dist-electron/main.js +++ b/dist-electron/main.js @@ -1 +1,201 @@ -"use strict";const o=require("path"),e=require("electron"),p=require("os");let i;e.app.whenReady().then(()=>{i=new e.BrowserWindow({title:"银收客",width:1024,height:768,fullscreenable:!0,fullscreen:!process.env.VITE_DEV_SERVER_URL,simpleFullscreen:!0,frame:!!process.env.VITE_DEV_SERVER_URL,webPreferences:{nodeIntegration:!0,contextIsolation:!1}}),process.env.VITE_DEV_SERVER_URL?i.loadURL(process.env.VITE_DEV_SERVER_URL):i.loadFile(o.resolve(__dirname,"../dist/index.html")),e.app.on("activate",()=>{e.BrowserWindow.getAllWindows().length===0&&createWindow()}),e.ipcMain.on("quitHandler",(n,t)=>{i=null,e.app.exit()}),e.ipcMain.on("getPrintList",()=>{i.webContents.getPrintersAsync().then(n=>{i.webContents.send("printList",n)})}),e.ipcMain.on("getOSmacSync",()=>{let n="";p.networkInterfaces().WLAN?(n=p.networkInterfaces().WLAN[0].mac,console.log("wlan.mac===",n)):(n=p.networkInterfaces().以太网[0].mac,console.log("以太网.mac===",n)),i.webContents.send("getOSmacRes",n)});const r=new e.BrowserWindow({show:!1,width:464,height:1726,webPreferences:{nodeIntegration:!0,contextIsolation:!1}});process.env.VITE_DEV_SERVER_URL?r.loadFile(o.join(__dirname,"../public/print.html")):r.loadFile(o.resolve(__dirname,"../dist/print.html")),e.ipcMain.on("printerInfoSync",(n,t)=>{r.webContents.send("getParams",t)}),e.ipcMain.on("printStart",(n,t)=>{console.log(t);let a=JSON.parse(t).deviceName;r.webContents.print({silent:!0,deviceName:a,pageSize:{width:58e3,height:216e3},scaleFactor:80,landscape:!1,margins:{marginType:"none",top:0,bottom:0,left:0,right:0},dpi:{horizontal:203,vertical:203}})});const s=new e.BrowserWindow({show:!1,width:464,height:1726,webPreferences:{nodeIntegration:!0,contextIsolation:!1}});process.env.VITE_DEV_SERVER_URL?s.loadFile(o.join(__dirname,"../public/work_print.html")):s.loadFile(o.resolve(__dirname,"../dist/work_print.html")),e.ipcMain.on("printerWorkSync",(n,t)=>{s.webContents.send("getParams",t)}),e.ipcMain.on("printWorkStart",(n,t)=>{let a=JSON.parse(t).deviceName;s.webContents.print({silent:!0,deviceName:a,pageSize:{width:58e3,height:216e3},scaleFactor:80,landscape:!1,margins:{marginType:"none",top:0,bottom:0,left:0,right:0},dpi:{horizontal:203,vertical:203}})});const l=new e.BrowserWindow({show:!1,width:360,height:240,webPreferences:{nodeIntegration:!0,contextIsolation:!1}});process.env.VITE_DEV_SERVER_URL?l.loadFile(o.join(__dirname,"../public/tag_print.html")):l.loadFile(o.resolve(__dirname,"../dist/tag_print.html")),e.ipcMain.on("printerTagSync",(n,t)=>{console.log(t),l.webContents.send("getParams",t)}),e.ipcMain.on("printTagStart",(n,t)=>{let a=JSON.parse(t).deviceName;l.webContents.print({silent:!0,deviceName:a,pageSize:{width:45e3,height:3e4},scaleFactor:80,landscape:!1,margins:{marginType:"none",top:0,bottom:0,left:0,right:0},dpi:{horizontal:203,vertical:203}})}),e.app.requestSingleInstanceLock()?e.app.on("second-instance",(n,t,c)=>{i&&(i.isMinimized()&&i.restore(),i.focus(),i.show())}):e.app.quit(),i.on("close",n=>{n.preventDefault(),i.webContents.send("showCloseDialog")})});e.app.on("window-all-closed",()=>{process.platform!=="darwin"&&e.app.quit()}); +"use strict"; +const path = require("path"); +const electron = require("electron"); +const os = require("os"); +let win; +electron.app.whenReady().then(() => { + win = new electron.BrowserWindow({ + title: "银收客", + width: 1024, + height: 768, + fullscreenable: true, + fullscreen: process.env.VITE_DEV_SERVER_URL ? false : true, + simpleFullscreen: true, + frame: process.env.VITE_DEV_SERVER_URL ? true : false, + webPreferences: { + // 集成网页和 Node.js,也就是在渲染进程中,可以调用 Node.js 方法 + nodeIntegration: true, + contextIsolation: false + } + }); + if (process.env.VITE_DEV_SERVER_URL) { + win.loadURL(process.env.VITE_DEV_SERVER_URL); + } else { + win.loadFile(path.resolve(__dirname, "../dist/index.html")); + } + electron.app.on("activate", () => { + if (electron.BrowserWindow.getAllWindows().length === 0) { + createWindow(); + } + }); + electron.ipcMain.on("quitHandler", (_, msg) => { + win = null; + electron.app.exit(); + }); + electron.ipcMain.on("getPrintList", () => { + win.webContents.getPrintersAsync().then((res) => { + win.webContents.send("printList", res); + }); + }); + electron.ipcMain.on("getOSmacSync", () => { + let mac = ""; + if (os.networkInterfaces().WLAN) { + mac = os.networkInterfaces().WLAN[0].mac; + console.log("wlan.mac===", mac); + } else { + mac = os.networkInterfaces()["以太网"][0].mac; + console.log("以太网.mac===", mac); + } + win.webContents.send("getOSmacRes", mac); + }); + const printWin = new electron.BrowserWindow({ + show: false, + width: 464, + height: 1726, + webPreferences: { + // 集成网页和 Node.js,也就是在渲染进程中,可以调用 Node.js 方法 + nodeIntegration: true, + contextIsolation: false + } + }); + if (process.env.VITE_DEV_SERVER_URL) { + printWin.loadFile(path.join(__dirname, "../public/print.html")); + } else { + printWin.loadFile(path.resolve(__dirname, "../dist/print.html")); + } + electron.ipcMain.on("printerInfoSync", (event, arg) => { + printWin.webContents.send("getParams", arg); + }); + electron.ipcMain.on("printStart", (event, arg) => { + console.log(arg); + const _parmas = JSON.parse(arg); + let name = _parmas.deviceName; + printWin.webContents.print({ + silent: true, + deviceName: name, + pageSize: { + width: 58e3, + height: 216e3 + }, + scaleFactor: 80, + landscape: false, + margins: { + marginType: "none", + top: 0, + bottom: 0, + left: 0, + right: 0 + }, + dpi: { + horizontal: 203, + vertical: 203 + } + }); + }); + const workPrintWin = new electron.BrowserWindow({ + show: false, + width: 464, + height: 1726, + webPreferences: { + nodeIntegration: true, + contextIsolation: false + } + }); + if (process.env.VITE_DEV_SERVER_URL) { + workPrintWin.loadFile(path.join(__dirname, "../public/work_print.html")); + } else { + workPrintWin.loadFile(path.resolve(__dirname, "../dist/work_print.html")); + } + electron.ipcMain.on("printerWorkSync", (event, arg) => { + workPrintWin.webContents.send("getParams", arg); + }); + electron.ipcMain.on("printWorkStart", (event, arg) => { + const _parmas = JSON.parse(arg); + let name = _parmas.deviceName; + workPrintWin.webContents.print({ + silent: true, + deviceName: name, + pageSize: { + width: 58e3, + height: 216e3 + }, + scaleFactor: 80, + landscape: false, + margins: { + marginType: "none", + top: 0, + bottom: 0, + left: 0, + right: 0 + }, + dpi: { + horizontal: 203, + vertical: 203 + } + }); + }); + const tagPrintWin = new electron.BrowserWindow({ + show: false, + width: 360, + height: 240, + webPreferences: { + nodeIntegration: true, + contextIsolation: false + } + }); + if (process.env.VITE_DEV_SERVER_URL) { + tagPrintWin.loadFile(path.join(__dirname, "../public/tag_print.html")); + } else { + tagPrintWin.loadFile(path.resolve(__dirname, "../dist/tag_print.html")); + } + electron.ipcMain.on("printerTagSync", (event, arg) => { + console.log(arg); + tagPrintWin.webContents.send("getParams", arg); + }); + electron.ipcMain.on("printTagStart", (event, arg) => { + const _parmas = JSON.parse(arg); + let name = _parmas.deviceName; + tagPrintWin.webContents.print({ + silent: true, + deviceName: name, + pageSize: { + width: 45e3, + height: 3e4 + }, + scaleFactor: 80, + landscape: false, + margins: { + marginType: "none", + top: 0, + bottom: 0, + left: 0, + right: 0 + }, + dpi: { + horizontal: 203, + vertical: 203 + } + }); + }); + const gotTheLock = electron.app.requestSingleInstanceLock(); + if (!gotTheLock) { + electron.app.quit(); + } else { + electron.app.on("second-instance", (event, commandLine, workingDirectory) => { + if (win) { + if (win.isMinimized()) + win.restore(); + win.focus(); + win.show(); + } + }); + } + win.on("close", (e) => { + e.preventDefault(); + win.webContents.send("showCloseDialog"); + }); +}); +electron.app.on("window-all-closed", () => { + if (process.platform !== "darwin") + electron.app.quit(); +}); diff --git a/package.json b/package.json index 39feb15..01cbea8 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "vite-electron", "private": true, - "version": "1.3.56", + "version": "1.3.60", "main": "dist-electron/main.js", "scripts": { "dev": "chcp 65001 && vite", diff --git a/src/App.vue b/src/App.vue index 698f7ae..3fb0122 100644 --- a/src/App.vue +++ b/src/App.vue @@ -171,8 +171,8 @@ const updateInfo = _.throttle(function () { // let info = navigator.connection console.log(isOnLine); // console.log(info); - if (store.userInfo && store.userInfo.shopId) { - if (isOnLine) { + if (store.userInfo && store.userInfo.shopId) { + if (isOnLine) { console.log('有网了重新连接ws~'); socket.init(); } else { diff --git a/src/components/screen.vue b/src/components/screen.vue index e94a8d6..b8344c7 100644 --- a/src/components/screen.vue +++ b/src/components/screen.vue @@ -1,5 +1,5 @@