tplus-components-touch 3.41.3 → 3.41.6

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.
Files changed (38) hide show
  1. package/dist/components/billSearch/index.js +16 -39
  2. package/dist/components/billSearch/index.js.map +1 -1
  3. package/dist/components/cloudPrint/BTPrintFormatUtil.js +2 -2
  4. package/dist/components/cloudPrint/BTPrintFormatUtil.js.map +1 -1
  5. package/dist/components/cloudPrint/index.js +891 -631
  6. package/dist/components/cloudPrint/index.js.map +1 -1
  7. package/dist/components/cloudPrint/printDispatch.js +132 -41
  8. package/dist/components/cloudPrint/printDispatch.js.map +1 -1
  9. package/dist/components/cloudPrint/printTemplate/dialy_one.json +239 -0
  10. package/dist/components/cloudPrint/printTemplate/duty_one.json +239 -0
  11. package/dist/components/cloudPrint/printTemplate/retail_one.json +208 -0
  12. package/dist/components/cloudPrint/printTemplate/retail_two.json +220 -0
  13. package/dist/components/cloudPrint/printTemplate/storage_one.json +129 -0
  14. package/dist/components/cloudPrint/printTemplate/template.js +52 -0
  15. package/dist/components/cloudPrint/printTemplate/template.js.map +1 -0
  16. package/dist/components/commonForm/formControl/index.js +1 -1
  17. package/dist/components/commonForm/formControl/index.js.map +1 -1
  18. package/dist/components/deliverySearch/index.js +6 -2
  19. package/dist/components/deliverySearch/index.js.map +1 -1
  20. package/dist/components/hotKey/index.js +5 -0
  21. package/dist/components/hotKey/index.js.map +1 -1
  22. package/dist/components/inventorySearch/tab.js +7 -2
  23. package/dist/components/inventorySearch/tab.js.map +1 -1
  24. package/dist/components/loading/loadingContent.js +6 -3
  25. package/dist/components/loading/loadingContent.js.map +1 -1
  26. package/dist/components/message/index.js +4 -5
  27. package/dist/components/message/index.js.map +1 -1
  28. package/dist/components/notification/index.js +11 -12
  29. package/dist/components/notification/index.js.map +1 -1
  30. package/dist/components/progressState/EmptyAndErrorView.js +5 -7
  31. package/dist/components/progressState/EmptyAndErrorView.js.map +1 -1
  32. package/dist/components/settlement/settlement.js +105 -113
  33. package/dist/components/settlement/settlement.js.map +1 -1
  34. package/dist/components/settlement/settlementStore.js +16 -26
  35. package/dist/components/settlement/settlementStore.js.map +1 -1
  36. package/dist/components/touchTable/index.js +5 -3
  37. package/dist/components/touchTable/index.js.map +1 -1
  38. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/cloudPrint/index.js"],"names":["PrintUtil","BTPrintEntity","BTPrintContent","PrintCount","lineSize","Precision","Quantity","Price","TaxAmount","platform","isHorizontalSunMi","enumController","getEnumOj","Differentiate","state","IdsettleStyleList","x","f","Math","round","s","toString","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","quantity","toDecimal2NoZero","item","Unit","Name","taxPrice","TaxPrice","taxAmount","tool","formatPrecision","push","Inventory","constr","loadBTPrintData","doDialyPrint","getDialyPrintDataInfo","loadBTDutyAndDialyPrintData","doDutyPrint","getDutyPrintDataInfo","doStoragePrint","getStoragePrintDataInfo","StorageDetails","MadeDate","CardCode","StorageMutiSettleDetails","Person","loadBTStoragePrintData","templateContent","printEntity","params","Mobilephone","MemberName","StorageName","ThisStorageAmount","ThisPresentAmount","AfterBalanceStorage","headerMap","footerMap1","footerMap2","set","format","forEach","StorageAmount","SettleStyle","BTPrintFormatUtil","setLineByteSize","printTitle","size","leftPrintMsg","type","POSCode","POS","POSName","WorkingDate","StartDate","ShiftDate","DailyDate","RetailAmount","ReturnAmount","SalesStorageTotalAmount","CashOutAmount","CouponsDeduct","CouponsAmount","OnlineAmount","TotalCustom","InitialAmount","ImprestAmount","ImprestBalanceAmount","ShiftVoucherDetails","DailyDetails","WorkingTime","ShiftTime","StartTime","DailyTime","Memo","detailTopList","detailContentList","COUPON","Caption","IsTitle","IsFoot","DailyDetailsCommon","OrigAmount","detailsOb","MemberDepositAmount","drawSeparateLine","printStarTitle","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","items","printMenuMSG","drawSeparateLine2","spaceCenterPrintMsg","paymentTypeTopList","paymentTypeDetailList","Telephone","phList","index","pBodyValueList","Amount","cloudContents","Open","Key","Sign","Card","isLocalSunMi","sunMiLocalPrint","console","log","sunmiPrint","arr","printerContent","join","openPrintMsg","content","apiname","deviceCode","times","data","window","sunMi_OperatingCashier","updatePrinterState","status","message","PrintSmallTicketter","msg","deviceName","LocalPrintPlugin","printByDeviceName","printContent","res","catch","error","openPrinterAddlist"],"mappings":"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","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\n\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 let quantity = this.toDecimal2NoZero (item.Quantity) \r\n // tool.formatPrecision (\r\n // item.Quantity,\r\n // this.Precision.Quantity\r\n // );\r\n quantity += item.Unit.Name;\r\n let taxPrice = this.toDecimal2NoZero (item.TaxPrice);\r\n // item.TaxPrice,\r\n // this.Precision.Price\r\n let taxAmount = tool.formatPrecision (\r\n item.TaxAmount,\r\n this.Precision.TaxAmount\r\n );\r\n details.push ([item.Inventory.Name, quantity, taxPrice, taxAmount]);\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 (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 (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 {\r\n Store,\r\n StorageDetails,\r\n MadeDate,\r\n Member,\r\n CardCode,\r\n StorageMutiSettleDetails,\r\n CreatedTime,\r\n Person,\r\n } = ret || {};\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n let constr = _this.loadBTStoragePrintData ({\r\n Store,\r\n StorageDetails,\r\n MadeDate,\r\n Member,\r\n CardCode,\r\n StorageMutiSettleDetails,\r\n CreatedTime,\r\n Person,\r\n });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n //储值打印\r\n loadBTStoragePrintData = 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 = (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 //正常打印机(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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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"]}
