|
@@ -8,7 +8,8 @@ Vue.use(Vuex);
|
|
|
|
|
|
const state = {
|
|
|
userInfo: JSON.parse(localStorage.getItem('userInfo')) || null,
|
|
|
- usbPrinter: JSON.parse(localStorage.getItem('usbPrinter')) || []
|
|
|
+ usbPrinter: JSON.parse(localStorage.getItem('usbPrinter')) || [],
|
|
|
+ firstLogin: true
|
|
|
}
|
|
|
|
|
|
const actions = {
|
|
@@ -25,35 +26,39 @@ const actions = {
|
|
|
})
|
|
|
},
|
|
|
getUsbPrint(context) {
|
|
|
+ console.log('context', context.state.firstLogin);
|
|
|
getUsbPrint().then(res => {
|
|
|
if (res.code === 200) {
|
|
|
let dataList = res.data
|
|
|
- // if (!dataList.length) { return }
|
|
|
setTimeout(() => {
|
|
|
- LODOP = getLodop();
|
|
|
- let printerCount = LODOP.GET_PRINTER_COUNT();
|
|
|
- console.log('打印机数量',printerCount);
|
|
|
- if (!printerCount) { return }
|
|
|
- let printerList = [];
|
|
|
- for (let index = 0; index < printerCount; index++) {
|
|
|
- printerList.push({ deviceName: LODOP.GET_PRINTER_NAME(index) });
|
|
|
- }
|
|
|
- let data = printerList.map((v) => {
|
|
|
- let obj = dataList.find((ele) => {
|
|
|
- return ele.deviceName === v.deviceName;
|
|
|
- });
|
|
|
- if (obj) {
|
|
|
- v = obj;
|
|
|
- } else {
|
|
|
- v.openOrderPrint = 0;
|
|
|
- v.openOrderCancelPrint = 0;
|
|
|
- v.printCustomerCount = 1;
|
|
|
- v.printMerchantCount = 1;
|
|
|
- v.printKitchenCount = 1;
|
|
|
- v.width = 58;
|
|
|
+ let data = []
|
|
|
+ try {
|
|
|
+ LODOP = getLodop('', '', context.state.firstLogin);
|
|
|
+ let printerCount = LODOP.GET_PRINTER_COUNT();
|
|
|
+ if (!printerCount) { return }
|
|
|
+ let printerList = [];
|
|
|
+ for (let index = 0; index < printerCount; index++) {
|
|
|
+ printerList.push({ deviceName: LODOP.GET_PRINTER_NAME(index) });
|
|
|
}
|
|
|
- return v;
|
|
|
- });
|
|
|
+ data = printerList.map((v) => {
|
|
|
+ let obj = dataList.find((ele) => {
|
|
|
+ return ele.deviceName === v.deviceName;
|
|
|
+ });
|
|
|
+ if (obj) {
|
|
|
+ v = obj;
|
|
|
+ } else {
|
|
|
+ v.openOrderPrint = 0;
|
|
|
+ v.openOrderCancelPrint = 0;
|
|
|
+ v.printCustomerCount = 1;
|
|
|
+ v.printMerchantCount = 1;
|
|
|
+ v.printKitchenCount = 1;
|
|
|
+ v.width = 58;
|
|
|
+ }
|
|
|
+ return v;
|
|
|
+ });
|
|
|
+ } catch (error) {
|
|
|
+ console.log(error);
|
|
|
+ }
|
|
|
context.commit('SET_USBPRINTER', data)
|
|
|
}, 500);
|
|
|
} else {
|
|
@@ -74,8 +79,12 @@ const mutations = {
|
|
|
},
|
|
|
SET_USBPRINTER: (state, usbPrinter) => {
|
|
|
state.usbPrinter = usbPrinter
|
|
|
+ state.firstLogin = false
|
|
|
// 防止页面刷新,导致Vuex重启
|
|
|
localStorage.setItem('usbPrinter', JSON.stringify(usbPrinter));
|
|
|
+ },
|
|
|
+ setFirstLogin: (state, firstLogin) => {
|
|
|
+ state.firstLogin = firstLogin
|
|
|
}
|
|
|
}
|
|
|
|