tplus-components-touch 3.49.1 → 3.49.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/README.md +16 -16
- package/dist/components/acCitySelect/CitySelect.js +18 -18
- package/dist/components/acCitySelect/CitySelect.js.map +1 -1
- package/dist/components/acCitySelect/CitySelect.less +9 -9
- package/dist/components/acCitySelect/citys.js.map +1 -1
- package/dist/components/acCitySelect/index.js.map +1 -1
- package/dist/components/acCitySelect/provinceData.js +7 -7
- package/dist/components/acCitySelect/provinceData.js.map +1 -1
- package/dist/components/addLog/AddLogProcessor.js +6 -6
- package/dist/components/addLog/AddLogProcessor.js.map +1 -1
- package/dist/components/addLog/OperationLogApi.js +3 -3
- package/dist/components/addLog/OperationLogApi.js.map +1 -1
- package/dist/components/autoComplete/index.js +14 -14
- package/dist/components/autoComplete/index.js.map +1 -1
- package/dist/components/autoComplete/index.less +89 -89
- package/dist/components/autoComplete/option.js.map +1 -1
- package/dist/components/autoCompleteWithKeyboard/index.js +14 -14
- package/dist/components/autoCompleteWithKeyboard/index.js.map +1 -1
- package/dist/components/autoCompleteWithKeyboard/index.less +18 -18
- package/dist/components/billSearch/api.js +29 -29
- package/dist/components/billSearch/api.js.map +1 -1
- package/dist/components/billSearch/index.js +6 -6
- package/dist/components/billSearch/index.js.map +1 -1
- package/dist/components/billSearch/index.less +384 -384
- package/dist/components/cloudPrint/BTPrintFormatUtil.js +17 -17
- package/dist/components/cloudPrint/BTPrintFormatUtil.js.map +1 -1
- package/dist/components/cloudPrint/api.js.map +1 -1
- package/dist/components/cloudPrint/index.js.map +1 -1
- package/dist/components/cloudPrint/printDispatch.js +7 -7
- package/dist/components/cloudPrint/printDispatch.js.map +1 -1
- package/dist/components/cloudPrint/printTemplate/dialy_one.json +238 -238
- package/dist/components/cloudPrint/printTemplate/duty_one.json +238 -238
- package/dist/components/cloudPrint/printTemplate/retail_one.json +203 -203
- package/dist/components/cloudPrint/printTemplate/retail_two.json +219 -219
- package/dist/components/cloudPrint/printTemplate/storage_one.json +128 -128
- package/dist/components/cloudPrint/printTemplate/template.js +7 -7
- package/dist/components/cloudPrint/printTemplate/template.js.map +1 -1
- package/dist/components/commonForm/addressPicker/index.js +7 -7
- package/dist/components/commonForm/addressPicker/index.js.map +1 -1
- package/dist/components/commonForm/addressPicker/style.less +10 -10
- package/dist/components/commonForm/autoComplete/index.js.map +1 -1
- package/dist/components/commonForm/autoComplete/style.less +2 -2
- package/dist/components/commonForm/datePicker/index.js.map +1 -1
- package/dist/components/commonForm/datePicker/style.less +4 -4
- package/dist/components/commonForm/formControl/index.js.map +1 -1
- package/dist/components/commonForm/index.js +4 -4
- package/dist/components/commonForm/index.js.map +1 -1
- package/dist/components/commonForm/inputNumber/index.js.map +1 -1
- package/dist/components/commonForm/inputNumber/style.less +10 -10
- package/dist/components/commonForm/radio/index.js.map +1 -1
- package/dist/components/commonForm/style.less +1 -1
- package/dist/components/deliverySearch/api.js +21 -21
- package/dist/components/deliverySearch/api.js.map +1 -1
- package/dist/components/deliverySearch/index.js +6 -6
- package/dist/components/deliverySearch/index.js.map +1 -1
- package/dist/components/deliverySearch/index.less +553 -553
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/hardwareAPI/index.js +7 -7
- package/dist/components/hardwareAPI/index.js.map +1 -1
- package/dist/components/hotKey/config.js +23 -23
- package/dist/components/hotKey/config.js.map +1 -1
- package/dist/components/hotKey/hotKeyModal.js.map +1 -1
- package/dist/components/hotKey/index.js +26 -26
- package/dist/components/hotKey/index.js.map +1 -1
- package/dist/components/hotKey/localConfig.js.map +1 -1
- package/dist/components/hotKey/style.less +96 -96
- package/dist/components/hotKey/utils.js.map +1 -1
- package/dist/components/input/index.js +6 -6
- package/dist/components/input/index.js.map +1 -1
- package/dist/components/input/scanInput.js.map +1 -1
- package/dist/components/input/scanInput.less +30 -30
- package/dist/components/input/style.less +106 -106
- package/dist/components/input/tplusInput/index.js +30 -30
- package/dist/components/input/tplusInput/index.js.map +1 -1
- package/dist/components/input/tplusInput/inputContent.js.map +1 -1
- package/dist/components/input/tplusInput/inputs.js.map +1 -1
- package/dist/components/input/tplusInput/style.less +132 -132
- package/dist/components/input/utils/index.js.map +1 -1
- package/dist/components/inventorySearch/api.js +58 -58
- package/dist/components/inventorySearch/api.js.map +1 -1
- package/dist/components/inventorySearch/index.js +3 -3
- package/dist/components/inventorySearch/index.js.map +1 -1
- package/dist/components/inventorySearch/index.less +119 -119
- package/dist/components/inventorySearch/store.js +6 -2
- package/dist/components/inventorySearch/store.js.map +1 -1
- package/dist/components/inventorySearch/tab.js.map +1 -1
- package/dist/components/keyboard/index.js.map +1 -1
- package/dist/components/keyboard/index.less +485 -485
- package/dist/components/keyboard/letterKeyboard.js +2 -2
- package/dist/components/keyboard/letterKeyboard.js.map +1 -1
- package/dist/components/keyboard/numKeyboard.js +4 -4
- package/dist/components/keyboard/numKeyboard.js.map +1 -1
- package/dist/components/keyboard/numKeyboardScan.js.map +1 -1
- package/dist/components/keyboard/numberButton_input.js +5 -5
- package/dist/components/keyboard/numberButton_input.js.map +1 -1
- package/dist/components/keyboard/numkeyboardPassword.js +4 -4
- package/dist/components/keyboard/numkeyboardPassword.js.map +1 -1
- package/dist/components/keyboard/onlyKeyboard.js +7 -7
- package/dist/components/keyboard/onlyKeyboard.js.map +1 -1
- package/dist/components/keyboard/onlyLetterButton.js +2 -2
- package/dist/components/keyboard/onlyLetterButton.js.map +1 -1
- package/dist/components/keyboard/onlyLetterButton2.js +2 -2
- package/dist/components/keyboard/onlyLetterButton2.js.map +1 -1
- package/dist/components/keyboard/onlyLetterButton2.less +156 -156
- package/dist/components/keyboard/onlyNumberButton.js +2 -2
- package/dist/components/keyboard/onlyNumberButton.js.map +1 -1
- package/dist/components/keyboard/onlyNumberButton2.js +3 -3
- package/dist/components/keyboard/onlyNumberButton2.js.map +1 -1
- package/dist/components/keyboard/textKeyboard.js.map +1 -1
- package/dist/components/layout/hamburger.js.map +1 -1
- package/dist/components/layout/index.js +10 -10
- package/dist/components/layout/index.js.map +1 -1
- package/dist/components/layout/layout.js.map +1 -1
- package/dist/components/layout/sider.js +12 -12
- package/dist/components/layout/sider.js.map +1 -1
- package/dist/components/layout/style.less +82 -82
- package/dist/components/loading/index.js +15 -15
- package/dist/components/loading/index.js.map +1 -1
- package/dist/components/loading/loadingContent.js.map +1 -1
- package/dist/components/loading/style.less +72 -72
- package/dist/components/loading/utils.js.map +1 -1
- package/dist/components/message/index.js +8 -8
- package/dist/components/message/index.js.map +1 -1
- package/dist/components/message/index.less +101 -101
- package/dist/components/modal/index.js.map +1 -1
- package/dist/components/modal/index.less +19 -19
- package/dist/components/modalVertical/index.js +7 -7
- package/dist/components/modalVertical/index.js.map +1 -1
- package/dist/components/modalVertical/style.less +60 -60
- package/dist/components/modalWraper/index.js +15 -15
- package/dist/components/modalWraper/index.js.map +1 -1
- package/dist/components/modalWraper/style.less +257 -257
- package/dist/components/modalWraper/utils.js.map +1 -1
- package/dist/components/notification/index.js +4 -4
- package/dist/components/notification/index.js.map +1 -1
- package/dist/components/notification/index.less +51 -51
- package/dist/components/overflowTip/index.js +15 -15
- package/dist/components/overflowTip/index.js.map +1 -1
- package/dist/components/overflowTip/style.less +66 -66
- package/dist/components/page/index.js.map +1 -1
- package/dist/components/page/index.less +21 -21
- package/dist/components/presale/pickup.js.map +1 -1
- package/dist/components/presale/style.less +58 -58
- package/dist/components/product/detail.js +7 -7
- package/dist/components/product/detail.js.map +1 -1
- package/dist/components/product/getCard.js +5 -5
- package/dist/components/product/getCard.js.map +1 -1
- package/dist/components/product/index.less +128 -128
- package/dist/components/progressState/EmptyAndErrorView.js.map +1 -1
- package/dist/components/progressState/ProgressState.js +10 -10
- package/dist/components/progressState/ProgressState.js.map +1 -1
- package/dist/components/progressState/index.js.map +1 -1
- package/dist/components/progressState/style.less +65 -65
- package/dist/components/scan/index.js.map +1 -1
- package/dist/components/scan/index.less +33 -33
- package/dist/components/select/index.js.map +1 -1
- package/dist/components/select/index.less +11 -11
- package/dist/components/settlement/asyncModal.js.map +1 -1
- package/dist/components/settlement/index.js.map +1 -1
- package/dist/components/settlement/moreCzkTable/index.js.map +1 -1
- package/dist/components/settlement/moreCzkTable/style.less +6 -6
- package/dist/components/settlement/prototypeTable/index.js.map +1 -1
- package/dist/components/settlement/prototypeTable/style.less +58 -58
- package/dist/components/settlement/prototypeTable/utils.js.map +1 -1
- package/dist/components/settlement/settlement.js +5 -5
- package/dist/components/settlement/settlement.js.map +1 -1
- package/dist/components/settlement/settlement.less +1705 -1705
- package/dist/components/settlement/settlementStore.js +6 -6
- package/dist/components/settlement/settlementStore.js.map +1 -1
- package/dist/components/settlement/utils.js.map +1 -1
- package/dist/components/socket/index.js +11 -11
- package/dist/components/socket/index.js.map +1 -1
- package/dist/components/spin/index.js +6 -6
- package/dist/components/spin/index.js.map +1 -1
- package/dist/components/spin/spin-style.less +436 -436
- package/dist/components/test/index.js +3 -3
- package/dist/components/test/index.js.map +1 -1
- package/dist/components/ticon/iconfont/demo.css +539 -539
- package/dist/components/ticon/iconfont/demo_index.html +5248 -5248
- package/dist/components/ticon/iconfont/iconfont.css +895 -895
- package/dist/components/ticon/iconfont/iconfont.json +1549 -1549
- package/dist/components/ticon/iconfont/iconfont.svg +593 -593
- package/dist/components/ticon/index.js.map +1 -1
- package/dist/components/touchScroll/index.js +9 -9
- package/dist/components/touchScroll/index.js.map +1 -1
- package/dist/components/touchTable/AuthProcess.js.map +1 -1
- package/dist/components/touchTable/generateWater.js.map +1 -1
- package/dist/components/touchTable/index.js +9 -9
- package/dist/components/touchTable/index.js.map +1 -1
- package/dist/components/touchTable/index.less +376 -376
- package/dist/components/touchTable/utils.js.map +1 -1
- package/dist/demo/PopOverDemo.js.map +1 -1
- package/dist/index.js +7 -7
- package/dist/index.js.map +1 -1
- package/dist/util/tools.js.map +1 -1
- package/locales/zh/tplus-components-touch.json +1 -1
- package/locales/zh-CN/tplus-components-touch.json +1 -1
- package/mocks/memberInfo.json +79 -79
- package/package.json +2 -2
- package/tsconfig.json +26 -26
@@ -268,9 +268,9 @@ var BTPrintFormatUtil = function () {
|
|
268
268
|
return this.sb;
|
269
269
|
}
|
270
270
|
|
271
|
-
/**
|
272
|
-
* 排版居中标题
|
273
|
-
*
|
271
|
+
/**
|
272
|
+
* 排版居中标题
|
273
|
+
*
|
274
274
|
*/
|
275
275
|
|
276
276
|
}, {
|
@@ -286,9 +286,9 @@ var BTPrintFormatUtil = function () {
|
|
286
286
|
return this.sb;
|
287
287
|
}
|
288
288
|
|
289
|
-
/**
|
290
|
-
* 排版居中标题带*
|
291
|
-
*
|
289
|
+
/**
|
290
|
+
* 排版居中标题带*
|
291
|
+
*
|
292
292
|
*/
|
293
293
|
|
294
294
|
}, {
|
@@ -307,8 +307,8 @@ var BTPrintFormatUtil = function () {
|
|
307
307
|
return this.sb;
|
308
308
|
}
|
309
309
|
|
310
|
-
/**
|
311
|
-
* 排版居左对齐
|
310
|
+
/**
|
311
|
+
* 排版居左对齐
|
312
312
|
*/
|
313
313
|
|
314
314
|
}, {
|
@@ -359,8 +359,8 @@ var BTPrintFormatUtil = function () {
|
|
359
359
|
return this.sb;
|
360
360
|
}
|
361
361
|
|
362
|
-
/**
|
363
|
-
* 补全空格
|
362
|
+
/**
|
363
|
+
* 补全空格
|
364
364
|
*/
|
365
365
|
|
366
366
|
}, {
|
@@ -378,8 +378,8 @@ var BTPrintFormatUtil = function () {
|
|
378
378
|
return text;
|
379
379
|
}
|
380
380
|
|
381
|
-
/**
|
382
|
-
* 画分割线
|
381
|
+
/**
|
382
|
+
* 画分割线
|
383
383
|
*/
|
384
384
|
|
385
385
|
}, {
|
@@ -393,8 +393,8 @@ var BTPrintFormatUtil = function () {
|
|
393
393
|
return buffer;
|
394
394
|
}
|
395
395
|
|
396
|
-
/**
|
397
|
-
* 画分割线
|
396
|
+
/**
|
397
|
+
* 画分割线
|
398
398
|
*/
|
399
399
|
|
400
400
|
}, {
|
@@ -468,9 +468,9 @@ var BTPrintFormatUtil = function () {
|
|
468
468
|
return list;
|
469
469
|
}
|
470
470
|
|
471
|
-
/**
|
472
|
-
* 获取最大长度
|
473
|
-
*
|
471
|
+
/**
|
472
|
+
* 获取最大长度
|
473
|
+
*
|
474
474
|
*/
|
475
475
|
|
476
476
|
}, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/BTPrintFormatUtil.js"],"names":["LINE_BYTE_SIZE","CHANGE_LINE","SLASH","BTPrintFormatUtil","size","bodyValueList","mhList","length","sb","tabHeaderByte","renderTableByStep","list","_this","constr","index","occupyedBytes","topWeight","contentWeight","bottomWeight","top","content","bottom","forEach","item","isTitle","push","headerWeight","isFoot","occupyedByte","parseInt","mh","headerOccupyBytes","headerOccupyLength","getBytesLength","headerText","start","end","drawText","concatBlank","stringToByte","blankBytes","len","drawSeparateLine","headerSize","valueListSize","i","maxLine","rowValue","map","toString","stringArrayMap","topContents","rowContents","bottomContents","j","oldValue","rowsValue","getSubString","subRowSize","subRow","key","value","set","row","column","get","spaceLen","endsWith","tempContents","charAt","substr","title","spaceSize","middleMsgMap","entries","firstString","secondString","text","blankLength","isAll","buffer","oriStr","subStrLen","subStrBytes","subStrIndex","subStr","byteToString","slice","tempindex","strByteSize","fillBlank","sbuffer","msgs","max","tmp","val","charCodeAt","str","bytes","Array","c","arr","_arr","one","v","match","bytesLength","store","st","String","fromCharCode","asciiValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAIA,iBAAiB,EAArB;AACA,IAAMC,cAAc,IAApB;AACA,IAAMC,QAAQ,IAAd;;IAEMC,iB;;;;;;;kCAEkBC,I,EAAM;AAC5BJ,oBAAiBI,IAAjB;AACA;;;+BAEmBC,a,EAAeC,M,EAAQ;AAC1C,OAAI,CAACA,MAAD,IAAWA,OAAOC,MAAP,IAAiB,CAAhC,EAAmC;AAClC,WAAO,EAAP;AACA;AACD,QAAKC,EAAL,GAAU,EAAV;AACA,OAAIC,gBAAgB,CAApB;AACA;AACA,YAASC,iBAAT,CAA2BC,IAA3B,EAAiCC,KAAjC,EAAwC;AACvC,QAAIC,SAAS,EAAb;AAAA,QAAiBC,QAAQ,CAAzB;AAAA,QAA4BC,gBAAgB,CAA5C;AACA,QAAIC,YAAY,CAAhB;AAAA,QAAmBC,gBAAgB,CAAnC;AAAA,QAAsCC,eAAe,CAArD;AAAA,QAAwDC,MAAM,EAA9D;AAAA,QAAkEC,UAAU,EAA5E;AAAA,QAAgFC,SAAS,EAAzF;AACAV,SAAKW,OAAL,CAAa,gBAAQ;AACpB,SAAIC,KAAKC,OAAT,EAAkB;AACjBL,UAAIM,IAAJ,CAASF,IAAT;AACAP,mBAAaO,KAAKG,YAAlB;AACA,MAHD,MAGO,IAAIH,KAAKI,MAAT,EAAiB;AACvBN,aAAOI,IAAP,CAAYF,IAAZ;AACAL,sBAAgBK,KAAKG,YAArB;AACA,MAHM,MAGA;AACNN,cAAQK,IAAR,CAAaF,IAAb;AACAN,uBAAiBM,KAAKG,YAAtB;AACA;AACD,KAXD;AAYAZ,YAAQ,CAAR;AACAC,oBAAgB,CAAhB;AACAI,QAAIG,OAAJ,CAAY,cAAM;AACjB,SAAIM,eAAeC,SAAU7B,iBAAiB8B,GAAGJ,YAApB,GAAmCV,SAA7C,CAAnB;AACAD,sBAAiBa,YAAjB;AACAE,QAAGC,iBAAH,GAAuBH,YAAvB;AACAE,QAAGE,kBAAH,GAAwBpB,MAAMqB,cAAN,CAAqBH,GAAGI,UAAxB,CAAxB;AACA,SAAIpB,SAASK,IAAIZ,MAAJ,GAAa,CAA1B,EAA6B;AAC5B,UAAIO,SAAS,CAAb,EAAgB;AAAEgB,UAAGK,KAAH,GAAW,IAAX;AAAkB,OAApC,MAA0C;AAAEL,UAAGK,KAAH,GAAW,KAAX;AAAmB;AAC/DL,SAAGM,GAAH,GAAS,IAAT;AACAN,SAAGO,QAAH,GAAcP,GAAGI,UAAH,GAAgBjC,WAA9B;AACAY,gBAAUiB,GAAGO,QAAb;AACAxB,gBAAUD,MAAM0B,WAAN,CAAkB,EAAlB,EAAsB7B,aAAtB,EAAqC,IAArC,CAAV;AACA,MAND,MAMO;AACN,UAAIK,SAAS,CAAb,EAAgB;AAAEgB,UAAGK,KAAH,GAAW,IAAX;AAAkB,OAApC,MAA0C;AAAEL,UAAGK,KAAH,GAAW,KAAX;AAAmB;AAC/DL,SAAGM,GAAH,GAAS,KAAT;AACAN,SAAGO,QAAH,GAAcP,GAAGI,UAAH,GAAgBhC,KAA9B;AACAW,gBAAUiB,GAAGO,QAAb;AACA;AACDvB;AACA,KAlBD;AAmBAA,YAAQ,CAAR;AACAC,oBAAgB,CAAhB;AACAK,YAAQE,OAAR,CAAgB,cAAM;AACrB,SAAIM,eAAeC,SAAU,CAAC7B,iBAAiB8B,GAAGJ,YAApB,GAAmCjB,aAApC,IAAqDQ,aAA/D,CAAnB;AACAa,QAAGC,iBAAH,GAAuBnB,MAAM2B,YAAN,CAAmBT,GAAGI,UAAtB,EAAkC3B,MAAzD;AACAuB,QAAGE,kBAAH,GAAwBpB,MAAMqB,cAAN,CAAqBH,GAAGI,UAAxB,CAAxB;AACA,SAAIJ,GAAGC,iBAAH,GAAuBH,YAA3B,EAAyC;AACxCE,SAAGC,iBAAH,GAAuBH,YAAvB;AACA;AACD,SAAIE,GAAGE,kBAAH,GAAwBJ,YAA5B,EAA0C;AACzCE,SAAGE,kBAAH,GAAwBJ,YAAxB;AACA;AACD,SAAId,SAASM,QAAQb,MAAR,GAAiB,CAA9B,EAAiC;AAChC,UAAIO,SAAS,CAAb,EAAgB;AAAEgB,UAAGK,KAAH,GAAW,IAAX;AAAkB,OAApC,MAA0C;AAAEL,UAAGK,KAAH,GAAW,KAAX;AAAmB;AAC/DL,SAAGM,GAAH,GAAS,IAAT;AACAN,SAAGC,iBAAH,GAAuB/B,iBAAiBe,aAAxC;AACAe,SAAGO,QAAH,GAAcP,GAAGI,UAAH,GAAgBjC,WAA9B;AACAY,gBAAUiB,GAAGO,QAAb;AACA,MAND,MAMO;AACN,UAAIvB,SAAS,CAAb,EAAgB;AAAEgB,UAAGK,KAAH,GAAW,IAAX;AAAkB,OAApC,MAA0C;AAAEL,UAAGK,KAAH,GAAW,KAAX;AAAmB;AAC/DL,SAAGM,GAAH,GAAS,KAAT;AACArB,uBAAiBa,YAAjB;AACA,UAAIY,aAAaZ,eAAehB,MAAMqB,cAAN,CAAqBH,GAAGI,UAAxB,CAAhC;AACA,UAAIM,cAAc,CAAlB,EAAqB;AACpBV,UAAGI,UAAH,IAAiB,GAAjB;AACA,WAAIO,MAAM7B,MAAMqB,cAAN,CAAqB,GAArB,CAAV;AACAlB,wBAAiB0B,GAAjB;AACAX,UAAGC,iBAAH,IAAwBU,GAAxB;AACA;AACDX,SAAGO,QAAH,GAAczB,MAAM0B,WAAN,CAAkBR,GAAGI,UAArB,EAAiCM,UAAjC,EAA6C,IAA7C,CAAd;AACA3B,gBAAUiB,GAAGO,QAAb;AACA;AACDvB;AACA,KA/BD;AAgCAA,YAAQ,CAAR;AACAC,oBAAgB,CAAhB;AACAM,WAAOC,OAAP,CAAe,cAAM;AACpB,SAAIM,eAAeC,SAAU7B,iBAAiB8B,GAAGJ,YAApB,GAAmCR,YAA7C,CAAnB;AACAH,sBAAiBa,YAAjB;AACAE,QAAGC,iBAAH,GAAuBH,YAAvB;AACAE,QAAGE,kBAAH,GAAwBpB,MAAMqB,cAAN,CAAqBH,GAAGI,UAAxB,CAAxB;AACA,SAAIpB,SAASO,OAAOd,MAAP,GAAgB,CAA7B,EAAgC;AAC/B,UAAIO,SAAS,CAAb,EAAgB;AAAEgB,UAAGK,KAAH,GAAW,IAAX;AAAkB,OAApC,MAA0C;AAAEL,UAAGK,KAAH,GAAW,KAAX;AAAmB;AAC/DL,SAAGM,GAAH,GAAS,IAAT;AACAN,SAAGO,QAAH,GAAcP,GAAGI,UAAH,GAAgBjC,WAA9B;AACA;AACA,MALD,MAKO;AACN,UAAIa,SAAS,CAAb,EAAgB;AAAEgB,UAAGK,KAAH,GAAW,IAAX;AAAkB,OAApC,MAA0C;AAAEL,UAAGK,KAAH,GAAW,KAAX;AAAmB;AAC/DL,SAAGM,GAAH,GAAS,KAAT;AACAN,SAAGO,QAAH,GAAcP,GAAGI,UAAH,GAAgBhC,KAA9B;AACA;AACA;AACDY;AACA,KAjBD;AAkBA,WAAOD,MAAP;AACA;AACD,QAAKL,EAAL,IAAWE,kBAAkBJ,MAAlB,EAA0B,IAA1B,CAAX;AACA;AACA,QAAKE,EAAL,IAAW,KAAKkC,gBAAL,EAAX;;AAEA,OAAIC,aAAarC,OAAOC,MAAxB;AACA,OAAIqC,gBAAgBvC,cAAcE,MAAlC;AACA;AACA,QAAK,IAAIsC,IAAI,CAAb,EAAgBA,IAAID,aAApB,EAAmCC,GAAnC,EAAwC;AACvC,QAAIC,UAAU,CAAd;AACA,QAAIC,WAAW1C,cAAcwC,CAAd,CAAf;AACAE,eAAWA,SAASC,GAAT,CAAa,gBAAQ;AAC/B,SAAI,CAACzB,IAAL,EAAW;AACV,aAAO,EAAP;AACA;AACD,YAAOA,KAAK0B,QAAL,EAAP;AACA,KALU,CAAX;AAMA,QAAIC,iBAAiB,mBAArB;AACA,QAAIC,cAAc,EAAlB;AAAA,QAAsBC,cAAc,EAApC;AAAA,QAAwCC,iBAAiB,EAAzD;AACA,SAAK,IAAIC,IAAI,CAAb,EAAgBA,IAAIX,UAApB,EAAgCW,GAAhC,EAAqC;AACpC,SAAIxB,KAAKxB,OAAOgD,CAAP,CAAT;AACA,SAAIxB,GAAGN,OAAH,KAAe,IAAnB,EAAyB;AACxB,UAAIM,GAAGK,KAAH,KAAa,IAAjB,EAAuB;AACtBgB,sBAAiBN,IAAI,CAAL,GAAU,GAAV,GAAgBE,SAASO,CAAT,CAAhC;AACA,WAAIxB,GAAGM,GAAH,KAAW,IAAf,EAAqB;AACpBe,uBAAelD,WAAf;AACAkD,uBAAe,KAAKb,WAAL,CAAiB,EAAjB,EAAqB7B,aAArB,EAAoC,IAApC,CAAf;AACA;AACD,OAND,MAMO,IAAIqB,GAAGK,KAAH,KAAa,KAAjB,EAAwB;AAC9B,WAAIL,GAAGM,GAAH,KAAW,IAAf,EAAqB;AACpBe,uBAAejD,QAAQ6C,SAASO,CAAT,CAAR,GAAsBrD,WAArC;AACAkD,uBAAe,KAAKb,WAAL,CAAiB,EAAjB,EAAqB7B,aAArB,EAAoC,IAApC,CAAf;AACA,QAHD,MAGO,IAAIqB,GAAGM,GAAH,KAAW,KAAf,EAAsB;AAC5Be,uBAAejD,QAAQ6C,SAASO,CAAT,CAAvB;AACA;AACD;AACD,MAfD,MAeO,IAAIxB,GAAGH,MAAH,KAAc,IAAlB,EAAwB;AAC9B,UAAIG,GAAGK,KAAH,KAAa,IAAjB,EAAuB;AACtBkB,yBAAkBN,SAASO,CAAT,CAAlB;AACA,WAAIxB,GAAGM,GAAH,KAAW,IAAX,IAAmBiB,cAAvB,EAAuC;AACtCA,yBAAiB,QAAQA,cAAR,GAAyBpD,WAA1C;AACA;AACD,OALD,MAKO,IAAI6B,GAAGK,KAAH,KAAa,KAAjB,EAAwB;AAC9B,WAAIL,GAAGM,GAAH,KAAW,IAAf,EAAqB;AACpBiB,0BAAkBnD,QAAQ6C,SAASO,CAAT,CAAR,GAAsBrD,WAAxC;AACA,QAFD,MAEO,IAAI6B,GAAGM,GAAH,KAAW,KAAf,EAAsB;AAC5BiB,0BAAkBnD,QAAQ6C,SAASO,CAAT,CAA1B;AACA;AACD;AACD,MAbM,MAaA;AACN;AACA;AACA,UAAIC,WAAWR,SAASO,CAAT,CAAf;AACA,UAAIE,YAAY,KAAKC,YAAL,CAAkBF,QAAlB,EAA4BzB,GAAGC,iBAA/B,CAAhB;AACA,UAAI2B,aAAaF,UAAUjD,MAA3B;AACA,WAAK,IAAIoD,SAAS,CAAlB,EAAqBA,SAASD,UAA9B,EAA0CC,QAA1C,EAAoD;AACnD,WAAIC,MAAMD,OAAOV,QAAP,KAAoBK,EAAEL,QAAF,EAA9B;AACA,WAAIY,QAAQL,UAAUG,MAAV,CAAZ;AACA,WAAInB,aAAaV,GAAGE,kBAAH,GAAwB,KAAKC,cAAL,CAAoB4B,KAApB,CAAzC;AACAX,sBAAeY,GAAf,CAAmBF,GAAnB,EAAwB,KAAKtB,WAAL,CAAiBuB,KAAjB,EAAwBrB,UAAxB,EAAoC,IAApC,CAAxB;AACA;AACD,UAAIkB,aAAaZ,OAAjB,EAA0B;AACzBA,iBAAUY,UAAV;AACA;AACD;AACD;AACD,SAAK,IAAIK,MAAM,CAAf,EAAkBA,MAAMjB,OAAxB,EAAiCiB,KAAjC,EAAwC;AACvC,SAAIA,MAAM,CAAV,EAAaX,eAAe,KAAKd,WAAL,CAAiB,EAAjB,EAAqB7B,aAArB,EAAoC,IAApC,CAAf;AACb,UAAK,IAAIuD,SAAS,CAAlB,EAAqBA,SAASrB,UAA9B,EAA0CqB,QAA1C,EAAoD;AACnD,UAAIJ,OAAMG,IAAId,QAAJ,KAAiBe,OAAOf,QAAP,EAA3B;AACA,UAAIY,SAAQX,eAAee,GAAf,CAAmBL,IAAnB,CAAZ;AACA,UAAI9B,MAAKxB,OAAO0D,MAAP,CAAT;AACA,UAAIlC,IAAGN,OAAH,KAAe,IAAnB,EAAyB;AACxB;AACA;AACD,UAAI0C,WAAWpC,IAAGE,kBAAlB;AACA,UAAI4B,KAAIO,QAAJ,CAAa,GAAb,CAAJ,EAAuB;AACtBD,kBAAWlE,kBAAkB,EAAlB,GAAuB,CAAvB,GAA2B,CAAtC;AACA;AACD6D,eAAQA,SAAQA,MAAR,GAAgB,KAAKvB,WAAL,CAAiB,EAAjB,EAAqB4B,QAArB,EAA+B,IAA/B,CAAxB;AACAd,qBAAeS,MAAf;AACA;AACD,SAAIO,eAAehB,WAAnB;AACA,UAAK,IAAIP,KAAIuB,aAAa7D,MAAb,GAAsB,CAAnC,EAAsCsC,MAAK,CAA3C,EAA8CA,IAA9C,EAAmD;AAClD,UAAIuB,aAAaC,MAAb,CAAoBxB,EAApB,KAA0B,GAA9B,EAAmC;AAClC;AACA;AACDO,oBAAcgB,aAAaE,MAAb,CAAoB,CAApB,EAAuBzB,EAAvB,CAAd;AACA;AACDO,oBAAe,IAAf;AACA;AACD,SAAK5C,EAAL,IAAW2C,WAAX;AACA,SAAK3C,EAAL,IAAW4C,WAAX;AACA,SAAK5C,EAAL,IAAW6C,cAAX;AACA;AACD,QAAK7C,EAAL,IAAW,KAAKkC,gBAAL,EAAX;AACA,UAAO,KAAKlC,EAAZ;AACA;;AAED;;;;;;;6BAIkB+D,K,EAAO;AACxB,QAAK/D,EAAL,GAAU,EAAV;AACA,OAAIgE,YAAY,CAACxE,iBAAiB,KAAKiC,cAAL,CAAoBsC,KAApB,CAAlB,IAAgD,CAAhE;AACA,QAAK,IAAI1B,IAAI,CAAb,EAAgBA,IAAI2B,SAApB,EAA+B3B,GAA/B,EAAoC;AACnC,SAAKrC,EAAL,IAAW,GAAX;AACA;AACD,QAAKA,EAAL,IAAW+D,KAAX;AACA,QAAK/D,EAAL,IAAW,IAAX;AACA,UAAO,KAAKA,EAAZ;AACA;;AAED;;;;;;;iCAIsB+D,K,EAAO;AAC5B,QAAK/D,EAAL,GAAU,EAAV;AACA,OAAIgE,YAAY,CAACxE,iBAAiB,KAAKiC,cAAL,CAAoBsC,KAApB,CAAlB,IAAgD,CAAhE;AACA,QAAK,IAAI1B,IAAI,CAAb,EAAgBA,IAAI2B,YAAU,CAA9B,EAAiC3B,GAAjC,EAAsC;AACrC,SAAKrC,EAAL,IAAW,IAAX;AACA;AACD,QAAKA,EAAL,IAAW+D,KAAX;AACA,QAAK,IAAI1B,MAAI,CAAb,EAAgBA,MAAI2B,YAAU,CAA9B,EAAiC3B,KAAjC,EAAsC;AACrC,SAAKrC,EAAL,IAAW,IAAX;AACA;AACD,QAAKA,EAAL,IAAW,IAAX;AACA,UAAO,KAAKA,EAAZ;AACA;;AAED;;;;;;+BAGoBiE,Y,EAAc;AACjC,QAAKjE,EAAL,GAAU,EAAV;;AADiC;AAAA;AAAA;;AAAA;AAGjC,oDAAiBiE,aAAaC,OAAb,EAAjB,4GAAyC;AAAA,SAAhCnD,IAAgC;;AACxC,SAAIqC,MAAMrC,KAAK,CAAL,CAAV;AACA,SAAIH,UAAUwC,OAAO,SAAP,GAAmBrC,KAAK,CAAL,CAAnB,GAA8BqC,MAAM,GAAN,GAAYrC,KAAK,CAAL,CAAxD;AACA,UAAKf,EAAL,IAAWY,OAAX;AACA,UAAKZ,EAAL,IAAW,IAAX;AACA;AARgC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AASjC,UAAO,KAAKA,EAAZ;AACA;;;sCAE0BmE,W,EAAYC,Y,EAAa;AACnD,QAAKpE,EAAL,GAAUmE,WAAV;AACA,OAAIH,YAAY,CAACxE,iBAAiB,KAAKiC,cAAL,CAAoB0C,cAAYC,YAAhC,CAAlB,IAAmE,CAAnF;AACA,QAAK,IAAI/B,IAAI,CAAb,EAAgBA,IAAI2B,SAApB,EAA+B3B,GAA/B,EAAoC;AACnC,SAAKrC,EAAL,IAAW,GAAX;AACA;AACD,QAAKA,EAAL,IAAWoE,YAAX;AACA,QAAKpE,EAAL,IAAW,IAAX;AACA,UAAO,KAAKA,EAAZ;AACA;;AAGD;;;;;;8BAGmBqE,I,EAAMC,W,EAAaC,K,EAAO;AAC5C,OAAID,eAAe,CAAnB,EAAsB;AACrB,WAAOD,IAAP;AACA;AACD,OAAI,CAACE,KAAL,EAAY;AACXD,kBAAcA,cAAc,CAA5B;AACA;AACD,QAAK,IAAIjC,IAAI,CAAb,EAAgBA,IAAIiC,WAApB,EAAiCjC,GAAjC,EAAsC;AACrCgC,YAAQ,GAAR;AACA;AACD,UAAOA,IAAP;AACA;;AAED;;;;;;mCAGwBhB,K,EAAO;AAC9B,OAAImB,SAAS,EAAb;AACA,QAAK,IAAInC,IAAI,CAAb,EAAgBA,IAAI7C,iBAAiB,CAArC,EAAwC6C,GAAxC,EAA6C;AAC5CmC,cAAUnB,SAAS,GAAnB;AACA;AACDmB,aAAU,IAAV;AACA,UAAOA,MAAP;AACA;;AAED;;;;;;sCAG2B;AAC1B,OAAIA,SAAS,EAAb;AACA,QAAK,IAAInC,IAAI,CAAb,EAAgBA,IAAI7C,iBAAiB,CAArC,EAAwC6C,GAAxC,EAA6C;AAC5CmC,cAAU,GAAV;AACA;AACDA,aAAU,IAAV;AACA,UAAOA,MAAP;AACA;;;+BAEmBC,M,EAAQC,S,EAAW;AACtC,OAAI,CAACD,MAAD,IAAWC,aAAa,CAA5B,EAA+B;AAC9B,WAAO,EAAP;AACA;;AAED,OAAIvE,OAAO,EAAX;AACA,OAAIwE,cAAc,KAAK5C,YAAL,CAAkB0C,MAAlB,CAAlB;AACA,OAAIG,cAAc,CAAlB;AACA,OAAItE,QAAQ,CAAZ;AACA,UAAOsE,cAAcD,YAAY5E,MAAjC,EAAyC;AACxC,QAAIkC,MAAMyC,SAAV;AACA,QAAIE,cAAc3C,GAAd,GAAoB0C,YAAY5E,MAApC,EAA4C;AAC3CkC,WAAM0C,YAAY5E,MAAZ,GAAqB6E,WAA3B;AACA;AACD,QAAIC,SAAS,KAAKC,YAAL,CAAkBH,YAAYI,KAAZ,CAAkBH,WAAlB,EAA+BA,cAAc3C,GAA7C,CAAlB,CAAb;AACA,QAAI4C,OAAO9E,MAAP,GAAgB0E,OAAO1E,MAA3B,EAAmC;AAClC8E,cAASA,OAAOf,MAAP,CAAc,CAAd,EAAiBW,OAAO1E,MAAxB,CAAT;AACA;AACD,QAAIiF,YAAY1E,QAAQuE,OAAO9E,MAAf,GAAwB,CAAxC;AACA,QAAIiF,YAAYP,OAAO1E,MAAvB,EAA+B;AAC9B,SAAI8E,OAAOhB,MAAP,CAAcgB,OAAO9E,MAAP,GAAgB,CAA9B,KAAoC0E,OAAOZ,MAAP,CAAcmB,SAAd,CAAxC,EAAkE;AACjE,UAAI3C,IAAI,CAAR;AACA,aAAO,IAAP,EAAa;AACZ,WAAIwC,OAAO9E,MAAP,IAAiB,CAAjB,IAAsBsC,IAAI,CAA9B,EAAiC;AAChC;AACA;AACD,WAAIwC,OAAOlB,QAAP,CAAgB,GAAhB,CAAJ,EAA0B;AACzBkB,iBAASA,OAAOf,MAAP,CAAc,CAAd,EAAiBe,OAAO9E,MAAP,GAAgB,CAAjC,CAAT;AACAkC,cAAM,KAAKF,YAAL,CAAkB8C,MAAlB,EAA0B9E,MAAhC;AACA,QAHD,MAGO;AACN;AACA;AACDsC;AACA;AAED;AACD,KAjBD,MAiBO;AACNwC,cAASA,OAAOf,MAAP,CAAc,CAAd,EAAiBe,OAAO9E,MAAP,GAAgB,CAAjC,CAAT;AACAkC,WAAM,KAAKF,YAAL,CAAkB8C,MAAlB,EAA0B9E,MAAhC;AACA;;AAED,QAAIkC,OAAO,CAAX,EAAc;AACb,YAAO9B,IAAP;AACA;AACDyE,mBAAe3C,GAAf;AACA3B,aAASuE,OAAO9E,MAAhB;AACA,QAAIkF,cAAc,CAAlB;AACA,QAAIJ,MAAJ,EAAY;AACXI,mBAAc,KAAKxD,cAAL,CAAoBoD,MAApB,CAAd;AACA;AACD,QAAIK,YAAY,CAACR,YAAYO,WAAb,IAA4B,CAA5C;AACA,QAAIE,UAAUN,MAAd;AACA,SAAK,IAAIxC,MAAI,CAAb,EAAgBA,MAAI6C,SAApB,EAA+B7C,KAA/B,EAAoC;AACnC,SAAI6C,aAAa,CAAjB,EACCC,WAAW,GAAX;AACD;AACDhF,SAAKc,IAAL,CAAUkE,OAAV;AACA;AACD,UAAOhF,IAAP;AACA;;AAED;;;;;;;+BAIoBiF,I,EAAM;AAAA;;AACzB,OAAIC,MAAM,CAAV;AACA,OAAIC,YAAJ;AACAF,QAAKtE,OAAL,CAAa,UAACC,IAAD,EAAU;AACtBuE,UAAM,OAAK7D,cAAL,CAAoBV,IAApB,CAAN;AACA,QAAIuE,MAAMD,GAAV,EAAe;AACdA,WAAMC,GAAN;AACA;AACD,IALD;AAMA,UAAOD,GAAP;AACA;;;iCAEqBE,G,EAAK;AAC1B,OAAItD,MAAM,CAAV;AACA,OAAI,CAACsD,GAAL,EAAU,OAAOtD,GAAP;AACV,QAAK,IAAII,IAAI,CAAb,EAAgBA,IAAIkD,IAAIxF,MAAxB,EAAgCsC,GAAhC,EAAqC;AACpC,QAAItC,SAASwF,IAAIC,UAAJ,CAAenD,CAAf,CAAb;AACA,QAAItC,UAAU,CAAV,IAAeA,UAAU,GAA7B,EAAkC;AACjCkC,YAAO,CAAP;AACA,KAFD,MAGK;AACJA,YAAO,CAAP;AACA;AACD;AACD,UAAOA,GAAP;AACA;;;+BAEmBwD,G,EAAK;AACxB,OAAIC,QAAQ,IAAIC,KAAJ,EAAZ;AACA,OAAI1D,GAAJ,EAAS2D,CAAT;AACA3D,SAAMwD,OAAOA,IAAI1F,MAAX,IAAqB,CAA3B;AACA,QAAK,IAAIsC,IAAI,CAAb,EAAgBA,IAAIJ,GAApB,EAAyBI,GAAzB,EAA8B;AAC7BuD,QAAIH,IAAID,UAAJ,CAAenD,CAAf,CAAJ;AACA,QAAIuD,KAAK,QAAL,IAAiBA,KAAK,QAA1B,EAAoC;AACnCF,WAAMzE,IAAN,CAAa2E,KAAK,EAAN,GAAY,IAAb,GAAqB,IAAhC;AACAF,WAAMzE,IAAN,CAAa2E,KAAK,EAAN,GAAY,IAAb,GAAqB,IAAhC;AACAF,WAAMzE,IAAN,CAAa2E,KAAK,CAAN,GAAW,IAAZ,GAAoB,IAA/B;AACAF,WAAMzE,IAAN,CAAY2E,IAAI,IAAL,GAAa,IAAxB;AACA,KALD,MAKO,IAAIA,KAAK,QAAL,IAAiBA,KAAK,QAA1B,EAAoC;AAC1CF,WAAMzE,IAAN,CAAa2E,KAAK,EAAN,GAAY,IAAb,GAAqB,IAAhC;AACAF,WAAMzE,IAAN,CAAa2E,KAAK,CAAN,GAAW,IAAZ,GAAoB,IAA/B;AACAF,WAAMzE,IAAN,CAAY2E,IAAI,IAAL,GAAa,IAAxB;AACA,KAJM,MAIA,IAAIA,KAAK,QAAL,IAAiBA,KAAK,QAA1B,EAAoC;AAC1CF,WAAMzE,IAAN,CAAa2E,KAAK,CAAN,GAAW,IAAZ,GAAoB,IAA/B;AACAF,WAAMzE,IAAN,CAAY2E,IAAI,IAAL,GAAa,IAAxB;AACA,KAHM,MAGA;AACNF,WAAMzE,IAAN,CAAW2E,IAAI,IAAf;AACA;AACD;AACD,UAAOF,KAAP;AACA;;;+BAEmBG,G,EAAK;AACxB,OAAI,OAAOA,GAAP,KAAe,QAAnB,EAA6B;AAC5B,WAAOA,GAAP;AACA;AACD,OAAIJ,MAAM,EAAV;AAAA,OACCK,OAAOD,GADR;AAEA,QAAK,IAAIxD,IAAI,CAAb,EAAgBA,IAAIyD,KAAK/F,MAAzB,EAAiCsC,GAAjC,EAAsC;AACrC,QAAI0D,MAAMD,KAAKzD,CAAL,EAAQI,QAAR,CAAiB,CAAjB,CAAV;AAAA,QACCuD,IAAID,IAAIE,KAAJ,CAAU,WAAV,CADL;AAEA,QAAID,KAAKD,IAAIhG,MAAJ,IAAc,CAAvB,EAA0B;AACzB,SAAImG,cAAcF,EAAE,CAAF,EAAKjG,MAAvB;AACA,SAAIoG,QAAQL,KAAKzD,CAAL,EAAQI,QAAR,CAAiB,CAAjB,EAAoBsC,KAApB,CAA0B,IAAImB,WAA9B,CAAZ;AACA,UAAK,IAAIE,KAAK,CAAd,EAAiBA,KAAKF,WAAtB,EAAmCE,IAAnC,EAAyC;AACxC,UAAKA,KAAK/D,CAAN,GAAWyD,KAAK/F,MAApB,EACCoG,SAASL,KAAKM,KAAK/D,CAAV,EAAaI,QAAb,CAAsB,CAAtB,EAAyBsC,KAAzB,CAA+B,CAA/B,CAAT;AACD;AACD,SAAI1B,QAAQgD,OAAOC,YAAP,CAAoBjF,SAAS8E,KAAT,EAAgB,CAAhB,CAApB,CAAZ;AACA,SAAII,aAAalD,MAAMmC,UAAN,EAAjB;AACA,SAAKe,cAAc,CAAd,IAAmBA,cAAc,EAAlC,IAAyCA,cAAc,GAA3D,EAAgE;AAC/D;AACAlD,cAAQ,GAAR;AACA;AACDoC,YAAOpC,KAAP;AACAhB,UAAK6D,cAAc,CAAnB;AACA,KAfD,MAeO;AACNT,YAAOY,OAAOC,YAAP,CAAoBR,KAAKzD,CAAL,CAApB,CAAP;AACA;AACD;AACD,UAAOoD,GAAP;AACA;;;;;kBAGa9F,iB","file":"BTPrintFormatUtil.js","sourcesContent":["let LINE_BYTE_SIZE = 32;\r\nconst CHANGE_LINE = '\\n';\r\nconst SLASH = '\\/';\r\n\r\nclass BTPrintFormatUtil {\r\n\r\n\tstatic setLineByteSize(size) {\r\n\t\tLINE_BYTE_SIZE = size;\r\n\t}\r\n\r\n\tstatic printMenuMSG(bodyValueList, mhList) {\r\n\t\tif (!mhList || mhList.length == 0) {\r\n\t\t\treturn '';\r\n\t\t}\r\n\t\tthis.sb = '';\r\n\t\tlet tabHeaderByte = 4;\r\n\t\t// 对明细分层次渲染。\r\n\t\tfunction renderTableByStep(list, _this) {\r\n\t\t\tlet constr = '', index = 0, occupyedBytes = 0;\r\n\t\t\tlet topWeight = 0, contentWeight = 0, bottomWeight = 0, top = [], content = [], bottom = [];\r\n\t\t\tlist.forEach(item => {\r\n\t\t\t\tif (item.isTitle) {\r\n\t\t\t\t\ttop.push(item);\r\n\t\t\t\t\ttopWeight += item.headerWeight;\r\n\t\t\t\t} else if (item.isFoot) {\r\n\t\t\t\t\tbottom.push(item);\r\n\t\t\t\t\tbottomWeight += item.headerWeight;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tcontent.push(item);\r\n\t\t\t\t\tcontentWeight += item.headerWeight;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tindex = 0;\r\n\t\t\toccupyedBytes = 0;\r\n\t\t\ttop.forEach(mh => {\r\n\t\t\t\tlet occupyedByte = parseInt((LINE_BYTE_SIZE * mh.headerWeight / topWeight));\r\n\t\t\t\toccupyedBytes += occupyedByte;\r\n\t\t\t\tmh.headerOccupyBytes = occupyedByte;\r\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\r\n\t\t\t\tif (index == top.length - 1) {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = true;\r\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t\tconstr += _this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = false;\r\n\t\t\t\t\tmh.drawText = mh.headerText + SLASH;\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t}\r\n\t\t\t\tindex++;\r\n\t\t\t})\r\n\t\t\tindex = 0;\r\n\t\t\toccupyedBytes = 0;\r\n\t\t\tcontent.forEach(mh => {\r\n\t\t\t\tlet occupyedByte = parseInt(((LINE_BYTE_SIZE * mh.headerWeight - tabHeaderByte) / contentWeight));\r\n\t\t\t\tmh.headerOccupyBytes = _this.stringToByte(mh.headerText).length;\r\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\r\n\t\t\t\tif (mh.headerOccupyBytes < occupyedByte) {\r\n\t\t\t\t\tmh.headerOccupyBytes = occupyedByte;\r\n\t\t\t\t}\r\n\t\t\t\tif (mh.headerOccupyLength < occupyedByte) {\r\n\t\t\t\t\tmh.headerOccupyLength = occupyedByte;\r\n\t\t\t\t}\r\n\t\t\t\tif (index == content.length - 1) {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = true;\r\n\t\t\t\t\tmh.headerOccupyBytes = LINE_BYTE_SIZE - occupyedBytes;\r\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = false;\r\n\t\t\t\t\toccupyedBytes += occupyedByte;\r\n\t\t\t\t\tlet blankBytes = occupyedByte - _this.getBytesLength(mh.headerText);\r\n\t\t\t\t\tif (blankBytes <= 0) {\r\n\t\t\t\t\t\tmh.headerText += \" \";\r\n\t\t\t\t\t\tlet len = _this.getBytesLength(\" \");\r\n\t\t\t\t\t\toccupyedBytes += len;\r\n\t\t\t\t\t\tmh.headerOccupyBytes += len;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tmh.drawText = _this.concatBlank(mh.headerText, blankBytes, true);\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t}\r\n\t\t\t\tindex++;\r\n\t\t\t})\r\n\t\t\tindex = 0;\r\n\t\t\toccupyedBytes = 0;\r\n\t\t\tbottom.forEach(mh => {\r\n\t\t\t\tlet occupyedByte = parseInt((LINE_BYTE_SIZE * mh.headerWeight / bottomWeight));\r\n\t\t\t\toccupyedBytes += occupyedByte;\r\n\t\t\t\tmh.headerOccupyBytes = occupyedByte;\r\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\r\n\t\t\t\tif (index == bottom.length - 1) {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = true;\r\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\r\n\t\t\t\t\t//constr += mh.drawText;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = false;\r\n\t\t\t\t\tmh.drawText = mh.headerText + SLASH;\r\n\t\t\t\t\t//constr += mh.drawText;\r\n\t\t\t\t}\r\n\t\t\t\tindex++;\r\n\t\t\t})\r\n\t\t\treturn constr;\r\n\t\t}\r\n\t\tthis.sb += renderTableByStep(mhList, this);\r\n\t\t// 画分隔线\r\n\t\tthis.sb += this.drawSeparateLine();\r\n\r\n\t\tlet headerSize = mhList.length;\r\n\t\tlet valueListSize = bodyValueList.length;\r\n\t\t// 重新计算表体的集合,如果超过限度,折行显示 将一条数据拆成多条\r\n\t\tfor (let i = 0; i < valueListSize; i++) {\r\n\t\t\tlet maxLine = 1;\r\n\t\t\tlet rowValue = bodyValueList[i];\r\n\t\t\trowValue = rowValue.map(item => {\r\n\t\t\t\tif (!item) {\r\n\t\t\t\t\treturn '';\r\n\t\t\t\t}\r\n\t\t\t\treturn item.toString();\r\n\t\t\t});\r\n\t\t\tlet stringArrayMap = new Map();\r\n\t\t\tlet topContents = '', rowContents = '', bottomContents = '';\r\n\t\t\tfor (let j = 0; j < headerSize; j++) {\r\n\t\t\t\tlet mh = mhList[j];\r\n\t\t\t\tif (mh.isTitle === true) {\r\n\t\t\t\t\tif (mh.start === true) {\r\n\t\t\t\t\t\ttopContents += ((i + 1) + \".\" + rowValue[j]);\r\n\t\t\t\t\t\tif (mh.end === true) {\r\n\t\t\t\t\t\t\ttopContents += CHANGE_LINE;\r\n\t\t\t\t\t\t\ttopContents += this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (mh.start === false) {\r\n\t\t\t\t\t\tif (mh.end === true) {\r\n\t\t\t\t\t\t\ttopContents += SLASH + rowValue[j] + CHANGE_LINE;\r\n\t\t\t\t\t\t\ttopContents += this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\t\t\t} else if (mh.end === false) {\r\n\t\t\t\t\t\t\ttopContents += SLASH + rowValue[j];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (mh.isFoot === true) {\r\n\t\t\t\t\tif (mh.start === true) {\r\n\t\t\t\t\t\tbottomContents += rowValue[j];\r\n\t\t\t\t\t\tif (mh.end === true && bottomContents) {\r\n\t\t\t\t\t\t\tbottomContents = \"备注:\" + bottomContents + CHANGE_LINE\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (mh.start === false) {\r\n\t\t\t\t\t\tif (mh.end === true) {\r\n\t\t\t\t\t\t\tbottomContents += SLASH + rowValue[j] + CHANGE_LINE;\r\n\t\t\t\t\t\t} else if (mh.end === false) {\r\n\t\t\t\t\t\t\tbottomContents += SLASH + rowValue[j];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// 最多需要多少行 展示下 处理内容较长换行的情况\r\n\t\t\t\t\t// 每列都计算需要的行数,然后取最大值\r\n\t\t\t\t\tlet oldValue = rowValue[j]\r\n\t\t\t\t\tlet rowsValue = this.getSubString(oldValue, mh.headerOccupyBytes);\r\n\t\t\t\t\tlet subRowSize = rowsValue.length;\r\n\t\t\t\t\tfor (let subRow = 0; subRow < subRowSize; subRow++) {\r\n\t\t\t\t\t\tlet key = subRow.toString() + j.toString();\r\n\t\t\t\t\t\tlet value = rowsValue[subRow];\r\n\t\t\t\t\t\tlet blankBytes = mh.headerOccupyLength - this.getBytesLength(value);\r\n\t\t\t\t\t\tstringArrayMap.set(key, this.concatBlank(value, blankBytes, true));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (subRowSize > maxLine) {\r\n\t\t\t\t\t\tmaxLine = subRowSize;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tfor (let row = 0; row < maxLine; row++) {\r\n\t\t\t\tif (row > 0) rowContents += this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\tfor (let column = 0; column < headerSize; column++) {\r\n\t\t\t\t\tlet key = row.toString() + column.toString();\r\n\t\t\t\t\tlet value = stringArrayMap.get(key);\r\n\t\t\t\t\tlet mh = mhList[column];\r\n\t\t\t\t\tif (mh.isTitle === true) {\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tlet spaceLen = mh.headerOccupyLength;\r\n\t\t\t\t\tif (key.endsWith('0')) {\r\n\t\t\t\t\t\tspaceLen = LINE_BYTE_SIZE == 32 ? 5 : 8;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tvalue = value ? value : this.concatBlank('', spaceLen, true);\r\n\t\t\t\t\trowContents += value;\r\n\t\t\t\t}\r\n\t\t\t\tlet tempContents = rowContents;\r\n\t\t\t\tfor (let i = tempContents.length - 1; i >= 0; i--) {\r\n\t\t\t\t\tif (tempContents.charAt(i) != \" \") {\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t\trowContents = tempContents.substr(0, i);\r\n\t\t\t\t}\r\n\t\t\t\trowContents += \"\\n\";\r\n\t\t\t}\r\n\t\t\tthis.sb += topContents;\r\n\t\t\tthis.sb += rowContents;\r\n\t\t\tthis.sb += bottomContents;\r\n\t\t}\r\n\t\tthis.sb += this.drawSeparateLine();\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\t/**\r\n\t * 排版居中标题\r\n\t *\r\n\t */\r\n\tstatic printTitle(title) {\r\n\t\tthis.sb = '';\r\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(title)) / 2;\r\n\t\tfor (let i = 0; i < spaceSize; i++) {\r\n\t\t\tthis.sb += \" \";\r\n\t\t}\r\n\t\tthis.sb += title;\r\n\t\tthis.sb += \"\\n\";\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\t/**\r\n\t * 排版居中标题带*\r\n\t *\r\n\t */\r\n\tstatic printStarTitle(title) {\r\n\t\tthis.sb = '';\r\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(title)) / 2;\r\n\t\tfor (let i = 0; i < spaceSize/2; i++) {\r\n\t\t\tthis.sb += \"* \";\r\n\t\t}\r\n\t\tthis.sb += title;\r\n\t\tfor (let i = 0; i < spaceSize/2; i++) {\r\n\t\t\tthis.sb += \"* \";\r\n\t\t}\r\n\t\tthis.sb += \"\\n\";\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\t/**\r\n\t * 排版居左对齐\r\n\t */\r\n\tstatic leftPrintMsg(middleMsgMap) {\r\n\t\tthis.sb = '';\r\n\r\n\t\tfor (let item of middleMsgMap.entries()) {\r\n\t\t\tlet key = item[0];\r\n\t\t\tlet content = key == 'noTitle' ? item[1] : (key + \":\" + item[1])\r\n\t\t\tthis.sb += content;\r\n\t\t\tthis.sb += \"\\n\";\r\n\t\t}\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\tstatic spaceCenterPrintMsg(firstString,secondString){\r\n\t\tthis.sb = firstString;\r\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(firstString+secondString)) / 2;\r\n\t\tfor (let i = 0; i < spaceSize; i++) {\r\n\t\t\tthis.sb += \" \";\r\n\t\t}\r\n\t\tthis.sb += secondString;\r\n\t\tthis.sb += \"\\n\";\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\r\n\t/**\r\n \t * 补全空格\r\n */\r\n\tstatic concatBlank(text, blankLength, isAll) {\r\n\t\tif (blankLength <= 0) {\r\n\t\t\treturn text;\r\n\t\t}\r\n\t\tif (!isAll) {\r\n\t\t\tblankLength = blankLength / 2;\r\n\t\t}\r\n\t\tfor (let i = 0; i < blankLength; i++) {\r\n\t\t\ttext += \" \";\r\n\t\t}\r\n\t\treturn text;\r\n\t}\r\n\r\n\t/**\r\n\t * 画分割线\r\n\t */\r\n\tstatic drawSeparateLine(value) {\r\n\t\tlet buffer = \"\";\r\n\t\tfor (let i = 0; i < LINE_BYTE_SIZE - 1; i++) {\r\n\t\t\tbuffer += value || '-';\r\n\t\t}\r\n\t\tbuffer += '\\n';\r\n\t\treturn buffer;\r\n\t}\r\n\r\n\t/**\r\n\t * 画分割线\r\n\t */\r\n\tstatic drawSeparateLine2() {\r\n\t\tlet buffer = \"\";\r\n\t\tfor (let i = 0; i < LINE_BYTE_SIZE - 1; i++) {\r\n\t\t\tbuffer += '=';\r\n\t\t}\r\n\t\tbuffer += '\\n';\r\n\t\treturn buffer;\r\n\t}\r\n\r\n\tstatic getSubString(oriStr, subStrLen) {\r\n\t\tif (!oriStr || subStrLen <= 0) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\r\n\t\tlet list = [];\r\n\t\tlet subStrBytes = this.stringToByte(oriStr);\r\n\t\tlet subStrIndex = 0;\r\n\t\tlet index = 0;\r\n\t\twhile (subStrIndex < subStrBytes.length) {\r\n\t\t\tlet len = subStrLen;\r\n\t\t\tif (subStrIndex + len > subStrBytes.length) {\r\n\t\t\t\tlen = subStrBytes.length - subStrIndex;\r\n\t\t\t}\r\n\t\t\tlet subStr = this.byteToString(subStrBytes.slice(subStrIndex, subStrIndex + len));\r\n\t\t\tif (subStr.length > oriStr.length) {\r\n\t\t\t\tsubStr = subStr.substr(0, oriStr.length);\r\n\t\t\t}\r\n\t\t\tlet tempindex = index + subStr.length - 1;\r\n\t\t\tif (tempindex < oriStr.length) {\r\n\t\t\t\tif (subStr.charAt(subStr.length - 1) != oriStr.charAt(tempindex)) {\r\n\t\t\t\t\tlet i = 7;\r\n\t\t\t\t\twhile (true) {\r\n\t\t\t\t\t\tif (subStr.length == 0 || i < 0) {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (subStr.endsWith(\"�\")) {\r\n\t\t\t\t\t\t\tsubStr = subStr.substr(0, subStr.length - 1);\r\n\t\t\t\t\t\t\tlen = this.stringToByte(subStr).length;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\ti--;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tsubStr = subStr.substr(0, subStr.length - 2);\r\n\t\t\t\tlen = this.stringToByte(subStr).length;\r\n\t\t\t}\r\n\r\n\t\t\tif (len <= 0) {\r\n\t\t\t\treturn list;\r\n\t\t\t}\r\n\t\t\tsubStrIndex += len;\r\n\t\t\tindex += subStr.length;\r\n\t\t\tlet strByteSize = 0;\r\n\t\t\tif (subStr) {\r\n\t\t\t\tstrByteSize = this.getBytesLength(subStr);\r\n\t\t\t}\r\n\t\t\tlet fillBlank = (subStrLen - strByteSize) / 2;\r\n\t\t\tlet sbuffer = subStr;\r\n\t\t\tfor (let i = 0; i < fillBlank; i++) {\r\n\t\t\t\tif (fillBlank >= 1)\r\n\t\t\t\t\tsbuffer += \" \";\r\n\t\t\t}\r\n\t\t\tlist.push(sbuffer);\r\n\t\t}\r\n\t\treturn list;\r\n\t}\r\n\r\n\t/**\r\n\t * 获取最大长度\r\n\t *\r\n\t */\r\n\tstatic getMaxLength(msgs) {\r\n\t\tlet max = 0;\r\n\t\tlet tmp;\r\n\t\tmsgs.forEach((item) => {\r\n\t\t\ttmp = this.getBytesLength(item);\r\n\t\t\tif (tmp > max) {\r\n\t\t\t\tmax = tmp;\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn max;\r\n\t}\r\n\r\n\tstatic getBytesLength(val) {\r\n\t\tvar len = 0;\r\n\t\tif (!val) return len;\r\n\t\tfor (var i = 0; i < val.length; i++) {\r\n\t\t\tvar length = val.charCodeAt(i);\r\n\t\t\tif (length >= 0 && length <= 128) {\r\n\t\t\t\tlen += 1;\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tlen += 2;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn len;\r\n\t}\r\n\r\n\tstatic stringToByte(str) {\r\n\t\tvar bytes = new Array();\r\n\t\tvar len, c;\r\n\t\tlen = str && str.length || 0;\r\n\t\tfor (var i = 0; i < len; i++) {\r\n\t\t\tc = str.charCodeAt(i);\r\n\t\t\tif (c >= 0x010000 && c <= 0x10FFFF) {\r\n\t\t\t\tbytes.push(((c >> 18) & 0x07) | 0xF0);\r\n\t\t\t\tbytes.push(((c >> 12) & 0x3F) | 0x80);\r\n\t\t\t\tbytes.push(((c >> 6) & 0x3F) | 0x80);\r\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\r\n\t\t\t} else if (c >= 0x000800 && c <= 0x00FFFF) {\r\n\t\t\t\tbytes.push(((c >> 12) & 0x0F) | 0xE0);\r\n\t\t\t\tbytes.push(((c >> 6) & 0x3F) | 0x80);\r\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\r\n\t\t\t} else if (c >= 0x000080 && c <= 0x0007FF) {\r\n\t\t\t\tbytes.push(((c >> 6) & 0x1F) | 0xC0);\r\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\r\n\t\t\t} else {\r\n\t\t\t\tbytes.push(c & 0xFF);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn bytes;\r\n\t}\r\n\r\n\tstatic byteToString(arr) {\r\n\t\tif (typeof arr === 'string') {\r\n\t\t\treturn arr;\r\n\t\t}\r\n\t\tvar str = '',\r\n\t\t\t_arr = arr;\r\n\t\tfor (var i = 0; i < _arr.length; i++) {\r\n\t\t\tvar one = _arr[i].toString(2),\r\n\t\t\t\tv = one.match(/^1+?(?=0)/);\r\n\t\t\tif (v && one.length == 8) {\r\n\t\t\t\tvar bytesLength = v[0].length;\r\n\t\t\t\tvar store = _arr[i].toString(2).slice(7 - bytesLength);\r\n\t\t\t\tfor (var st = 1; st < bytesLength; st++) {\r\n\t\t\t\t\tif ((st + i) < _arr.length)\r\n\t\t\t\t\t\tstore += _arr[st + i].toString(2).slice(2);\r\n\t\t\t\t}\r\n\t\t\t\tlet value = String.fromCharCode(parseInt(store, 2));\r\n\t\t\t\tlet asciiValue = value.charCodeAt()\r\n\t\t\t\tif ((asciiValue >= 0 && asciiValue <= 32) || asciiValue == 127) {\r\n\t\t\t\t\t//不可见字符变成�\r\n\t\t\t\t\tvalue = \"�\";\r\n\t\t\t\t}\r\n\t\t\t\tstr += value;\r\n\t\t\t\ti += bytesLength - 1;\r\n\t\t\t} else {\r\n\t\t\t\tstr += String.fromCharCode(_arr[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn str;\r\n\t}\r\n}\r\n\r\nexport default BTPrintFormatUtil;"]}
|
1
|
+
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/BTPrintFormatUtil.js"],"names":["LINE_BYTE_SIZE","CHANGE_LINE","SLASH","BTPrintFormatUtil","size","bodyValueList","mhList","length","sb","tabHeaderByte","renderTableByStep","list","_this","constr","index","occupyedBytes","topWeight","contentWeight","bottomWeight","top","content","bottom","forEach","item","isTitle","push","headerWeight","isFoot","occupyedByte","parseInt","mh","headerOccupyBytes","headerOccupyLength","getBytesLength","headerText","start","end","drawText","concatBlank","stringToByte","blankBytes","len","drawSeparateLine","headerSize","valueListSize","i","maxLine","rowValue","map","toString","stringArrayMap","topContents","rowContents","bottomContents","j","oldValue","rowsValue","getSubString","subRowSize","subRow","key","value","set","row","column","get","spaceLen","endsWith","tempContents","charAt","substr","title","spaceSize","middleMsgMap","entries","firstString","secondString","text","blankLength","isAll","buffer","oriStr","subStrLen","subStrBytes","subStrIndex","subStr","byteToString","slice","tempindex","strByteSize","fillBlank","sbuffer","msgs","max","tmp","val","charCodeAt","str","bytes","Array","c","arr","_arr","one","v","match","bytesLength","store","st","String","fromCharCode","asciiValue"],"mappings":"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","file":"BTPrintFormatUtil.js","sourcesContent":["let LINE_BYTE_SIZE = 32;\nconst CHANGE_LINE = '\\n';\nconst SLASH = '\\/';\n\nclass BTPrintFormatUtil {\n\n\tstatic setLineByteSize(size) {\n\t\tLINE_BYTE_SIZE = size;\n\t}\n\n\tstatic printMenuMSG(bodyValueList, mhList) {\n\t\tif (!mhList || mhList.length == 0) {\n\t\t\treturn '';\n\t\t}\n\t\tthis.sb = '';\n\t\tlet tabHeaderByte = 4;\n\t\t// 对明细分层次渲染。\n\t\tfunction renderTableByStep(list, _this) {\n\t\t\tlet constr = '', index = 0, occupyedBytes = 0;\n\t\t\tlet topWeight = 0, contentWeight = 0, bottomWeight = 0, top = [], content = [], bottom = [];\n\t\t\tlist.forEach(item => {\n\t\t\t\tif (item.isTitle) {\n\t\t\t\t\ttop.push(item);\n\t\t\t\t\ttopWeight += item.headerWeight;\n\t\t\t\t} else if (item.isFoot) {\n\t\t\t\t\tbottom.push(item);\n\t\t\t\t\tbottomWeight += item.headerWeight;\n\t\t\t\t} else {\n\t\t\t\t\tcontent.push(item);\n\t\t\t\t\tcontentWeight += item.headerWeight;\n\t\t\t\t}\n\t\t\t})\n\t\t\tindex = 0;\n\t\t\toccupyedBytes = 0;\n\t\t\ttop.forEach(mh => {\n\t\t\t\tlet occupyedByte = parseInt((LINE_BYTE_SIZE * mh.headerWeight / topWeight));\n\t\t\t\toccupyedBytes += occupyedByte;\n\t\t\t\tmh.headerOccupyBytes = occupyedByte;\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\n\t\t\t\tif (index == top.length - 1) {\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\n\t\t\t\t\tmh.end = true;\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\n\t\t\t\t\tconstr += mh.drawText;\n\t\t\t\t\tconstr += _this.concatBlank('', tabHeaderByte, true);\n\t\t\t\t} else {\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\n\t\t\t\t\tmh.end = false;\n\t\t\t\t\tmh.drawText = mh.headerText + SLASH;\n\t\t\t\t\tconstr += mh.drawText;\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t})\n\t\t\tindex = 0;\n\t\t\toccupyedBytes = 0;\n\t\t\tcontent.forEach(mh => {\n\t\t\t\tlet occupyedByte = parseInt(((LINE_BYTE_SIZE * mh.headerWeight - tabHeaderByte) / contentWeight));\n\t\t\t\tmh.headerOccupyBytes = _this.stringToByte(mh.headerText).length;\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\n\t\t\t\tif (mh.headerOccupyBytes < occupyedByte) {\n\t\t\t\t\tmh.headerOccupyBytes = occupyedByte;\n\t\t\t\t}\n\t\t\t\tif (mh.headerOccupyLength < occupyedByte) {\n\t\t\t\t\tmh.headerOccupyLength = occupyedByte;\n\t\t\t\t}\n\t\t\t\tif (index == content.length - 1) {\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\n\t\t\t\t\tmh.end = true;\n\t\t\t\t\tmh.headerOccupyBytes = LINE_BYTE_SIZE - occupyedBytes;\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\n\t\t\t\t\tconstr += mh.drawText;\n\t\t\t\t} else {\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\n\t\t\t\t\tmh.end = false;\n\t\t\t\t\toccupyedBytes += occupyedByte;\n\t\t\t\t\tlet blankBytes = occupyedByte - _this.getBytesLength(mh.headerText);\n\t\t\t\t\tif (blankBytes <= 0) {\n\t\t\t\t\t\tmh.headerText += \" \";\n\t\t\t\t\t\tlet len = _this.getBytesLength(\" \");\n\t\t\t\t\t\toccupyedBytes += len;\n\t\t\t\t\t\tmh.headerOccupyBytes += len;\n\t\t\t\t\t}\n\t\t\t\t\tmh.drawText = _this.concatBlank(mh.headerText, blankBytes, true);\n\t\t\t\t\tconstr += mh.drawText;\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t})\n\t\t\tindex = 0;\n\t\t\toccupyedBytes = 0;\n\t\t\tbottom.forEach(mh => {\n\t\t\t\tlet occupyedByte = parseInt((LINE_BYTE_SIZE * mh.headerWeight / bottomWeight));\n\t\t\t\toccupyedBytes += occupyedByte;\n\t\t\t\tmh.headerOccupyBytes = occupyedByte;\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\n\t\t\t\tif (index == bottom.length - 1) {\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\n\t\t\t\t\tmh.end = true;\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\n\t\t\t\t\t//constr += mh.drawText;\n\t\t\t\t} else {\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\n\t\t\t\t\tmh.end = false;\n\t\t\t\t\tmh.drawText = mh.headerText + SLASH;\n\t\t\t\t\t//constr += mh.drawText;\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t})\n\t\t\treturn constr;\n\t\t}\n\t\tthis.sb += renderTableByStep(mhList, this);\n\t\t// 画分隔线\n\t\tthis.sb += this.drawSeparateLine();\n\n\t\tlet headerSize = mhList.length;\n\t\tlet valueListSize = bodyValueList.length;\n\t\t// 重新计算表体的集合,如果超过限度,折行显示 将一条数据拆成多条\n\t\tfor (let i = 0; i < valueListSize; i++) {\n\t\t\tlet maxLine = 1;\n\t\t\tlet rowValue = bodyValueList[i];\n\t\t\trowValue = rowValue.map(item => {\n\t\t\t\tif (!item) {\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\t\t\t\treturn item.toString();\n\t\t\t});\n\t\t\tlet stringArrayMap = new Map();\n\t\t\tlet topContents = '', rowContents = '', bottomContents = '';\n\t\t\tfor (let j = 0; j < headerSize; j++) {\n\t\t\t\tlet mh = mhList[j];\n\t\t\t\tif (mh.isTitle === true) {\n\t\t\t\t\tif (mh.start === true) {\n\t\t\t\t\t\ttopContents += ((i + 1) + \".\" + rowValue[j]);\n\t\t\t\t\t\tif (mh.end === true) {\n\t\t\t\t\t\t\ttopContents += CHANGE_LINE;\n\t\t\t\t\t\t\ttopContents += this.concatBlank('', tabHeaderByte, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (mh.start === false) {\n\t\t\t\t\t\tif (mh.end === true) {\n\t\t\t\t\t\t\ttopContents += SLASH + rowValue[j] + CHANGE_LINE;\n\t\t\t\t\t\t\ttopContents += this.concatBlank('', tabHeaderByte, true);\n\t\t\t\t\t\t} else if (mh.end === false) {\n\t\t\t\t\t\t\ttopContents += SLASH + rowValue[j];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else if (mh.isFoot === true) {\n\t\t\t\t\tif (mh.start === true) {\n\t\t\t\t\t\tbottomContents += rowValue[j];\n\t\t\t\t\t\tif (mh.end === true && bottomContents) {\n\t\t\t\t\t\t\tbottomContents = \"备注:\" + bottomContents + CHANGE_LINE\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (mh.start === false) {\n\t\t\t\t\t\tif (mh.end === true) {\n\t\t\t\t\t\t\tbottomContents += SLASH + rowValue[j] + CHANGE_LINE;\n\t\t\t\t\t\t} else if (mh.end === false) {\n\t\t\t\t\t\t\tbottomContents += SLASH + rowValue[j];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// 最多需要多少行 展示下 处理内容较长换行的情况\n\t\t\t\t\t// 每列都计算需要的行数,然后取最大值\n\t\t\t\t\tlet oldValue = rowValue[j]\n\t\t\t\t\tlet rowsValue = this.getSubString(oldValue, mh.headerOccupyBytes);\n\t\t\t\t\tlet subRowSize = rowsValue.length;\n\t\t\t\t\tfor (let subRow = 0; subRow < subRowSize; subRow++) {\n\t\t\t\t\t\tlet key = subRow.toString() + j.toString();\n\t\t\t\t\t\tlet value = rowsValue[subRow];\n\t\t\t\t\t\tlet blankBytes = mh.headerOccupyLength - this.getBytesLength(value);\n\t\t\t\t\t\tstringArrayMap.set(key, this.concatBlank(value, blankBytes, true));\n\t\t\t\t\t}\n\t\t\t\t\tif (subRowSize > maxLine) {\n\t\t\t\t\t\tmaxLine = subRowSize;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (let row = 0; row < maxLine; row++) {\n\t\t\t\tif (row > 0) rowContents += this.concatBlank('', tabHeaderByte, true);\n\t\t\t\tfor (let column = 0; column < headerSize; column++) {\n\t\t\t\t\tlet key = row.toString() + column.toString();\n\t\t\t\t\tlet value = stringArrayMap.get(key);\n\t\t\t\t\tlet mh = mhList[column];\n\t\t\t\t\tif (mh.isTitle === true) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tlet spaceLen = mh.headerOccupyLength;\n\t\t\t\t\tif (key.endsWith('0')) {\n\t\t\t\t\t\tspaceLen = LINE_BYTE_SIZE == 32 ? 5 : 8;\n\t\t\t\t\t}\n\t\t\t\t\tvalue = value ? value : this.concatBlank('', spaceLen, true);\n\t\t\t\t\trowContents += value;\n\t\t\t\t}\n\t\t\t\tlet tempContents = rowContents;\n\t\t\t\tfor (let i = tempContents.length - 1; i >= 0; i--) {\n\t\t\t\t\tif (tempContents.charAt(i) != \" \") {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\trowContents = tempContents.substr(0, i);\n\t\t\t\t}\n\t\t\t\trowContents += \"\\n\";\n\t\t\t}\n\t\t\tthis.sb += topContents;\n\t\t\tthis.sb += rowContents;\n\t\t\tthis.sb += bottomContents;\n\t\t}\n\t\tthis.sb += this.drawSeparateLine();\n\t\treturn this.sb;\n\t}\n\n\t/**\n\t * 排版居中标题\n\t *\n\t */\n\tstatic printTitle(title) {\n\t\tthis.sb = '';\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(title)) / 2;\n\t\tfor (let i = 0; i < spaceSize; i++) {\n\t\t\tthis.sb += \" \";\n\t\t}\n\t\tthis.sb += title;\n\t\tthis.sb += \"\\n\";\n\t\treturn this.sb;\n\t}\n\n\t/**\n\t * 排版居中标题带*\n\t *\n\t */\n\tstatic printStarTitle(title) {\n\t\tthis.sb = '';\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(title)) / 2;\n\t\tfor (let i = 0; i < spaceSize/2; i++) {\n\t\t\tthis.sb += \"* \";\n\t\t}\n\t\tthis.sb += title;\n\t\tfor (let i = 0; i < spaceSize/2; i++) {\n\t\t\tthis.sb += \"* \";\n\t\t}\n\t\tthis.sb += \"\\n\";\n\t\treturn this.sb;\n\t}\n\n\t/**\n\t * 排版居左对齐\n\t */\n\tstatic leftPrintMsg(middleMsgMap) {\n\t\tthis.sb = '';\n\n\t\tfor (let item of middleMsgMap.entries()) {\n\t\t\tlet key = item[0];\n\t\t\tlet content = key == 'noTitle' ? item[1] : (key + \":\" + item[1])\n\t\t\tthis.sb += content;\n\t\t\tthis.sb += \"\\n\";\n\t\t}\n\t\treturn this.sb;\n\t}\n\n\tstatic spaceCenterPrintMsg(firstString,secondString){\n\t\tthis.sb = firstString;\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(firstString+secondString)) / 2;\n\t\tfor (let i = 0; i < spaceSize; i++) {\n\t\t\tthis.sb += \" \";\n\t\t}\n\t\tthis.sb += secondString;\n\t\tthis.sb += \"\\n\";\n\t\treturn this.sb;\n\t}\n\n\n\t/**\n \t * 补全空格\n */\n\tstatic concatBlank(text, blankLength, isAll) {\n\t\tif (blankLength <= 0) {\n\t\t\treturn text;\n\t\t}\n\t\tif (!isAll) {\n\t\t\tblankLength = blankLength / 2;\n\t\t}\n\t\tfor (let i = 0; i < blankLength; i++) {\n\t\t\ttext += \" \";\n\t\t}\n\t\treturn text;\n\t}\n\n\t/**\n\t * 画分割线\n\t */\n\tstatic drawSeparateLine(value) {\n\t\tlet buffer = \"\";\n\t\tfor (let i = 0; i < LINE_BYTE_SIZE - 1; i++) {\n\t\t\tbuffer += value || '-';\n\t\t}\n\t\tbuffer += '\\n';\n\t\treturn buffer;\n\t}\n\n\t/**\n\t * 画分割线\n\t */\n\tstatic drawSeparateLine2() {\n\t\tlet buffer = \"\";\n\t\tfor (let i = 0; i < LINE_BYTE_SIZE - 1; i++) {\n\t\t\tbuffer += '=';\n\t\t}\n\t\tbuffer += '\\n';\n\t\treturn buffer;\n\t}\n\n\tstatic getSubString(oriStr, subStrLen) {\n\t\tif (!oriStr || subStrLen <= 0) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet list = [];\n\t\tlet subStrBytes = this.stringToByte(oriStr);\n\t\tlet subStrIndex = 0;\n\t\tlet index = 0;\n\t\twhile (subStrIndex < subStrBytes.length) {\n\t\t\tlet len = subStrLen;\n\t\t\tif (subStrIndex + len > subStrBytes.length) {\n\t\t\t\tlen = subStrBytes.length - subStrIndex;\n\t\t\t}\n\t\t\tlet subStr = this.byteToString(subStrBytes.slice(subStrIndex, subStrIndex + len));\n\t\t\tif (subStr.length > oriStr.length) {\n\t\t\t\tsubStr = subStr.substr(0, oriStr.length);\n\t\t\t}\n\t\t\tlet tempindex = index + subStr.length - 1;\n\t\t\tif (tempindex < oriStr.length) {\n\t\t\t\tif (subStr.charAt(subStr.length - 1) != oriStr.charAt(tempindex)) {\n\t\t\t\t\tlet i = 7;\n\t\t\t\t\twhile (true) {\n\t\t\t\t\t\tif (subStr.length == 0 || i < 0) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (subStr.endsWith(\"�\")) {\n\t\t\t\t\t\t\tsubStr = subStr.substr(0, subStr.length - 1);\n\t\t\t\t\t\t\tlen = this.stringToByte(subStr).length;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ti--;\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tsubStr = subStr.substr(0, subStr.length - 2);\n\t\t\t\tlen = this.stringToByte(subStr).length;\n\t\t\t}\n\n\t\t\tif (len <= 0) {\n\t\t\t\treturn list;\n\t\t\t}\n\t\t\tsubStrIndex += len;\n\t\t\tindex += subStr.length;\n\t\t\tlet strByteSize = 0;\n\t\t\tif (subStr) {\n\t\t\t\tstrByteSize = this.getBytesLength(subStr);\n\t\t\t}\n\t\t\tlet fillBlank = (subStrLen - strByteSize) / 2;\n\t\t\tlet sbuffer = subStr;\n\t\t\tfor (let i = 0; i < fillBlank; i++) {\n\t\t\t\tif (fillBlank >= 1)\n\t\t\t\t\tsbuffer += \" \";\n\t\t\t}\n\t\t\tlist.push(sbuffer);\n\t\t}\n\t\treturn list;\n\t}\n\n\t/**\n\t * 获取最大长度\n\t *\n\t */\n\tstatic getMaxLength(msgs) {\n\t\tlet max = 0;\n\t\tlet tmp;\n\t\tmsgs.forEach((item) => {\n\t\t\ttmp = this.getBytesLength(item);\n\t\t\tif (tmp > max) {\n\t\t\t\tmax = tmp;\n\t\t\t}\n\t\t});\n\t\treturn max;\n\t}\n\n\tstatic getBytesLength(val) {\n\t\tvar len = 0;\n\t\tif (!val) return len;\n\t\tfor (var i = 0; i < val.length; i++) {\n\t\t\tvar length = val.charCodeAt(i);\n\t\t\tif (length >= 0 && length <= 128) {\n\t\t\t\tlen += 1;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlen += 2;\n\t\t\t}\n\t\t}\n\t\treturn len;\n\t}\n\n\tstatic stringToByte(str) {\n\t\tvar bytes = new Array();\n\t\tvar len, c;\n\t\tlen = str && str.length || 0;\n\t\tfor (var i = 0; i < len; i++) {\n\t\t\tc = str.charCodeAt(i);\n\t\t\tif (c >= 0x010000 && c <= 0x10FFFF) {\n\t\t\t\tbytes.push(((c >> 18) & 0x07) | 0xF0);\n\t\t\t\tbytes.push(((c >> 12) & 0x3F) | 0x80);\n\t\t\t\tbytes.push(((c >> 6) & 0x3F) | 0x80);\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\n\t\t\t} else if (c >= 0x000800 && c <= 0x00FFFF) {\n\t\t\t\tbytes.push(((c >> 12) & 0x0F) | 0xE0);\n\t\t\t\tbytes.push(((c >> 6) & 0x3F) | 0x80);\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\n\t\t\t} else if (c >= 0x000080 && c <= 0x0007FF) {\n\t\t\t\tbytes.push(((c >> 6) & 0x1F) | 0xC0);\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\n\t\t\t} else {\n\t\t\t\tbytes.push(c & 0xFF);\n\t\t\t}\n\t\t}\n\t\treturn bytes;\n\t}\n\n\tstatic byteToString(arr) {\n\t\tif (typeof arr === 'string') {\n\t\t\treturn arr;\n\t\t}\n\t\tvar str = '',\n\t\t\t_arr = arr;\n\t\tfor (var i = 0; i < _arr.length; i++) {\n\t\t\tvar one = _arr[i].toString(2),\n\t\t\t\tv = one.match(/^1+?(?=0)/);\n\t\t\tif (v && one.length == 8) {\n\t\t\t\tvar bytesLength = v[0].length;\n\t\t\t\tvar store = _arr[i].toString(2).slice(7 - bytesLength);\n\t\t\t\tfor (var st = 1; st < bytesLength; st++) {\n\t\t\t\t\tif ((st + i) < _arr.length)\n\t\t\t\t\t\tstore += _arr[st + i].toString(2).slice(2);\n\t\t\t\t}\n\t\t\t\tlet value = String.fromCharCode(parseInt(store, 2));\n\t\t\t\tlet asciiValue = value.charCodeAt()\n\t\t\t\tif ((asciiValue >= 0 && asciiValue <= 32) || asciiValue == 127) {\n\t\t\t\t\t//不可见字符变成�\n\t\t\t\t\tvalue = \"�\";\n\t\t\t\t}\n\t\t\t\tstr += value;\n\t\t\t\ti += bytesLength - 1;\n\t\t\t} else {\n\t\t\t\tstr += String.fromCharCode(_arr[i]);\n\t\t\t}\n\t\t}\n\t\treturn str;\n\t}\n}\n\nexport default BTPrintFormatUtil;"]}
|
@@ -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","dto","param","Idstore","POSCode","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';\
|
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","dto","param","Idstore","POSCode","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';\nimport { api } from 'mutants-microfx';\nimport crypto from 'crypto';\n\nconst HTTP_PROXY_URL = \"http://tfproxy.chanjet.com\";\nconst FEI_E_YUN_HOST = \"http://api.feieyun.cn/Api/Open/\";\nconst FEI_E_YUN_USER = \"tplus@chanjet.com\";\nconst FEI_E_YUN_KEYS = \"nyktjQ9nVyY6BfIs\";\n\nclass API {\n constructor(props) { }\n\n //飞蛾参数加密\n shaEncrypt = (originalText) => {\n let password = \"\";\n let md5 = crypto.createHash('sha1');\n md5.update(originalText);\n let data = md5.digest();\n for (let i = 0; i < data.length; i++) {\n\n let v = data[i] & 0xFF;\n let hv = v.toString(16);\n if (hv.length < 2) {\n password = password + 0;\n }\n password = password + hv;\n }\n return password;\n }\n\n //获取枚举列表信息\n async getDataSource(params) {\n const { dataSource } = params;\n const data = await tApi({ BizCode: params.bizCode }, dataSource, false, false);\n return data;\n }\n\n //获取打印数据\n async getPrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'chanjet.RE.INewRetail.FindById', false, false);\n return data;\n }\n\n //获取当前门店硬件配置信息\n async GetPrintInfomation(dto) {\n let param={};\n param.Idstore=dto.Idstore;\n param.POSCode=dto.POSCode;\n \n const data = await tApi({ param: JSON.stringify(param) }, 'chanjet.RE.NewPos.GetPrintInfomation', false, false);\n return data;\n }\n\n //获取日结打印数据\n async getDialyPrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);\n return data;\n }\n\n //获取交班打印数据\n async getDutyPrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);\n return data;\n } \n\n //获取储值打印数据\n async getStoragePrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindById', false, false);\n return data;\n }\n\n // 小票打印-获取状态信息。类似{\"msg\":\"ok\",\"ret\":0,\"data\":\"\\u79bb\\u7ebf\\u3002\",\"serverExecutedTime\":5}\n async openQueryPrinterStatus(params) {\n let ts = Math.round(new Date().getTime() / 1000).toString();\n let dt = [\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\n `apiname=${params.apiname}`,\n `debug=0`,\n `stime=${ts}`,\n `sn=${params.deviceCode}`,\n `user=${FEI_E_YUN_USER}`\n ]\n dt = dt.join('&');\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\n data: dt,\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\n };\n return api(options);\n }\n\n // 小票打印-云打印\n async openPrinterAddlist(params) {\n let ts = Math.round(new Date().getTime() / 1000).toString();\n let dt = [\n `printerContent=${params.printerContent}`,\n `user=${FEI_E_YUN_USER}`,\n `stime=${ts}`,\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\n `apiname=${params.apiname}`,\n `debug=0`\n ]\n dt = dt.join('&');\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\n data: dt,\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\n };\n return api(options);\n }\n\n // 小票打印-发出打印指令\n async openPrintMsg(params) {\n let ts = Math.round(new Date().getTime() / 1000).toString();\n let dt = [\n `content=${params.content}`,\n `printerContent=${params.printerContent}`,\n `user=${FEI_E_YUN_USER}`,\n `stime=${ts}`,\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\n `apiname=${params.apiname}`,\n `debug=0`,\n `sn=${params.deviceCode}`,\n `times=${params.times}` //打印次数\n ]\n dt = dt.join('&');\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\n data: dt,\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\n };\n return api(options);\n }\n}\nexport default new API;\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["tplus-components-touch/components/cloudPrint/index.js"],"names":["PrintUtil","doTestPrint","printParams","callback","cloudAddList","ret","result","cloudPrint","doPrint","Id","_this","API","getPrintDataInfo","then","Store","UserName","Code","CreatedTime","TotalCount","TotalTaxAmount","WipeChange","RetailDetails","Member","BalanceIntegral","Integral","BalanceStorage","RetailPaymentDetails","TotalDiscountAmount","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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Aab,SAAKpB,KAAL,GAAa;AACXqB,yBAAmB;AACjB,cAAM,IADW;AAEjB,cAAM,IAFW;AAGjB,cAAM,MAHW;AAIjB,cAAMD,aAJW;AAKjB,aAAK,IALY;AAMjB,aAAK,IANY;AAOjB,aAAK,MAPY;AAQjB,aAAK,MARY;AASjB,aAAK,KATY;AAUjB,aAAK,OAVY;AAWjB,aAAK,KAXY;AAYjB,aAAK,MAZY;AAajB,aAAK;AAbY;AADR,KAAb;AAiBD;;AAED;;;AAgBA;;;AA0FA;;;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;;;;;kBAEY9K,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 TotalDiscountAmount\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 TotalDiscountAmount\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 && printEntity.RetailPaymentDetails.forEach (items => {\r\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\r\n // bodyValue.push(tool.format (Amount));\r\n pBodyValueList.push ({\r\n NameAndCode: Name,\r\n TotalAmount: tool.format (Amount)\r\n });\r\n });\r\n printEntity.RetailPaymentDetails = pBodyValueList;\r\n const { template } = printParams;\r\n return this.dutyPrintStringByTemplate(template,printEntity)\r\n }\r\n\r\n dutyPrintStringByTemplate = (template,data) => {\r\n const { width, body:templateBody } = template;\r\n let templateContent = \"\"\r\n BTPrintFormatUtil.setLineByteSize (Math.floor( width/58 * this.lineSize));\r\n for (let index = 0; index < templateBody.length; index++) {\r\n const printTemplateItem = templateBody[index];\r\n switch(printTemplateItem.type){\r\n case 'lineFeed':{\r\n if(printTemplateItem.height){\r\n let height = printTemplateItem.height;\r\n do{\r\n templateContent += '\\n'; \r\n height --;\r\n }while(height >0)\r\n }\r\n break;\r\n }\r\n case 'separateLine':{\r\n if(printTemplateItem.height){\r\n const { value } = printTemplateItem\r\n let height = printTemplateItem.height;\r\n do{\r\n templateContent += BTPrintFormatUtil.drawSeparateLine(value);\r\n height --;\r\n }while(height >0)\r\n }\r\n break;\r\n }\r\n case 'printTitle':{\r\n templateContent += BTPrintFormatUtil.printTitle(printTemplateItem.value || JSON.getCellValue(data,printTemplateItem.attribute) || \"\");\r\n break;\r\n }\r\n case 'printStarTitle':{\r\n templateContent += BTPrintFormatUtil.printStarTitle(printTemplateItem.value);\r\n break;\r\n }\r\n case 'spaceCenterPrintMsg':{\r\n templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (...printTemplateItem.value);\r\n break;\r\n }\r\n case 'leftPrintMsg':{\r\n const { body } = printTemplateItem;\r\n const valueMap = new Map ();\r\n body.forEach(attr => {\r\n const { name , attribute , type } = attr;\r\n let value = ''\r\n if (attribute && attribute.length) {\r\n let symbolList = [];\r\n const attributeList = attribute && attribute.replace(/\\+{1}|\\-{1}/g,(symbol)=>{\r\n symbolList.push(symbol);\r\n return \"**_**\"\r\n }).split(\"**_**\");\r\n let totalValue = JSON.getCellValue(data,attributeList[0]);\r\n if (symbolList.length > 0) {\r\n for (let index = 0; index < symbolList.length; index++) {\r\n switch (symbolList[index]) {\r\n case \"+\": {\r\n totalValue += JSON.getCellValue(data, attributeList[index + 1]);\r\n break;\r\n }\r\n case \"-\": {\r\n totalValue -= JSON.getCellValue(data, attributeList[index + 1]);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n value = this.formatValue(type,totalValue);\r\n }\r\n valueMap.set (name, value);\r\n });\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (valueMap);\r\n break;\r\n }\r\n case 'printMenuMSG':{\r\n const { headerList , bodyList } = printTemplateItem;\r\n let bodyListArray = [];\r\n const listArray = JSON.getCellValue(data,bodyList.attribute);\r\n \r\n bodyList.list.forEach ((list, index)=>{\r\n const { type , attribute} = list \r\n // bodyListArray.push(this.formatValue(type,listArray[attribute]))\r\n \r\n listArray.map((item, i) => {\r\n const arr = bodyListArray[i] || []\r\n const listArr = arr[index] || []\r\n arr[index] = this.formatValue(type, JSON.getCellValue(item, attribute))\r\n bodyListArray[i] = arr\r\n })\r\n })\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyListArray,\r\n headerList,\r\n true\r\n );\r\n break;\r\n }\r\n case 'text':{\r\n templateContent += printTemplateItem.value;\r\n break;\r\n }\r\n }\r\n }\r\n return templateContent;\r\n }\r\n\r\n formatValue = (type,value) => {\r\n switch(type){\r\n case \"string\":return value || \"\";\r\n case \"number\":return value || '0';\r\n case \"price\": return tool.format(value) || '0.00';\r\n default:return value || \"\";\r\n }\r\n }\r\n\r\n //正常打印机(58mm)数据 小票打印\r\n loadBTPrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n RetailPaymentDetails\r\n } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.detailTopList = [];\r\n printEntity.paymentTypeTopList = [];\r\n printEntity.paymentTypeDetailList = [];\r\n printEntity.detailContentList = [];\r\n printEntity.footerMap1 = new Map ();\r\n printEntity.footerMap2 = new Map ();\r\n printEntity.headerMap.set ('门店名称', Store.Name || '');\r\n printEntity.headerMap.set ('门店电话', Store.Telephone || '');\r\n printEntity.headerMap.set ('收银员', UserName || '');\r\n printEntity.headerMap.set ('单号', Code);\r\n printEntity.headerMap.set ('日期', CreatedTime || '');\r\n printEntity.detailTopList.push ({\r\n Caption: '商品名称',\r\n IsTitle: true,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '数量',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '单价',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n\r\n //支付方式\r\n printEntity.paymentTypeTopList.push ({\r\n Caption: '支付方式',\r\n IsTitle: false,\r\n IsFoot: false,\r\n })\r\n printEntity.paymentTypeTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n })\r\n printEntity.paymentTypeDetailList.push(...RetailPaymentDetails)\r\n\r\n printEntity.detailContentList.push (...details);\r\n printEntity.footerMap1.set ('数量', TotalCount);\r\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\r\n printEntity.footerMap1.set ('抹零', WipeChange || '0.00');\r\n\r\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\r\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\r\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '0');\r\n printEntity.footerMap2.set ('本次积分', Integral || '0');\r\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '0.00');\r\n // 设定打印尺寸\r\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n //单据头部\r\n templateContent += '\\n';\r\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n }\r\n\r\n templateContent += '\\n';\r\n\r\n //单据内容--头部\r\n let mhList = [];\r\n if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n printEntity.detailTopList.forEach (item => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n mhList.push (mh);\r\n });\r\n }\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n printEntity.detailContentList.forEach (items => {\r\n let bodyValue = [];\r\n items.forEach (item => {\r\n bodyValue.push (item);\r\n });\r\n bodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyValueList,\r\n mhList,\r\n true\r\n );\r\n\r\n //单据底部1\r\n if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg(\r\n printEntity.footerMap1\r\n );\r\n }\r\n templateContent += BTPrintFormatUtil.drawSeparateLine();\r\n templateContent += '\\n';\r\n\r\n //支付方式--头部\r\n let phList = [];\r\n if (printEntity.paymentTypeTopList && printEntity.paymentTypeTopList.length > 0) {\r\n printEntity.paymentTypeTopList.forEach ((item,index) => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: index == 0 ? 3 : 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n phList.push (mh);\r\n });\r\n }\r\n //支付方式--明细\r\n let pBodyValueList = [];\r\n printEntity.paymentTypeDetailList.forEach (items => {\r\n let bodyValue = [];\r\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\r\n bodyValue.push(Name);\r\n bodyValue.push(tool.format (Amount));\r\n pBodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n pBodyValueList,\r\n phList,\r\n true\r\n );\r\n\r\n \r\n //单据底部2\r\n if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap2\r\n );\r\n }\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n templateContent += '\\n';\r\n templateContent += '\\t谢谢惠顾,欢迎再次光临';\r\n templateContent += '\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n //小票-云打印\r\n cloudPrint = (cloudContents, printParams, callback) => {\r\n const { Open ,Key, Sign, Name, Card,isLocalSunMi} = printParams || {};\r\n // 商米没有配置则调用本地打印接口\r\n if(this.isHorizontalSunMi && isLocalSunMi){\r\n this.sunMiLocalPrint(cloudContents, Name, callback);\r\n }else if (this.isHorizontalSunMi && !Open) {\r\n console.log (cloudContents);\r\n this.sunmiPrint (cloudContents, callback);\r\n } else if(Open) {\r\n const {Key, Sign, Name, Card} = printParams || {};\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //打印次数\r\n API.openPrintMsg ({\r\n content: cloudContents,\r\n printerContent: printerContent,\r\n apiname: 'Open_printMsg',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n }\r\n };\r\n\r\n //小票-商米打印\r\n sunmiPrint = (cloudContents, callback) => {\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n // 检测打印机状态\r\n .updatePrinterState().then(status => {\r\n const { state , message } = status || {};\r\n if(state == 1){\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n .PrintSmallTicketter (cloudContents + '\\n\\n',this.PrintCount)\r\n .then (ret => {\r\n if(ret && ret.state && ret.state == 200){\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:ret.message?ret.message:\"打印失败\"\r\n });\r\n }\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:message?message:\"打印失败\"\r\n });\r\n }\r\n })\r\n };\r\n\r\n sunMiLocalPrint = (cloudContents,deviceName,callback)=>{\r\n window.LocalPrintPlugin.printByDeviceName({deviceName,printContent:cloudContents,PrintCount:this.PrintCount}).then((res)=>{\r\n console.log(\"商米本地打印成功\",res);\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }).catch((error)=>{\r\n console.log(\"商米本地打印失败\",error)\r\n const { message } = error || {}\r\n callback && callback ({\r\n ret:-1,\r\n msg: message ||\"打印失败\"\r\n });\r\n })\r\n }\r\n\r\n\r\n cloudAddList = (printParams, callback) => {\r\n const {Key, Sign, Name, Card} = printParams || {};\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //按照添加一次的\r\n API.openPrinterAddlist ({\r\n content: '',\r\n printerContent,\r\n apiname: 'Open_printerAddlist',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n };\r\n toDecimal2NoZero(x) {\r\n var f = Math.round(x * 100) / 100;\r\n var s = f.toString();\r\n return s;\r\n }\r\n}\r\nexport default PrintUtil;\r\n"]}
|
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","TotalDiscountAmount","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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Aab,SAAKpB,KAAL,GAAa;AACXqB,yBAAmB;AACjB,cAAM,IADW;AAEjB,cAAM,IAFW;AAGjB,cAAM,MAHW;AAIjB,cAAMD,aAJW;AAKjB,aAAK,IALY;AAMjB,aAAK,IANY;AAOjB,aAAK,MAPY;AAQjB,aAAK,MARY;AASjB,aAAK,KATY;AAUjB,aAAK,OAVY;AAWjB,aAAK,KAXY;AAYjB,aAAK,MAZY;AAajB,aAAK;AAbY;AADR,KAAb;AAiBD;;AAED;;;AAgBA;;;AA0FA;;;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;;;;;kBAEY9K,S","file":"index.js","sourcesContent":["import BTPrintFormatUtil from './BTPrintFormatUtil';\nimport API from './api';\nimport {tools as tool} from 'mutants-util';\nimport {PosInitData} from 'tplus-poslogin';\nimport {platform, enumController} from 'mutants-util';\nimport tools from \"../../util/tools\";\nimport retailTemplateOne from './printTemplate/retail_one.json'\nclass PrintUtil {\n constructor () {\n this.BTPrintEntity = {};\n this.BTPrintContent = '';\n this.PrintCount = 1;\n this.lineSize = 32;\n this.Precision = {\n Quantity: PosInitData ('QuantityPrecision'),\n Price: PosInitData ('PricePrecision'),\n TaxAmount: PosInitData ('AmountPrecision'),\n };\n const {isHorizontalSunMi} = platform || {};\n this.isHorizontalSunMi = !!isHorizontalSunMi;\n const { Differentiate } = enumController.getEnumOj();\n this.state = {\n IdsettleStyleList: {\n '10': '微信',\n '11': '转账',\n '12': '扫码收款',\n '13': Differentiate,\n '1': '现金',\n '5': '支票',\n '4': '银行汇款',\n '3': '银行本票',\n '2': '信用卡',\n '6': '积分储值卡',\n '7': '储值卡',\n '8': '积分抵现',\n '9': '支付宝',\n }\n }\n }\n\n //执行测试打印\n doTestPrint = (printParams, callback) => {\n this.cloudAddList (printParams, result => {\n const {ret} = result;\n if (ret === 0) {\n this.cloudPrint (\n '\\n\\n' + '飞蛾打印机测试打印成功。' + '\\n\\n',\n printParams,\n callback\n );\n } else {\n if (typeof callback == 'function') callback (result);\n }\n });\n };\n\n // 触发打印\n doPrint = (printParams, Id, callback) => {\n if (!printParams || !Id) return;\n let _this = this;\n API.getPrintDataInfo (Id).then (ret => {\n let {\n Store,\n UserName,\n Code,\n CreatedTime,\n TotalCount,\n TotalTaxAmount,\n WipeChange,\n RetailDetails,\n Member,\n BalanceIntegral,\n Integral,\n BalanceStorage,\n RetailPaymentDetails,\n TotalDiscountAmount\n } = ret || {};\n let details = [];\n\n Member = tools.changePrivateInfo(Member, 'print');\n\n if (RetailDetails && RetailDetails.length > 0) {\n RetailDetails.map (item => {\n const inventoryCode = item.Inventory.Code\n item.Inventory.NameAndCode = item.Inventory.Name + `(${inventoryCode})`;\n let quantity = this.toDecimal2NoZero (item.Quantity) \n quantity += item.Unit.Name || '';\n item.quantityAndUnit = quantity;\n\n // 零售价\n // let Price = this.toDecimal2NoZero (item.Price);\n\n // // 商品编码\n // let inventoryCode = item.Inventory.Code;\n\n // let taxPrice = this.toDecimal2NoZero (item.TaxPrice);\n // // item.TaxPrice,\n // // this.Precision.Price\n\n // // 金额\n // let taxAmount = tool.formatPrecision (\n // item.TaxAmount,\n // this.Precision.TaxAmount\n // );\n // details.push ([item.Inventory.Name + `(${inventoryCode})`, quantity,taxPrice, Price, taxAmount]);\n\n });\n // 总优惠金额\n // let totalDiscount = this.toDecimal2NoZero(item.TotalDiscount);\n }\n let constr = _this.loadBTPrintDataByTemplate (printParams,{\n Store,\n UserName,\n Code,\n CreatedTime,\n details:RetailDetails,\n TotalCount,\n TotalTaxAmount,\n WipeChange,\n Member,\n BalanceIntegral,\n Integral,\n BalanceStorage,\n RetailPaymentDetails,\n TotalDiscountAmount\n });\n\n // let constr = _this.loadBTPrintData ({\n // Store,\n // UserName,\n // Code,\n // CreatedTime,\n // details,\n // TotalCount,\n // TotalTaxAmount,\n // WipeChange,\n // Member,\n // BalanceIntegral,\n // Integral,\n // BalanceStorage,\n // RetailPaymentDetails\n // });\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n\n // 日结打印\n doDialyPrint = (printParams, Id, callback) => {\n if (!Id) return;\n let _this = this;\n API.getDialyPrintDataInfo (Id).then (ret => {\n let constr = _this.loadBTDutyAndDialyPrintData (printParams, ret || {}, 'Dialy');\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n\n // 交班打印\n doDutyPrint = (printParams, Id, callback) => {\n if (!Id) return;\n let _this = this;\n API.getDutyPrintDataInfo (Id).then (ret => {\n let constr = _this.loadBTDutyAndDialyPrintData (printParams, ret, 'Duty');\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n\n // 储值打印\n doStoragePrint = (printParams, Id, callback) => {\n if (!Id) return;\n let _this = this;\n API.getStoragePrintDataInfo (Id).then (ret => {\n let constr = _this.loadBTStoragePrintData (printParams, ret || {});\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n\n //储值打印\n loadBTStoragePrintData = (printParams, printEntity) => {\n let { Member = {}, StorageDetails = [], Person, StorageMutiSettleDetails} = printEntity || {};\n const { Mobilephone, Name : MemberName } = Member;\n const { Name : StorageName} = Person || {};\n printEntity.StorageName = StorageName\n printEntity.MemberName = MemberName\n \n const { template } = printParams;\n return this.dutyPrintStringByTemplate(template,printEntity)\n }\n\n //储值打印\n // loadBTStoragePrintData = (printParams, params) => {\n // let templateContent = '';\n // let printEntity = {};\n // const {\n // Store,\n // StorageDetails,\n // CreatedTime,\n // Member,\n // CardCode,\n // StorageMutiSettleDetails,\n // Person,\n // } = params || {};\n // const { Mobilephone, Name : MemberName } = Member || {};\n // const { Name : StorageName} = Person || {};\n // const {\n // ThisStorageAmount,\n // ThisPresentAmount,\n // AfterBalanceStorage,\n // } = StorageDetails[0] || {};\n // printEntity.headerMap = new Map ();\n // printEntity.footerMap1 = new Map ();\n // printEntity.footerMap2 = new Map ();\n // printEntity.headerMap.set ('日期', CreatedTime || '');\n // printEntity.headerMap.set ('储值业务员', StorageName || '');\n // printEntity.headerMap.set ('会员卡号', CardCode || '');\n // printEntity.headerMap.set ('手机号', Mobilephone || '');\n // printEntity.headerMap.set ('会员姓名', MemberName || '');\n // printEntity.headerMap.set ('本次储存金额', tool.format (ThisStorageAmount) || '');\n // printEntity.headerMap.set ('本次赠送金额', tool.format (ThisPresentAmount) || '');\n // printEntity.headerMap.set (\n // '本次储值后金额',\n // tool.format (AfterBalanceStorage) || ''\n // );\n // if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\n // StorageMutiSettleDetails.forEach (details => {\n // const {StorageAmount,SettleStyle} = details || {};\n // const { Name } = SettleStyle || {}\n // printEntity.headerMap.set (\n // Name,\n // StorageAmount || '0.00'\n // );\n // });\n // }\n // printEntity.headerMap.set ('顾客签字', '');\n\n // // 设定打印尺寸\n // BTPrintFormatUtil.setLineByteSize (this.lineSize);\n\n // //单据头部\n // templateContent += '\\n';\n // templateContent += BTPrintFormatUtil.printTitle (Store.Name || '');\n // if (printEntity.headerMap && printEntity.headerMap.size > 0) {\n // templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\n // }\n // templateContent += '\\n\\n\\n\\n';\n // return templateContent;\n // };\n\n // 交班日结打印 type: Duty 交班 Dialy 日结\n loadBTDutyAndDialyPrintData = (printParams, printEntity, type) => {\n const { WorkingDate, WorkingTime, DailyDate, DailyTime, RetailAmount, ReturnAmount, InitialAmount, ImprestAmount, ShiftDate, ShiftTime, ShiftVoucherDetails } = printEntity\n printEntity.WorkingDateAndTime = WorkingDate + ' ' + WorkingTime\n printEntity.DailyDateAndTime = DailyDate + ' ' + DailyTime\n printEntity.DutyDateAndTime = ShiftDate + ' ' + ShiftTime\n printEntity.NetAmount = RetailAmount + ReturnAmount\n printEntity.ImprestBalance = InitialAmount + ImprestAmount\n printEntity.ShiftVoucherDetails = ShiftVoucherDetails.map(item => {\n const { SettleStyle: {Name} = {} } = item\n return {\n Name,\n ...item\n }\n })\n const { template } = printParams;\n return this.dutyPrintStringByTemplate(template,printEntity)\n }\n\n // 交班日结打印 type: Duty 交班 Dialy 日结\n // loadBTDutyAndDialyPrintData = (printParams, params, type) => {\n // let templateContent = '';\n // let printEntity = {};\n // const {\n // Code,\n // Store,\n // UserName,\n // POSCode,\n // POS,\n // POSName,\n // WorkingDate,\n // StartDate,\n // ShiftDate,\n // DailyDate,\n // RetailAmount,\n // ReturnAmount,\n // SalesStorageTotalAmount,\n // CashOutAmount,\n // CouponsDeduct,\n // CouponsAmount,\n // OnlineAmount,\n // TotalCount,\n // TotalCustom,\n // Price,\n // InitialAmount,\n // ImprestAmount,\n // ImprestBalanceAmount,\n // ShiftVoucherDetails,\n // DailyDetails,\n // WorkingTime,\n // ShiftTime,\n // StartTime,\n // DailyTime,\n // Memo\n // } = params || {};\n // printEntity.headerMap = new Map ();\n // printEntity.footerMap1 = new Map ();\n // printEntity.footerMap2 = new Map ();\n // printEntity.detailTopList = [];\n // printEntity.detailContentList = [];\n // printEntity.headerMap.set ('单号', Code);\n // printEntity.headerMap.set ('门店', Store.Name || '');\n // printEntity.headerMap.set ('POS编码', POSCode || '');\n // printEntity.headerMap.set ('POS名称', POSName || '');\n // printEntity.headerMap.set ('收 银 员', UserName || '');\n // printEntity.headerMap.set (\n // '上班日期',\n // WorkingDate + \" \" +WorkingTime \n // );\n // printEntity.headerMap.set (\n // type == 'Duty' ? '交班日期' : '日结日期',\n // type == 'Duty' ? ShiftDate + \" \" + ShiftTime : DailyDate + \" \" + DailyTime\n // );\n\n // printEntity.footerMap1.set ('销售金额', tool.format (RetailAmount) || '0.00');\n // printEntity.footerMap1.set ('退货金额', tool.format (ReturnAmount) || '0.00');\n // printEntity.footerMap1.set (\n // '净销售金额',\n // tool.format (RetailAmount + ReturnAmount) || '0.00'\n // );\n // printEntity.footerMap1.set (\n // '储值销售金额',\n // tool.format (SalesStorageTotalAmount) || '0.00'\n // );\n // printEntity.footerMap1.set (\n // '抵现销售金额',\n // tool.format (CashOutAmount) || '0.00'\n // );\n // printEntity.footerMap1.set (\n // '券抵扣(负劳务行)',\n // tool.format (CouponsDeduct) || '0.00'\n // );\n // const { Differentiate } = enumController.getEnumOj();\n // printEntity.footerMap1.set (`${Differentiate.COUPON}抵扣`, tool.format (CouponsAmount) || '0.00');\n // printEntity.footerMap1.set ('线上收款金额', tool.format (OnlineAmount) || '0.00');\n // printEntity.footerMap1.set ('水单总数', TotalCount || '0');\n // printEntity.footerMap1.set ('来客数量', TotalCustom || '0');\n // printEntity.footerMap1.set ('客单价', tool.format (Price) || '0.00');\n\n // printEntity.detailTopList.push ({\n // Caption: '结算方式',\n // IsTitle: false,\n // IsFoot: false,\n // });\n // printEntity.detailTopList.push ({\n // Caption: '零售收款金额',\n // IsTitle: false,\n // IsFoot: false,\n // });\n // printEntity.detailTopList.push ({\n // Caption: '储值金额',\n // IsTitle: false,\n // IsFoot: false,\n // });\n\n // let details = [];\n // let DailyDetailsCommon = [];\n // if (type == 'Duty') {\n // DailyDetailsCommon = ShiftVoucherDetails;\n // } else {\n // DailyDetailsCommon = DailyDetails;\n // }\n // if (DailyDetailsCommon && DailyDetailsCommon.length != 0) {\n // DailyDetailsCommon.forEach (detailsOb => {\n // const { OrigAmount, MemberDepositAmount,SettleStyle} = detailsOb;\n // const { Name } = SettleStyle || {}\n // details.push ([\n // Name,\n // tool.format (OrigAmount) || '0.00',\n // tool.format (MemberDepositAmount) || '0.00',\n // ]);\n // });\n // }\n // printEntity.detailContentList.push (...details);\n\n // templateContent += '\\n';\n // // printEntity.footerMap2.set('现金', BalanceIntegral || '');\n // printEntity.footerMap2.set (\n // '备用金初始金额',\n // tool.format (InitialAmount) || '0.00'\n // );\n // printEntity.footerMap2.set ('增减备用金', tool.format (ImprestAmount) || '0.00');\n // printEntity.footerMap2.set (\n // '备用金余额',\n // tool.format (InitialAmount+ImprestAmount) || '0.00'\n // );\n // // 设定打印尺寸\n // BTPrintFormatUtil.setLineByteSize (this.lineSize);\n\n // //单据头部\n // templateContent += '\\n';\n // templateContent += BTPrintFormatUtil.printTitle (\n // type == 'Duty' ? '交班' : '日结'\n // );\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\n // if (printEntity.headerMap && printEntity.headerMap.size > 0) {\n // templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\n // }\n // templateContent += '\\n';\n // templateContent += BTPrintFormatUtil.printStarTitle ('销售看板');\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\n // //单据底部1\n // if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\n // templateContent += BTPrintFormatUtil.leftPrintMsg (\n // printEntity.footerMap1\n // );\n // }\n // templateContent += '\\n';\n // templateContent += BTPrintFormatUtil.printStarTitle ('收银统计');\n // templateContent += BTPrintFormatUtil.drawSeparateLine ();\n\n // //单据内容--头部\n // let mhList = [];\n // if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\n // printEntity.detailTopList.forEach (item => {\n // let mh = {\n // headerText: item.Caption,\n // headerWeight: 1,\n // isTitle: item.IsTitle,\n // isFoot: item.IsFoot,\n // };\n // mhList.push (mh);\n // });\n // }\n // //单据内容--明细\n // let bodyValueList = [];\n // printEntity.detailContentList.forEach (items => {\n // let bodyValue = [];\n // items.forEach (item => {\n // bodyValue.push (item);\n // });\n // bodyValueList.push (bodyValue);\n // });\n // templateContent += BTPrintFormatUtil.printMenuMSG (\n // bodyValueList,\n // mhList,\n // true\n // );\n\n // //单据底部2\n // if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\n // templateContent += BTPrintFormatUtil.leftPrintMsg (\n // printEntity.footerMap2\n // );\n // }\n // templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\n // templateContent += '备注:'+ (Memo || '');\n // templateContent += '\\n'; //备注\n // templateContent += '\\n';\n // templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (\n // '收银员签字:',\n // '收银主管签字:'\n // );\n // templateContent += '\\n\\n\\n\\n';\n // return templateContent;\n // };\n\n loadBTPrintDataByTemplate = (printParams,printEntity) => {\n //支付方式--明细\n let pBodyValueList = [];\n printEntity.RetailPaymentDetails && printEntity.RetailPaymentDetails.forEach (items => {\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\n // bodyValue.push(tool.format (Amount));\n pBodyValueList.push ({\n NameAndCode: Name,\n TotalAmount: tool.format (Amount)\n });\n });\n printEntity.RetailPaymentDetails = pBodyValueList;\n const { template } = printParams;\n return this.dutyPrintStringByTemplate(template,printEntity)\n }\n\n dutyPrintStringByTemplate = (template,data) => {\n const { width, body:templateBody } = template;\n let templateContent = \"\"\n BTPrintFormatUtil.setLineByteSize (Math.floor( width/58 * this.lineSize));\n for (let index = 0; index < templateBody.length; index++) {\n const printTemplateItem = templateBody[index];\n switch(printTemplateItem.type){\n case 'lineFeed':{\n if(printTemplateItem.height){\n let height = printTemplateItem.height;\n do{\n templateContent += '\\n'; \n height --;\n }while(height >0)\n }\n break;\n }\n case 'separateLine':{\n if(printTemplateItem.height){\n const { value } = printTemplateItem\n let height = printTemplateItem.height;\n do{\n templateContent += BTPrintFormatUtil.drawSeparateLine(value);\n height --;\n }while(height >0)\n }\n break;\n }\n case 'printTitle':{\n templateContent += BTPrintFormatUtil.printTitle(printTemplateItem.value || JSON.getCellValue(data,printTemplateItem.attribute) || \"\");\n break;\n }\n case 'printStarTitle':{\n templateContent += BTPrintFormatUtil.printStarTitle(printTemplateItem.value);\n break;\n }\n case 'spaceCenterPrintMsg':{\n templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (...printTemplateItem.value);\n break;\n }\n case 'leftPrintMsg':{\n const { body } = printTemplateItem;\n const valueMap = new Map ();\n body.forEach(attr => {\n const { name , attribute , type } = attr;\n let value = ''\n if (attribute && attribute.length) {\n let symbolList = [];\n const attributeList = attribute && attribute.replace(/\\+{1}|\\-{1}/g,(symbol)=>{\n symbolList.push(symbol);\n return \"**_**\"\n }).split(\"**_**\");\n let totalValue = JSON.getCellValue(data,attributeList[0]);\n if (symbolList.length > 0) {\n for (let index = 0; index < symbolList.length; index++) {\n switch (symbolList[index]) {\n case \"+\": {\n totalValue += JSON.getCellValue(data, attributeList[index + 1]);\n break;\n }\n case \"-\": {\n totalValue -= JSON.getCellValue(data, attributeList[index + 1]);\n break;\n }\n }\n }\n }\n value = this.formatValue(type,totalValue);\n }\n valueMap.set (name, value);\n });\n templateContent += BTPrintFormatUtil.leftPrintMsg (valueMap);\n break;\n }\n case 'printMenuMSG':{\n const { headerList , bodyList } = printTemplateItem;\n let bodyListArray = [];\n const listArray = JSON.getCellValue(data,bodyList.attribute);\n \n bodyList.list.forEach ((list, index)=>{\n const { type , attribute} = list \n // bodyListArray.push(this.formatValue(type,listArray[attribute]))\n \n listArray.map((item, i) => {\n const arr = bodyListArray[i] || []\n const listArr = arr[index] || []\n arr[index] = this.formatValue(type, JSON.getCellValue(item, attribute))\n bodyListArray[i] = arr\n })\n })\n templateContent += BTPrintFormatUtil.printMenuMSG (\n bodyListArray,\n headerList,\n true\n );\n break;\n }\n case 'text':{\n templateContent += printTemplateItem.value;\n break;\n }\n }\n }\n return templateContent;\n }\n\n formatValue = (type,value) => {\n switch(type){\n case \"string\":return value || \"\";\n case \"number\":return value || '0';\n case \"price\": return tool.format(value) || '0.00';\n default:return value || \"\";\n }\n }\n\n //正常打印机(58mm)数据 小票打印\n loadBTPrintData = params => {\n let templateContent = '';\n let printEntity = {};\n const {\n Store,\n UserName,\n Code,\n CreatedTime,\n details,\n TotalCount,\n TotalTaxAmount,\n WipeChange,\n Member,\n BalanceIntegral,\n Integral,\n BalanceStorage,\n RetailPaymentDetails\n } = params || {};\n printEntity.headerMap = new Map ();\n printEntity.detailTopList = [];\n printEntity.paymentTypeTopList = [];\n printEntity.paymentTypeDetailList = [];\n printEntity.detailContentList = [];\n printEntity.footerMap1 = new Map ();\n printEntity.footerMap2 = new Map ();\n printEntity.headerMap.set ('门店名称', Store.Name || '');\n printEntity.headerMap.set ('门店电话', Store.Telephone || '');\n printEntity.headerMap.set ('收银员', UserName || '');\n printEntity.headerMap.set ('单号', Code);\n printEntity.headerMap.set ('日期', CreatedTime || '');\n printEntity.detailTopList.push ({\n Caption: '商品名称',\n IsTitle: true,\n IsFoot: false,\n });\n printEntity.detailTopList.push ({\n Caption: '数量',\n IsTitle: false,\n IsFoot: false,\n });\n printEntity.detailTopList.push ({\n Caption: '单价',\n IsTitle: false,\n IsFoot: false,\n });\n printEntity.detailTopList.push ({\n Caption: '金额',\n IsTitle: false,\n IsFoot: false,\n });\n\n //支付方式\n printEntity.paymentTypeTopList.push ({\n Caption: '支付方式',\n IsTitle: false,\n IsFoot: false,\n })\n printEntity.paymentTypeTopList.push ({\n Caption: '金额',\n IsTitle: false,\n IsFoot: false,\n })\n printEntity.paymentTypeDetailList.push(...RetailPaymentDetails)\n\n printEntity.detailContentList.push (...details);\n printEntity.footerMap1.set ('数量', TotalCount);\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\n printEntity.footerMap1.set ('抹零', WipeChange || '0.00');\n\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '0');\n printEntity.footerMap2.set ('本次积分', Integral || '0');\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '0.00');\n // 设定打印尺寸\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\n\n //单据头部\n templateContent += '\\n';\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\n }\n\n templateContent += '\\n';\n\n //单据内容--头部\n let mhList = [];\n if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\n printEntity.detailTopList.forEach (item => {\n let mh = {\n headerText: item.Caption,\n headerWeight: 1,\n isTitle: item.IsTitle,\n isFoot: item.IsFoot,\n };\n mhList.push (mh);\n });\n }\n //单据内容--明细\n let bodyValueList = [];\n printEntity.detailContentList.forEach (items => {\n let bodyValue = [];\n items.forEach (item => {\n bodyValue.push (item);\n });\n bodyValueList.push (bodyValue);\n });\n templateContent += BTPrintFormatUtil.printMenuMSG (\n bodyValueList,\n mhList,\n true\n );\n\n //单据底部1\n if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\n templateContent += BTPrintFormatUtil.leftPrintMsg(\n printEntity.footerMap1\n );\n }\n templateContent += BTPrintFormatUtil.drawSeparateLine();\n templateContent += '\\n';\n\n //支付方式--头部\n let phList = [];\n if (printEntity.paymentTypeTopList && printEntity.paymentTypeTopList.length > 0) {\n printEntity.paymentTypeTopList.forEach ((item,index) => {\n let mh = {\n headerText: item.Caption,\n headerWeight: index == 0 ? 3 : 1,\n isTitle: item.IsTitle,\n isFoot: item.IsFoot,\n };\n phList.push (mh);\n });\n }\n //支付方式--明细\n let pBodyValueList = [];\n printEntity.paymentTypeDetailList.forEach (items => {\n let bodyValue = [];\n const { Amount = '0.00', SettleStyle: { Name = \"其他方式\" } } = items;\n bodyValue.push(Name);\n bodyValue.push(tool.format (Amount));\n pBodyValueList.push (bodyValue);\n });\n templateContent += BTPrintFormatUtil.printMenuMSG (\n pBodyValueList,\n phList,\n true\n );\n\n \n //单据底部2\n if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\n templateContent += BTPrintFormatUtil.leftPrintMsg (\n printEntity.footerMap2\n );\n }\n templateContent += '\\n';\n templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\n templateContent += '\\n';\n templateContent += '\\t谢谢惠顾,欢迎再次光临';\n templateContent += '\\n\\n\\n';\n return templateContent;\n };\n\n //小票-云打印\n cloudPrint = (cloudContents, printParams, callback) => {\n const { Open ,Key, Sign, Name, Card,isLocalSunMi} = printParams || {};\n // 商米没有配置则调用本地打印接口\n if(this.isHorizontalSunMi && isLocalSunMi){\n this.sunMiLocalPrint(cloudContents, Name, callback);\n }else if (this.isHorizontalSunMi && !Open) {\n console.log (cloudContents);\n this.sunmiPrint (cloudContents, callback);\n } else if(Open) {\n const {Key, Sign, Name, Card} = printParams || {};\n let arr = [];\n arr.push (Sign, Key);\n if (Name) arr.push (Name);\n if (Card) arr.push (Card);\n let printerContent = arr.join ('#');\n let PrintCount = this.PrintCount; //打印次数\n API.openPrintMsg ({\n content: cloudContents,\n printerContent: printerContent,\n apiname: 'Open_printMsg',\n deviceCode: Sign,\n times: PrintCount,\n }).then (s => {\n if (typeof callback == 'function' && s && s.data) callback (s.data);\n });\n }\n };\n\n //小票-商米打印\n sunmiPrint = (cloudContents, callback) => {\n window.sunMi_OperatingCashier &&\n window.sunMi_OperatingCashier\n // 检测打印机状态\n .updatePrinterState().then(status => {\n const { state , message } = status || {};\n if(state == 1){\n window.sunMi_OperatingCashier &&\n window.sunMi_OperatingCashier\n .PrintSmallTicketter (cloudContents + '\\n\\n',this.PrintCount)\n .then (ret => {\n if(ret && ret.state && ret.state == 200){\n callback && callback ({\n ret:0,\n msg:\"打印成功\"\n });\n }else{\n callback && callback ({\n ret:-1,\n msg:ret.message?ret.message:\"打印失败\"\n });\n }\n });\n }else{\n callback && callback ({\n ret:-1,\n msg:message?message:\"打印失败\"\n });\n }\n })\n };\n\n sunMiLocalPrint = (cloudContents,deviceName,callback)=>{\n window.LocalPrintPlugin.printByDeviceName({deviceName,printContent:cloudContents,PrintCount:this.PrintCount}).then((res)=>{\n console.log(\"商米本地打印成功\",res);\n callback && callback ({\n ret:0,\n msg:\"打印成功\"\n });\n }).catch((error)=>{\n console.log(\"商米本地打印失败\",error)\n const { message } = error || {}\n callback && callback ({\n ret:-1,\n msg: message ||\"打印失败\"\n });\n })\n }\n\n\n cloudAddList = (printParams, callback) => {\n const {Key, Sign, Name, Card} = printParams || {};\n let arr = [];\n arr.push (Sign, Key);\n if (Name) arr.push (Name);\n if (Card) arr.push (Card);\n let printerContent = arr.join ('#');\n let PrintCount = this.PrintCount; //按照添加一次的\n API.openPrinterAddlist ({\n content: '',\n printerContent,\n apiname: 'Open_printerAddlist',\n deviceCode: Sign,\n times: PrintCount,\n }).then (s => {\n if (typeof callback == 'function' && s && s.data) callback (s.data);\n });\n };\n toDecimal2NoZero(x) {\n var f = Math.round(x * 100) / 100;\n var s = f.toString();\n return s;\n }\n}\nexport default PrintUtil;\n"]}
|
@@ -47,13 +47,13 @@ var _template = require('./printTemplate/template');
|
|
47
47
|
|
48
48
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
49
49
|
|
50
|
-
var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail'); /*
|
51
|
-
* @Descripttion:
|
52
|
-
* @version:
|
53
|
-
* @Author: chenlongad
|
54
|
-
* @Date: 2020-11-17 10:02:02
|
55
|
-
* @LastEditors: Lixuhan
|
56
|
-
* @LastEditTime: 2022-03-22 19:50:42
|
50
|
+
var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail'); /*
|
51
|
+
* @Descripttion:
|
52
|
+
* @version:
|
53
|
+
* @Author: chenlongad
|
54
|
+
* @Date: 2020-11-17 10:02:02
|
55
|
+
* @LastEditors: Lixuhan
|
56
|
+
* @LastEditTime: 2022-03-22 19:50:42
|
57
57
|
*/
|
58
58
|
|
59
59
|
|