tplus-components-touch 3.41.5 → 3.41.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/billSearch/index.js +1 -1
- package/dist/components/billSearch/index.js.map +1 -1
- package/dist/components/cloudPrint/index.js +1 -1
- package/dist/components/cloudPrint/index.js.map +1 -1
- package/dist/components/cloudPrint/printDispatch.js +63 -31
- package/dist/components/cloudPrint/printDispatch.js.map +1 -1
- package/dist/components/cloudPrint/printTemplate/retail_two.json +1 -1
- package/dist/components/cloudPrint/printTemplate/storage_one.json +1 -1
- package/dist/components/deliverySearch/index.js +1 -1
- package/dist/components/deliverySearch/index.js.map +1 -1
- package/dist/components/hotKey/index.js +5 -0
- package/dist/components/hotKey/index.js.map +1 -1
- package/dist/components/hotKey/localConfig.js +13 -0
- package/dist/components/hotKey/localConfig.js.map +1 -1
- package/dist/components/inventorySearch/tab.js +1 -1
- package/dist/components/inventorySearch/tab.js.map +1 -1
- package/dist/components/loading/loadingContent.js +1 -1
- package/dist/components/loading/loadingContent.js.map +1 -1
- package/dist/components/settlement/prototypeTable/index.js +1 -1
- package/dist/components/settlement/prototypeTable/index.js.map +1 -1
- package/dist/components/settlement/settlement.js +65 -47
- package/dist/components/settlement/settlement.js.map +1 -1
- package/dist/components/settlement/settlement.less +1 -1
- package/dist/components/settlement/settlementStore.js +149 -192
- package/dist/components/settlement/settlementStore.js.map +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/index.js"],"names":["PrintUtil","doTestPrint","printParams","callback","cloudAddList","ret","result","cloudPrint","doPrint","Id","_this","API","getPrintDataInfo","then","Store","UserName","Code","CreatedTime","TotalCount","TotalTaxAmount","WipeChange","RetailDetails","Member","BalanceIntegral","Integral","BalanceStorage","RetailPaymentDetails","details","tools","changePrivateInfo","length","map","inventoryCode","item","Inventory","NameAndCode","Name","quantity","toDecimal2NoZero","Quantity","Unit","quantityAndUnit","constr","loadBTPrintDataByTemplate","doDialyPrint","getDialyPrintDataInfo","loadBTDutyAndDialyPrintData","doDutyPrint","getDutyPrintDataInfo","doStoragePrint","getStoragePrintDataInfo","loadBTStoragePrintData","printEntity","StorageDetails","Person","StorageMutiSettleDetails","Mobilephone","MemberName","StorageName","template","dutyPrintStringByTemplate","type","WorkingDate","WorkingTime","DailyDate","DailyTime","RetailAmount","ReturnAmount","InitialAmount","ImprestAmount","ShiftDate","ShiftTime","ShiftVoucherDetails","WorkingDateAndTime","DailyDateAndTime","DutyDateAndTime","NetAmount","ImprestBalance","SettleStyle","pBodyValueList","forEach","items","Amount","push","TotalAmount","tool","format","data","width","templateBody","body","templateContent","BTPrintFormatUtil","setLineByteSize","Math","floor","lineSize","index","printTemplateItem","height","value","drawSeparateLine","printTitle","JSON","getCellValue","attribute","printStarTitle","spaceCenterPrintMsg","valueMap","name","attr","symbolList","attributeList","replace","symbol","split","totalValue","formatValue","set","leftPrintMsg","headerList","bodyList","bodyListArray","listArray","list","i","arr","listArr","printMenuMSG","loadBTPrintData","params","headerMap","detailTopList","paymentTypeTopList","paymentTypeDetailList","detailContentList","footerMap1","footerMap2","Telephone","Caption","IsTitle","IsFoot","CardCode","size","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","phList","drawSeparateLine2","cloudContents","Open","Key","Sign","Card","isLocalSunMi","isHorizontalSunMi","sunMiLocalPrint","console","log","sunmiPrint","printerContent","join","PrintCount","openPrintMsg","content","apiname","deviceCode","times","s","window","sunMi_OperatingCashier","updatePrinterState","status","state","message","PrintSmallTicketter","msg","deviceName","LocalPrintPlugin","printByDeviceName","printContent","res","catch","error","openPrinterAddlist","BTPrintEntity","BTPrintContent","Precision","Price","TaxAmount","platform","enumController","getEnumOj","Differentiate","IdsettleStyleList","x","f","round","toString"],"mappings":"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IALY;AAMjB,aAAK,IANY;AAOjB,aAAK,MAPY;AAQjB,aAAK,MARY;AASjB,aAAK,KATY;AAUjB,aAAK,OAVY;AAWjB,aAAK,KAXY;AAYjB,aAAK,MAZY;AAajB,aAAK;AAbY;AADR,KAAb;AAiBD;;AAED;;;AAgBA;;;AAwFA;;;AAUA;;;AAUA;;;AAUA;;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;AAmBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAqIA;;;AAsKA;;;AA6BA;;;;;qCAqEiBE,C,EAAG;AAChB,UAAIC,IAAI3G,KAAK4G,KAAL,CAAWF,IAAI,GAAf,IAAsB,GAA9B;AACA,UAAI3B,IAAI4B,EAAEE,QAAF,EAAR;AACA,aAAO9B,CAAP;AACH;;;;;kBAEY7K,S","file":"index.js","sourcesContent":["import BTPrintFormatUtil from './BTPrintFormatUtil';\r\nimport API from './api';\r\nimport {tools as tool} from 'mutants-util';\r\nimport {PosInitData} from 'tplus-poslogin';\r\nimport {platform, enumController} from 'mutants-util';\r\nimport tools from \"../../util/tools\";\r\nimport retailTemplateOne from './printTemplate/retail_one.json'\r\nclass PrintUtil {\r\n constructor () {\r\n this.BTPrintEntity = {};\r\n this.BTPrintContent = '';\r\n this.PrintCount = 1;\r\n this.lineSize = 32;\r\n this.Precision = {\r\n Quantity: PosInitData ('QuantityPrecision'),\r\n Price: PosInitData ('PricePrecision'),\r\n TaxAmount: PosInitData ('AmountPrecision'),\r\n };\r\n const {isHorizontalSunMi} = platform || {};\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n const { Differentiate } = enumController.getEnumOj();\r\n this.state = {\r\n IdsettleStyleList: {\r\n '10': '微信',\r\n '11': '转账',\r\n '12': '扫码收款',\r\n '13': Differentiate,\r\n '1': '现金',\r\n '5': '支票',\r\n '4': '银行汇款',\r\n '3': '银行本票',\r\n '2': '信用卡',\r\n '6': '积分储值卡',\r\n '7': '储值卡',\r\n '8': '积分抵现',\r\n '9': '支付宝',\r\n }\r\n }\r\n }\r\n\r\n //执行测试打印\r\n doTestPrint = (printParams, callback) => {\r\n this.cloudAddList (printParams, result => {\r\n const {ret} = result;\r\n if (ret === 0) {\r\n this.cloudPrint (\r\n '\\n\\n' + '飞蛾打印机测试打印成功。' + '\\n\\n',\r\n printParams,\r\n callback\r\n );\r\n } else {\r\n if (typeof callback == 'function') callback (result);\r\n }\r\n });\r\n };\r\n\r\n // 触发打印\r\n doPrint = (printParams, Id, callback) => {\r\n if (!printParams || !Id) return;\r\n let _this = this;\r\n API.getPrintDataInfo (Id).then (ret => {\r\n let {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n RetailDetails,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n } = ret || {};\r\n let details = [];\r\n\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n\r\n if (RetailDetails && RetailDetails.length > 0) {\r\n RetailDetails.map (item => {\r\n const inventoryCode = item.Inventory.Code\r\n item.Inventory.NameAndCode = item.Inventory.Name + `(${inventoryCode})`;\r\n let quantity = this.toDecimal2NoZero (item.Quantity) \r\n quantity += item.Unit.Name || '';\r\n item.quantityAndUnit = quantity;\r\n\r\n // 零售价\r\n // let Price = this.toDecimal2NoZero (item.Price);\r\n\r\n // // 商品编码\r\n // let inventoryCode = item.Inventory.Code;\r\n\r\n // let taxPrice = this.toDecimal2NoZero (item.TaxPrice);\r\n // // item.TaxPrice,\r\n // // this.Precision.Price\r\n\r\n // // 金额\r\n // let taxAmount = tool.formatPrecision (\r\n // item.TaxAmount,\r\n // this.Precision.TaxAmount\r\n // );\r\n // details.push ([item.Inventory.Name + `(${inventoryCode})`, quantity,taxPrice, Price, taxAmount]);\r\n\r\n });\r\n // 总优惠金额\r\n // let totalDiscount = this.toDecimal2NoZero(item.TotalDiscount);\r\n }\r\n let constr = _this.loadBTPrintDataByTemplate (printParams,{\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details:RetailDetails,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n });\r\n\r\n // let constr = _this.loadBTPrintData ({\r\n // Store,\r\n // UserName,\r\n // Code,\r\n // CreatedTime,\r\n // details,\r\n // TotalCount,\r\n // TotalTaxAmount,\r\n // WipeChange,\r\n // Member,\r\n // BalanceIntegral,\r\n // Integral,\r\n // BalanceStorage,\r\n // RetailPaymentDetails\r\n // });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 日结打印\r\n doDialyPrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getDialyPrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTDutyAndDialyPrintData (printParams, ret || {}, 'Dialy');\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 交班打印\r\n doDutyPrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getDutyPrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTDutyAndDialyPrintData (printParams, ret, 'Duty');\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 储值打印\r\n doStoragePrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getStoragePrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTStoragePrintData (printParams, ret || {});\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n //储值打印\r\n loadBTStoragePrintData = (printParams, printEntity) => {\r\n let { Member = {}, StorageDetails = [], Person, StorageMutiSettleDetails} = printEntity || {};\r\n const { Mobilephone, Name : MemberName } = Member;\r\n const { Name : StorageName} = Person || {};\r\n printEntity.StorageName = StorageName\r\n printEntity.MemberName = MemberName\r\n \r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n //储值打印\r\n // loadBTStoragePrintData = (printParams, params) => {\r\n // let templateContent = '';\r\n // let printEntity = {};\r\n // const {\r\n // Store,\r\n // StorageDetails,\r\n // CreatedTime,\r\n // Member,\r\n // CardCode,\r\n // StorageMutiSettleDetails,\r\n // Person,\r\n // } = params || {};\r\n // const { Mobilephone, Name : MemberName } = Member || {};\r\n // const { Name : StorageName} = Person || {};\r\n // const {\r\n // ThisStorageAmount,\r\n // ThisPresentAmount,\r\n // AfterBalanceStorage,\r\n // } = StorageDetails[0] || {};\r\n // printEntity.headerMap = new Map ();\r\n // printEntity.footerMap1 = new Map ();\r\n // printEntity.footerMap2 = new Map ();\r\n // printEntity.headerMap.set ('日期', CreatedTime || '');\r\n // printEntity.headerMap.set ('储值业务员', StorageName || '');\r\n // printEntity.headerMap.set ('会员卡号', CardCode || '');\r\n // printEntity.headerMap.set ('手机号', Mobilephone || '');\r\n // printEntity.headerMap.set ('会员姓名', MemberName || '');\r\n // printEntity.headerMap.set ('本次储存金额', tool.format (ThisStorageAmount) || '');\r\n // printEntity.headerMap.set ('本次赠送金额', tool.format (ThisPresentAmount) || '');\r\n // printEntity.headerMap.set (\r\n // '本次储值后金额',\r\n // tool.format (AfterBalanceStorage) || ''\r\n // );\r\n // if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\r\n // StorageMutiSettleDetails.forEach (details => {\r\n // const {StorageAmount,SettleStyle} = details || {};\r\n // const { Name } = SettleStyle || {}\r\n // printEntity.headerMap.set (\r\n // Name,\r\n // StorageAmount || '0.00'\r\n // );\r\n // });\r\n // }\r\n // printEntity.headerMap.set ('顾客签字', '');\r\n\r\n // // 设定打印尺寸\r\n // BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n // //单据头部\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printTitle (Store.Name || '');\r\n // if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n // }\r\n // templateContent += '\\n\\n\\n\\n';\r\n // return templateContent;\r\n // };\r\n\r\n // 交班日结打印 type: Duty 交班 Dialy 日结\r\n loadBTDutyAndDialyPrintData = (printParams, printEntity, type) => {\r\n const { WorkingDate, WorkingTime, DailyDate, DailyTime, RetailAmount, ReturnAmount, InitialAmount, ImprestAmount, ShiftDate, ShiftTime, ShiftVoucherDetails } = printEntity\r\n printEntity.WorkingDateAndTime = WorkingDate + ' ' + WorkingTime\r\n printEntity.DailyDateAndTime = DailyDate + ' ' + DailyTime\r\n printEntity.DutyDateAndTime = ShiftDate + ' ' + ShiftTime\r\n printEntity.NetAmount = RetailAmount + ReturnAmount\r\n printEntity.ImprestBalance = InitialAmount + ImprestAmount\r\n printEntity.ShiftVoucherDetails = ShiftVoucherDetails.map(item => {\r\n const { SettleStyle: {Name} = {} } = item\r\n return {\r\n Name,\r\n ...item\r\n }\r\n })\r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n // 交班日结打印 type: Duty 交班 Dialy 日结\r\n // loadBTDutyAndDialyPrintData = (printParams, params, type) => {\r\n // let templateContent = '';\r\n // let printEntity = {};\r\n // const {\r\n // Code,\r\n // Store,\r\n // UserName,\r\n // POSCode,\r\n // POS,\r\n // POSName,\r\n // WorkingDate,\r\n // StartDate,\r\n // ShiftDate,\r\n // DailyDate,\r\n // RetailAmount,\r\n // ReturnAmount,\r\n // SalesStorageTotalAmount,\r\n // CashOutAmount,\r\n // CouponsDeduct,\r\n // CouponsAmount,\r\n // OnlineAmount,\r\n // TotalCount,\r\n // TotalCustom,\r\n // Price,\r\n // InitialAmount,\r\n // ImprestAmount,\r\n // ImprestBalanceAmount,\r\n // ShiftVoucherDetails,\r\n // DailyDetails,\r\n // WorkingTime,\r\n // ShiftTime,\r\n // StartTime,\r\n // DailyTime,\r\n // Memo\r\n // } = params || {};\r\n // printEntity.headerMap = new Map ();\r\n // printEntity.footerMap1 = new Map ();\r\n // printEntity.footerMap2 = new Map ();\r\n // printEntity.detailTopList = [];\r\n // printEntity.detailContentList = [];\r\n // printEntity.headerMap.set ('单号', Code);\r\n // printEntity.headerMap.set ('门店', Store.Name || '');\r\n // printEntity.headerMap.set ('POS编码', POSCode || '');\r\n // printEntity.headerMap.set ('POS名称', POSName || '');\r\n // printEntity.headerMap.set ('收 银 员', UserName || '');\r\n // printEntity.headerMap.set (\r\n // '上班日期',\r\n // WorkingDate + \" \" +WorkingTime \r\n // );\r\n // printEntity.headerMap.set (\r\n // type == 'Duty' ? '交班日期' : '日结日期',\r\n // type == 'Duty' ? ShiftDate + \" \" + ShiftTime : DailyDate + \" \" + DailyTime\r\n // );\r\n\r\n // printEntity.footerMap1.set ('销售金额', tool.format (RetailAmount) || '0.00');\r\n // printEntity.footerMap1.set ('退货金额', tool.format (ReturnAmount) || '0.00');\r\n // printEntity.footerMap1.set (\r\n // '净销售金额',\r\n // tool.format (RetailAmount + ReturnAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap1.set (\r\n // '储值销售金额',\r\n // tool.format (SalesStorageTotalAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap1.set (\r\n // '抵现销售金额',\r\n // tool.format (CashOutAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap1.set (\r\n // '券抵扣(负劳务行)',\r\n // tool.format (CouponsDeduct) || '0.00'\r\n // );\r\n // const { Differentiate } = enumController.getEnumOj();\r\n // printEntity.footerMap1.set (`${Differentiate.COUPON}抵扣`, tool.format (CouponsAmount) || '0.00');\r\n // printEntity.footerMap1.set ('线上收款金额', tool.format (OnlineAmount) || '0.00');\r\n // printEntity.footerMap1.set ('水单总数', TotalCount || '0');\r\n // printEntity.footerMap1.set ('来客数量', TotalCustom || '0');\r\n // printEntity.footerMap1.set ('客单价', tool.format (Price) || '0.00');\r\n\r\n // printEntity.detailTopList.push ({\r\n // Caption: '结算方式',\r\n // IsTitle: false,\r\n // IsFoot: false,\r\n // });\r\n // printEntity.detailTopList.push ({\r\n // Caption: '零售收款金额',\r\n // IsTitle: false,\r\n // IsFoot: false,\r\n // });\r\n // printEntity.detailTopList.push ({\r\n // Caption: '储值金额',\r\n // IsTitle: false,\r\n // IsFoot: false,\r\n // });\r\n\r\n // let details = [];\r\n // let DailyDetailsCommon = [];\r\n // if (type == 'Duty') {\r\n // DailyDetailsCommon = ShiftVoucherDetails;\r\n // } else {\r\n // DailyDetailsCommon = DailyDetails;\r\n // }\r\n // if (DailyDetailsCommon && DailyDetailsCommon.length != 0) {\r\n // DailyDetailsCommon.forEach (detailsOb => {\r\n // const { OrigAmount, MemberDepositAmount,SettleStyle} = detailsOb;\r\n // const { Name } = SettleStyle || {}\r\n // details.push ([\r\n // Name,\r\n // tool.format (OrigAmount) || '0.00',\r\n // tool.format (MemberDepositAmount) || '0.00',\r\n // ]);\r\n // });\r\n // }\r\n // printEntity.detailContentList.push (...details);\r\n\r\n // templateContent += '\\n';\r\n // // printEntity.footerMap2.set('现金', BalanceIntegral || '');\r\n // printEntity.footerMap2.set (\r\n // '备用金初始金额',\r\n // tool.format (InitialAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap2.set ('增减备用金', tool.format (ImprestAmount) || '0.00');\r\n // printEntity.footerMap2.set (\r\n // '备用金余额',\r\n // tool.format (InitialAmount+ImprestAmount) || '0.00'\r\n // );\r\n // // 设定打印尺寸\r\n // BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n // //单据头部\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printTitle (\r\n // type == 'Duty' ? '交班' : '日结'\r\n // );\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n // if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n // }\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printStarTitle ('销售看板');\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n // //单据底部1\r\n // if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n // printEntity.footerMap1\r\n // );\r\n // }\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printStarTitle ('收银统计');\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n\r\n // //单据内容--头部\r\n // let mhList = [];\r\n // if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n // printEntity.detailTopList.forEach (item => {\r\n // let mh = {\r\n // headerText: item.Caption,\r\n // headerWeight: 1,\r\n // isTitle: item.IsTitle,\r\n // isFoot: item.IsFoot,\r\n // };\r\n // mhList.push (mh);\r\n // });\r\n // }\r\n // //单据内容--明细\r\n // let bodyValueList = [];\r\n // printEntity.detailContentList.forEach (items => {\r\n // let bodyValue = [];\r\n // items.forEach (item => {\r\n // bodyValue.push (item);\r\n // });\r\n // bodyValueList.push (bodyValue);\r\n // });\r\n // templateContent += BTPrintFormatUtil.printMenuMSG (\r\n // bodyValueList,\r\n // mhList,\r\n // true\r\n // );\r\n\r\n // //单据底部2\r\n // if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n // printEntity.footerMap2\r\n // );\r\n // }\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n // templateContent += '备注:'+ (Memo || '');\r\n // templateContent += '\\n'; //备注\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (\r\n // '收银员签字:',\r\n // '收银主管签字:'\r\n // );\r\n // templateContent += '\\n\\n\\n\\n';\r\n // return templateContent;\r\n // };\r\n\r\n loadBTPrintDataByTemplate = (printParams,printEntity) => {\r\n //支付方式--明细\r\n let pBodyValueList = [];\r\n printEntity.RetailPaymentDetails.forEach (items => {\r\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\r\n // bodyValue.push(tool.format (Amount));\r\n pBodyValueList.push ({\r\n NameAndCode: Name,\r\n TotalAmount: tool.format (Amount)\r\n });\r\n });\r\n printEntity.RetailPaymentDetails = pBodyValueList;\r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n dutyPrintStringByTemplate = (template,data) => {\r\n const { width, body:templateBody } = template;\r\n let templateContent = \"\"\r\n BTPrintFormatUtil.setLineByteSize (Math.floor( width/58 * this.lineSize));\r\n for (let index = 0; index < templateBody.length; index++) {\r\n const printTemplateItem = templateBody[index];\r\n switch(printTemplateItem.type){\r\n case 'lineFeed':{\r\n if(printTemplateItem.height){\r\n let height = printTemplateItem.height;\r\n do{\r\n templateContent += '\\n'; \r\n height --;\r\n }while(height >0)\r\n }\r\n break;\r\n }\r\n case 'separateLine':{\r\n if(printTemplateItem.height){\r\n const { value } = printTemplateItem\r\n let height = printTemplateItem.height;\r\n do{\r\n templateContent += BTPrintFormatUtil.drawSeparateLine(value);\r\n height --;\r\n }while(height >0)\r\n }\r\n break;\r\n }\r\n case 'printTitle':{\r\n templateContent += BTPrintFormatUtil.printTitle(printTemplateItem.value || JSON.getCellValue(data,printTemplateItem.attribute) || \"\");\r\n break;\r\n }\r\n case 'printStarTitle':{\r\n templateContent += BTPrintFormatUtil.printStarTitle(printTemplateItem.value);\r\n break;\r\n }\r\n case 'spaceCenterPrintMsg':{\r\n templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (...printTemplateItem.value);\r\n break;\r\n }\r\n case 'leftPrintMsg':{\r\n const { body } = printTemplateItem;\r\n const valueMap = new Map ();\r\n body.forEach(attr => {\r\n const { name , attribute , type } = attr;\r\n let value = ''\r\n if (attribute && attribute.length) {\r\n let symbolList = [];\r\n const attributeList = attribute && attribute.replace(/\\+{1}|\\-{1}/g,(symbol)=>{\r\n symbolList.push(symbol);\r\n return \"**_**\"\r\n }).split(\"**_**\");\r\n let totalValue = JSON.getCellValue(data,attributeList[0]);\r\n if (symbolList.length > 0) {\r\n for (let index = 0; index < symbolList.length; index++) {\r\n switch (symbolList[index]) {\r\n case \"+\": {\r\n totalValue += JSON.getCellValue(data, attributeList[index + 1]);\r\n break;\r\n }\r\n case \"-\": {\r\n totalValue -= JSON.getCellValue(data, attributeList[index + 1]);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n value = this.formatValue(type,totalValue);\r\n }\r\n valueMap.set (name, value);\r\n });\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (valueMap);\r\n break;\r\n }\r\n case 'printMenuMSG':{\r\n const { headerList , bodyList } = printTemplateItem;\r\n let bodyListArray = [];\r\n const listArray = JSON.getCellValue(data,bodyList.attribute);\r\n \r\n bodyList.list.forEach ((list, index)=>{\r\n const { type , attribute} = list \r\n // bodyListArray.push(this.formatValue(type,listArray[attribute]))\r\n \r\n listArray.map((item, i) => {\r\n const arr = bodyListArray[i] || []\r\n const listArr = arr[index] || []\r\n arr[index] = this.formatValue(type, JSON.getCellValue(item, attribute))\r\n bodyListArray[i] = arr\r\n })\r\n })\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyListArray,\r\n headerList,\r\n true\r\n );\r\n break;\r\n }\r\n case 'text':{\r\n templateContent += printTemplateItem.value;\r\n break;\r\n }\r\n }\r\n }\r\n return templateContent;\r\n }\r\n\r\n formatValue = (type,value) => {\r\n switch(type){\r\n case \"string\":return value || \"\";\r\n case \"number\":return value || '0';\r\n case \"price\": return tool.format(value) || '0.00';\r\n default:return value || \"\";\r\n }\r\n }\r\n\r\n //正常打印机(58mm)数据 小票打印\r\n loadBTPrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.detailTopList = [];\r\n printEntity.paymentTypeTopList = [];\r\n printEntity.paymentTypeDetailList = [];\r\n printEntity.detailContentList = [];\r\n printEntity.footerMap1 = new Map ();\r\n printEntity.footerMap2 = new Map ();\r\n printEntity.headerMap.set ('门店名称', Store.Name || '');\r\n printEntity.headerMap.set ('门店电话', Store.Telephone || '');\r\n printEntity.headerMap.set ('收银员', UserName || '');\r\n printEntity.headerMap.set ('单号', Code);\r\n printEntity.headerMap.set ('日期', CreatedTime || '');\r\n printEntity.detailTopList.push ({\r\n Caption: '商品名称',\r\n IsTitle: true,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '数量',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '单价',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n\r\n //支付方式\r\n printEntity.paymentTypeTopList.push ({\r\n Caption: '支付方式',\r\n IsTitle: false,\r\n IsFoot: false,\r\n })\r\n printEntity.paymentTypeTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n })\r\n printEntity.paymentTypeDetailList.push(...RetailPaymentDetails)\r\n\r\n printEntity.detailContentList.push (...details);\r\n printEntity.footerMap1.set ('数量', TotalCount);\r\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\r\n printEntity.footerMap1.set ('抹零', WipeChange || '0.00');\r\n\r\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\r\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\r\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '0');\r\n printEntity.footerMap2.set ('本次积分', Integral || '0');\r\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '0.00');\r\n // 设定打印尺寸\r\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n //单据头部\r\n templateContent += '\\n';\r\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n }\r\n\r\n templateContent += '\\n';\r\n\r\n //单据内容--头部\r\n let mhList = [];\r\n if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n printEntity.detailTopList.forEach (item => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n mhList.push (mh);\r\n });\r\n }\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n printEntity.detailContentList.forEach (items => {\r\n let bodyValue = [];\r\n items.forEach (item => {\r\n bodyValue.push (item);\r\n });\r\n bodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyValueList,\r\n mhList,\r\n true\r\n );\r\n\r\n //单据底部1\r\n if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg(\r\n printEntity.footerMap1\r\n );\r\n }\r\n templateContent += BTPrintFormatUtil.drawSeparateLine();\r\n templateContent += '\\n';\r\n\r\n //支付方式--头部\r\n let phList = [];\r\n if (printEntity.paymentTypeTopList && printEntity.paymentTypeTopList.length > 0) {\r\n printEntity.paymentTypeTopList.forEach ((item,index) => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: index == 0 ? 3 : 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n phList.push (mh);\r\n });\r\n }\r\n //支付方式--明细\r\n let pBodyValueList = [];\r\n printEntity.paymentTypeDetailList.forEach (items => {\r\n let bodyValue = [];\r\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\r\n bodyValue.push(Name);\r\n bodyValue.push(tool.format (Amount));\r\n pBodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n pBodyValueList,\r\n phList,\r\n true\r\n );\r\n\r\n \r\n //单据底部2\r\n if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap2\r\n );\r\n }\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n templateContent += '\\n';\r\n templateContent += '\\t谢谢惠顾,欢迎再次光临';\r\n templateContent += '\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n //小票-云打印\r\n cloudPrint = (cloudContents, printParams, callback) => {\r\n const { Open ,Key, Sign, Name, Card,isLocalSunMi} = printParams || {};\r\n // 商米没有配置则调用本地打印接口\r\n if(this.isHorizontalSunMi && isLocalSunMi){\r\n this.sunMiLocalPrint(cloudContents, Name, callback);\r\n }else if (this.isHorizontalSunMi && !Open) {\r\n console.log (cloudContents);\r\n this.sunmiPrint (cloudContents, callback);\r\n } else if(Open) {\r\n const {Key, Sign, Name, Card} = printParams || {};\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //打印次数\r\n API.openPrintMsg ({\r\n content: cloudContents,\r\n printerContent: printerContent,\r\n apiname: 'Open_printMsg',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n }\r\n };\r\n\r\n //小票-商米打印\r\n sunmiPrint = (cloudContents, callback) => {\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n // 检测打印机状态\r\n .updatePrinterState().then(status => {\r\n const { state , message } = status || {};\r\n if(state == 1){\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n .PrintSmallTicketter (cloudContents + '\\n\\n',this.PrintCount)\r\n .then (ret => {\r\n if(ret && ret.state && ret.state == 200){\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:ret.message?ret.message:\"打印失败\"\r\n });\r\n }\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:message?message:\"打印失败\"\r\n });\r\n }\r\n })\r\n };\r\n\r\n sunMiLocalPrint = (cloudContents,deviceName,callback)=>{\r\n window.LocalPrintPlugin.printByDeviceName({deviceName,printContent:cloudContents}).then((res)=>{\r\n console.log(\"商米本地打印成功\",res);\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }).catch((error)=>{\r\n console.log(\"商米本地打印失败\",error)\r\n const { message } = error || {}\r\n callback && callback ({\r\n ret:-1,\r\n msg: message ||\"打印失败\"\r\n });\r\n })\r\n }\r\n\r\n\r\n cloudAddList = (printParams, callback) => {\r\n const {Key, Sign, Name, Card} = printParams || {};\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //按照添加一次的\r\n API.openPrinterAddlist ({\r\n content: '',\r\n printerContent,\r\n apiname: 'Open_printerAddlist',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n };\r\n toDecimal2NoZero(x) {\r\n var f = Math.round(x * 100) / 100;\r\n var s = f.toString();\r\n return s;\r\n }\r\n}\r\nexport default PrintUtil;\r\n"]}
|
1
|
+
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/index.js"],"names":["PrintUtil","doTestPrint","printParams","callback","cloudAddList","ret","result","cloudPrint","doPrint","Id","_this","API","getPrintDataInfo","then","Store","UserName","Code","CreatedTime","TotalCount","TotalTaxAmount","WipeChange","RetailDetails","Member","BalanceIntegral","Integral","BalanceStorage","RetailPaymentDetails","details","tools","changePrivateInfo","length","map","inventoryCode","item","Inventory","NameAndCode","Name","quantity","toDecimal2NoZero","Quantity","Unit","quantityAndUnit","constr","loadBTPrintDataByTemplate","doDialyPrint","getDialyPrintDataInfo","loadBTDutyAndDialyPrintData","doDutyPrint","getDutyPrintDataInfo","doStoragePrint","getStoragePrintDataInfo","loadBTStoragePrintData","printEntity","StorageDetails","Person","StorageMutiSettleDetails","Mobilephone","MemberName","StorageName","template","dutyPrintStringByTemplate","type","WorkingDate","WorkingTime","DailyDate","DailyTime","RetailAmount","ReturnAmount","InitialAmount","ImprestAmount","ShiftDate","ShiftTime","ShiftVoucherDetails","WorkingDateAndTime","DailyDateAndTime","DutyDateAndTime","NetAmount","ImprestBalance","SettleStyle","pBodyValueList","forEach","items","Amount","push","TotalAmount","tool","format","data","width","templateBody","body","templateContent","BTPrintFormatUtil","setLineByteSize","Math","floor","lineSize","index","printTemplateItem","height","value","drawSeparateLine","printTitle","JSON","getCellValue","attribute","printStarTitle","spaceCenterPrintMsg","valueMap","name","attr","symbolList","attributeList","replace","symbol","split","totalValue","formatValue","set","leftPrintMsg","headerList","bodyList","bodyListArray","listArray","list","i","arr","listArr","printMenuMSG","loadBTPrintData","params","headerMap","detailTopList","paymentTypeTopList","paymentTypeDetailList","detailContentList","footerMap1","footerMap2","Telephone","Caption","IsTitle","IsFoot","CardCode","size","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","phList","drawSeparateLine2","cloudContents","Open","Key","Sign","Card","isLocalSunMi","isHorizontalSunMi","sunMiLocalPrint","console","log","sunmiPrint","printerContent","join","PrintCount","openPrintMsg","content","apiname","deviceCode","times","s","window","sunMi_OperatingCashier","updatePrinterState","status","state","message","PrintSmallTicketter","msg","deviceName","LocalPrintPlugin","printByDeviceName","printContent","res","catch","error","openPrinterAddlist","BTPrintEntity","BTPrintContent","Precision","Price","TaxAmount","platform","enumController","getEnumOj","Differentiate","IdsettleStyleList","x","f","round","toString"],"mappings":"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B,cAAMD,aAJW;AAKjB,aAAK,IALY;AAMjB,aAAK,IANY;AAOjB,aAAK,MAPY;AAQjB,aAAK,MARY;AASjB,aAAK,KATY;AAUjB,aAAK,OAVY;AAWjB,aAAK,KAXY;AAYjB,aAAK,MAZY;AAajB,aAAK;AAbY;AADR,KAAb;AAiBD;;AAED;;;AAgBA;;;AAwFA;;;AAUA;;;AAUA;;;AAUA;;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;AAmBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAqIA;;;AAsKA;;;AA6BA;;;;;qCAqEiBE,C,EAAG;AAChB,UAAIC,IAAI3G,KAAK4G,KAAL,CAAWF,IAAI,GAAf,IAAsB,GAA9B;AACA,UAAI3B,IAAI4B,EAAEE,QAAF,EAAR;AACA,aAAO9B,CAAP;AACH;;;;;kBAEY7K,S","file":"index.js","sourcesContent":["import BTPrintFormatUtil from './BTPrintFormatUtil';\r\nimport API from './api';\r\nimport {tools as tool} from 'mutants-util';\r\nimport {PosInitData} from 'tplus-poslogin';\r\nimport {platform, enumController} from 'mutants-util';\r\nimport tools from \"../../util/tools\";\r\nimport retailTemplateOne from './printTemplate/retail_one.json'\r\nclass PrintUtil {\r\n constructor () {\r\n this.BTPrintEntity = {};\r\n this.BTPrintContent = '';\r\n this.PrintCount = 1;\r\n this.lineSize = 32;\r\n this.Precision = {\r\n Quantity: PosInitData ('QuantityPrecision'),\r\n Price: PosInitData ('PricePrecision'),\r\n TaxAmount: PosInitData ('AmountPrecision'),\r\n };\r\n const {isHorizontalSunMi} = platform || {};\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n const { Differentiate } = enumController.getEnumOj();\r\n this.state = {\r\n IdsettleStyleList: {\r\n '10': '微信',\r\n '11': '转账',\r\n '12': '扫码收款',\r\n '13': Differentiate,\r\n '1': '现金',\r\n '5': '支票',\r\n '4': '银行汇款',\r\n '3': '银行本票',\r\n '2': '信用卡',\r\n '6': '积分储值卡',\r\n '7': '储值卡',\r\n '8': '积分抵现',\r\n '9': '支付宝',\r\n }\r\n }\r\n }\r\n\r\n //执行测试打印\r\n doTestPrint = (printParams, callback) => {\r\n this.cloudAddList (printParams, result => {\r\n const {ret} = result;\r\n if (ret === 0) {\r\n this.cloudPrint (\r\n '\\n\\n' + '飞蛾打印机测试打印成功。' + '\\n\\n',\r\n printParams,\r\n callback\r\n );\r\n } else {\r\n if (typeof callback == 'function') callback (result);\r\n }\r\n });\r\n };\r\n\r\n // 触发打印\r\n doPrint = (printParams, Id, callback) => {\r\n if (!printParams || !Id) return;\r\n let _this = this;\r\n API.getPrintDataInfo (Id).then (ret => {\r\n let {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n RetailDetails,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n } = ret || {};\r\n let details = [];\r\n\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n\r\n if (RetailDetails && RetailDetails.length > 0) {\r\n RetailDetails.map (item => {\r\n const inventoryCode = item.Inventory.Code\r\n item.Inventory.NameAndCode = item.Inventory.Name + `(${inventoryCode})`;\r\n let quantity = this.toDecimal2NoZero (item.Quantity) \r\n quantity += item.Unit.Name || '';\r\n item.quantityAndUnit = quantity;\r\n\r\n // 零售价\r\n // let Price = this.toDecimal2NoZero (item.Price);\r\n\r\n // // 商品编码\r\n // let inventoryCode = item.Inventory.Code;\r\n\r\n // let taxPrice = this.toDecimal2NoZero (item.TaxPrice);\r\n // // item.TaxPrice,\r\n // // this.Precision.Price\r\n\r\n // // 金额\r\n // let taxAmount = tool.formatPrecision (\r\n // item.TaxAmount,\r\n // this.Precision.TaxAmount\r\n // );\r\n // details.push ([item.Inventory.Name + `(${inventoryCode})`, quantity,taxPrice, Price, taxAmount]);\r\n\r\n });\r\n // 总优惠金额\r\n // let totalDiscount = this.toDecimal2NoZero(item.TotalDiscount);\r\n }\r\n let constr = _this.loadBTPrintDataByTemplate (printParams,{\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details:RetailDetails,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n });\r\n\r\n // let constr = _this.loadBTPrintData ({\r\n // Store,\r\n // UserName,\r\n // Code,\r\n // CreatedTime,\r\n // details,\r\n // TotalCount,\r\n // TotalTaxAmount,\r\n // WipeChange,\r\n // Member,\r\n // BalanceIntegral,\r\n // Integral,\r\n // BalanceStorage,\r\n // RetailPaymentDetails\r\n // });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 日结打印\r\n doDialyPrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getDialyPrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTDutyAndDialyPrintData (printParams, ret || {}, 'Dialy');\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 交班打印\r\n doDutyPrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getDutyPrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTDutyAndDialyPrintData (printParams, ret, 'Duty');\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 储值打印\r\n doStoragePrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getStoragePrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTStoragePrintData (printParams, ret || {});\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n //储值打印\r\n loadBTStoragePrintData = (printParams, printEntity) => {\r\n let { Member = {}, StorageDetails = [], Person, StorageMutiSettleDetails} = printEntity || {};\r\n const { Mobilephone, Name : MemberName } = Member;\r\n const { Name : StorageName} = Person || {};\r\n printEntity.StorageName = StorageName\r\n printEntity.MemberName = MemberName\r\n \r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n //储值打印\r\n // loadBTStoragePrintData = (printParams, params) => {\r\n // let templateContent = '';\r\n // let printEntity = {};\r\n // const {\r\n // Store,\r\n // StorageDetails,\r\n // CreatedTime,\r\n // Member,\r\n // CardCode,\r\n // StorageMutiSettleDetails,\r\n // Person,\r\n // } = params || {};\r\n // const { Mobilephone, Name : MemberName } = Member || {};\r\n // const { Name : StorageName} = Person || {};\r\n // const {\r\n // ThisStorageAmount,\r\n // ThisPresentAmount,\r\n // AfterBalanceStorage,\r\n // } = StorageDetails[0] || {};\r\n // printEntity.headerMap = new Map ();\r\n // printEntity.footerMap1 = new Map ();\r\n // printEntity.footerMap2 = new Map ();\r\n // printEntity.headerMap.set ('日期', CreatedTime || '');\r\n // printEntity.headerMap.set ('储值业务员', StorageName || '');\r\n // printEntity.headerMap.set ('会员卡号', CardCode || '');\r\n // printEntity.headerMap.set ('手机号', Mobilephone || '');\r\n // printEntity.headerMap.set ('会员姓名', MemberName || '');\r\n // printEntity.headerMap.set ('本次储存金额', tool.format (ThisStorageAmount) || '');\r\n // printEntity.headerMap.set ('本次赠送金额', tool.format (ThisPresentAmount) || '');\r\n // printEntity.headerMap.set (\r\n // '本次储值后金额',\r\n // tool.format (AfterBalanceStorage) || ''\r\n // );\r\n // if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\r\n // StorageMutiSettleDetails.forEach (details => {\r\n // const {StorageAmount,SettleStyle} = details || {};\r\n // const { Name } = SettleStyle || {}\r\n // printEntity.headerMap.set (\r\n // Name,\r\n // StorageAmount || '0.00'\r\n // );\r\n // });\r\n // }\r\n // printEntity.headerMap.set ('顾客签字', '');\r\n\r\n // // 设定打印尺寸\r\n // BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n // //单据头部\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printTitle (Store.Name || '');\r\n // if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n // }\r\n // templateContent += '\\n\\n\\n\\n';\r\n // return templateContent;\r\n // };\r\n\r\n // 交班日结打印 type: Duty 交班 Dialy 日结\r\n loadBTDutyAndDialyPrintData = (printParams, printEntity, type) => {\r\n const { WorkingDate, WorkingTime, DailyDate, DailyTime, RetailAmount, ReturnAmount, InitialAmount, ImprestAmount, ShiftDate, ShiftTime, ShiftVoucherDetails } = printEntity\r\n printEntity.WorkingDateAndTime = WorkingDate + ' ' + WorkingTime\r\n printEntity.DailyDateAndTime = DailyDate + ' ' + DailyTime\r\n printEntity.DutyDateAndTime = ShiftDate + ' ' + ShiftTime\r\n printEntity.NetAmount = RetailAmount + ReturnAmount\r\n printEntity.ImprestBalance = InitialAmount + ImprestAmount\r\n printEntity.ShiftVoucherDetails = ShiftVoucherDetails.map(item => {\r\n const { SettleStyle: {Name} = {} } = item\r\n return {\r\n Name,\r\n ...item\r\n }\r\n })\r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n // 交班日结打印 type: Duty 交班 Dialy 日结\r\n // loadBTDutyAndDialyPrintData = (printParams, params, type) => {\r\n // let templateContent = '';\r\n // let printEntity = {};\r\n // const {\r\n // Code,\r\n // Store,\r\n // UserName,\r\n // POSCode,\r\n // POS,\r\n // POSName,\r\n // WorkingDate,\r\n // StartDate,\r\n // ShiftDate,\r\n // DailyDate,\r\n // RetailAmount,\r\n // ReturnAmount,\r\n // SalesStorageTotalAmount,\r\n // CashOutAmount,\r\n // CouponsDeduct,\r\n // CouponsAmount,\r\n // OnlineAmount,\r\n // TotalCount,\r\n // TotalCustom,\r\n // Price,\r\n // InitialAmount,\r\n // ImprestAmount,\r\n // ImprestBalanceAmount,\r\n // ShiftVoucherDetails,\r\n // DailyDetails,\r\n // WorkingTime,\r\n // ShiftTime,\r\n // StartTime,\r\n // DailyTime,\r\n // Memo\r\n // } = params || {};\r\n // printEntity.headerMap = new Map ();\r\n // printEntity.footerMap1 = new Map ();\r\n // printEntity.footerMap2 = new Map ();\r\n // printEntity.detailTopList = [];\r\n // printEntity.detailContentList = [];\r\n // printEntity.headerMap.set ('单号', Code);\r\n // printEntity.headerMap.set ('门店', Store.Name || '');\r\n // printEntity.headerMap.set ('POS编码', POSCode || '');\r\n // printEntity.headerMap.set ('POS名称', POSName || '');\r\n // printEntity.headerMap.set ('收 银 员', UserName || '');\r\n // printEntity.headerMap.set (\r\n // '上班日期',\r\n // WorkingDate + \" \" +WorkingTime \r\n // );\r\n // printEntity.headerMap.set (\r\n // type == 'Duty' ? '交班日期' : '日结日期',\r\n // type == 'Duty' ? ShiftDate + \" \" + ShiftTime : DailyDate + \" \" + DailyTime\r\n // );\r\n\r\n // printEntity.footerMap1.set ('销售金额', tool.format (RetailAmount) || '0.00');\r\n // printEntity.footerMap1.set ('退货金额', tool.format (ReturnAmount) || '0.00');\r\n // printEntity.footerMap1.set (\r\n // '净销售金额',\r\n // tool.format (RetailAmount + ReturnAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap1.set (\r\n // '储值销售金额',\r\n // tool.format (SalesStorageTotalAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap1.set (\r\n // '抵现销售金额',\r\n // tool.format (CashOutAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap1.set (\r\n // '券抵扣(负劳务行)',\r\n // tool.format (CouponsDeduct) || '0.00'\r\n // );\r\n // const { Differentiate } = enumController.getEnumOj();\r\n // printEntity.footerMap1.set (`${Differentiate.COUPON}抵扣`, tool.format (CouponsAmount) || '0.00');\r\n // printEntity.footerMap1.set ('线上收款金额', tool.format (OnlineAmount) || '0.00');\r\n // printEntity.footerMap1.set ('水单总数', TotalCount || '0');\r\n // printEntity.footerMap1.set ('来客数量', TotalCustom || '0');\r\n // printEntity.footerMap1.set ('客单价', tool.format (Price) || '0.00');\r\n\r\n // printEntity.detailTopList.push ({\r\n // Caption: '结算方式',\r\n // IsTitle: false,\r\n // IsFoot: false,\r\n // });\r\n // printEntity.detailTopList.push ({\r\n // Caption: '零售收款金额',\r\n // IsTitle: false,\r\n // IsFoot: false,\r\n // });\r\n // printEntity.detailTopList.push ({\r\n // Caption: '储值金额',\r\n // IsTitle: false,\r\n // IsFoot: false,\r\n // });\r\n\r\n // let details = [];\r\n // let DailyDetailsCommon = [];\r\n // if (type == 'Duty') {\r\n // DailyDetailsCommon = ShiftVoucherDetails;\r\n // } else {\r\n // DailyDetailsCommon = DailyDetails;\r\n // }\r\n // if (DailyDetailsCommon && DailyDetailsCommon.length != 0) {\r\n // DailyDetailsCommon.forEach (detailsOb => {\r\n // const { OrigAmount, MemberDepositAmount,SettleStyle} = detailsOb;\r\n // const { Name } = SettleStyle || {}\r\n // details.push ([\r\n // Name,\r\n // tool.format (OrigAmount) || '0.00',\r\n // tool.format (MemberDepositAmount) || '0.00',\r\n // ]);\r\n // });\r\n // }\r\n // printEntity.detailContentList.push (...details);\r\n\r\n // templateContent += '\\n';\r\n // // printEntity.footerMap2.set('现金', BalanceIntegral || '');\r\n // printEntity.footerMap2.set (\r\n // '备用金初始金额',\r\n // tool.format (InitialAmount) || '0.00'\r\n // );\r\n // printEntity.footerMap2.set ('增减备用金', tool.format (ImprestAmount) || '0.00');\r\n // printEntity.footerMap2.set (\r\n // '备用金余额',\r\n // tool.format (InitialAmount+ImprestAmount) || '0.00'\r\n // );\r\n // // 设定打印尺寸\r\n // BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n // //单据头部\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printTitle (\r\n // type == 'Duty' ? '交班' : '日结'\r\n // );\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n // if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n // }\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printStarTitle ('销售看板');\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n // //单据底部1\r\n // if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n // printEntity.footerMap1\r\n // );\r\n // }\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.printStarTitle ('收银统计');\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n\r\n // //单据内容--头部\r\n // let mhList = [];\r\n // if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n // printEntity.detailTopList.forEach (item => {\r\n // let mh = {\r\n // headerText: item.Caption,\r\n // headerWeight: 1,\r\n // isTitle: item.IsTitle,\r\n // isFoot: item.IsFoot,\r\n // };\r\n // mhList.push (mh);\r\n // });\r\n // }\r\n // //单据内容--明细\r\n // let bodyValueList = [];\r\n // printEntity.detailContentList.forEach (items => {\r\n // let bodyValue = [];\r\n // items.forEach (item => {\r\n // bodyValue.push (item);\r\n // });\r\n // bodyValueList.push (bodyValue);\r\n // });\r\n // templateContent += BTPrintFormatUtil.printMenuMSG (\r\n // bodyValueList,\r\n // mhList,\r\n // true\r\n // );\r\n\r\n // //单据底部2\r\n // if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n // templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n // printEntity.footerMap2\r\n // );\r\n // }\r\n // templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n // templateContent += '备注:'+ (Memo || '');\r\n // templateContent += '\\n'; //备注\r\n // templateContent += '\\n';\r\n // templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (\r\n // '收银员签字:',\r\n // '收银主管签字:'\r\n // );\r\n // templateContent += '\\n\\n\\n\\n';\r\n // return templateContent;\r\n // };\r\n\r\n loadBTPrintDataByTemplate = (printParams,printEntity) => {\r\n //支付方式--明细\r\n let pBodyValueList = [];\r\n printEntity.RetailPaymentDetails.forEach (items => {\r\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\r\n // bodyValue.push(tool.format (Amount));\r\n pBodyValueList.push ({\r\n NameAndCode: Name,\r\n TotalAmount: tool.format (Amount)\r\n });\r\n });\r\n printEntity.RetailPaymentDetails = pBodyValueList;\r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n dutyPrintStringByTemplate = (template,data) => {\r\n const { width, body:templateBody } = template;\r\n let templateContent = \"\"\r\n BTPrintFormatUtil.setLineByteSize (Math.floor( width/58 * this.lineSize));\r\n for (let index = 0; index < templateBody.length; index++) {\r\n const printTemplateItem = templateBody[index];\r\n switch(printTemplateItem.type){\r\n case 'lineFeed':{\r\n if(printTemplateItem.height){\r\n let height = printTemplateItem.height;\r\n do{\r\n templateContent += '\\n'; \r\n height --;\r\n }while(height >0)\r\n }\r\n break;\r\n }\r\n case 'separateLine':{\r\n if(printTemplateItem.height){\r\n const { value } = printTemplateItem\r\n let height = printTemplateItem.height;\r\n do{\r\n templateContent += BTPrintFormatUtil.drawSeparateLine(value);\r\n height --;\r\n }while(height >0)\r\n }\r\n break;\r\n }\r\n case 'printTitle':{\r\n templateContent += BTPrintFormatUtil.printTitle(printTemplateItem.value || JSON.getCellValue(data,printTemplateItem.attribute) || \"\");\r\n break;\r\n }\r\n case 'printStarTitle':{\r\n templateContent += BTPrintFormatUtil.printStarTitle(printTemplateItem.value);\r\n break;\r\n }\r\n case 'spaceCenterPrintMsg':{\r\n templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (...printTemplateItem.value);\r\n break;\r\n }\r\n case 'leftPrintMsg':{\r\n const { body } = printTemplateItem;\r\n const valueMap = new Map ();\r\n body.forEach(attr => {\r\n const { name , attribute , type } = attr;\r\n let value = ''\r\n if (attribute && attribute.length) {\r\n let symbolList = [];\r\n const attributeList = attribute && attribute.replace(/\\+{1}|\\-{1}/g,(symbol)=>{\r\n symbolList.push(symbol);\r\n return \"**_**\"\r\n }).split(\"**_**\");\r\n let totalValue = JSON.getCellValue(data,attributeList[0]);\r\n if (symbolList.length > 0) {\r\n for (let index = 0; index < symbolList.length; index++) {\r\n switch (symbolList[index]) {\r\n case \"+\": {\r\n totalValue += JSON.getCellValue(data, attributeList[index + 1]);\r\n break;\r\n }\r\n case \"-\": {\r\n totalValue -= JSON.getCellValue(data, attributeList[index + 1]);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n value = this.formatValue(type,totalValue);\r\n }\r\n valueMap.set (name, value);\r\n });\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (valueMap);\r\n break;\r\n }\r\n case 'printMenuMSG':{\r\n const { headerList , bodyList } = printTemplateItem;\r\n let bodyListArray = [];\r\n const listArray = JSON.getCellValue(data,bodyList.attribute);\r\n \r\n bodyList.list.forEach ((list, index)=>{\r\n const { type , attribute} = list \r\n // bodyListArray.push(this.formatValue(type,listArray[attribute]))\r\n \r\n listArray.map((item, i) => {\r\n const arr = bodyListArray[i] || []\r\n const listArr = arr[index] || []\r\n arr[index] = this.formatValue(type, JSON.getCellValue(item, attribute))\r\n bodyListArray[i] = arr\r\n })\r\n })\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyListArray,\r\n headerList,\r\n true\r\n );\r\n break;\r\n }\r\n case 'text':{\r\n templateContent += printTemplateItem.value;\r\n break;\r\n }\r\n }\r\n }\r\n return templateContent;\r\n }\r\n\r\n formatValue = (type,value) => {\r\n switch(type){\r\n case \"string\":return value || \"\";\r\n case \"number\":return value || '0';\r\n case \"price\": return tool.format(value) || '0.00';\r\n default:return value || \"\";\r\n }\r\n }\r\n\r\n //正常打印机(58mm)数据 小票打印\r\n loadBTPrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.detailTopList = [];\r\n printEntity.paymentTypeTopList = [];\r\n printEntity.paymentTypeDetailList = [];\r\n printEntity.detailContentList = [];\r\n printEntity.footerMap1 = new Map ();\r\n printEntity.footerMap2 = new Map ();\r\n printEntity.headerMap.set ('门店名称', Store.Name || '');\r\n printEntity.headerMap.set ('门店电话', Store.Telephone || '');\r\n printEntity.headerMap.set ('收银员', UserName || '');\r\n printEntity.headerMap.set ('单号', Code);\r\n printEntity.headerMap.set ('日期', CreatedTime || '');\r\n printEntity.detailTopList.push ({\r\n Caption: '商品名称',\r\n IsTitle: true,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '数量',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '单价',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n\r\n //支付方式\r\n printEntity.paymentTypeTopList.push ({\r\n Caption: '支付方式',\r\n IsTitle: false,\r\n IsFoot: false,\r\n })\r\n printEntity.paymentTypeTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n })\r\n printEntity.paymentTypeDetailList.push(...RetailPaymentDetails)\r\n\r\n printEntity.detailContentList.push (...details);\r\n printEntity.footerMap1.set ('数量', TotalCount);\r\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\r\n printEntity.footerMap1.set ('抹零', WipeChange || '0.00');\r\n\r\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\r\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\r\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '0');\r\n printEntity.footerMap2.set ('本次积分', Integral || '0');\r\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '0.00');\r\n // 设定打印尺寸\r\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n //单据头部\r\n templateContent += '\\n';\r\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n }\r\n\r\n templateContent += '\\n';\r\n\r\n //单据内容--头部\r\n let mhList = [];\r\n if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n printEntity.detailTopList.forEach (item => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n mhList.push (mh);\r\n });\r\n }\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n printEntity.detailContentList.forEach (items => {\r\n let bodyValue = [];\r\n items.forEach (item => {\r\n bodyValue.push (item);\r\n });\r\n bodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyValueList,\r\n mhList,\r\n true\r\n );\r\n\r\n //单据底部1\r\n if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg(\r\n printEntity.footerMap1\r\n );\r\n }\r\n templateContent += BTPrintFormatUtil.drawSeparateLine();\r\n templateContent += '\\n';\r\n\r\n //支付方式--头部\r\n let phList = [];\r\n if (printEntity.paymentTypeTopList && printEntity.paymentTypeTopList.length > 0) {\r\n printEntity.paymentTypeTopList.forEach ((item,index) => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: index == 0 ? 3 : 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n phList.push (mh);\r\n });\r\n }\r\n //支付方式--明细\r\n let pBodyValueList = [];\r\n printEntity.paymentTypeDetailList.forEach (items => {\r\n let bodyValue = [];\r\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\r\n bodyValue.push(Name);\r\n bodyValue.push(tool.format (Amount));\r\n pBodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n pBodyValueList,\r\n phList,\r\n true\r\n );\r\n\r\n \r\n //单据底部2\r\n if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap2\r\n );\r\n }\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n templateContent += '\\n';\r\n templateContent += '\\t谢谢惠顾,欢迎再次光临';\r\n templateContent += '\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n //小票-云打印\r\n cloudPrint = (cloudContents, printParams, callback) => {\r\n const { Open ,Key, Sign, Name, Card,isLocalSunMi} = printParams || {};\r\n // 商米没有配置则调用本地打印接口\r\n if(this.isHorizontalSunMi && isLocalSunMi){\r\n this.sunMiLocalPrint(cloudContents, Name, callback);\r\n }else if (this.isHorizontalSunMi && !Open) {\r\n console.log (cloudContents);\r\n this.sunmiPrint (cloudContents, callback);\r\n } else if(Open) {\r\n const {Key, Sign, Name, Card} = printParams || {};\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //打印次数\r\n API.openPrintMsg ({\r\n content: cloudContents,\r\n printerContent: printerContent,\r\n apiname: 'Open_printMsg',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n }\r\n };\r\n\r\n //小票-商米打印\r\n sunmiPrint = (cloudContents, callback) => {\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n // 检测打印机状态\r\n .updatePrinterState().then(status => {\r\n const { state , message } = status || {};\r\n if(state == 1){\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n .PrintSmallTicketter (cloudContents + '\\n\\n',this.PrintCount)\r\n .then (ret => {\r\n if(ret && ret.state && ret.state == 200){\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:ret.message?ret.message:\"打印失败\"\r\n });\r\n }\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:message?message:\"打印失败\"\r\n });\r\n }\r\n })\r\n };\r\n\r\n sunMiLocalPrint = (cloudContents,deviceName,callback)=>{\r\n window.LocalPrintPlugin.printByDeviceName({deviceName,printContent:cloudContents,PrintCount:this.PrintCount}).then((res)=>{\r\n console.log(\"商米本地打印成功\",res);\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }).catch((error)=>{\r\n console.log(\"商米本地打印失败\",error)\r\n const { message } = error || {}\r\n callback && callback ({\r\n ret:-1,\r\n msg: message ||\"打印失败\"\r\n });\r\n })\r\n }\r\n\r\n\r\n cloudAddList = (printParams, callback) => {\r\n const {Key, Sign, Name, Card} = printParams || {};\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //按照添加一次的\r\n API.openPrinterAddlist ({\r\n content: '',\r\n printerContent,\r\n apiname: 'Open_printerAddlist',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n };\r\n toDecimal2NoZero(x) {\r\n var f = Math.round(x * 100) / 100;\r\n var s = f.toString();\r\n return s;\r\n }\r\n}\r\nexport default PrintUtil;\r\n"]}
|
@@ -43,7 +43,7 @@ var _api = require('./api');
|
|
43
43
|
|
44
44
|
var _api2 = _interopRequireDefault(_api);
|
45
45
|
|
46
|
-
var
|
46
|
+
var _template = require('./printTemplate/template');
|
47
47
|
|
48
48
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
49
49
|
|
@@ -52,8 +52,8 @@ var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail'); /*
|
|
52
52
|
* @version:
|
53
53
|
* @Author: chenlongad
|
54
54
|
* @Date: 2020-11-17 10:02:02
|
55
|
-
* @LastEditors:
|
56
|
-
* @LastEditTime: 2022-03-
|
55
|
+
* @LastEditors: Lixuhan
|
56
|
+
* @LastEditTime: 2022-03-22 19:50:42
|
57
57
|
*/
|
58
58
|
|
59
59
|
|
@@ -94,7 +94,7 @@ var DoNameList = exports.DoNameList = {
|
|
94
94
|
var printDispatch = exports.printDispatch = function printDispatch(doName, ID, otherParams) {
|
95
95
|
return new _promise2.default(function () {
|
96
96
|
var _ref = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(res) {
|
97
|
-
var _getLoginInfo, IdStore, posCode, printEntity, isOpenPrint, checkedPrintType, cloudPrintArguments, _ref2, electronPrint, openCashBox, dto, _ref3, isHorizontalSunMi,
|
97
|
+
var _getLoginInfo, IdStore, posCode, printEntity, isOpenPrint, checkedPrintType, cloudPrintArguments, _ref2, electronPrint, openCashBox, dto, _ref3, isHorizontalSunMi, template, result;
|
98
98
|
|
99
99
|
return _regenerator2.default.wrap(function _callee$(_context) {
|
100
100
|
while (1) {
|
@@ -150,12 +150,12 @@ var printDispatch = exports.printDispatch = function printDispatch(doName, ID, o
|
|
150
150
|
// 开启商米的钱箱
|
151
151
|
syncOpenCashBox(printEntity);
|
152
152
|
}
|
153
|
-
|
153
|
+
template = getTemplateByName(doName);
|
154
154
|
|
155
|
-
cloudPrintArguments = (0, _extends3.default)({}, cloudPrintArguments, { template:
|
155
|
+
cloudPrintArguments = (0, _extends3.default)({}, cloudPrintArguments, { template: template });
|
156
156
|
|
157
157
|
if (checkedPrintType === "4") {
|
158
|
-
cloudPrintArguments = (0, _extends3.default)({}, _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('sunMiLocalPrintArguments'), { isLocalSunMi: true, template:
|
158
|
+
cloudPrintArguments = (0, _extends3.default)({}, _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('sunMiLocalPrintArguments'), { isLocalSunMi: true, template: template });
|
159
159
|
}
|
160
160
|
_context.next = 20;
|
161
161
|
return cloudPrintNoTemplate(doName, ID, cloudPrintArguments || {});
|
@@ -244,7 +244,7 @@ var cloudPrintNoTemplate = function cloudPrintNoTemplate(doName, ID, cloudPrintA
|
|
244
244
|
var printUtil = new _index2.default();
|
245
245
|
if (doName === 'doOnlyRetail') doName = 'doPrint';
|
246
246
|
|
247
|
-
var _ref4 = template || {},
|
247
|
+
var _ref4 = cloudPrintArguments.template || {},
|
248
248
|
printNumber = _ref4.printNumber;
|
249
249
|
|
250
250
|
printUtil.PrintCount = printNumber;
|
@@ -275,12 +275,20 @@ var getTemplateByName = function getTemplateByName(doName) {
|
|
275
275
|
// },
|
276
276
|
// }
|
277
277
|
var currentTemplate = {};
|
278
|
+
var localTemplateObject = _mutantsMicrofx.localStore.get('wirelessPrintSetting') || {};
|
279
|
+
var _localTemplateObject$ = localTemplateObject.retail,
|
280
|
+
retail = _localTemplateObject$ === undefined ? {} : _localTemplateObject$,
|
281
|
+
_localTemplateObject$2 = localTemplateObject.storage,
|
282
|
+
storage = _localTemplateObject$2 === undefined ? {} : _localTemplateObject$2,
|
283
|
+
_localTemplateObject$3 = localTemplateObject.duty,
|
284
|
+
duty = _localTemplateObject$3 === undefined ? {} : _localTemplateObject$3,
|
285
|
+
_localTemplateObject$4 = localTemplateObject.dialy,
|
286
|
+
dialy = _localTemplateObject$4 === undefined ? {} : _localTemplateObject$4;
|
287
|
+
|
288
|
+
if (doName === 'doOnlyRetail') doName = 'doPrint';
|
278
289
|
switch (doName) {
|
279
290
|
case 'doPrint':
|
280
291
|
{
|
281
|
-
var localTemplateObject = _mutantsMicrofx.localStore.get('wirelessPrintSetting') || {};
|
282
|
-
var retail = localTemplateObject.retail;
|
283
|
-
|
284
292
|
var _ref5 = retail || {},
|
285
293
|
_ref5$size = _ref5.size,
|
286
294
|
size = _ref5$size === undefined ? '58' : _ref5$size,
|
@@ -289,32 +297,56 @@ var getTemplateByName = function getTemplateByName(doName) {
|
|
289
297
|
_ref5$number = _ref5.number,
|
290
298
|
number = _ref5$number === undefined ? '1' : _ref5$number;
|
291
299
|
|
292
|
-
currentTemplate =
|
300
|
+
currentTemplate = _template.Template.retail[templateSymbol];
|
293
301
|
currentTemplate.width = size;
|
294
302
|
currentTemplate.printNumber = number;
|
295
303
|
break;
|
296
304
|
}
|
297
305
|
case 'doDialyPrint':
|
298
306
|
{
|
307
|
+
var _ref6 = dialy || {},
|
308
|
+
_ref6$size = _ref6.size,
|
309
|
+
_size = _ref6$size === undefined ? '58' : _ref6$size,
|
310
|
+
_ref6$number = _ref6.number,
|
311
|
+
_number = _ref6$number === undefined ? '1' : _ref6$number;
|
312
|
+
|
299
313
|
var _enumController$getEn = _mutantsUtil.enumController.getEnumOj(),
|
300
314
|
Differentiate = _enumController$getEn.Differentiate;
|
301
315
|
|
302
316
|
var name = Differentiate.COUPON + '\u62B5\u6263';
|
303
|
-
currentTemplate = changeTemplateItemName(
|
317
|
+
currentTemplate = changeTemplateItemName(_template.Template.dialy.dialy_template_one, 'leftPrintMsg', 'CouponsAmount', name);
|
318
|
+
currentTemplate.width = _size;
|
319
|
+
currentTemplate.printNumber = _number;
|
304
320
|
break;
|
305
321
|
}
|
306
322
|
case 'doDutyPrint':
|
307
323
|
{
|
324
|
+
var _ref7 = duty || {},
|
325
|
+
_ref7$size = _ref7.size,
|
326
|
+
_size2 = _ref7$size === undefined ? '58' : _ref7$size,
|
327
|
+
_ref7$number = _ref7.number,
|
328
|
+
_number2 = _ref7$number === undefined ? '1' : _ref7$number;
|
329
|
+
|
308
330
|
var _enumController$getEn2 = _mutantsUtil.enumController.getEnumOj(),
|
309
331
|
_Differentiate = _enumController$getEn2.Differentiate;
|
310
332
|
|
311
333
|
var _name = _Differentiate.COUPON + '\u62B5\u6263';
|
312
|
-
currentTemplate = changeTemplateItemName(
|
334
|
+
currentTemplate = changeTemplateItemName(_template.Template.duty.duty_template_one, 'leftPrintMsg', 'CouponsAmount', _name);
|
335
|
+
currentTemplate.width = _size2;
|
336
|
+
currentTemplate.printNumber = _number2;
|
313
337
|
break;
|
314
338
|
}
|
315
339
|
case 'doStoragePrint':
|
316
340
|
{
|
317
|
-
|
341
|
+
var _ref8 = storage || {},
|
342
|
+
_ref8$size = _ref8.size,
|
343
|
+
_size3 = _ref8$size === undefined ? '58' : _ref8$size,
|
344
|
+
_ref8$number = _ref8.number,
|
345
|
+
_number3 = _ref8$number === undefined ? '1' : _ref8$number;
|
346
|
+
|
347
|
+
currentTemplate = _template.Template.storage.storage_template_one;
|
348
|
+
currentTemplate.width = _size3;
|
349
|
+
currentTemplate.printNumber = _number3;
|
318
350
|
break;
|
319
351
|
}
|
320
352
|
}
|
@@ -323,14 +355,14 @@ var getTemplateByName = function getTemplateByName(doName) {
|
|
323
355
|
};
|
324
356
|
|
325
357
|
var syncOpenCashBox = function () {
|
326
|
-
var
|
327
|
-
var
|
358
|
+
var _ref9 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(printEntity) {
|
359
|
+
var _ref10, CashBoxCmd;
|
328
360
|
|
329
361
|
return _regenerator2.default.wrap(function _callee2$(_context2) {
|
330
362
|
while (1) {
|
331
363
|
switch (_context2.prev = _context2.next) {
|
332
364
|
case 0:
|
333
|
-
|
365
|
+
_ref10 = printEntity || {}, CashBoxCmd = _ref10.CashBoxCmd;
|
334
366
|
return _context2.abrupt('return', window.sunMi_OperatingCashier && window.sunMi_OperatingCashier.OpenDrawer(CashBoxCmd));
|
335
367
|
|
336
368
|
case 2:
|
@@ -342,7 +374,7 @@ var syncOpenCashBox = function () {
|
|
342
374
|
}));
|
343
375
|
|
344
376
|
return function syncOpenCashBox(_x2) {
|
345
|
-
return
|
377
|
+
return _ref9.apply(this, arguments);
|
346
378
|
};
|
347
379
|
}();
|
348
380
|
|
@@ -351,8 +383,8 @@ var getLoginInfo = function getLoginInfo() {
|
|
351
383
|
};
|
352
384
|
|
353
385
|
var isOldOpen = exports.isOldOpen = function isOldOpen(printDetailEntitys) {
|
354
|
-
var
|
355
|
-
isVerticalTouch =
|
386
|
+
var _ref11 = _mutantsUtil.platform || {},
|
387
|
+
isVerticalTouch = _ref11.isVerticalTouch;
|
356
388
|
|
357
389
|
if (isVerticalTouch) return true;
|
358
390
|
var isOpenPrintValue = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('isOpenPrint');
|
@@ -364,13 +396,13 @@ var isOldOpen = exports.isOldOpen = function isOldOpen(printDetailEntitys) {
|
|
364
396
|
}).length > 0;
|
365
397
|
var cloudPrintArguments = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('cloudPrintArguments');
|
366
398
|
|
367
|
-
var
|
368
|
-
cloudOpen =
|
399
|
+
var _ref12 = cloudPrintArguments || {},
|
400
|
+
cloudOpen = _ref12.Open;
|
369
401
|
|
370
402
|
var sunMiLocalPrintArguments = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('sunMiLocalPrintArguments');
|
371
403
|
|
372
|
-
var
|
373
|
-
sunMiOpen =
|
404
|
+
var _ref13 = sunMiLocalPrintArguments || {},
|
405
|
+
sunMiOpen = _ref13.Open;
|
374
406
|
|
375
407
|
return localOrYinMeiOpen || cloudOpen || sunMiOpen;
|
376
408
|
};
|
@@ -378,8 +410,8 @@ var isOldOpen = exports.isOldOpen = function isOldOpen(printDetailEntitys) {
|
|
378
410
|
var getCheckedPrintTypeDefaults = exports.getCheckedPrintTypeDefaults = function getCheckedPrintTypeDefaults() {
|
379
411
|
var hasElectron = _mutantsMicrofx.env.platform === _mutantsMicrofx.env.constant.platform.electron;
|
380
412
|
|
381
|
-
var
|
382
|
-
isVerticalTouch =
|
413
|
+
var _ref14 = _mutantsUtil.platform || {},
|
414
|
+
isVerticalTouch = _ref14.isVerticalTouch;
|
383
415
|
// 打印机选择的类型
|
384
416
|
|
385
417
|
|
@@ -390,11 +422,11 @@ var getCheckedPrintTypeDefaults = exports.getCheckedPrintTypeDefaults = function
|
|
390
422
|
if (hasElectron || !!isVerticalTouch) {
|
391
423
|
checkedPrintType = '1';
|
392
424
|
} else {
|
393
|
-
var
|
394
|
-
Open =
|
425
|
+
var _ref15 = cloudPrintArguments || {},
|
426
|
+
Open = _ref15.Open;
|
395
427
|
|
396
|
-
var
|
397
|
-
sunMiOpen =
|
428
|
+
var _ref16 = sunMiLocalPrintArguments || {},
|
429
|
+
sunMiOpen = _ref16.Open;
|
398
430
|
|
399
431
|
if (Open) {
|
400
432
|
checkedPrintType = '3';
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/printDispatch.js"],"names":["t","i18n","getFixedT","DoNameList","DO_PRINT","DO_ONLY_PRINT","DO_MT_RETAIL","DO_DUTY_PRINT","DO_DIALY_PRINT","DO_STORAGE_PRINT","DO_PROJECT_STORAGE_PRINT","DO_PROJECT_CONSUME_PRINT","DoDesName","doPrint","doMtRetail","doOnlyRetail","doDutyPrint","doDialyPrint","doStoragePrint","doProjectStoragePrint","doProjectConsumePrint","DoPrintGlobalFunction","printDispatch","doName","ID","otherParams","res","getLoginInfo","IdStore","posCode","API","GetPrintInfomation","Idstore","POSCode","printEntity","AutoPrintTicket","isOpenPrint","isOldOpen","PrintDetailEntitys","checkedPrintType","getCheckedPrintTypeDefaults","cloudPrintArguments","localStore","get","electronPrint","openCashBox","dto","platform","isHorizontalSunMi","syncOpenCashBox","template","getTemplateByName","isLocalSunMi","cloudPrintNoTemplate","result","env","constant","electron","Message","warn","global","execute","resolve","printUtil","PrintUtil","printNumber","PrintCount","msg","s","ret","success","error","currentTemplate","localTemplateObject","retail","size","templateSymbol","number","Template","width","enumController","getEnumOj","Differentiate","name","COUPON","changeTemplateItemName","dialy","dialy_template_one","duty","duty_template_one","storage","storage_template_one","CashBoxCmd","window","sunMi_OperatingCashier","OpenDrawer","stores","user","options","printDetailEntitys","isVerticalTouch","isOpenPrintValue","localOrYinMeiOpen","filter","item","IsEnablePrinter","length","cloudOpen","Open","sunMiLocalPrintArguments","sunMiOpen","hasElectron","type","attribute","value","JSON","parse","templateBody","body","map"],"mappings":"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","file":"printDispatch.js","sourcesContent":["/*\r\n * @Descripttion: \r\n * @version: \r\n * @Author: chenlongad\r\n * @Date: 2020-11-17 10:02:02\r\n * @LastEditors: chenlongad\r\n * @LastEditTime: 2022-03-17 18:29:14\r\n */\r\nimport { platform } from 'mutants-util';\r\nimport { stores, localStore, env, i18n } from 'mutants-microfx';\r\nimport { PosInitData } from 'tplus-poslogin';\r\nimport PrintUtil from './index'\r\nimport Message from '../message';\r\nconst t = i18n.getFixedT(null, 'newretail');\r\nimport API from './api';\r\nimport { Template } from './printTemplate/template'\r\nimport {enumController} from 'mutants-util'\r\n\r\n// 打印调用方法对照\r\nexport const DoNameList = {\r\n DO_PRINT:\"doPrint\",\r\n DO_ONLY_PRINT:\"doOnlyRetail\",\r\n DO_MT_RETAIL:\"doMtRetail\",\r\n DO_DUTY_PRINT:\"doDutyPrint\",\r\n DO_DIALY_PRINT:\"doDialyPrint\",\r\n DO_STORAGE_PRINT:\"doStoragePrint\",\r\n DO_PROJECT_STORAGE_PRINT:\"doProjectStoragePrint\",\r\n DO_PROJECT_CONSUME_PRINT:\"doProjectConsumePrint\"\r\n}\r\n\r\n// 打印调用方法名字对照\r\nconst DoDesName = {\r\n doPrint:\"小票\",\r\n doMtRetail:\"美团\",\r\n doOnlyRetail:\"小票\",\r\n doDutyPrint:\"交班\",\r\n doDialyPrint:\"日结\",\r\n doStoragePrint:\"储值\",\r\n doProjectStoragePrint:\"项目储值\",\r\n doProjectConsumePrint:\"扣次\"\r\n}\r\n\r\n// window打印调用方法对照\r\nconst DoPrintGlobalFunction = {\r\n doPrint:\"RetailPrintProcessBlock\",\r\n doOnlyRetail:\"OnlyRetailPrintProcess\",\r\n doMtRetail:\"MeiTuanPrintProcessBlock\",\r\n doDutyPrint:\"printShiftVoucher\",\r\n doDialyPrint:\"printDailyVoucher\",\r\n doStoragePrint:\"StoragePrintProcessBlock\",\r\n doProjectStoragePrint:\"ProjectStoragePrintProcessBlock\",\r\n doProjectConsumePrint:\"ProjectConsumePrintProcessBlock\"\r\n}\r\n\r\n\r\nexport const printDispatch = (doName,ID,otherParams) => {\r\n return new Promise(async (res) => {\r\n const { IdStore, posCode } = getLoginInfo();\r\n const printEntity = await API.GetPrintInfomation({\r\n Idstore: IdStore,\r\n POSCode: posCode\r\n });\r\n // 开启结算完自动打印小票的选项 只判断是结算小票打印 其他的打印方式继续打印\r\n if (!printEntity.AutoPrintTicket && doName == DoNameList.DO_PRINT) {\r\n return res();\r\n }\r\n // 是否开启打印机\r\n const isOpenPrint = isOldOpen(printEntity.PrintDetailEntitys);\r\n\r\n // 获取打印机开启的类型\r\n let checkedPrintType = getCheckedPrintTypeDefaults()\r\n\r\n if(!isOpenPrint) checkedPrintType = null;\r\n\r\n // 获取云打印参数\r\n let cloudPrintArguments = localStore && localStore.get('cloudPrintArguments');\r\n\r\n let { electronPrint,openCashBox,dto} = otherParams || {};\r\n if(!dto){\r\n dto={};\r\n dto.Idstore = PosInitData('storeID');\r\n dto.POSCode = PosInitData('posCode');\r\n }\r\n\r\n const { isHorizontalSunMi } = platform || {};\r\n if (isOpenPrint && (checkedPrintType === \"3\" || checkedPrintType === \"4\" )|| !checkedPrintType && !!isHorizontalSunMi) {\r\n // 1.如果未开启打印并且是商米平台 使用自带的打印机 2如果开启打印并且使用飞蛾打印机 3 // 配置商米的外接打印机或者内置打印机\r\n if(!!isHorizontalSunMi && openCashBox){\r\n // 开启商米的钱箱\r\n syncOpenCashBox(printEntity) \r\n }\r\n const template = getTemplateByName(doName)\r\n cloudPrintArguments = {...cloudPrintArguments,template}\r\n\r\n if(checkedPrintType === \"4\"){\r\n cloudPrintArguments = {...localStore && localStore.get('sunMiLocalPrintArguments'),isLocalSunMi:true,template};\r\n }\r\n let result = await cloudPrintNoTemplate(doName, ID, cloudPrintArguments || {});\r\n res(result);\r\n } else if (isOpenPrint && (checkedPrintType === \"2\" || checkedPrintType === \"1\")) {\r\n if (env.platform !== env.constant.platform.electron && checkedPrintType === \"1\") {//获取当前是否处于Electron环境中\r\n Message.warn(t('打印小票只能在客户端中执行'))\r\n return res();\r\n }\r\n switch (doName) {\r\n case DoNameList.DO_PRINT:\r\n case DoNameList.DO_MT_RETAIL:\r\n case DoNameList.DO_ONLY_PRINT:\r\n case DoNameList.DO_DUTY_PRINT:\r\n case DoNameList.DO_DIALY_PRINT:\r\n case DoNameList.DO_STORAGE_PRINT:\r\n case DoNameList.DO_PROJECT_STORAGE_PRINT:\r\n case DoNameList.DO_PROJECT_CONSUME_PRINT: {\r\n if (global[DoPrintGlobalFunction[doName]]) {\r\n await global[DoPrintGlobalFunction[doName]].execute(ID,dto, openCashBox);\r\n return res();\r\n } else {\r\n if(!electronPrint){\r\n Message.warn(t('打印小票只能在客户端中执行'))\r\n return res();\r\n }\r\n }\r\n }\r\n }\r\n \r\n if (electronPrint) await electronPrint()\r\n res();\r\n }else {\r\n res();\r\n }\r\n })\r\n}\r\n\r\nconst cloudPrintNoTemplate = (doName,ID,cloudPrintArguments) => {\r\n return new Promise((resolve) => {\r\n const printUtil = new PrintUtil();\r\n if(doName === 'doOnlyRetail') doName = 'doPrint';\r\n const { printNumber } = template || {};\r\n printUtil.PrintCount = printNumber;\r\n printUtil[doName](cloudPrintArguments, ID, s => {\r\n const { msg, ret } = s;\r\n if (ret === 0) {\r\n Message.success(t(`打印${DoDesName[doName]}小票成功。`))\r\n }else if(ret === -1){\r\n Message.error(t(msg))\r\n } else {\r\n Message.error(t(`打印${DoDesName[doName]}小票失败。`))\r\n }\r\n resolve();\r\n })\r\n })\r\n}\r\n\r\nconst getTemplateByName = (doName) => {\r\n \r\n // const localTemplateObject = {\r\n // retail:{\r\n // name:'模板1',\r\n // size: 58,\r\n // number:1,\r\n // templateSymbol:\"retail_template_one\",\r\n // },\r\n // }\r\n let currentTemplate = {}\r\n switch(doName) {\r\n case 'doPrint': {\r\n const localTemplateObject = localStore.get('wirelessPrintSetting') || {}\r\n const { retail } = localTemplateObject;\r\n const { size = '58' , templateSymbol = 'retail_template_one', number = '1'} = retail || {}\r\n currentTemplate = Template.retail[templateSymbol];\r\n currentTemplate.width = size;\r\n currentTemplate.printNumber = number;\r\n break;\r\n }\r\n case 'doDialyPrint': {\r\n const { Differentiate } = enumController.getEnumOj();\r\n const name = `${Differentiate.COUPON}抵扣`\r\n currentTemplate = changeTemplateItemName(Template.dialy.dialy_template_one, 'leftPrintMsg', 'CouponsAmount', name)\r\n break\r\n }\r\n case 'doDutyPrint': {\r\n const { Differentiate } = enumController.getEnumOj();\r\n const name = `${Differentiate.COUPON}抵扣`\r\n currentTemplate = changeTemplateItemName(Template.duty.duty_template_one, 'leftPrintMsg', 'CouponsAmount', name)\r\n break\r\n }\r\n case 'doStoragePrint': {\r\n currentTemplate = Template.storage.storage_template_one\r\n break\r\n }\r\n }\r\n \r\n return currentTemplate;\r\n}\r\n\r\n\r\nconst syncOpenCashBox = async(printEntity) =>{\r\n const { CashBoxCmd } = printEntity || {}\r\n return window.sunMi_OperatingCashier && window.sunMi_OperatingCashier.OpenDrawer(CashBoxCmd);\r\n}\r\n\r\nconst getLoginInfo = () => {\r\n return stores.user.options.get('loginInfo');\r\n}\r\n\r\nexport const isOldOpen = (printDetailEntitys) => {\r\n const { isVerticalTouch } = platform || {}\r\n if(isVerticalTouch) return true;\r\n const isOpenPrintValue = localStore && localStore.get('isOpenPrint');\r\n if(isOpenPrintValue !==null){\r\n return isOpenPrintValue === \"true\";\r\n }\r\n const localOrYinMeiOpen = printDetailEntitys && printDetailEntitys.filter((item)=>{\r\n return item.IsEnablePrinter === true\r\n }).length > 0;\r\n const cloudPrintArguments = localStore && localStore.get('cloudPrintArguments');\r\n const { Open:cloudOpen } = cloudPrintArguments || {};\r\n const sunMiLocalPrintArguments = localStore && localStore.get('sunMiLocalPrintArguments');\r\n const { Open:sunMiOpen } = sunMiLocalPrintArguments || {};\r\n return localOrYinMeiOpen || cloudOpen || sunMiOpen;\r\n}\r\n\r\nexport const getCheckedPrintTypeDefaults = () => {\r\n const hasElectron = (env.platform === env.constant.platform.electron);\r\n const { isVerticalTouch } = platform || {}\r\n // 打印机选择的类型\r\n let checkedPrintType = localStore && localStore.get('checkedPrintType');\r\n const cloudPrintArguments = localStore && localStore.get('cloudPrintArguments');\r\n const sunMiLocalPrintArguments = localStore && localStore.get('sunMiLocalPrintArguments');\r\n if(checkedPrintType === null) {\r\n if(hasElectron || !!isVerticalTouch){\r\n checkedPrintType = '1'\r\n }else {\r\n const { Open } = cloudPrintArguments || {};\r\n const { Open:sunMiOpen } = sunMiLocalPrintArguments || {};\r\n if(Open){\r\n checkedPrintType = '3'\r\n }else if(sunMiOpen){\r\n checkedPrintType = '4'\r\n }else{\r\n checkedPrintType = '3'\r\n // checkedPrintType = '2' 后续改回这个 放开映美打印机后\r\n }\r\n }\r\n }\r\n return checkedPrintType\r\n}\r\n\r\nconst changeTemplateItemName = (template, type, attribute, value) => {\r\n const currentTemplate = JSON.parse(JSON.stringify(template))\r\n let { body: templateBody } = currentTemplate\r\n templateBody = templateBody.map(item => {\r\n if (item.type == type && item.body && item.body.length) {\r\n item.body = item.body.map(body => {\r\n if (body && body.attribute == attribute) {\r\n body.name = value\r\n } \r\n return body\r\n })\r\n }\r\n return item\r\n })\r\n currentTemplate.body = templateBody\r\n return currentTemplate\r\n}"]}
|
1
|
+
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/printDispatch.js"],"names":["t","i18n","getFixedT","DoNameList","DO_PRINT","DO_ONLY_PRINT","DO_MT_RETAIL","DO_DUTY_PRINT","DO_DIALY_PRINT","DO_STORAGE_PRINT","DO_PROJECT_STORAGE_PRINT","DO_PROJECT_CONSUME_PRINT","DoDesName","doPrint","doMtRetail","doOnlyRetail","doDutyPrint","doDialyPrint","doStoragePrint","doProjectStoragePrint","doProjectConsumePrint","DoPrintGlobalFunction","printDispatch","doName","ID","otherParams","res","getLoginInfo","IdStore","posCode","API","GetPrintInfomation","Idstore","POSCode","printEntity","AutoPrintTicket","isOpenPrint","isOldOpen","PrintDetailEntitys","checkedPrintType","getCheckedPrintTypeDefaults","cloudPrintArguments","localStore","get","electronPrint","openCashBox","dto","platform","isHorizontalSunMi","syncOpenCashBox","template","getTemplateByName","isLocalSunMi","cloudPrintNoTemplate","result","env","constant","electron","Message","warn","global","execute","resolve","printUtil","PrintUtil","printNumber","PrintCount","msg","s","ret","success","error","currentTemplate","localTemplateObject","retail","storage","duty","dialy","size","templateSymbol","number","Template","width","enumController","getEnumOj","Differentiate","name","COUPON","changeTemplateItemName","dialy_template_one","duty_template_one","storage_template_one","CashBoxCmd","window","sunMi_OperatingCashier","OpenDrawer","stores","user","options","printDetailEntitys","isVerticalTouch","isOpenPrintValue","localOrYinMeiOpen","filter","item","IsEnablePrinter","length","cloudOpen","Open","sunMiLocalPrintArguments","sunMiOpen","hasElectron","type","attribute","value","JSON","parse","templateBody","body","map"],"mappings":"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","file":"printDispatch.js","sourcesContent":["/*\r\n * @Descripttion: \r\n * @version: \r\n * @Author: chenlongad\r\n * @Date: 2020-11-17 10:02:02\r\n * @LastEditors: Lixuhan\r\n * @LastEditTime: 2022-03-22 19:50:42\r\n */\r\nimport { platform } from 'mutants-util';\r\nimport { stores, localStore, env, i18n } from 'mutants-microfx';\r\nimport { PosInitData } from 'tplus-poslogin';\r\nimport PrintUtil from './index'\r\nimport Message from '../message';\r\nconst t = i18n.getFixedT(null, 'newretail');\r\nimport API from './api';\r\nimport { Template } from './printTemplate/template'\r\nimport {enumController} from 'mutants-util'\r\n\r\n// 打印调用方法对照\r\nexport const DoNameList = {\r\n DO_PRINT:\"doPrint\",\r\n DO_ONLY_PRINT:\"doOnlyRetail\",\r\n DO_MT_RETAIL:\"doMtRetail\",\r\n DO_DUTY_PRINT:\"doDutyPrint\",\r\n DO_DIALY_PRINT:\"doDialyPrint\",\r\n DO_STORAGE_PRINT:\"doStoragePrint\",\r\n DO_PROJECT_STORAGE_PRINT:\"doProjectStoragePrint\",\r\n DO_PROJECT_CONSUME_PRINT:\"doProjectConsumePrint\"\r\n}\r\n\r\n// 打印调用方法名字对照\r\nconst DoDesName = {\r\n doPrint:\"小票\",\r\n doMtRetail:\"美团\",\r\n doOnlyRetail:\"小票\",\r\n doDutyPrint:\"交班\",\r\n doDialyPrint:\"日结\",\r\n doStoragePrint:\"储值\",\r\n doProjectStoragePrint:\"项目储值\",\r\n doProjectConsumePrint:\"扣次\"\r\n}\r\n\r\n// window打印调用方法对照\r\nconst DoPrintGlobalFunction = {\r\n doPrint:\"RetailPrintProcessBlock\",\r\n doOnlyRetail:\"OnlyRetailPrintProcess\",\r\n doMtRetail:\"MeiTuanPrintProcessBlock\",\r\n doDutyPrint:\"printShiftVoucher\",\r\n doDialyPrint:\"printDailyVoucher\",\r\n doStoragePrint:\"StoragePrintProcessBlock\",\r\n doProjectStoragePrint:\"ProjectStoragePrintProcessBlock\",\r\n doProjectConsumePrint:\"ProjectConsumePrintProcessBlock\"\r\n}\r\n\r\n\r\nexport const printDispatch = (doName,ID,otherParams) => {\r\n return new Promise(async (res) => {\r\n const { IdStore, posCode } = getLoginInfo();\r\n const printEntity = await API.GetPrintInfomation({\r\n Idstore: IdStore,\r\n POSCode: posCode\r\n });\r\n // 开启结算完自动打印小票的选项 只判断是结算小票打印 其他的打印方式继续打印\r\n if (!printEntity.AutoPrintTicket && doName == DoNameList.DO_PRINT) {\r\n return res();\r\n }\r\n // 是否开启打印机\r\n const isOpenPrint = isOldOpen(printEntity.PrintDetailEntitys);\r\n\r\n // 获取打印机开启的类型\r\n let checkedPrintType = getCheckedPrintTypeDefaults()\r\n\r\n if(!isOpenPrint) checkedPrintType = null;\r\n\r\n // 获取云打印参数\r\n let cloudPrintArguments = localStore && localStore.get('cloudPrintArguments');\r\n\r\n let { electronPrint,openCashBox,dto} = otherParams || {};\r\n if(!dto){\r\n dto={};\r\n dto.Idstore = PosInitData('storeID');\r\n dto.POSCode = PosInitData('posCode');\r\n }\r\n\r\n const { isHorizontalSunMi } = platform || {};\r\n if (isOpenPrint && (checkedPrintType === \"3\" || checkedPrintType === \"4\" )|| !checkedPrintType && !!isHorizontalSunMi) {\r\n // 1.如果未开启打印并且是商米平台 使用自带的打印机 2如果开启打印并且使用飞蛾打印机 3 // 配置商米的外接打印机或者内置打印机\r\n if(!!isHorizontalSunMi && openCashBox){\r\n // 开启商米的钱箱\r\n syncOpenCashBox(printEntity) \r\n }\r\n const template = getTemplateByName(doName)\r\n cloudPrintArguments = {...cloudPrintArguments,template}\r\n\r\n if(checkedPrintType === \"4\"){\r\n cloudPrintArguments = {...localStore && localStore.get('sunMiLocalPrintArguments'),isLocalSunMi:true,template};\r\n }\r\n let result = await cloudPrintNoTemplate(doName, ID, cloudPrintArguments || {});\r\n res(result);\r\n } else if (isOpenPrint && (checkedPrintType === \"2\" || checkedPrintType === \"1\")) {\r\n if (env.platform !== env.constant.platform.electron && checkedPrintType === \"1\") {//获取当前是否处于Electron环境中\r\n Message.warn(t('打印小票只能在客户端中执行'))\r\n return res();\r\n }\r\n switch (doName) {\r\n case DoNameList.DO_PRINT:\r\n case DoNameList.DO_MT_RETAIL:\r\n case DoNameList.DO_ONLY_PRINT:\r\n case DoNameList.DO_DUTY_PRINT:\r\n case DoNameList.DO_DIALY_PRINT:\r\n case DoNameList.DO_STORAGE_PRINT:\r\n case DoNameList.DO_PROJECT_STORAGE_PRINT:\r\n case DoNameList.DO_PROJECT_CONSUME_PRINT: {\r\n if (global[DoPrintGlobalFunction[doName]]) {\r\n await global[DoPrintGlobalFunction[doName]].execute(ID,dto, openCashBox);\r\n return res();\r\n } else {\r\n if(!electronPrint){\r\n Message.warn(t('打印小票只能在客户端中执行'))\r\n return res();\r\n }\r\n }\r\n }\r\n }\r\n \r\n if (electronPrint) await electronPrint()\r\n res();\r\n }else {\r\n res();\r\n }\r\n })\r\n}\r\n\r\nconst cloudPrintNoTemplate = (doName,ID,cloudPrintArguments) => {\r\n return new Promise((resolve) => {\r\n const printUtil = new PrintUtil();\r\n if(doName === 'doOnlyRetail') doName = 'doPrint';\r\n const { printNumber } = cloudPrintArguments.template || {};\r\n printUtil.PrintCount = printNumber;\r\n printUtil[doName](cloudPrintArguments, ID, s => {\r\n const { msg, ret } = s;\r\n if (ret === 0) {\r\n Message.success(t(`打印${DoDesName[doName]}小票成功。`))\r\n }else if(ret === -1){\r\n Message.error(t(msg))\r\n } else {\r\n Message.error(t(`打印${DoDesName[doName]}小票失败。`))\r\n }\r\n resolve();\r\n })\r\n })\r\n}\r\n\r\nconst getTemplateByName = (doName) => {\r\n \r\n // const localTemplateObject = {\r\n // retail:{\r\n // name:'模板1',\r\n // size: 58,\r\n // number:1,\r\n // templateSymbol:\"retail_template_one\",\r\n // },\r\n // }\r\n let currentTemplate = {}\r\n const localTemplateObject = localStore.get('wirelessPrintSetting') || {}\r\n const { retail = {}, storage = {}, duty = {}, dialy = {} } = localTemplateObject\r\n if(doName === 'doOnlyRetail') doName = 'doPrint';\r\n switch(doName) {\r\n case 'doPrint': {\r\n const { size = '58' , templateSymbol = 'retail_template_one', number = '1'} = retail || {}\r\n currentTemplate = Template.retail[templateSymbol];\r\n currentTemplate.width = size;\r\n currentTemplate.printNumber = number;\r\n break;\r\n }\r\n case 'doDialyPrint': {\r\n const { size = '58', number = '1'} = dialy || {}\r\n const { Differentiate } = enumController.getEnumOj();\r\n const name = `${Differentiate.COUPON}抵扣`\r\n currentTemplate = changeTemplateItemName(Template.dialy.dialy_template_one, 'leftPrintMsg', 'CouponsAmount', name)\r\n currentTemplate.width = size;\r\n currentTemplate.printNumber = number;\r\n break\r\n }\r\n case 'doDutyPrint': {\r\n const { size = '58', number = '1'} = duty || {}\r\n const { Differentiate } = enumController.getEnumOj();\r\n const name = `${Differentiate.COUPON}抵扣`\r\n currentTemplate = changeTemplateItemName(Template.duty.duty_template_one, 'leftPrintMsg', 'CouponsAmount', name)\r\n currentTemplate.width = size;\r\n currentTemplate.printNumber = number;\r\n break\r\n }\r\n case 'doStoragePrint': {\r\n const { size = '58', number = '1'} = storage || {}\r\n currentTemplate = Template.storage.storage_template_one\r\n currentTemplate.width = size;\r\n currentTemplate.printNumber = number;\r\n break\r\n }\r\n }\r\n \r\n return currentTemplate;\r\n}\r\n\r\n\r\nconst syncOpenCashBox = async(printEntity) =>{\r\n const { CashBoxCmd } = printEntity || {}\r\n return window.sunMi_OperatingCashier && window.sunMi_OperatingCashier.OpenDrawer(CashBoxCmd);\r\n}\r\n\r\nconst getLoginInfo = () => {\r\n return stores.user.options.get('loginInfo');\r\n}\r\n\r\nexport const isOldOpen = (printDetailEntitys) => {\r\n const { isVerticalTouch } = platform || {}\r\n if(isVerticalTouch) return true;\r\n const isOpenPrintValue = localStore && localStore.get('isOpenPrint');\r\n if(isOpenPrintValue !==null){\r\n return isOpenPrintValue === \"true\";\r\n }\r\n const localOrYinMeiOpen = printDetailEntitys && printDetailEntitys.filter((item)=>{\r\n return item.IsEnablePrinter === true\r\n }).length > 0;\r\n const cloudPrintArguments = localStore && localStore.get('cloudPrintArguments');\r\n const { Open:cloudOpen } = cloudPrintArguments || {};\r\n const sunMiLocalPrintArguments = localStore && localStore.get('sunMiLocalPrintArguments');\r\n const { Open:sunMiOpen } = sunMiLocalPrintArguments || {};\r\n return localOrYinMeiOpen || cloudOpen || sunMiOpen;\r\n}\r\n\r\nexport const getCheckedPrintTypeDefaults = () => {\r\n const hasElectron = (env.platform === env.constant.platform.electron);\r\n const { isVerticalTouch } = platform || {}\r\n // 打印机选择的类型\r\n let checkedPrintType = localStore && localStore.get('checkedPrintType');\r\n const cloudPrintArguments = localStore && localStore.get('cloudPrintArguments');\r\n const sunMiLocalPrintArguments = localStore && localStore.get('sunMiLocalPrintArguments');\r\n if(checkedPrintType === null) {\r\n if(hasElectron || !!isVerticalTouch){\r\n checkedPrintType = '1'\r\n }else {\r\n const { Open } = cloudPrintArguments || {};\r\n const { Open:sunMiOpen } = sunMiLocalPrintArguments || {};\r\n if(Open){\r\n checkedPrintType = '3'\r\n }else if(sunMiOpen){\r\n checkedPrintType = '4'\r\n }else{\r\n checkedPrintType = '3'\r\n // checkedPrintType = '2' 后续改回这个 放开映美打印机后\r\n }\r\n }\r\n }\r\n return checkedPrintType\r\n}\r\n\r\nconst changeTemplateItemName = (template, type, attribute, value) => {\r\n const currentTemplate = JSON.parse(JSON.stringify(template))\r\n let { body: templateBody } = currentTemplate\r\n templateBody = templateBody.map(item => {\r\n if (item.type == type && item.body && item.body.length) {\r\n item.body = item.body.map(body => {\r\n if (body && body.attribute == attribute) {\r\n body.name = value\r\n } \r\n return body\r\n })\r\n }\r\n return item\r\n })\r\n currentTemplate.body = templateBody\r\n return currentTemplate\r\n}"]}
|