tplus-components-touch 3.20.4 → 3.22.2
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 +64 -4
- package/dist/components/billSearch/index.js.map +1 -1
- package/dist/components/billSearch/index.less +12 -2
- package/dist/components/cloudPrint/api.js +1 -1
- package/dist/components/cloudPrint/api.js.map +1 -1
- package/dist/components/cloudPrint/index.js +57 -33
- package/dist/components/cloudPrint/index.js.map +1 -1
- package/dist/components/cloudPrint/printDispatch.js +223 -0
- package/dist/components/cloudPrint/printDispatch.js.map +1 -0
- package/dist/components/commonForm/addressPicker/index.js +4 -2
- package/dist/components/commonForm/addressPicker/index.js.map +1 -1
- package/dist/components/commonForm/formControl/index.js +3 -0
- package/dist/components/commonForm/formControl/index.js.map +1 -1
- package/dist/components/hotKey/localConfig.js +14 -1
- package/dist/components/hotKey/localConfig.js.map +1 -1
- package/dist/components/keyboard/index.js +1 -1
- package/dist/components/keyboard/index.js.map +1 -1
- package/dist/components/modalWraper/style.less +6 -0
- package/dist/components/settlement/settlement.js +106 -54
- package/dist/components/settlement/settlement.js.map +1 -1
- package/dist/components/settlement/settlement.less +62 -10
- package/dist/components/settlement/settlementStore.js +338 -144
- package/dist/components/settlement/settlementStore.js.map +1 -1
- package/dist/components/ticon/iconfont/demo.css +539 -539
- package/dist/components/ticon/iconfont/demo_index.html +256 -3
- package/dist/components/ticon/iconfont/iconfont.css +47 -3
- package/dist/components/ticon/iconfont/iconfont.js +1 -1
- package/dist/components/ticon/iconfont/iconfont.js.map +1 -1
- package/dist/components/ticon/iconfont/iconfont.json +77 -0
- package/dist/components/ticon/iconfont/iconfont.ttf +0 -0
- package/dist/components/ticon/iconfont/iconfont.woff +0 -0
- package/dist/components/ticon/iconfont/iconfont.woff2 +0 -0
- package/dist/components/touchTable/index.js +8 -0
- package/dist/components/touchTable/index.js.map +1 -1
- package/dist/index.js +17 -2
- package/dist/index.js.map +1 -1
- package/package.json +35 -35
|
@@ -107,7 +107,7 @@ var API = function () {
|
|
|
107
107
|
switch (_context2.prev = _context2.next) {
|
|
108
108
|
case 0:
|
|
109
109
|
_context2.next = 2;
|
|
110
|
-
return (0, _tplusApi.tApi)({
|
|
110
|
+
return (0, _tplusApi.tApi)({ id: Id }, 'chanjet.RE.INewRetail.FindById', false, false);
|
|
111
111
|
|
|
112
112
|
case 2:
|
|
113
113
|
data = _context2.sent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/api.js"],"names":["HTTP_PROXY_URL","FEI_E_YUN_HOST","FEI_E_YUN_USER","FEI_E_YUN_KEYS","API","props","shaEncrypt","originalText","password","md5","crypto","createHash","update","data","digest","i","length","v","hv","toString","params","dataSource","BizCode","bizCode","Id","id","ts","Math","round","Date","getTime","dt","apiname","deviceCode","join","options","method","headers","url","printerContent","content","times"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,iBAAiB,4BAAvB;AACA,IAAMC,iBAAiB,iCAAvB;AACA,IAAMC,iBAAiB,mBAAvB;AACA,IAAMC,iBAAiB,kBAAvB;;IAEMC,G;AACF,iBAAYC,KAAZ,EAAmB;AAAA;;AAAA,aAGnBC,UAHmB,GAGN,UAACC,YAAD,EAAkB;AAC3B,gBAAIC,WAAW,EAAf;AACA,gBAAIC,MAAMC,iBAAOC,UAAP,CAAkB,MAAlB,CAAV;AACAF,gBAAIG,MAAJ,CAAWL,YAAX;AACA,gBAAIM,OAAOJ,IAAIK,MAAJ,EAAX;AACA,iBAAK,IAAIC,IAAI,CAAb,EAAgBA,IAAIF,KAAKG,MAAzB,EAAiCD,GAAjC,EAAsC;;AAElC,oBAAIE,IAAIJ,KAAKE,CAAL,IAAU,IAAlB;AACA,oBAAIG,KAAKD,EAAEE,QAAF,CAAW,EAAX,CAAT;AACA,oBAAID,GAAGF,MAAH,GAAY,CAAhB,EAAmB;AACfR,+BAAWA,WAAW,CAAtB;AACH;AACDA,2BAAWA,WAAWU,EAAtB;AACH;AACD,mBAAOV,QAAP;AACH,SAlBkB;AAAG;;AAEtB;;;;;;;AAkBA;;iHACoBY,M;;;;;;AACRC,0C,GAAeD,M,CAAfC,U;;uCACW,oBAAK,EAAEC,SAASF,OAAOG,OAAlB,EAAL,EAAkCF,UAAlC,EAA8C,KAA9C,EAAqD,KAArD,C;;;AAAbR,oC;iEACCA,I;;;;;;;;;;;;;;;;;AAGX;;;;;mHACuBW,E;;;;;;;uCACA,oBAAK,
|
|
1
|
+
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/api.js"],"names":["HTTP_PROXY_URL","FEI_E_YUN_HOST","FEI_E_YUN_USER","FEI_E_YUN_KEYS","API","props","shaEncrypt","originalText","password","md5","crypto","createHash","update","data","digest","i","length","v","hv","toString","params","dataSource","BizCode","bizCode","Id","id","ts","Math","round","Date","getTime","dt","apiname","deviceCode","join","options","method","headers","url","printerContent","content","times"],"mappings":"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","file":"api.js","sourcesContent":["import { tApi } from 'tplus-api';\r\nimport { api } from 'mutants-microfx';\r\nimport crypto from 'crypto';\r\n\r\nconst HTTP_PROXY_URL = \"http://tfproxy.chanjet.com\";\r\nconst FEI_E_YUN_HOST = \"http://api.feieyun.cn/Api/Open/\";\r\nconst FEI_E_YUN_USER = \"tplus@chanjet.com\";\r\nconst FEI_E_YUN_KEYS = \"nyktjQ9nVyY6BfIs\";\r\n\r\nclass API {\r\n constructor(props) { }\r\n\r\n //飞蛾参数加密\r\n shaEncrypt = (originalText) => {\r\n let password = \"\";\r\n let md5 = crypto.createHash('sha1');\r\n md5.update(originalText);\r\n let data = md5.digest();\r\n for (let i = 0; i < data.length; i++) {\r\n\r\n let v = data[i] & 0xFF;\r\n let hv = v.toString(16);\r\n if (hv.length < 2) {\r\n password = password + 0;\r\n }\r\n password = password + hv;\r\n }\r\n return password;\r\n }\r\n\r\n //获取枚举列表信息\r\n async getDataSource(params) {\r\n const { dataSource } = params;\r\n const data = await tApi({ BizCode: params.bizCode }, dataSource, false, false);\r\n return data;\r\n }\r\n\r\n //获取打印数据\r\n async getPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'chanjet.RE.INewRetail.FindById', false, false);\r\n return data;\r\n }\r\n\r\n //获取日结打印数据\r\n async getDialyPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);\r\n return data;\r\n }\r\n\r\n //获取交班打印数据\r\n async getDutyPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);\r\n return data;\r\n } \r\n\r\n //获取储值打印数据\r\n async getStoragePrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindById', false, false);\r\n return data;\r\n }\r\n\r\n // 小票打印-获取状态信息。类似{\"msg\":\"ok\",\"ret\":0,\"data\":\"\\u79bb\\u7ebf\\u3002\",\"serverExecutedTime\":5}\r\n async openQueryPrinterStatus(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`,\r\n `stime=${ts}`,\r\n `sn=${params.deviceCode}`,\r\n `user=${FEI_E_YUN_USER}`\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n\r\n // 小票打印-云打印\r\n async openPrinterAddlist(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `printerContent=${params.printerContent}`,\r\n `user=${FEI_E_YUN_USER}`,\r\n `stime=${ts}`,\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n\r\n // 小票打印-发出打印指令\r\n async openPrintMsg(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `content=${params.content}`,\r\n `printerContent=${params.printerContent}`,\r\n `user=${FEI_E_YUN_USER}`,\r\n `stime=${ts}`,\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`,\r\n `sn=${params.deviceCode}`,\r\n `times=${params.times}` //打印次数\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n}\r\nexport default new API;\r\n"]}
|
|
@@ -282,7 +282,7 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
282
282
|
printEntity.headerMap = new _map2.default();
|
|
283
283
|
printEntity.footerMap1 = new _map2.default();
|
|
284
284
|
printEntity.footerMap2 = new _map2.default();
|
|
285
|
-
printEntity.headerMap.set('日期',
|
|
285
|
+
printEntity.headerMap.set('日期', CreatedTime || '');
|
|
286
286
|
printEntity.headerMap.set('储值业务员', StorageName || '');
|
|
287
287
|
printEntity.headerMap.set('会员卡号', CardCode || '');
|
|
288
288
|
printEntity.headerMap.set('手机号', Mobilephone || '');
|
|
@@ -336,7 +336,7 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
336
336
|
DailyDate = _ref8.DailyDate,
|
|
337
337
|
RetailAmount = _ref8.RetailAmount,
|
|
338
338
|
ReturnAmount = _ref8.ReturnAmount,
|
|
339
|
-
|
|
339
|
+
SalesStorageTotalAmount = _ref8.SalesStorageTotalAmount,
|
|
340
340
|
CashOutAmount = _ref8.CashOutAmount,
|
|
341
341
|
CouponsDeduct = _ref8.CouponsDeduct,
|
|
342
342
|
CouponsAmount = _ref8.CouponsAmount,
|
|
@@ -363,15 +363,15 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
363
363
|
printEntity.headerMap.set('单号', Code);
|
|
364
364
|
printEntity.headerMap.set('门店', Store.Name || '');
|
|
365
365
|
printEntity.headerMap.set('POS编码', POSCode || '');
|
|
366
|
-
printEntity.headerMap.set('POS名称',
|
|
366
|
+
printEntity.headerMap.set('POS名称', POSName || '');
|
|
367
367
|
printEntity.headerMap.set('收 银 员', UserName || '');
|
|
368
|
-
printEntity.headerMap.set('上班日期',
|
|
369
|
-
printEntity.headerMap.set(type == 'Duty' ? '交班日期' : '日结日期',
|
|
368
|
+
printEntity.headerMap.set('上班日期', WorkingDate + " " + WorkingTime);
|
|
369
|
+
printEntity.headerMap.set(type == 'Duty' ? '交班日期' : '日结日期', type == 'Duty' ? ShiftDate + " " + ShiftTime : DailyDate + " " + DailyTime);
|
|
370
370
|
|
|
371
371
|
printEntity.footerMap1.set('销售金额', _mutantsUtil.tools.format(RetailAmount) || '0.00');
|
|
372
372
|
printEntity.footerMap1.set('退货金额', _mutantsUtil.tools.format(ReturnAmount) || '0.00');
|
|
373
373
|
printEntity.footerMap1.set('净销售金额', _mutantsUtil.tools.format(RetailAmount + ReturnAmount) || '0.00');
|
|
374
|
-
printEntity.footerMap1.set('储值销售金额', _mutantsUtil.tools.format(
|
|
374
|
+
printEntity.footerMap1.set('储值销售金额', _mutantsUtil.tools.format(SalesStorageTotalAmount) || '0.00');
|
|
375
375
|
printEntity.footerMap1.set('抵现销售金额', _mutantsUtil.tools.format(CashOutAmount) || '0.00');
|
|
376
376
|
printEntity.footerMap1.set('券抵扣(负劳务行)', _mutantsUtil.tools.format(CouponsDeduct) || '0.00');
|
|
377
377
|
|
|
@@ -514,7 +514,7 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
514
514
|
printEntity.headerMap.set('门店电话', Store.Telephone || '');
|
|
515
515
|
printEntity.headerMap.set('收银员', UserName || '');
|
|
516
516
|
printEntity.headerMap.set('单号', Code);
|
|
517
|
-
printEntity.headerMap.set('日期',
|
|
517
|
+
printEntity.headerMap.set('日期', CreatedTime || '');
|
|
518
518
|
printEntity.detailTopList.push({
|
|
519
519
|
Caption: '商品名称',
|
|
520
520
|
IsTitle: true,
|
|
@@ -538,12 +538,12 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
538
538
|
(_printEntity$detailCo2 = printEntity.detailContentList).push.apply(_printEntity$detailCo2, (0, _toConsumableArray3.default)(details));
|
|
539
539
|
printEntity.footerMap1.set('数量', TotalCount);
|
|
540
540
|
printEntity.footerMap1.set('金额', TotalTaxAmount);
|
|
541
|
-
printEntity.footerMap1.set('抹零', WipeChange);
|
|
541
|
+
printEntity.footerMap1.set('抹零', WipeChange || '0.00');
|
|
542
542
|
printEntity.footerMap2.set('会员卡号', Member && Member.CardCode || '');
|
|
543
543
|
printEntity.footerMap2.set('会员手机', Member && Member.Mobilephone || '');
|
|
544
|
-
printEntity.footerMap2.set('积分余额', BalanceIntegral || '');
|
|
545
|
-
printEntity.footerMap2.set('本次积分', Integral || '');
|
|
546
|
-
printEntity.footerMap2.set('储值余额', BalanceStorage || '');
|
|
544
|
+
printEntity.footerMap2.set('积分余额', BalanceIntegral || '0');
|
|
545
|
+
printEntity.footerMap2.set('本次积分', Integral || '0');
|
|
546
|
+
printEntity.footerMap2.set('储值余额', BalanceStorage || '0.00');
|
|
547
547
|
// 设定打印尺寸
|
|
548
548
|
_BTPrintFormatUtil2.default.setLineByteSize(_this2.lineSize);
|
|
549
549
|
|
|
@@ -594,27 +594,36 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
594
594
|
};
|
|
595
595
|
|
|
596
596
|
this.cloudPrint = function (cloudContents, printParams, callback) {
|
|
597
|
-
|
|
597
|
+
var _ref10 = printParams || {},
|
|
598
|
+
Open = _ref10.Open,
|
|
599
|
+
Key = _ref10.Key,
|
|
600
|
+
Sign = _ref10.Sign,
|
|
601
|
+
Name = _ref10.Name,
|
|
602
|
+
Card = _ref10.Card;
|
|
603
|
+
// 商米没有配置则调用本地打印接口
|
|
604
|
+
|
|
605
|
+
|
|
606
|
+
if (_this2.isHorizontalSunMi && !Open) {
|
|
598
607
|
console.log(cloudContents);
|
|
599
608
|
_this2.sunmiPrint(cloudContents, callback);
|
|
600
|
-
} else {
|
|
601
|
-
var
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
609
|
+
} else if (Open) {
|
|
610
|
+
var _ref11 = printParams || {},
|
|
611
|
+
_Key = _ref11.Key,
|
|
612
|
+
_Sign = _ref11.Sign,
|
|
613
|
+
_Name = _ref11.Name,
|
|
614
|
+
_Card = _ref11.Card;
|
|
606
615
|
|
|
607
616
|
var arr = [];
|
|
608
|
-
arr.push(
|
|
609
|
-
if (
|
|
610
|
-
if (
|
|
617
|
+
arr.push(_Sign, _Key);
|
|
618
|
+
if (_Name) arr.push(_Name);
|
|
619
|
+
if (_Card) arr.push(_Card);
|
|
611
620
|
var printerContent = arr.join('#');
|
|
612
621
|
var PrintCount = _this2.PrintCount; //打印次数
|
|
613
622
|
_api2.default.openPrintMsg({
|
|
614
623
|
content: cloudContents,
|
|
615
624
|
printerContent: printerContent,
|
|
616
625
|
apiname: 'Open_printMsg',
|
|
617
|
-
deviceCode:
|
|
626
|
+
deviceCode: _Sign,
|
|
618
627
|
times: PrintCount
|
|
619
628
|
}).then(function (s) {
|
|
620
629
|
if (typeof callback == 'function' && s && s.data) callback(s.data);
|
|
@@ -623,27 +632,42 @@ var PrintUtil = (_temp = _class = function () {
|
|
|
623
632
|
};
|
|
624
633
|
|
|
625
634
|
this.sunmiPrint = function (cloudContents, callback) {
|
|
626
|
-
window.sunMi_OperatingCashier && window.sunMi_OperatingCashier
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
635
|
+
window.sunMi_OperatingCashier && window.sunMi_OperatingCashier
|
|
636
|
+
// 检测打印机状态
|
|
637
|
+
.updatePrinterState().then(function (status) {
|
|
638
|
+
var _ref12 = status || {},
|
|
639
|
+
state = _ref12.state,
|
|
640
|
+
message = _ref12.message;
|
|
641
|
+
|
|
642
|
+
if (state == 1) {
|
|
643
|
+
window.sunMi_OperatingCashier && window.sunMi_OperatingCashier.PrintSmallTicketter(cloudContents + '\n\n').then(function (ret) {
|
|
644
|
+
if (ret && ret.state && ret.state == 200) {
|
|
645
|
+
callback && callback({
|
|
646
|
+
ret: 0,
|
|
647
|
+
msg: "打印成功"
|
|
648
|
+
});
|
|
649
|
+
} else {
|
|
650
|
+
callback && callback({
|
|
651
|
+
ret: -1,
|
|
652
|
+
msg: ret.message ? ret.message : "打印失败"
|
|
653
|
+
});
|
|
654
|
+
}
|
|
631
655
|
});
|
|
632
656
|
} else {
|
|
633
657
|
callback && callback({
|
|
634
658
|
ret: -1,
|
|
635
|
-
msg:
|
|
659
|
+
msg: message ? message : "打印失败"
|
|
636
660
|
});
|
|
637
661
|
}
|
|
638
662
|
});
|
|
639
663
|
};
|
|
640
664
|
|
|
641
665
|
this.cloudAddList = function (printParams, callback) {
|
|
642
|
-
var
|
|
643
|
-
Key =
|
|
644
|
-
Sign =
|
|
645
|
-
Name =
|
|
646
|
-
Card =
|
|
666
|
+
var _ref13 = printParams || {},
|
|
667
|
+
Key = _ref13.Key,
|
|
668
|
+
Sign = _ref13.Sign,
|
|
669
|
+
Name = _ref13.Name,
|
|
670
|
+
Card = _ref13.Card;
|
|
647
671
|
|
|
648
672
|
var arr = [];
|
|
649
673
|
arr.push(Sign, Key);
|
|
@@ -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","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","changeDateFormat","format","forEach","IdsettleStyle","StorageAmount","undefined","BTPrintFormatUtil","setLineByteSize","printTitle","size","leftPrintMsg","type","POSCode","POS","POSName","WorkingDate","StartDate","ShiftDate","DailyDate","RetailAmount","ReturnAmount","CashOutAmount","CouponsDeduct","CouponsAmount","OnlineAmount","TotalCustom","InitialAmount","ImprestAmount","ImprestBalanceAmount","ShiftVoucherDetails","DailyDetails","WorkingTime","ShiftTime","StartTime","DailyTime","Memo","detailTopList","detailContentList","replace","COUPON","Caption","IsTitle","IsFoot","DailyDetailsCommon","detailsOb","OrigAmount","MemberDepositAmount","drawSeparateLine","printStarTitle","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","items","printMenuMSG","drawSeparateLine2","spaceCenterPrintMsg","Telephone","cloudContents","console","log","sunmiPrint","Key","Sign","Card","arr","printerContent","join","openPrintMsg","content","apiname","deviceCode","times","data","window","sunMi_OperatingCashier","PrintSmallTicketter","msg","message","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\n// const IdsettleStyleList = {\r\n// '10': '微信',\r\n// '11': '转账',\r\n// '12': '扫码收款',\r\n// '13': '优惠券',\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\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 } = 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 });\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 ('日期', tool.changeDateFormat (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 const { IdsettleStyleList } = this.state;\r\n if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\r\n StorageMutiSettleDetails.forEach (details => {\r\n const {IdsettleStyle, StorageAmount} = details;\r\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\r\n printEntity.headerMap.set (\r\n IdsettleStyleList[IdsettleStyle],\r\n StorageAmount || '0.00'\r\n );\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 StorageAmount,\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名称', type == 'Duty' ? POSName : POS || '');\r\n printEntity.headerMap.set ('收 银 员', UserName || '');\r\n printEntity.headerMap.set (\r\n '上班日期',\r\n tool\r\n .changeDateFormat (type == 'Duty' ? WorkingDate : StartDate)\r\n .replace ('00:00:00', type == 'Duty' ? WorkingTime : StartTime)\r\n );\r\n printEntity.headerMap.set (\r\n type == 'Duty' ? '交班日期' : '日结日期',\r\n tool\r\n .changeDateFormat (type == 'Duty' ? ShiftDate : DailyDate)\r\n .replace ('00:00:00', type == 'Duty' ? ShiftTime : 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 (StorageAmount) || '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 const { IdsettleStyleList } = this.state;\r\n if (DailyDetailsCommon && DailyDetailsCommon.length != 0) {\r\n DailyDetailsCommon.forEach (detailsOb => {\r\n const {IdsettleStyle, OrigAmount, MemberDepositAmount} = detailsOb;\r\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\r\n details.push ([\r\n IdsettleStyleList[IdsettleStyle],\r\n tool.format (OrigAmount),\r\n tool.format (MemberDepositAmount),\r\n ]);\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 } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.detailTopList = [];\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 ('日期', tool.changeDateFormat (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 printEntity.detailContentList.push (...details);\r\n printEntity.footerMap1.set ('数量', TotalCount);\r\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\r\n printEntity.footerMap1.set ('抹零', WipeChange);\r\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\r\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\r\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '');\r\n printEntity.footerMap2.set ('本次积分', Integral || '');\r\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '');\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 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 //单据底部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 //单据底部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 if (this.isHorizontalSunMi) {\r\n console.log (cloudContents);\r\n this.sunmiPrint (cloudContents, callback);\r\n } else {\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 .PrintSmallTicketter (cloudContents + '\\n\\n')\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 };\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","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","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","IdsettleStyle","StorageAmount","undefined","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","detailsOb","OrigAmount","MemberDepositAmount","drawSeparateLine","printStarTitle","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","items","printMenuMSG","drawSeparateLine2","spaceCenterPrintMsg","Telephone","cloudContents","Open","Key","Sign","Card","console","log","sunmiPrint","arr","printerContent","join","openPrintMsg","content","apiname","deviceCode","times","data","window","sunMi_OperatingCashier","updatePrinterState","status","message","PrintSmallTicketter","msg","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\n// const IdsettleStyleList = {\r\n// '10': '微信',\r\n// '11': '转账',\r\n// '12': '扫码收款',\r\n// '13': '优惠券',\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\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 } = 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 });\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 const { IdsettleStyleList } = this.state;\r\n if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\r\n StorageMutiSettleDetails.forEach (details => {\r\n const {IdsettleStyle, StorageAmount} = details;\r\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\r\n printEntity.headerMap.set (\r\n IdsettleStyleList[IdsettleStyle],\r\n StorageAmount || '0.00'\r\n );\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 const { IdsettleStyleList } = this.state;\r\n if (DailyDetailsCommon && DailyDetailsCommon.length != 0) {\r\n DailyDetailsCommon.forEach (detailsOb => {\r\n const {IdsettleStyle, OrigAmount, MemberDepositAmount} = detailsOb;\r\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\r\n details.push ([\r\n IdsettleStyleList[IdsettleStyle],\r\n tool.format (OrigAmount),\r\n tool.format (MemberDepositAmount),\r\n ]);\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 } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.detailTopList = [];\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 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 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 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 //单据底部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 //单据底部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} = printParams || {};\r\n // 商米没有配置则调用本地打印接口\r\n 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')\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 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"]}
|