@@ -5,6 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getCheckedPrintTypeDefaults = exports.isOldOpen = exports.printDispatch = exports.DoNameList = undefined;
7
7
 
8
+ var _stringify = require('babel-runtime/core-js/json/stringify');
9
+
10
+ var _stringify2 = _interopRequireDefault(_stringify);
11
+
8
12
  var _regenerator = require('babel-runtime/regenerator');
9
13
 
10
14
  var _regenerator2 = _interopRequireDefault(_regenerator);
@@ -39,6 +43,8 @@ var _api = require('./api');
39
43
 
40
44
  var _api2 = _interopRequireDefault(_api);
41
45
 
46
+ var _template2 = require('./printTemplate/template');
47
+
42
48
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
43
49
 
44
50
  var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail'); /*
@@ -47,7 +53,7 @@ var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail'); /*
47
53
  * @Author: chenlongad
48
54
  * @Date: 2020-11-17 10:02:02
49
55
  * @LastEditors: chenlongad
50
- * @LastEditTime: 2022-03-14 10:38:12
56
+ * @LastEditTime: 2022-03-17 18:29:14
51
57
  */
52
58
 
53
59
 
@@ -88,7 +94,7 @@ var DoNameList = exports.DoNameList = {
88
94
  var printDispatch = exports.printDispatch = function printDispatch(doName, ID, otherParams) {
89
95
  return new _promise2.default(function () {
90
96
  var _ref = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(res) {
91
- var _getLoginInfo, IdStore, posCode, printEntity, isOpenPrint, checkedPrintType, cloudPrintArguments, _ref2, electronPrint, openCashBox, dto, _ref3, isHorizontalSunMi, result;
97
+ var _getLoginInfo, IdStore, posCode, printEntity, isOpenPrint, checkedPrintType, cloudPrintArguments, _ref2, electronPrint, openCashBox, dto, _ref3, isHorizontalSunMi, _template, result;
92
98
 
93
99
  return _regenerator2.default.wrap(function _callee$(_context) {
94
100
  while (1) {
@@ -135,7 +141,7 @@ var printDispatch = exports.printDispatch = function printDispatch(doName, ID, o
135
141
  _ref3 = _mutantsUtil.platform || {}, isHorizontalSunMi = _ref3.isHorizontalSunMi;
136
142
 
137
143
  if (!(isOpenPrint && (checkedPrintType === "3" || checkedPrintType === "4") || !checkedPrintType && !!isHorizontalSunMi)) {
138
- _context.next = 22;
144
+ _context.next = 24;
139
145
  break;
140
146
  }
141
147
 
@@ -144,28 +150,31 @@ var printDispatch = exports.printDispatch = function printDispatch(doName, ID, o
144
150
  // 开启商米的钱箱
145
151
  syncOpenCashBox(printEntity);
146
152
  }
153
+ _template = getTemplateByName(doName);
154
+
155
+ cloudPrintArguments = (0, _extends3.default)({}, cloudPrintArguments, { template: _template });
147
156
 
148
157
  if (checkedPrintType === "4") {
149
- cloudPrintArguments = (0, _extends3.default)({}, _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('sunMiLocalPrintArguments'), { isLocalSunMi: true });
158
+ cloudPrintArguments = (0, _extends3.default)({}, _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('sunMiLocalPrintArguments'), { isLocalSunMi: true, template: _template });
150
159
  }
151
- _context.next = 18;
160
+ _context.next = 20;
152
161
  return cloudPrintNoTemplate(doName, ID, cloudPrintArguments || {});
153
162
 
154
- case 18:
163
+ case 20:
155
164
  result = _context.sent;
156
165
 
157
166
  res(result);
158
- _context.next = 45;
167
+ _context.next = 47;
159
168
  break;
160
169
 
161
- case 22:
170
+ case 24:
162
171
  if (!(isOpenPrint && (checkedPrintType === "2" || checkedPrintType === "1"))) {
163
- _context.next = 44;
172
+ _context.next = 46;
164
173
  break;
165
174
  }
166
175
 
167
176
  if (!(_mutantsMicrofx.env.platform !== _mutantsMicrofx.env.constant.platform.electron && checkedPrintType === "1")) {
168
- _context.next = 26;
177
+ _context.next = 28;
169
178
  break;
170
179
  }
171
180
 
@@ -173,50 +182,50 @@ var printDispatch = exports.printDispatch = function printDispatch(doName, ID, o
173
182
  _message2.default.warn(t('打印小票只能在客户端中执行'));
174
183
  return _context.abrupt('return', res());
175
184
 
176
- case 26:
185
+ case 28:
177
186
  _context.t0 = doName;
178
- _context.next = _context.t0 === DoNameList.DO_PRINT ? 29 : _context.t0 === DoNameList.DO_MT_RETAIL ? 29 : _context.t0 === DoNameList.DO_ONLY_PRINT ? 29 : _context.t0 === DoNameList.DO_DUTY_PRINT ? 29 : _context.t0 === DoNameList.DO_DIALY_PRINT ? 29 : _context.t0 === DoNameList.DO_STORAGE_PRINT ? 29 : _context.t0 === DoNameList.DO_PROJECT_STORAGE_PRINT ? 29 : _context.t0 === DoNameList.DO_PROJECT_CONSUME_PRINT ? 29 : 38;
187
+ _context.next = _context.t0 === DoNameList.DO_PRINT ? 31 : _context.t0 === DoNameList.DO_MT_RETAIL ? 31 : _context.t0 === DoNameList.DO_ONLY_PRINT ? 31 : _context.t0 === DoNameList.DO_DUTY_PRINT ? 31 : _context.t0 === DoNameList.DO_DIALY_PRINT ? 31 : _context.t0 === DoNameList.DO_STORAGE_PRINT ? 31 : _context.t0 === DoNameList.DO_PROJECT_STORAGE_PRINT ? 31 : _context.t0 === DoNameList.DO_PROJECT_CONSUME_PRINT ? 31 : 40;
179
188
  break;
180
189
 
181
- case 29:
190
+ case 31:
182
191
  if (!global[DoPrintGlobalFunction[doName]]) {
183
- _context.next = 35;
192
+ _context.next = 37;
184
193
  break;
185
194
  }
186
195
 
187
- _context.next = 32;
196
+ _context.next = 34;
188
197
  return global[DoPrintGlobalFunction[doName]].execute(ID, dto, openCashBox);
189
198
 
190
- case 32:
199
+ case 34:
191
200
  return _context.abrupt('return', res());
192
201
 
193
- case 35:
202
+ case 37:
194
203
  if (electronPrint) {
195
- _context.next = 38;
204
+ _context.next = 40;
196
205
  break;
197
206
  }
198
207
 
199
208
  _message2.default.warn(t('打印小票只能在客户端中执行'));
200
209
  return _context.abrupt('return', res());
201
210
 
202
- case 38:
211
+ case 40:
203
212
  if (!electronPrint) {
204
- _context.next = 41;
213
+ _context.next = 43;
205
214
  break;
206
215
  }
207
216
 
208
- _context.next = 41;
217
+ _context.next = 43;
209
218
  return electronPrint();
210
219
 
211
- case 41:
220
+ case 43:
212
221
  res();
213
- _context.next = 45;
222
+ _context.next = 47;
214
223
  break;
215
224
 
216
- case 44:
225
+ case 46:
217
226
  res();
218
227
 
219
- case 45:
228
+ case 47:
220
229
  case 'end':
221
230
  return _context.stop();
222
231
  }
@@ -234,6 +243,11 @@ var cloudPrintNoTemplate = function cloudPrintNoTemplate(doName, ID, cloudPrintA
234
243
  return new _promise2.default(function (resolve) {
235
244
  var printUtil = new _index2.default();
236
245
  if (doName === 'doOnlyRetail') doName = 'doPrint';
246
+
247
+ var _ref4 = template || {},
248
+ printNumber = _ref4.printNumber;
249
+
250
+ printUtil.PrintCount = printNumber;
237
251
  printUtil[doName](cloudPrintArguments, ID, function (s) {
238
252
  var msg = s.msg,
239
253
  ret = s.ret;
@@ -250,15 +264,73 @@ var cloudPrintNoTemplate = function cloudPrintNoTemplate(doName, ID, cloudPrintA
250
264
  });
251
265
  };
252
266
 
267
+ var getTemplateByName = function getTemplateByName(doName) {
268
+
269
+ // const localTemplateObject = {
270
+ // retail:{
271
+ // name:'模板1',
272
+ // size: 58,
273
+ // number:1,
274
+ // templateSymbol:"retail_template_one",
275
+ // },
276
+ // }
277
+ var currentTemplate = {};
278
+ switch (doName) {
279
+ case 'doPrint':
280
+ {
281
+ var localTemplateObject = _mutantsMicrofx.localStore.get('wirelessPrintSetting') || {};
282
+ var retail = localTemplateObject.retail;
283
+
284
+ var _ref5 = retail || {},
285
+ _ref5$size = _ref5.size,
286
+ size = _ref5$size === undefined ? '58' : _ref5$size,
287
+ _ref5$templateSymbol = _ref5.templateSymbol,
288
+ templateSymbol = _ref5$templateSymbol === undefined ? 'retail_template_one' : _ref5$templateSymbol,
289
+ _ref5$number = _ref5.number,
290
+ number = _ref5$number === undefined ? '1' : _ref5$number;
291
+
292
+ currentTemplate = _template2.Template.retail[templateSymbol];
293
+ currentTemplate.width = size;
294
+ currentTemplate.printNumber = number;
295
+ break;
296
+ }
297
+ case 'doDialyPrint':
298
+ {
299
+ var _enumController$getEn = _mutantsUtil.enumController.getEnumOj(),
300
+ Differentiate = _enumController$getEn.Differentiate;
301
+
302
+ var name = Differentiate.COUPON + '\u62B5\u6263';
303
+ currentTemplate = changeTemplateItemName(_template2.Template.dialy.dialy_template_one, 'leftPrintMsg', 'CouponsAmount', name);
304
+ break;
305
+ }
306
+ case 'doDutyPrint':
307
+ {
308
+ var _enumController$getEn2 = _mutantsUtil.enumController.getEnumOj(),
309
+ _Differentiate = _enumController$getEn2.Differentiate;
310
+
311
+ var _name = _Differentiate.COUPON + '\u62B5\u6263';
312
+ currentTemplate = changeTemplateItemName(_template2.Template.duty.duty_template_one, 'leftPrintMsg', 'CouponsAmount', _name);
313
+ break;
314
+ }
315
+ case 'doStoragePrint':
316
+ {
317
+ currentTemplate = _template2.Template.storage.storage_template_one;
318
+ break;
319
+ }
320
+ }
321
+
322
+ return currentTemplate;
323
+ };
324
+
253
325
  var syncOpenCashBox = function () {
254
- var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(printEntity) {
255
- var _ref5, CashBoxCmd;
326
+ var _ref6 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2(printEntity) {
327
+ var _ref7, CashBoxCmd;
256
328
 
257
329
  return _regenerator2.default.wrap(function _callee2$(_context2) {
258
330
  while (1) {
259
331
  switch (_context2.prev = _context2.next) {
260
332
  case 0:
261
- _ref5 = printEntity || {}, CashBoxCmd = _ref5.CashBoxCmd;
333
+ _ref7 = printEntity || {}, CashBoxCmd = _ref7.CashBoxCmd;
262
334
  return _context2.abrupt('return', window.sunMi_OperatingCashier && window.sunMi_OperatingCashier.OpenDrawer(CashBoxCmd));
263
335
 
264
336
  case 2:
@@ -270,7 +342,7 @@ var syncOpenCashBox = function () {
270
342
  }));
271
343
 
272
344
  return function syncOpenCashBox(_x2) {
273
- return _ref4.apply(this, arguments);
345
+ return _ref6.apply(this, arguments);
274
346
  };
275
347
  }();
276
348
 
@@ -279,8 +351,8 @@ var getLoginInfo = function getLoginInfo() {
279
351
  };
280
352
 
281
353
  var isOldOpen = exports.isOldOpen = function isOldOpen(printDetailEntitys) {
282
- var _ref6 = _mutantsUtil.platform || {},
283
- isVerticalTouch = _ref6.isVerticalTouch;
354
+ var _ref8 = _mutantsUtil.platform || {},
355
+ isVerticalTouch = _ref8.isVerticalTouch;
284
356
 
285
357
  if (isVerticalTouch) return true;
286
358
  var isOpenPrintValue = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('isOpenPrint');
@@ -292,13 +364,13 @@ var isOldOpen = exports.isOldOpen = function isOldOpen(printDetailEntitys) {
292
364
  }).length > 0;
293
365
  var cloudPrintArguments = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('cloudPrintArguments');
294
366
 
295
- var _ref7 = cloudPrintArguments || {},
296
- cloudOpen = _ref7.Open;
367
+ var _ref9 = cloudPrintArguments || {},
368
+ cloudOpen = _ref9.Open;
297
369
 
298
370
  var sunMiLocalPrintArguments = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('sunMiLocalPrintArguments');
299
371
 
300
- var _ref8 = sunMiLocalPrintArguments || {},
301
- sunMiOpen = _ref8.Open;
372
+ var _ref10 = sunMiLocalPrintArguments || {},
373
+ sunMiOpen = _ref10.Open;
302
374
 
303
375
  return localOrYinMeiOpen || cloudOpen || sunMiOpen;
304
376
  };
@@ -306,8 +378,8 @@ var isOldOpen = exports.isOldOpen = function isOldOpen(printDetailEntitys) {
306
378
  var getCheckedPrintTypeDefaults = exports.getCheckedPrintTypeDefaults = function getCheckedPrintTypeDefaults() {
307
379
  var hasElectron = _mutantsMicrofx.env.platform === _mutantsMicrofx.env.constant.platform.electron;
308
380
 
309
- var _ref9 = _mutantsUtil.platform || {},
310
- isVerticalTouch = _ref9.isVerticalTouch;
381
+ var _ref11 = _mutantsUtil.platform || {},
382
+ isVerticalTouch = _ref11.isVerticalTouch;
311
383
  // 打印机选择的类型
312
384
 
313
385
 
@@ -318,11 +390,11 @@ var getCheckedPrintTypeDefaults = exports.getCheckedPrintTypeDefaults = function
318
390
  if (hasElectron || !!isVerticalTouch) {
319
391
  checkedPrintType = '1';
320
392
  } else {
321
- var _ref10 = cloudPrintArguments || {},
322
- Open = _ref10.Open;
393
+ var _ref12 = cloudPrintArguments || {},
394
+ Open = _ref12.Open;
323
395
 
324
- var _ref11 = sunMiLocalPrintArguments || {},
325
- sunMiOpen = _ref11.Open;
396
+ var _ref13 = sunMiLocalPrintArguments || {},
397
+ sunMiOpen = _ref13.Open;
326
398
 
327
399
  if (Open) {
328
400
  checkedPrintType = '3';
@@ -336,4 +408,23 @@ var getCheckedPrintTypeDefaults = exports.getCheckedPrintTypeDefaults = function
336
408
  }
337
409
  return checkedPrintType;
338
410
  };
411
+
412
+ var changeTemplateItemName = function changeTemplateItemName(template, type, attribute, value) {
413
+ var currentTemplate = JSON.parse((0, _stringify2.default)(template));
414
+ var templateBody = currentTemplate.body;
415
+
416
+ templateBody = templateBody.map(function (item) {
417
+ if (item.type == type && item.body && item.body.length) {
418
+ item.body = item.body.map(function (body) {
419
+ if (body && body.attribute == attribute) {
420
+ body.name = value;
421
+ }
422
+ return body;
423
+ });
424
+ }
425
+ return item;
426
+ });
427
+ currentTemplate.body = templateBody;
428
+ return currentTemplate;
429
+ };
339
430
  //# sourceMappingURL=printDispatch.js.map