tplus-components-touch 1.25.6 → 1.25.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/README.md +16 -16
  2. package/dist/components/addLog/AddLogProcessor.js +6 -6
  3. package/dist/components/addLog/AddLogProcessor.js.map +1 -1
  4. package/dist/components/addLog/OperationLogApi.js +3 -3
  5. package/dist/components/addLog/OperationLogApi.js.map +1 -1
  6. package/dist/components/autoComplete/index.js +14 -14
  7. package/dist/components/autoComplete/index.js.map +1 -1
  8. package/dist/components/autoComplete/index.less +89 -89
  9. package/dist/components/autoComplete/option.js.map +1 -1
  10. package/dist/components/autoCompleteWithKeyboard/index.js +14 -14
  11. package/dist/components/autoCompleteWithKeyboard/index.js.map +1 -1
  12. package/dist/components/autoCompleteWithKeyboard/index.less +4 -4
  13. package/dist/components/billSearch/api.js +26 -26
  14. package/dist/components/billSearch/api.js.map +1 -1
  15. package/dist/components/billSearch/index.js +6 -6
  16. package/dist/components/billSearch/index.js.map +1 -1
  17. package/dist/components/billSearch/index.less +573 -573
  18. package/dist/components/cloudPrint/BTPrintFormatUtil.js +17 -17
  19. package/dist/components/cloudPrint/BTPrintFormatUtil.js.map +1 -1
  20. package/dist/components/cloudPrint/api.js.map +1 -1
  21. package/dist/components/cloudPrint/index.js +4 -0
  22. package/dist/components/cloudPrint/index.js.map +1 -1
  23. package/dist/components/cloudPrint/printDispatch.js +14 -11
  24. package/dist/components/cloudPrint/printDispatch.js.map +1 -1
  25. package/dist/components/commonForm/autoComplete/index.js.map +1 -1
  26. package/dist/components/commonForm/autoComplete/style.less +7 -7
  27. package/dist/components/commonForm/datePicker/index.js.map +1 -1
  28. package/dist/components/commonForm/datePicker/style.less +10 -10
  29. package/dist/components/commonForm/formControl/index.js +7 -7
  30. package/dist/components/commonForm/formControl/index.js.map +1 -1
  31. package/dist/components/commonForm/formControl/style.less +7 -7
  32. package/dist/components/commonForm/index.js +4 -4
  33. package/dist/components/commonForm/index.js.map +1 -1
  34. package/dist/components/commonForm/inputNumber/index.js.map +1 -1
  35. package/dist/components/commonForm/inputNumber/style.less +16 -16
  36. package/dist/components/commonForm/radio/index.js.map +1 -1
  37. package/dist/components/commonForm/radio/style.less +10 -10
  38. package/dist/components/commonForm/style.less +11 -11
  39. package/dist/components/deliverySearch/api.js +21 -21
  40. package/dist/components/deliverySearch/api.js.map +1 -1
  41. package/dist/components/deliverySearch/index.js +6 -6
  42. package/dist/components/deliverySearch/index.js.map +1 -1
  43. package/dist/components/deliverySearch/index.less +623 -623
  44. package/dist/components/form/index.js.map +1 -1
  45. package/dist/components/hotKey/config.js +23 -23
  46. package/dist/components/hotKey/config.js.map +1 -1
  47. package/dist/components/hotKey/hotKeyModal.js.map +1 -1
  48. package/dist/components/hotKey/index.js +26 -26
  49. package/dist/components/hotKey/index.js.map +1 -1
  50. package/dist/components/hotKey/localConfig.js.map +1 -1
  51. package/dist/components/hotKey/style.less +99 -99
  52. package/dist/components/hotKey/utils.js.map +1 -1
  53. package/dist/components/input/index.js +6 -6
  54. package/dist/components/input/index.js.map +1 -1
  55. package/dist/components/input/style.less +107 -107
  56. package/dist/components/input/tplusInput/index.js +30 -30
  57. package/dist/components/input/tplusInput/index.js.map +1 -1
  58. package/dist/components/input/tplusInput/inputContent.js.map +1 -1
  59. package/dist/components/input/tplusInput/inputs.js +7 -7
  60. package/dist/components/input/tplusInput/inputs.js.map +1 -1
  61. package/dist/components/input/tplusInput/style.less +194 -194
  62. package/dist/components/input/utils/index.js.map +1 -1
  63. package/dist/components/inventorySearch/api.js +58 -58
  64. package/dist/components/inventorySearch/api.js.map +1 -1
  65. package/dist/components/inventorySearch/index.js +3 -3
  66. package/dist/components/inventorySearch/index.js.map +1 -1
  67. package/dist/components/inventorySearch/index.less +243 -243
  68. package/dist/components/inventorySearch/store.js.map +1 -1
  69. package/dist/components/inventorySearch/tab.js.map +1 -1
  70. package/dist/components/keyboard/index.js.map +1 -1
  71. package/dist/components/keyboard/index.less +555 -555
  72. package/dist/components/keyboard/letterKeyboard.js +2 -2
  73. package/dist/components/keyboard/letterKeyboard.js.map +1 -1
  74. package/dist/components/keyboard/numKeyboard.js +4 -4
  75. package/dist/components/keyboard/numKeyboard.js.map +1 -1
  76. package/dist/components/keyboard/numKeyboardDigit.js +4 -4
  77. package/dist/components/keyboard/numKeyboardDigit.js.map +1 -1
  78. package/dist/components/keyboard/numKeyboardScan.js.map +1 -1
  79. package/dist/components/keyboard/numberButtonInteger.js +5 -5
  80. package/dist/components/keyboard/numberButtonInteger.js.map +1 -1
  81. package/dist/components/keyboard/numberButton_input.js +5 -5
  82. package/dist/components/keyboard/numberButton_input.js.map +1 -1
  83. package/dist/components/keyboard/onlyKeyboard.js +7 -7
  84. package/dist/components/keyboard/onlyKeyboard.js.map +1 -1
  85. package/dist/components/keyboard/onlyLetterButton.js +2 -2
  86. package/dist/components/keyboard/onlyLetterButton.js.map +1 -1
  87. package/dist/components/keyboard/onlyLetterButton2.js +2 -2
  88. package/dist/components/keyboard/onlyLetterButton2.js.map +1 -1
  89. package/dist/components/keyboard/onlyLetterButton2.less +183 -183
  90. package/dist/components/keyboard/onlyNumberButton.js +2 -2
  91. package/dist/components/keyboard/onlyNumberButton.js.map +1 -1
  92. package/dist/components/keyboard/onlyNumberButton2.js +3 -3
  93. package/dist/components/keyboard/onlyNumberButton2.js.map +1 -1
  94. package/dist/components/keyboard/textKeyboard.js.map +1 -1
  95. package/dist/components/layout/hamburger.js.map +1 -1
  96. package/dist/components/layout/index.js +10 -10
  97. package/dist/components/layout/index.js.map +1 -1
  98. package/dist/components/layout/layout.js.map +1 -1
  99. package/dist/components/layout/sider.js +12 -12
  100. package/dist/components/layout/sider.js.map +1 -1
  101. package/dist/components/layout/style.less +83 -83
  102. package/dist/components/loading/index.js +15 -15
  103. package/dist/components/loading/index.js.map +1 -1
  104. package/dist/components/loading/loadingContent.js.map +1 -1
  105. package/dist/components/loading/style.less +51 -51
  106. package/dist/components/loading/utils.js.map +1 -1
  107. package/dist/components/message/index.js +8 -8
  108. package/dist/components/message/index.js.map +1 -1
  109. package/dist/components/message/index.less +150 -150
  110. package/dist/components/modal/index.js.map +1 -1
  111. package/dist/components/modal/index.less +19 -19
  112. package/dist/components/modalVertical/style.less +114 -114
  113. package/dist/components/modalWraper/style.less +363 -363
  114. package/dist/components/modalWraper/utils.js.map +1 -1
  115. package/dist/components/notification/index.js +4 -4
  116. package/dist/components/notification/index.js.map +1 -1
  117. package/dist/components/notification/index.less +57 -57
  118. package/dist/components/overflowTip/index.js +15 -15
  119. package/dist/components/overflowTip/index.js.map +1 -1
  120. package/dist/components/overflowTip/style.less +66 -66
  121. package/dist/components/page/index.js.map +1 -1
  122. package/dist/components/page/index.less +25 -25
  123. package/dist/components/product/detail.js.map +1 -1
  124. package/dist/components/product/getCard.js +5 -5
  125. package/dist/components/product/getCard.js.map +1 -1
  126. package/dist/components/product/index.less +354 -354
  127. package/dist/components/progressState/EmptyAndErrorView.js.map +1 -1
  128. package/dist/components/progressState/ProgressState.js +10 -10
  129. package/dist/components/progressState/ProgressState.js.map +1 -1
  130. package/dist/components/progressState/index.js.map +1 -1
  131. package/dist/components/progressState/style.less +65 -65
  132. package/dist/components/scan/index.js.map +1 -1
  133. package/dist/components/scan/index.less +33 -33
  134. package/dist/components/select/index.js.map +1 -1
  135. package/dist/components/select/index.less +11 -11
  136. package/dist/components/settlement/asyncModal.js.map +1 -1
  137. package/dist/components/settlement/index.js.map +1 -1
  138. package/dist/components/settlement/settlement.js +5 -5
  139. package/dist/components/settlement/settlement.js.map +1 -1
  140. package/dist/components/settlement/settlement.less +1604 -1604
  141. package/dist/components/settlement/settlementStore.js +10 -10
  142. package/dist/components/settlement/settlementStore.js.map +1 -1
  143. package/dist/components/settlement/utils.js.map +1 -1
  144. package/dist/components/socket/index.js +11 -11
  145. package/dist/components/socket/index.js.map +1 -1
  146. package/dist/components/spin/index.js +6 -6
  147. package/dist/components/spin/index.js.map +1 -1
  148. package/dist/components/spin/spin-style.less +436 -436
  149. package/dist/components/test/index.js +3 -3
  150. package/dist/components/test/index.js.map +1 -1
  151. package/dist/components/ticon/iconfont/demo_index.html +4765 -4765
  152. package/dist/components/ticon/iconfont/iconfont.css +811 -811
  153. package/dist/components/ticon/iconfont/iconfont.svg +572 -572
  154. package/dist/components/ticon/index.js.map +1 -1
  155. package/dist/components/touchScroll/index.js +9 -9
  156. package/dist/components/touchScroll/index.js.map +1 -1
  157. package/dist/components/touchTable/AuthProcess.js.map +1 -1
  158. package/dist/components/touchTable/generateWater.js.map +1 -1
  159. package/dist/components/touchTable/index.js +9 -9
  160. package/dist/components/touchTable/index.js.map +1 -1
  161. package/dist/components/touchTable/index.less +189 -189
  162. package/dist/components/touchTable/utils.js.map +1 -1
  163. package/dist/demo/PopOverDemo.js.map +1 -1
  164. package/dist/index.js.map +1 -1
  165. package/dist/util/tools.js.map +1 -1
  166. package/locales/zh/tplus-components-touch.json +1 -1
  167. package/locales/zh-CN/tplus-components-touch.json +1 -1
  168. package/mocks/memberInfo.json +79 -79
  169. package/package.json +38 -38
  170. 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":"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","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() {\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\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() {\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\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","dto","param","Idstore","POSCode","id","ts","Math","round","Date","getTime","dt","apiname","deviceCode","join","options","method","headers","url","printerContent","content","times"],"mappings":"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","file":"api.js","sourcesContent":["import { tApi } from 'tplus-api';\r\nimport { api } from 'mutants-microfx';\r\nimport crypto from 'crypto';\r\n\r\nconst HTTP_PROXY_URL = \"http://tfproxy.chanjet.com\";\r\nconst FEI_E_YUN_HOST = \"http://api.feieyun.cn/Api/Open/\";\r\nconst FEI_E_YUN_USER = \"tplus@chanjet.com\";\r\nconst FEI_E_YUN_KEYS = \"nyktjQ9nVyY6BfIs\";\r\n\r\nclass API {\r\n constructor(props) { }\r\n\r\n //飞蛾参数加密\r\n shaEncrypt = (originalText) => {\r\n let password = \"\";\r\n let md5 = crypto.createHash('sha1');\r\n md5.update(originalText);\r\n let data = md5.digest();\r\n for (let i = 0; i < data.length; i++) {\r\n\r\n let v = data[i] & 0xFF;\r\n let hv = v.toString(16);\r\n if (hv.length < 2) {\r\n password = password + 0;\r\n }\r\n password = password + hv;\r\n }\r\n return password;\r\n }\r\n\r\n //获取枚举列表信息\r\n async getDataSource(params) {\r\n const { dataSource } = params;\r\n const data = await tApi({ BizCode: params.bizCode }, dataSource, false, false);\r\n return data;\r\n }\r\n\r\n //获取打印数据\r\n async getPrintDataInfo(Id) {\r\n const data = await tApi({ Id }, 'chanjet.RE.INewRetail.FindById', false, false);\r\n return data;\r\n }\r\n\r\n //获取当前门店硬件配置信息\r\n async GetPrintInfomation(dto) {\r\n let param={};\r\n param.Idstore=dto.Idstore;\r\n param.POSCode=dto.POSCode;\r\n \r\n const data = await tApi({ param: JSON.stringify(param) }, 'chanjet.RE.NewPos.GetPrintInfomation', false, false);\r\n return data;\r\n }\r\n\r\n //获取日结打印数据\r\n async getDialyPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);\r\n return data;\r\n }\r\n\r\n //获取交班打印数据\r\n async getDutyPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);\r\n return data;\r\n } \r\n\r\n //获取储值打印数据\r\n async getStoragePrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindByIdNoAuth', false, false);\r\n return data;\r\n }\r\n\t//获取项目储值打印数据\r\n async getProjectStoragePrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IProjectStorage.FindById', false, false);\r\n return data;\r\n }\r\n //获取扣次打印数据\r\n async getProjectConsumePrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.INewRetail.FindByIdForProjectConsumeCloudPrint', false, false);\r\n return data;\r\n }\r\n // 小票打印-获取状态信息。类似{\"msg\":\"ok\",\"ret\":0,\"data\":\"\\u79bb\\u7ebf\\u3002\",\"serverExecutedTime\":5}\r\n async openQueryPrinterStatus(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`,\r\n `stime=${ts}`,\r\n `sn=${params.deviceCode}`,\r\n `user=${FEI_E_YUN_USER}`\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n\r\n // 小票打印-云打印\r\n async openPrinterAddlist(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `printerContent=${params.printerContent}`,\r\n `user=${FEI_E_YUN_USER}`,\r\n `stime=${ts}`,\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n\r\n // 小票打印-发出打印指令\r\n async openPrintMsg(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `content=${params.content}`,\r\n `printerContent=${params.printerContent}`,\r\n `user=${FEI_E_YUN_USER}`,\r\n `stime=${ts}`,\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`,\r\n `sn=${params.deviceCode}`,\r\n `times=${params.times}` //打印次数\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n}\r\nexport default new API;\r\n"]}
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","dto","param","Idstore","POSCode","id","ts","Math","round","Date","getTime","dt","apiname","deviceCode","join","options","method","headers","url","printerContent","content","times"],"mappings":"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","file":"api.js","sourcesContent":["import { tApi } from 'tplus-api';\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 }, '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.FindByIdNoAuth', false, false);\n return data;\n }\n\t//获取项目储值打印数据\n async getProjectStoragePrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IProjectStorage.FindById', false, false);\n return data;\n }\n //获取扣次打印数据\n async getProjectConsumePrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.INewRetail.FindByIdForProjectConsumeCloudPrint', false, false);\n return data;\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"]}
@@ -72,6 +72,10 @@ var PrintUtil = function () {
72
72
  });
73
73
  };
74
74
 
75
+ this.doOnlyRetail = function (printParams, Id, callback) {
76
+ _this2.doPrint(printParams, Id, callback);
77
+ };
78
+
75
79
  this.doPrint = function (printParams, Id, callback) {
76
80
  if (!printParams || !Id) return;
77
81
  var _this = _this2;
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/cloudPrint/index.js"],"names":["IdsettleStyleList","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","tools","changePrivateInfo","details","length","map","quantity","toDecimal2NoZero","item","Quantity","Unit","Name","taxPrice","TaxPrice","taxAmount","tool","formatPrecision","TaxAmount","Precision","push","Inventory","constr","loadBTPrintData","doDialyPrint","getDialyPrintDataInfo","loadBTDutyAndDialyPrintData","doDutyPrint","getDutyPrintDataInfo","doStoragePrint","getStoragePrintDataInfo","StorageDetails","MadeDate","CardCode","StorageMutiSettleDetails","Person","loadBTStoragePrintData","templateContent","printEntity","params","Mobilephone","MemberName","StorageName","ThisStorageAmount","ThisPresentAmount","AfterBalanceStorage","headerMap","footerMap1","footerMap2","set","changeDateFormat","format","forEach","IdsettleStyle","StorageAmount","undefined","BTPrintFormatUtil","setLineByteSize","lineSize","printTitle","size","leftPrintMsg","type","POSCode","POS","POSName","WorkingDate","StartDate","ShiftDate","DailyDate","RetailAmount","ReturnAmount","CashOutAmount","CouponsDeduct","CouponsAmount","OnlineAmount","TotalCustom","Price","InitialAmount","ImprestAmount","ImprestBalanceAmount","ShiftVoucherDetails","DailyDetails","WorkingTime","ShiftTime","StartTime","DailyTime","Memo","detailTopList","detailContentList","replace","Caption","IsTitle","IsFoot","DailyDetailsCommon","OrigAmount","detailsOb","MemberDepositAmount","SettleStyle","drawSeparateLine","printStarTitle","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","items","printMenuMSG","drawSeparateLine2","spaceCenterPrintMsg","Telephone","cloudContents","Open","Key","Sign","Card","isHorizontalSunMi","console","log","sunmiPrint","arr","printerContent","join","PrintCount","openPrintMsg","content","apiname","deviceCode","times","s","data","window","sunMi_OperatingCashier","updatePrinterState","status","state","message","PrintSmallTicketter","msg","doProjectStoragePrint","getProjectStoragePrintDataInfo","Details","loadBTProjectStoragePrintData","PersonName","footerMap","i","ServiceProject","storageAmount","doProjectConsumePrint","getProjectConsumePrintDataInfo","loadBTProjectConsumePrintData","serviceprojectpackagename","getDynamicProperty","DynamicPropertyKeys","DynamicPropertyValues","serviceprojectname","UsedTimes","BalanceTimes","openPrinterAddlist","BTPrintEntity","BTPrintContent","platform","x","f","Math","round","toString"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AACA;;;;AACA;;AACA;;AAEA;;;;;;AAEA,IAAMA,oBAAoB;AACxB,QAAM,IADkB;AAExB,QAAM,IAFkB;AAGxB,QAAM,MAHkB;AAIxB,QAAM,KAJkB;AAKxB,OAAK,IALmB;AAMxB,OAAK,IANmB;AAOxB,OAAK,MAPmB;AAQxB,OAAK,MARmB;AASxB,OAAK,KATmB;AAUxB,OAAK,OAVmB;AAWxB,OAAK,KAXmB;AAYxB,OAAK,MAZmB;AAaxB,OAAK;AAbmB,CAA1B;;IAeMC,S;AACJ,uBAAe;AAAA;;AAAA;;AAAA,SAefC,WAfe,GAeD,UAACC,WAAD,EAAcC,QAAd,EAA2B;AACvC,aAAKC,YAAL,CAAmBF,WAAnB,EAAgC,kBAAU;AAAA,YACjCG,GADiC,GAC1BC,MAD0B,CACjCD,GADiC;;AAExC,YAAIA,QAAQ,CAAZ,EAAe;AACb,iBAAKE,UAAL,CACE,SAAS,cAAT,GAA0B,MAD5B,EAEEL,WAFF,EAGEC,QAHF;AAKD,SAND,MAMO;AACL,cAAI,OAAOA,QAAP,IAAmB,UAAvB,EAAmCA,SAAUG,MAAV;AACpC;AACF,OAXD;AAYD,KA5Bc;;AAAA,SA+BfE,OA/Be,GA+BL,UAACN,WAAD,EAAcO,EAAd,EAAkBN,QAAlB,EAA+B;AACvC,UAAI,CAACD,WAAD,IAAgB,CAACO,EAArB,EAAyB;AACzB,UAAIC,QAAQ,MAAZ;AACAC,oBAAIC,gBAAJ,CAAsBH,EAAtB,EAA0BI,IAA1B,CAAgC,eAAO;AAAA,mBAcjCR,OAAO,EAd0B;AAAA,YAEnCS,KAFmC,QAEnCA,KAFmC;AAAA,YAGnCC,QAHmC,QAGnCA,QAHmC;AAAA,YAInCC,IAJmC,QAInCA,IAJmC;AAAA,YAKnCC,WALmC,QAKnCA,WALmC;AAAA,YAMnCC,UANmC,QAMnCA,UANmC;AAAA,YAOnCC,cAPmC,QAOnCA,cAPmC;AAAA,YAQnCC,UARmC,QAQnCA,UARmC;AAAA,YASnCC,aATmC,QASnCA,aATmC;AAAA,YAUnCC,MAVmC,QAUnCA,MAVmC;AAAA,YAWnCC,eAXmC,QAWnCA,eAXmC;AAAA,YAYnCC,QAZmC,QAYnCA,QAZmC;AAAA,YAanCC,cAbmC,QAanCA,cAbmC;;AAgBrCH,iBAASI,gBAAMC,iBAAN,CAAwBL,MAAxB,EAAgC,OAAhC,CAAT;;AAEA,YAAIM,UAAU,EAAd;AACA,YAAIP,iBAAiBA,cAAcQ,MAAd,GAAuB,CAA5C,EAA+C;AAC7CR,wBAAcS,GAAd,CAAmB,gBAAQ;AACzB,gBAAIC,WAAW,OAAKC,gBAAL,CAAuBC,KAAKC,QAA5B,CAAf;AACA;AACA;AACA;AACA;AACAH,wBAAYE,KAAKE,IAAL,CAAUC,IAAtB;AACA,gBAAIC,WAAW,OAAKL,gBAAL,CAAuBC,KAAKK,QAA5B,CAAf;AACA;AACA;AACA,gBAAIC,YAAYC,mBAAKC,eAAL,CACdR,KAAKS,SADS,EAEd,OAAKC,SAAL,CAAeD,SAFD,CAAhB;AAIAd,oBAAQgB,IAAR,CAAc,CAACX,KAAKY,SAAL,CAAeT,IAAhB,EAAsBL,QAAtB,EAAgCM,QAAhC,EAA0CE,SAA1C,CAAd;AACD,WAfD;AAgBD;AACD,YAAIO,SAASpC,MAAMqC,eAAN,CAAuB;AAClCjC,sBADkC;AAElCC,4BAFkC;AAGlCC,oBAHkC;AAIlCC,kCAJkC;AAKlCW,0BALkC;AAMlCV,gCANkC;AAOlCC,wCAPkC;AAQlCC,gCARkC;AASlCE,wBATkC;AAUlCC,0CAVkC;AAWlCC,4BAXkC;AAYlCC;AAZkC,SAAvB,CAAb;AAcAf,cAAMH,UAAN,CAAkBuC,MAAlB,EAA0B5C,WAA1B,EAAuCC,QAAvC;AACD,OApDD;AAqDD,KAvFc;;AAAA,SA0Ff6C,YA1Fe,GA0FA,UAAC9C,WAAD,EAAcO,EAAd,EAAkBN,QAAlB,EAA+B;AAC5C,UAAI,CAACM,EAAL,EAAS;AACT,UAAIC,QAAQ,MAAZ;AACAC,oBAAIsC,qBAAJ,CAA2BxC,EAA3B,EAA+BI,IAA/B,CAAqC,eAAO;AAC1C,YAAIiC,SAASpC,MAAMwC,2BAAN,CAAmC7C,GAAnC,EAAwC,OAAxC,CAAb;AACAK,cAAMH,UAAN,CAAkBuC,MAAlB,EAA0B5C,WAA1B,EAAuCC,QAAvC;AACD,OAHD;AAID,KAjGc;;AAAA,SAoGfgD,WApGe,GAoGD,UAACjD,WAAD,EAAcO,EAAd,EAAkBN,QAAlB,EAA+B;AAC3C,UAAI,CAACM,EAAL,EAAS;AACT,UAAIC,QAAQ,MAAZ;AACAC,oBAAIyC,oBAAJ,CAA0B3C,EAA1B,EAA8BI,IAA9B,CAAoC,eAAO;AACzC,YAAIiC,SAASpC,MAAMwC,2BAAN,CAAmC7C,GAAnC,EAAwC,MAAxC,CAAb;AACAK,cAAMH,UAAN,CAAkBuC,MAAlB,EAA0B5C,WAA1B,EAAuCC,QAAvC;AACD,OAHD;AAID,KA3Gc;;AAAA,SA8GfkD,cA9Ge,GA8GE,UAACnD,WAAD,EAAcO,EAAd,EAAkBN,QAAlB,EAA+B;AAC9C,UAAI,CAACM,EAAL,EAAS;AACT,UAAIC,QAAQ,MAAZ;AACAC,oBAAI2C,uBAAJ,CAA6B7C,EAA7B,EAAiCI,IAAjC,CAAuC,eAAO;AAAA,oBAUxCR,OAAO,EAViC;AAAA,YAE1CS,KAF0C,SAE1CA,KAF0C;AAAA,YAG1CyC,cAH0C,SAG1CA,cAH0C;AAAA,YAI1CC,QAJ0C,SAI1CA,QAJ0C;AAAA,YAK1ClC,MAL0C,SAK1CA,MAL0C;AAAA,YAM1CmC,QAN0C,SAM1CA,QAN0C;AAAA,YAO1CC,wBAP0C,SAO1CA,wBAP0C;AAAA,YAQ1CzC,WAR0C,SAQ1CA,WAR0C;AAAA,YAS1C0C,MAT0C,SAS1CA,MAT0C;;AAW5CrC,iBAASI,gBAAMC,iBAAN,CAAwBL,MAAxB,EAAgC,OAAhC,CAAT;AACA,YAAIwB,SAASpC,MAAMkD,sBAAN,CAA8B;AACzC9C,sBADyC;AAEzCyC,wCAFyC;AAGzCC,4BAHyC;AAIzClC,wBAJyC;AAKzCmC,4BALyC;AAMzCC,4DANyC;AAOzCzC,kCAPyC;AAQzC0C;AARyC,SAA9B,CAAb;AAUAjD,cAAMH,UAAN,CAAkBuC,MAAlB,EAA0B5C,WAA1B,EAAuCC,QAAvC;AACD,OAvBD;AAwBD,KAzIc;;AAAA,SA4IfyD,sBA5Ie,GA4IU,kBAAU;AACjC,UAAIC,kBAAkB,EAAtB;AACA,UAAIC,cAAc,EAAlB;;AAFiC,kBAU7BC,UAAU,EAVmB;AAAA,UAI/BjD,KAJ+B,SAI/BA,KAJ+B;AAAA,UAK/ByC,cAL+B,SAK/BA,cAL+B;AAAA,UAM/BtC,WAN+B,SAM/BA,WAN+B;AAAA,UAO/BK,MAP+B,SAO/BA,MAP+B;AAAA,UAQ/BoC,wBAR+B,SAQ/BA,wBAR+B;AAAA,UAS/BC,MAT+B,SAS/BA,MAT+B;;AAAA,kBAWoBrC,UAAU,EAX9B;AAAA,UAWzB0C,WAXyB,SAWzBA,WAXyB;AAAA,UAWLC,UAXK,SAWZ7B,IAXY;AAAA,UAWOqB,QAXP,SAWOA,QAXP;;AAAA,kBAYHE,UAAU,EAZP;AAAA,UAYlBO,WAZkB,SAYzB9B,IAZyB;;AAAA,kBAiB7BmB,eAAe,CAAf,KAAqB,EAjBQ;AAAA,UAc/BY,iBAd+B,SAc/BA,iBAd+B;AAAA,UAe/BC,iBAf+B,SAe/BA,iBAf+B;AAAA,UAgB/BC,mBAhB+B,SAgB/BA,mBAhB+B;;AAkBjCP,kBAAYQ,SAAZ,GAAwB,mBAAxB;AACAR,kBAAYS,UAAZ,GAAyB,mBAAzB;AACAT,kBAAYU,UAAZ,GAAyB,mBAAzB;AACAV,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiCjC,mBAAKkC,gBAAL,CAAuBzD,WAAvB,CAAjC;AACA6C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,OAA3B,EAAoCP,eAAgB,EAApD;AACAJ,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,MAA3B,EAAmChB,YAAY,EAA/C;AACAK,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,KAA3B,EAAkCT,eAAe,EAAjD;AACAF,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,MAA3B,EAAmCR,cAAc,EAAjD;AACAH,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,QAA3B,EAAqCjC,mBAAKmC,MAAL,CAAaR,iBAAb,KAAmC,EAAxE;AACAL,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,QAA3B,EAAqCjC,mBAAKmC,MAAL,CAAaP,iBAAb,KAAmC,EAAxE;AACAN,kBAAYQ,SAAZ,CAAsBG,GAAtB,CACE,SADF,EAEEjC,mBAAKmC,MAAL,CAAaN,mBAAb,KAAqC,EAFvC;AAIA,UAAIX,4BAA4BA,yBAAyB7B,MAAzB,IAAmC,CAAnE,EAAsE;AACpE6B,iCAAyBkB,OAAzB,CAAkC,mBAAW;AAAA,cACpCC,aADoC,GACJjD,OADI,CACpCiD,aADoC;AAAA,cACrBC,aADqB,GACJlD,OADI,CACrBkD,aADqB;;AAE3C,cAAID,kBAAkBE,SAAlB,IAA+BF,kBAAkB,IAArD,EAA2D;AACzDf,wBAAYQ,SAAZ,CAAsBG,GAAtB,CACE1E,kBAAkB8E,aAAlB,CADF,EAEEC,iBAAiB,MAFnB;AAID;AACF,SARD;AASD;AACDhB,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,MAA3B,EAAmC,EAAnC;;AAEA;AACAO,kCAAkBC,eAAlB,CAAmC,OAAKC,QAAxC;;AAEA;AACArB,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkBG,UAAlB,CAA8BrE,MAAMsB,IAAN,IAAc,EAA5C,CAAnB;AACA,UAAI0B,YAAYQ,SAAZ,IAAyBR,YAAYQ,SAAZ,CAAsBc,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAYQ,SAA5C,CAAnB;AACD;AACDT,yBAAmB,UAAnB;AACA,aAAOA,eAAP;AACD,KApMc;;AAAA,SAuMfX,2BAvMe,GAuMe,UAACa,MAAD,EAASuB,IAAT,EAAkB;AAAA;;AAC9C,UAAIzB,kBAAkB,EAAtB;AACA,UAAIC,cAAc,EAAlB;;AAF8C,kBAkC1CC,UAAU,EAlCgC;AAAA,UAI5C/C,IAJ4C,SAI5CA,IAJ4C;AAAA,UAK5CF,KAL4C,SAK5CA,KAL4C;AAAA,UAM5CC,QAN4C,SAM5CA,QAN4C;AAAA,UAO5CwE,OAP4C,SAO5CA,OAP4C;AAAA,UAQ5CC,GAR4C,SAQ5CA,GAR4C;AAAA,UAS5CC,OAT4C,SAS5CA,OAT4C;AAAA,UAU5CC,WAV4C,SAU5CA,WAV4C;AAAA,UAW5CC,SAX4C,SAW5CA,SAX4C;AAAA,UAY5CC,SAZ4C,SAY5CA,SAZ4C;AAAA,UAa5CC,SAb4C,SAa5CA,SAb4C;AAAA,UAc5CC,YAd4C,SAc5CA,YAd4C;AAAA,UAe5CC,YAf4C,SAe5CA,YAf4C;AAAA,UAgB5CjB,aAhB4C,SAgB5CA,aAhB4C;AAAA,UAiB5CkB,aAjB4C,SAiB5CA,aAjB4C;AAAA,UAkB5CC,aAlB4C,SAkB5CA,aAlB4C;AAAA,UAmB5CC,aAnB4C,SAmB5CA,aAnB4C;AAAA,UAoB5CC,YApB4C,SAoB5CA,YApB4C;AAAA,UAqB5CjF,UArB4C,SAqB5CA,UArB4C;AAAA,UAsB5CkF,WAtB4C,SAsB5CA,WAtB4C;AAAA,UAuB5CC,KAvB4C,SAuB5CA,KAvB4C;AAAA,UAwB5CC,aAxB4C,SAwB5CA,aAxB4C;AAAA,UAyB5CC,aAzB4C,SAyB5CA,aAzB4C;AAAA,UA0B5CC,oBA1B4C,SA0B5CA,oBA1B4C;AAAA,UA2B5CC,mBA3B4C,SA2B5CA,mBA3B4C;AAAA,UA4B5CC,YA5B4C,SA4B5CA,YA5B4C;AAAA,UA6B5CC,WA7B4C,SA6B5CA,WA7B4C;AAAA,UA8B5CC,SA9B4C,SA8B5CA,SA9B4C;AAAA,UA+B5CC,SA/B4C,SA+B5CA,SA/B4C;AAAA,UAgC5CC,SAhC4C,SAgC5CA,SAhC4C;AAAA,UAiC5CC,IAjC4C,SAiC5CA,IAjC4C;;AAmC9CjD,kBAAYQ,SAAZ,GAAwB,mBAAxB;AACAR,kBAAYS,UAAZ,GAAyB,mBAAzB;AACAT,kBAAYU,UAAZ,GAAyB,mBAAzB;AACAV,kBAAYkD,aAAZ,GAA4B,EAA5B;AACAlD,kBAAYmD,iBAAZ,GAAgC,EAAhC;AACAnD,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiCzD,IAAjC;AACA8C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiC3D,MAAMsB,IAAN,IAAc,EAA/C;AACA0B,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,OAA3B,EAAoCc,WAAW,EAA/C;AACAzB,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,OAA3B,EAAoCa,QAAQ,MAAR,GAAiBG,OAAjB,GAA2BD,OAAO,EAAtE;AACA1B,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,OAA3B,EAAoC1D,YAAY,EAAhD;AACA+C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CACE,MADF,EAEEjC,mBACGkC,gBADH,CACqBY,QAAQ,MAAR,GAAiBI,WAAjB,GAA+BC,SADpD,EAEGuB,OAFH,CAEY,UAFZ,EAEwB5B,QAAQ,MAAR,GAAiBqB,WAAjB,GAA+BE,SAFvD,CAFF;AAMA/C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CACEa,QAAQ,MAAR,GAAiB,MAAjB,GAA0B,MAD5B,EAEE9C,mBACGkC,gBADH,CACqBY,QAAQ,MAAR,GAAiBM,SAAjB,GAA6BC,SADlD,EAEGqB,OAFH,CAEY,UAFZ,EAEwB5B,QAAQ,MAAR,GAAiBsB,SAAjB,GAA6BE,SAFrD,CAFF;;AAOAhD,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,MAA5B,EAAoCjC,mBAAKmC,MAAL,CAAamB,YAAb,KAA8B,MAAlE;AACAhC,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,MAA5B,EAAoCjC,mBAAKmC,MAAL,CAAaoB,YAAb,KAA8B,MAAlE;AACAjC,kBAAYS,UAAZ,CAAuBE,GAAvB,CACE,OADF,EAEEjC,mBAAKmC,MAAL,CAAamB,eAAeC,YAA5B,KAA6C,MAF/C;AAIAjC,kBAAYS,UAAZ,CAAuBE,GAAvB,CACE,QADF,EAEEjC,mBAAKmC,MAAL,CAAaG,aAAb,KAA+B,MAFjC;AAIAhB,kBAAYS,UAAZ,CAAuBE,GAAvB,CACE,QADF,EAEEjC,mBAAKmC,MAAL,CAAaqB,aAAb,KAA+B,MAFjC;AAIAlC,kBAAYS,UAAZ,CAAuBE,GAAvB,CACE,WADF,EAEEjC,mBAAKmC,MAAL,CAAasB,aAAb,KAA+B,MAFjC;AAIAnC,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,OAA5B,EAAqCjC,mBAAKmC,MAAL,CAAauB,aAAb,KAA+B,MAApE;AACApC,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,QAA5B,EAAsCjC,mBAAKmC,MAAL,CAAawB,YAAb,KAA8B,MAApE;AACArC,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,MAA5B,EAAoCvD,cAAc,GAAlD;AACA4C,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,MAA5B,EAAoC2B,eAAe,GAAnD;AACAtC,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,KAA5B,EAAmCjC,mBAAKmC,MAAL,CAAa0B,KAAb,KAAuB,MAA1D;;AAEAvC,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,MADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,QADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,MADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;;AAMA,UAAIzF,UAAU,EAAd;AACA,UAAI0F,qBAAqB,EAAzB;AACA,UAAIhC,QAAQ,MAAZ,EAAoB;AAClBgC,6BAAqBb,mBAArB;AACD,OAFD,MAEO;AACLa,6BAAqBZ,YAArB;AACD;AACD,UAAIY,sBAAsBA,mBAAmBzF,MAAnB,IAA6B,CAAvD,EAA0D;AACxDyF,2BAAmB1C,OAAnB,CAA4B,qBAAa;AAAA,cAChC2C,UADgC,GACeC,SADf,CAChCD,UADgC;AAAA,cACpBE,mBADoB,GACeD,SADf,CACpBC,mBADoB;AAAA,cACAC,WADA,GACeF,SADf,CACAE,WADA;;AAAA,sBAEtBA,eAAe,EAFO;AAAA,cAE/BtF,IAF+B,SAE/BA,IAF+B;;AAGrCR,kBAAQgB,IAAR,CAAc,CACZR,OAAKA,IAAL,GAAU,EADE,EAEZI,mBAAKmC,MAAL,CAAa4C,UAAb,CAFY,EAGZ/E,mBAAKmC,MAAL,CAAa8C,mBAAb,CAHY,CAAd;AAKH,SARD;AASD;AACD,2CAAYR,iBAAZ,EAA8BrE,IAA9B,8BAAuChB,OAAvC;;AAEAiC,yBAAmB,IAAnB;AACA;AACAC,kBAAYU,UAAZ,CAAuBC,GAAvB,CACE,SADF,EAEEjC,mBAAKmC,MAAL,CAAa2B,aAAb,KAA+B,MAFjC;AAIAxC,kBAAYU,UAAZ,CAAuBC,GAAvB,CAA4B,OAA5B,EAAqCjC,mBAAKmC,MAAL,CAAa4B,aAAb,KAA+B,MAApE;AACAzC,kBAAYU,UAAZ,CAAuBC,GAAvB,CACE,OADF,EAEEjC,mBAAKmC,MAAL,CAAa2B,gBAAcC,aAA3B,KAA6C,MAF/C;AAIA;AACAvB,kCAAkBC,eAAlB,CAAmC,OAAKC,QAAxC;;AAEA;AACArB,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkBG,UAAlB,CACjBG,QAAQ,MAAR,GAAiB,IAAjB,GAAwB,IADP,CAAnB;AAGAzB,yBAAmBmB,4BAAkB2C,gBAAlB,EAAnB;AACA,UAAI7D,YAAYQ,SAAZ,IAAyBR,YAAYQ,SAAZ,CAAsBc,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAYQ,SAA5C,CAAnB;AACD;AACDT,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkB4C,cAAlB,CAAkC,MAAlC,CAAnB;AACA/D,yBAAmBmB,4BAAkB2C,gBAAlB,EAAnB;AACA;AACA,UAAI7D,YAAYS,UAAZ,IAA0BT,YAAYS,UAAZ,CAAuBa,IAAvB,GAA8B,CAA5D,EAA+D;AAC7DvB,2BAAmBmB,4BAAkBK,YAAlB,CACjBvB,YAAYS,UADK,CAAnB;AAGD;AACDV,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkB4C,cAAlB,CAAkC,MAAlC,CAAnB;AACA/D,yBAAmBmB,4BAAkB2C,gBAAlB,EAAnB;;AAEA;AACA,UAAIE,SAAS,EAAb;AACA,UAAI/D,YAAYkD,aAAZ,IAA6BlD,YAAYkD,aAAZ,CAA0BnF,MAA1B,GAAmC,CAApE,EAAuE;AACrEiC,oBAAYkD,aAAZ,CAA0BpC,OAA1B,CAAmC,gBAAQ;AACzC,cAAIkD,KAAK;AACPC,wBAAY9F,KAAKkF,OADV;AAEPa,0BAAc,CAFP;AAGPC,qBAAShG,KAAKmF,OAHP;AAIPc,oBAAQjG,KAAKoF;AAJN,WAAT;AAMAQ,iBAAOjF,IAAP,CAAakF,EAAb;AACD,SARD;AASD;AACD;AACA,UAAIK,gBAAgB,EAApB;AACArE,kBAAYmD,iBAAZ,CAA8BrC,OAA9B,CAAuC,iBAAS;AAC9C,YAAIwD,YAAY,EAAhB;AACAC,cAAMzD,OAAN,CAAe,gBAAQ;AACrBwD,oBAAUxF,IAAV,CAAgBX,IAAhB;AACD,SAFD;AAGAkG,sBAAcvF,IAAd,CAAoBwF,SAApB;AACD,OAND;AAOAvE,yBAAmBmB,4BAAkBsD,YAAlB,CACjBH,aADiB,EAEjBN,MAFiB,EAGjB,IAHiB,CAAnB;;AAMA;AACA,UAAI/D,YAAYU,UAAZ,IAA0BV,YAAYU,UAAZ,CAAuBY,IAAvB,GAA8B,CAA5D,EAA+D;AAC7DvB,2BAAmBmB,4BAAkBK,YAAlB,CACjBvB,YAAYU,UADK,CAAnB;AAGD;AACDX,yBAAmBmB,4BAAkBuD,iBAAlB,EAAnB;AACA1E,yBAAmB,SAAQkD,QAAQ,EAAhB,CAAnB;AACAlD,yBAAmB,IAAnB,CA9L8C,CA8LrB;AACzBA,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkBwD,mBAAlB,CACjB,QADiB,EAEjB,SAFiB,CAAnB;AAIA3E,yBAAmB,UAAnB;AACA,aAAOA,eAAP;AACD,KA7Yc;;AAAA,SAgZfd,eAhZe,GAgZG,kBAAU;AAAA;;AAC1B,UAAIc,kBAAkB,EAAtB;AACA,UAAIC,cAAc,EAAlB;;AAF0B,kBAgBtBC,UAAU,EAhBY;AAAA,UAIxBjD,KAJwB,SAIxBA,KAJwB;AAAA,UAKxBC,QALwB,SAKxBA,QALwB;AAAA,UAMxBC,IANwB,SAMxBA,IANwB;AAAA,UAOxBC,WAPwB,SAOxBA,WAPwB;AAAA,UAQxBW,OARwB,SAQxBA,OARwB;AAAA,UASxBV,UATwB,SASxBA,UATwB;AAAA,UAUxBC,cAVwB,SAUxBA,cAVwB;AAAA,UAWxBC,UAXwB,SAWxBA,UAXwB;AAAA,UAYxBE,MAZwB,SAYxBA,MAZwB;AAAA,UAaxBC,eAbwB,SAaxBA,eAbwB;AAAA,UAcxBC,QAdwB,SAcxBA,QAdwB;AAAA,UAexBC,cAfwB,SAexBA,cAfwB;;AAiB1BqC,kBAAYQ,SAAZ,GAAwB,mBAAxB;AACAR,kBAAYkD,aAAZ,GAA4B,EAA5B;AACAlD,kBAAYmD,iBAAZ,GAAgC,EAAhC;AACAnD,kBAAYS,UAAZ,GAAyB,mBAAzB;AACAT,kBAAYU,UAAZ,GAAyB,mBAAzB;AACAV,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,MAA3B,EAAmC3D,MAAMsB,IAAN,IAAc,EAAjD;AACA0B,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,MAA3B,EAAmC3D,MAAM2H,SAAN,IAAmB,EAAtD;AACA3E,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,KAA3B,EAAkC1D,YAAY,EAA9C;AACA+C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiCzD,IAAjC;AACA8C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiCjC,mBAAKkC,gBAAL,CAAuBzD,WAAvB,CAAjC;AACA6C,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,MADqB;AAE9BC,iBAAS,IAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKA,4CAAYJ,iBAAZ,EAA8BrE,IAA9B,gEAAuChB,OAAvC;AACAkC,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,IAA5B,EAAkCvD,UAAlC;AACA4C,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,IAA5B,EAAkCtD,cAAlC;AACA2C,kBAAYS,UAAZ,CAAuBE,GAAvB,CAA4B,IAA5B,EAAkCrD,UAAlC;AACA0C,kBAAYU,UAAZ,CAAuBC,GAAvB,CAA4B,MAA5B,EAAqCnD,UAAUA,OAAOmC,QAAlB,IAA+B,EAAnE;AACAK,kBAAYU,UAAZ,CAAuBC,GAAvB,CAA4B,MAA5B,EAAqCnD,UAAUA,OAAO0C,WAAlB,IAAkC,EAAtE;AACAF,kBAAYU,UAAZ,CAAuBC,GAAvB,CAA4B,MAA5B,EAAoClD,mBAAmB,EAAvD;AACAuC,kBAAYU,UAAZ,CAAuBC,GAAvB,CAA4B,MAA5B,EAAoCjD,YAAY,EAAhD;AACAsC,kBAAYU,UAAZ,CAAuBC,GAAvB,CAA4B,MAA5B,EAAoChD,kBAAkB,EAAtD;AACA;AACAuD,kCAAkBC,eAAlB,CAAmC,OAAKC,QAAxC;;AAEA;AACArB,yBAAmB,IAAnB;AACA,UAAIC,YAAYQ,SAAZ,IAAyBR,YAAYQ,SAAZ,CAAsBc,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAYQ,SAA5C,CAAnB;AACD;AACD;AACA,UAAIuD,SAAS,EAAb;AACA,UAAI/D,YAAYkD,aAAZ,IAA6BlD,YAAYkD,aAAZ,CAA0BnF,MAA1B,GAAmC,CAApE,EAAuE;AACrEiC,oBAAYkD,aAAZ,CAA0BpC,OAA1B,CAAmC,gBAAQ;AACzC,cAAIkD,KAAK;AACPC,wBAAY9F,KAAKkF,OADV;AAEPa,0BAAc,CAFP;AAGPC,qBAAShG,KAAKmF,OAHP;AAIPc,oBAAQjG,KAAKoF;AAJN,WAAT;AAMAQ,iBAAOjF,IAAP,CAAakF,EAAb;AACD,SARD;AASD;AACD;AACA,UAAIK,gBAAgB,EAApB;AACArE,kBAAYmD,iBAAZ,CAA8BrC,OAA9B,CAAuC,iBAAS;AAC9C,YAAIwD,YAAY,EAAhB;AACAC,cAAMzD,OAAN,CAAe,gBAAQ;AACrBwD,oBAAUxF,IAAV,CAAgBX,IAAhB;AACD,SAFD;AAGAkG,sBAAcvF,IAAd,CAAoBwF,SAApB;AACD,OAND;AAOAvE,yBAAmBmB,4BAAkBsD,YAAlB,CACjBH,aADiB,EAEjBN,MAFiB,EAGjB,IAHiB,CAAnB;AAKA;AACA,UAAI/D,YAAYS,UAAZ,IAA0BT,YAAYS,UAAZ,CAAuBa,IAAvB,GAA8B,CAA5D,EAA+D;AAC7DvB,2BAAmBmB,4BAAkBK,YAAlB,CACjBvB,YAAYS,UADK,CAAnB;AAGD;AACDV,yBAAmBmB,4BAAkB2C,gBAAlB,EAAnB;AACA9D,yBAAmB,IAAnB;AACA;AACA,UAAIC,YAAYU,UAAZ,IAA0BV,YAAYU,UAAZ,CAAuBY,IAAvB,GAA8B,CAA5D,EAA+D;AAC7DvB,2BAAmBmB,4BAAkBK,YAAlB,CACjBvB,YAAYU,UADK,CAAnB;AAGD;AACDX,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkBuD,iBAAlB,EAAnB;AACA1E,yBAAmB,IAAnB;AACAA,yBAAmB,eAAnB;AACAA,yBAAmB,QAAnB;AACA,aAAOA,eAAP;AACD,KA/fc;;AAAA,SAkgBftD,UAlgBe,GAkgBF,UAACmI,aAAD,EAAgBxI,WAAhB,EAA6BC,QAA7B,EAA0C;AAAA,mBACdD,eAAe,EADD;AAAA,UAC7CyI,IAD6C,UAC7CA,IAD6C;AAAA,UACvCC,GADuC,UACvCA,GADuC;AAAA,UAClCC,IADkC,UAClCA,IADkC;AAAA,UAC5BzG,IAD4B,UAC5BA,IAD4B;AAAA,UACtB0G,IADsB,UACtBA,IADsB;AAErD;;;AACA,UAAI,OAAKC,iBAAL,IAA0B,CAACJ,IAA/B,EAAqC;AACnCK,gBAAQC,GAAR,CAAaP,aAAb;AACA,eAAKQ,UAAL,CAAiBR,aAAjB,EAAgCvI,QAAhC;AACD,OAHD,MAGO,IAAGwI,IAAH,EAAS;AACd,YAAIQ,MAAM,EAAV;AACAA,YAAIvG,IAAJ,CAAUiG,IAAV,EAAgBD,GAAhB;AACA,YAAIxG,IAAJ,EAAU+G,IAAIvG,IAAJ,CAAUR,IAAV;AACV,YAAI0G,IAAJ,EAAUK,IAAIvG,IAAJ,CAAUkG,IAAV;AACV,YAAIM,iBAAiBD,IAAIE,IAAJ,CAAU,GAAV,CAArB;AACA,YAAIC,aAAa,OAAKA,UAAtB,CANc,CAMoB;AAClC3I,sBAAI4I,YAAJ,CAAkB;AAChBC,mBAASd,aADO;AAEhBU,0BAAgBA,cAFA;AAGhBK,mBAAS,eAHO;AAIhBC,sBAAYb,IAJI;AAKhBc,iBAAOL;AALS,SAAlB,EAMGzI,IANH,CAMS,aAAK;AACZ,cAAI,OAAOV,QAAP,IAAmB,UAAnB,IAAiCyJ,CAAjC,IAAsCA,EAAEC,IAA5C,EAAkD1J,SAAUyJ,EAAEC,IAAZ;AACnD,SARD;AASD;AACF,KAzhBc;;AAAA,SA4hBfX,UA5hBe,GA4hBF,UAACR,aAAD,EAAgBvI,QAAhB,EAA6B;AACxC2J,aAAOC,sBAAP,IACED,OAAOC;AACP;AADA,OAEGC,kBAFH,GAEwBnJ,IAFxB,CAE6B,kBAAU;AAAA,qBACPoJ,UAAU,EADH;AAAA,YAC3BC,KAD2B,UAC3BA,KAD2B;AAAA,YACnBC,OADmB,UACnBA,OADmB;;AAEnC,YAAGD,SAAS,CAAZ,EAAc;AACZJ,iBAAOC,sBAAP,IACAD,OAAOC,sBAAP,CACGK,mBADH,CACwB1B,gBAAgB,MADxC,EAEG7H,IAFH,CAES,eAAO;AACZ,gBAAGR,OAAOA,IAAI6J,KAAX,IAAoB7J,IAAI6J,KAAJ,IAAa,GAApC,EAAwC;AACtC/J,0BAAYA,SAAU;AACpBE,qBAAI,CADgB;AAEpBgK,qBAAI;AAFgB,eAAV,CAAZ;AAID,aALD,MAKK;AACHlK,0BAAYA,SAAU;AACpBE,qBAAI,CAAC,CADe;AAEpBgK,qBAAIhK,IAAI8J,OAAJ,GAAY9J,IAAI8J,OAAhB,GAAwB;AAFR,eAAV,CAAZ;AAID;AACF,WAdH,CADA;AAgBD,SAjBD,MAiBK;AACHhK,sBAAYA,SAAU;AACpBE,iBAAI,CAAC,CADe;AAEpBgK,iBAAIF,UAAQA,OAAR,GAAgB;AAFA,WAAV,CAAZ;AAID;AACF,OA3BH,CADF;AA6BD,KA1jBc;;AAAA,SA+jBfG,qBA/jBe,GA+jBS,UAACpK,WAAD,EAAcO,EAAd,EAAkBN,QAAlB,EAA+B;AACrD,UAAI,CAACM,EAAL,EAAS;AACT,UAAIC,QAAQ,MAAZ;AACAC,oBAAI4J,8BAAJ,CAAoC9J,EAApC,EAAwCI,IAAxC,CAA8C,eAAO;AAAA,qBAS/CR,OAAO,EATwC;AAAA,YAEjDS,KAFiD,UAEjDA,KAFiD;AAAA,YAGjD0J,OAHiD,UAGjDA,OAHiD;AAAA,YAIjDhH,QAJiD,UAIjDA,QAJiD;AAAA,YAKjDlC,MALiD,UAKjDA,MALiD;AAAA,YAMjDwD,aANiD,UAMjDA,aANiD;AAAA,YAOjDpB,wBAPiD,UAOjDA,wBAPiD;AAAA,YAQjDzC,WARiD,UAQjDA,WARiD;;AAUnDK,iBAASI,gBAAMC,iBAAN,CAAwBL,MAAxB,EAAgC,OAAhC,CAAT;AACA,YAAIwB,SAASpC,MAAM+J,6BAAN,CAAqC;AAChD3J,sBADgD;AAEhD0J,0BAFgD;AAGhDhH,4BAHgD;AAIhDlC,wBAJgD;AAKhDwD,sCALgD;AAMhDpB,4DANgD;AAOhDzC;AAPgD,SAArC,CAAb;AASAP,cAAMH,UAAN,CAAkBuC,MAAlB,EAA0B5C,WAA1B,EAAuCC,QAAvC;AACD,OArBD;AAsBD,KAxlBc;;AAAA,SA0lBfsK,6BA1lBe,GA0lBiB,kBAAU;AAAA;;AACxC,UAAI5G,kBAAkB,EAAtB;AACA,UAAIC,cAAc,EAAlB;;AAFwC,mBAUpCC,UAAU,EAV0B;AAAA,UAItCjD,KAJsC,UAItCA,KAJsC;AAAA,UAKtC0J,OALsC,UAKtCA,OALsC;AAAA,UAMtCvJ,WANsC,UAMtCA,WANsC;AAAA,UAOtCK,MAPsC,UAOtCA,MAPsC;AAAA,UAQtCwD,aARsC,UAQtCA,aARsC;AAAA,UAStCpB,wBATsC,UAStCA,wBATsC;;AAAA,mBAWoBpC,UAAU,EAX9B;AAAA,UAWhC0C,WAXgC,UAWhCA,WAXgC;AAAA,UAWZP,QAXY,UAWnBzC,IAXmB;AAAA,UAWKiD,UAXL,UAWF7B,IAXE;;AAAA,mBAYXoI,QAAQ,CAAR,EAAW7G,MAAX,IAAqB,EAZV;AAAA,UAYzB+G,UAZyB,UAYhCtI,IAZgC;AAaxC;;;AACA0B,kBAAYkD,aAAZ,GAA4B,EAA5B;AACAlD,kBAAYmD,iBAAZ,GAAgC,EAAhC;AACAnD,kBAAYQ,SAAZ,GAAwB,mBAAxB;AACAR,kBAAY6G,SAAZ,GAAwB,mBAAxB;AACA7G,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiCjC,mBAAKkC,gBAAL,CAAuBzD,WAAvB,CAAjC;AACA6C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,OAA3B,EAAoCiG,cAAe,EAAnD;AACA5G,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKA,UAAIzF,UAAU,EAAd;AACE,UAAI4I,WAAWA,QAAQ3I,MAAR,GAAiB,CAAhC,EAAmC;AACjC,YAAI+I,IAAE,CAAN;AACAJ,gBAAQ1I,GAAR,CAAa,gBAAQ;AACnB8I;AACA,cAAI7I,WAAUS,mBAAKC,eAAL,CAAuB,OAAKT,gBAAL,CAAuBC,KAAKC,QAA5B,CAAvB,EAA8D,CAA9D,CAAd;AACAN,kBAAQgB,IAAR,CAAc,CAACgI,CAAD,EAAG3I,KAAK4I,cAAL,CAAoBzI,IAAvB,EAA6BL,QAA7B,CAAd;AACD,SAJD;AAKD;AACH,4CAAYkF,iBAAZ,EAA8BrE,IAA9B,+BAAuChB,OAAvC;AACAkC,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmChB,YAAY,EAA/C;AACAK,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,KAA3B,EAAkCT,eAAe,EAAjD;AACAF,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmCR,cAAc,EAAjD;AACAH,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmCjC,mBAAKC,eAAL,CAAsBqC,aAAtB,EAAoC,CAApC,CAAnC;;AAEA,UAAIpB,4BAA4BA,yBAAyB7B,MAAzB,IAAmC,CAAnE,EAAsE;AACpE6B,iCAAyBkB,OAAzB,CAAkC,iBAAS;AAAA,cAClCC,aADkC,GACYwD,KADZ,CAClCxD,aADkC;AAAA,cACLiG,aADK,GACYzC,KADZ,CACnBvD,aADmB;;AAEzC,cAAID,kBAAkBE,SAAlB,IAA+BF,kBAAkB,IAArD,EAA2D;AACzDf,wBAAY6G,SAAZ,CAAsBlG,GAAtB,CACE1E,kBAAkB8E,aAAlB,CADF,EAEErC,mBAAKC,eAAL,CAAsBqI,aAAtB,EAAoC,CAApC,CAFF;AAID;AACF,SARD;AASD;AACDhH,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmC,EAAnC;;AAEA;AACAO,kCAAkBC,eAAlB,CAAmC,OAAKC,QAAxC;;AAEA;AACArB,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkBG,UAAlB,CAA8BrE,MAAMsB,IAAN,IAAc,EAA5C,CAAnB;AACA,UAAI0B,YAAYQ,SAAZ,IAAyBR,YAAYQ,SAAZ,CAAsBc,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAYQ,SAA5C,CAAnB;AACD;AACD;AACAU,kCAAkB2C,gBAAlB;AACA,UAAIE,SAAS,EAAb;AACA,UAAI/D,YAAYkD,aAAZ,IAA6BlD,YAAYkD,aAAZ,CAA0BnF,MAA1B,GAAmC,CAApE,EAAuE;AACrEiC,oBAAYkD,aAAZ,CAA0BpC,OAA1B,CAAmC,gBAAQ;AACzC,cAAIkD,KAAK;AACPC,wBAAY9F,KAAKkF,OADV;AAEPa,0BAAc,CAFP;AAGPC,qBAAShG,KAAKmF,OAHP;AAIPc,oBAAQjG,KAAKoF;AAJN,WAAT;AAMAQ,iBAAOjF,IAAP,CAAakF,EAAb;AACD,SARD;AASD;AACD9C,kCAAkB2C,gBAAlB;AACA;AACA,UAAIQ,gBAAgB,EAApB;;AAGArE,kBAAYmD,iBAAZ,CAA8BrC,OAA9B,CAAuC,iBAAS;AAC9C,YAAIwD,YAAY,EAAhB;AACAC,cAAMzD,OAAN,CAAe,gBAAQ;AACrBwD,oBAAUxF,IAAV,CAAgBX,IAAhB;AACD,SAFD;AAGAkG,sBAAcvF,IAAd,CAAoBwF,SAApB;AACD,OAND;AAOAvE,yBAAmBmB,4BAAkBsD,YAAlB,CACjBH,aADiB,EAEjBN,MAFiB,EAGjB,IAHiB,CAAnB;AAKA;AACAhE,yBAAmB,IAAnB;AACA,UAAIC,YAAY6G,SAAZ,IAAyB7G,YAAY6G,SAAZ,CAAsBvF,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAY6G,SAA5C,CAAnB;AACD;AACD9G,yBAAmB,UAAnB;AACA,aAAOA,eAAP;AACD,KAxsBc;;AAAA,SA4sBdkH,qBA5sBc,GA4sBU,UAAC7K,WAAD,EAAcO,EAAd,EAAkBN,QAAlB,EAA+B;AACtD,UAAI,CAACM,EAAL,EAAS;AACT,UAAIC,QAAQ,MAAZ;AACAC,oBAAIqK,8BAAJ,CAAoCvK,EAApC,EAAwCI,IAAxC,CAA8C,eAAO;AAAA,qBAQ/CR,OAAO,EARwC;AAAA,YAEjDS,KAFiD,UAEjDA,KAFiD;AAAA,YAGjDO,aAHiD,UAGjDA,aAHiD;AAAA,YAIjDmC,QAJiD,UAIjDA,QAJiD;AAAA,YAKjDlC,MALiD,UAKjDA,MALiD;AAAA,YAMjDqC,MANiD,UAMjDA,MANiD;AAAA,YAOjD1C,WAPiD,UAOjDA,WAPiD;;AASnDK,iBAASI,gBAAMC,iBAAN,CAAwBL,MAAxB,EAAgC,OAAhC,CAAT;AACA,YAAIwB,SAASpC,MAAMuK,6BAAN,CAAqC;AAChDnK,sBADgD;AAEhDO,sCAFgD;AAGhDmC,4BAHgD;AAIhDlC,wBAJgD;AAKhDqC,wBALgD;AAMhD1C;AANgD,SAArC,CAAb;AAQAP,cAAMH,UAAN,CAAkBuC,MAAlB,EAA0B5C,WAA1B,EAAuCC,QAAvC;AACD,OAnBD;AAoBD,KAnuBc;;AAAA,SAquBf8K,6BAruBe,GAquBiB,kBAAU;AAAA;;AACxC,UAAIpH,kBAAkB,EAAtB;AACA,UAAIC,cAAc,EAAlB;;AAFwC,mBASpCC,UAAU,EAT0B;AAAA,UAItCjD,KAJsC,UAItCA,KAJsC;AAAA,UAKtCO,aALsC,UAKtCA,aALsC;AAAA,UAMtCJ,WANsC,UAMtCA,WANsC;AAAA,UAOtCK,MAPsC,UAOtCA,MAPsC;AAAA,UAQtCqC,MARsC,UAQtCA,MARsC;;AAAA,mBAUoBrC,UAAU,EAV9B;AAAA,UAUhC0C,WAVgC,UAUhCA,WAVgC;AAAA,UAUZP,QAVY,UAUnBzC,IAVmB;AAAA,UAUKiD,UAVL,UAUF7B,IAVE;;AAAA,mBAWXuB,UAAU,EAXC;AAAA,UAWzB+G,UAXyB,UAWhCtI,IAXgC;;AAYxC0B,kBAAYkD,aAAZ,GAA4B,EAA5B;AACAlD,kBAAYmD,iBAAZ,GAAgC,EAAhC;AACA;AACAnD,kBAAYQ,SAAZ,GAAwB,mBAAxB;AACAR,kBAAY6G,SAAZ,GAAwB,mBAAxB;AACA7G,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,IAA3B,EAAiCjC,mBAAKkC,gBAAL,CAAuBzD,WAAvB,CAAjC;AACA6C,kBAAYQ,SAAZ,CAAsBG,GAAtB,CAA2B,KAA3B,EAAkCiG,cAAe,EAAjD;AACA5G,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmChB,YAAY,EAA/C;AACAK,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmCR,cAAc,EAAjD;AACAH,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,OAA3B,EAAoCT,eAAe,EAAnD;AACAF,kBAAY6G,SAAZ,CAAsBlG,GAAtB,CAA2B,MAA3B,EAAmC,EAAnC;;AAEAX,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,IAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,IADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,MADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKAvD,kBAAYkD,aAAZ,CAA0BpE,IAA1B,CAAgC;AAC9BuE,iBAAS,MADqB;AAE9BC,iBAAS,KAFqB;AAG9BC,gBAAQ;AAHsB,OAAhC;AAKA,UAAIzF,UAAU,EAAd;;AAGE,UAAIP,iBAAiBA,cAAcQ,MAAd,GAAuB,CAA5C,EAA+C;AAC7CR,sBAAcS,GAAd,CAAmB,gBAAQ;AACzB,cAAIoJ,4BAA2B1I,mBAAK2I,kBAAL,CAC7BlJ,KAAKmJ,mBADwB,EAE7BnJ,KAAKoJ,qBAFwB,EAG7B,2BAH6B,CAA/B;AAKA,cAAIC,qBAAoB9I,mBAAK2I,kBAAL,CACtBlJ,KAAKmJ,mBADiB,EAEtBnJ,KAAKoJ,qBAFiB,EAGtB,oBAHsB,CAAxB;AAKA,cAAIE,YAAW/I,mBAAKC,eAAL,CAAuB,OAAKT,gBAAL,CAAuBQ,mBAAK2I,kBAAL,CAC3DlJ,KAAKmJ,mBADsD,EAE3DnJ,KAAKoJ,qBAFsD,EAG3D,WAH2D,CAAvB,CAAvB,EAIX,CAJW,CAAf;AAKA,cAAIG,eAAchJ,mBAAKC,eAAL,CAAuB,OAAKT,gBAAL,CAAuBQ,mBAAK2I,kBAAL,CAC9DlJ,KAAKmJ,mBADyD,EAE9DnJ,KAAKoJ,qBAFyD,EAG9D,cAH8D,CAAvB,CAAvB,EAIb,CAJa,CAAlB;;AAMAzJ,kBAAQgB,IAAR,CAAc,CAACsI,yBAAD,EAA2BI,kBAA3B,EAA+CC,SAA/C,EAAyDC,gBAAgB,GAAhB,GAAsB,EAAtB,GAA2BA,YAApF,CAAd;AACD,SAvBD;AAwBD;AACD,4CAAYvE,iBAAZ,EAA8BrE,IAA9B,+BAAuChB,OAAvC;;AAGF;AACAoD,kCAAkBC,eAAlB,CAAmC,OAAKC,QAAxC;;AAEA;AACArB,yBAAmB,IAAnB;AACAA,yBAAmBmB,4BAAkBG,UAAlB,CAA8BrE,MAAMsB,IAAN,IAAc,EAA5C,CAAnB;AACA,UAAI0B,YAAYQ,SAAZ,IAAyBR,YAAYQ,SAAZ,CAAsBc,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAYQ,SAA5C,CAAnB;AACD;AACD;AACAU,kCAAkB2C,gBAAlB;AACA,UAAIE,SAAS,EAAb;AACA,UAAI/D,YAAYkD,aAAZ,IAA6BlD,YAAYkD,aAAZ,CAA0BnF,MAA1B,GAAmC,CAApE,EAAuE;AACrEiC,oBAAYkD,aAAZ,CAA0BpC,OAA1B,CAAmC,gBAAQ;AACzC,cAAIkD,KAAK;AACPC,wBAAY9F,KAAKkF,OADV;AAEPa,0BAAc,CAFP;AAGPC,qBAAShG,KAAKmF,OAHP;AAIPc,oBAAQjG,KAAKoF;AAJN,WAAT;AAMAQ,iBAAOjF,IAAP,CAAakF,EAAb;AACD,SARD;AASD;AACD9C,kCAAkB2C,gBAAlB;AACA;AACA,UAAIQ,gBAAgB,EAApB;;AAGArE,kBAAYmD,iBAAZ,CAA8BrC,OAA9B,CAAuC,iBAAS;AAC9C,YAAIwD,YAAY,EAAhB;AACAC,cAAMzD,OAAN,CAAe,gBAAQ;AACrBwD,oBAAUxF,IAAV,CAAgBX,IAAhB;AACD,SAFD;AAGAkG,sBAAcvF,IAAd,CAAoBwF,SAApB;AACD,OAND;AAOAvE,yBAAmBmB,4BAAkBsD,YAAlB,CACjBH,aADiB,EAEjBN,MAFiB,EAGjB,IAHiB,CAAnB;AAKA;AACAhE,yBAAmB,IAAnB;AACA,UAAIC,YAAY6G,SAAZ,IAAyB7G,YAAY6G,SAAZ,CAAsBvF,IAAtB,GAA6B,CAA1D,EAA6D;AAC3DvB,2BAAmBmB,4BAAkBK,YAAlB,CAAgCvB,YAAY6G,SAA5C,CAAnB;AACD;AACD9G,yBAAmB,UAAnB;AACAmF,cAAQC,GAAR,CAAY,MAAZ,EAAmBpF,eAAnB;AACA,aAAOA,eAAP;AACD,KAj2Bc;;AAAA,SAm2BfzD,YAn2Be,GAm2BA,UAACF,WAAD,EAAcC,QAAd,EAA2B;AAAA,mBACRD,eAAe,EADP;AAAA,UACjC0I,GADiC,UACjCA,GADiC;AAAA,UAC5BC,IAD4B,UAC5BA,IAD4B;AAAA,UACtBzG,IADsB,UACtBA,IADsB;AAAA,UAChB0G,IADgB,UAChBA,IADgB;;AAExC,UAAIK,MAAM,EAAV;AACAA,UAAIvG,IAAJ,CAAUiG,IAAV,EAAgBD,GAAhB;AACA,UAAIxG,IAAJ,EAAU+G,IAAIvG,IAAJ,CAAUR,IAAV;AACV,UAAI0G,IAAJ,EAAUK,IAAIvG,IAAJ,CAAUkG,IAAV;AACV,UAAIM,iBAAiBD,IAAIE,IAAJ,CAAU,GAAV,CAArB;AACA,UAAIC,aAAa,OAAKA,UAAtB,CAPwC,CAON;AAClC3I,oBAAI8K,kBAAJ,CAAwB;AACtBjC,iBAAS,EADa;AAEtBJ,sCAFsB;AAGtBK,iBAAS,qBAHa;AAItBC,oBAAYb,IAJU;AAKtBc,eAAOL;AALe,OAAxB,EAMGzI,IANH,CAMS,aAAK;AACZ,YAAI,OAAOV,QAAP,IAAmB,UAAnB,IAAiCyJ,CAAjC,IAAsCA,EAAEC,IAA5C,EAAkD1J,SAAUyJ,EAAEC,IAAZ;AACnD,OARD;AASD,KAp3Bc;;AACb,SAAK6B,aAAL,GAAqB,EAArB;AACA,SAAKC,cAAL,GAAsB,EAAtB;AACA,SAAKrC,UAAL,GAAkB,CAAlB;AACA,SAAKpE,QAAL,GAAgB,EAAhB;AACA,SAAKvC,SAAL,GAAiB;AACfT,gBAAU,gCAAa,mBAAb,CADK;AAEfmE,aAAO,gCAAa,gBAAb,CAFQ;AAGf3D,iBAAW,gCAAa,iBAAb;AAHI,KAAjB;;AALa,iBAUekJ,yBAAY,EAV3B;AAAA,QAUN7C,iBAVM,UAUNA,iBAVM;;AAWb,SAAKA,iBAAL,GAAyB,CAAC,CAACA,iBAA3B;AACD;;AAED;;;AAgBA;;;AA2DA;;;AAUA;;;AAUA;;;AA8BA;;;AA2DA;;;AAyMA;;;AAkHA;;;AA0BA;;;AAiCF;;AAEC;;AA2BA;;;AAkHE;;AAyBF;;AA8HD;;;;;qCAmBmB8C,C,EAAG;AAChB,UAAIC,IAAIC,KAAKC,KAAL,CAAWH,IAAI,GAAf,IAAsB,GAA9B;AACA,UAAIjC,IAAIkC,EAAEG,QAAF,EAAR;AACA,aAAOrC,CAAP;AACH;;;;;kBAEY5J,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} from 'mutants-util';\r\nimport tools from \"../../util/tools\";\r\n\r\nconst IdsettleStyleList = {\r\n '10': '微信',\r\n '11': '转账',\r\n '12': '扫码收款',\r\n '13': '代金券',\r\n '1': '现金',\r\n '5': '支票',\r\n '4': '银行汇款',\r\n '3': '银行本票',\r\n '2': '信用卡',\r\n '6': '积分储值卡',\r\n '7': '储值卡',\r\n '8': '积分抵现',\r\n '9': '支付宝',\r\n};\r\nclass PrintUtil {\r\n constructor () {\r\n this.BTPrintEntity = {};\r\n this.BTPrintContent = '';\r\n this.PrintCount = 1;\r\n this.lineSize = 32;\r\n this.Precision = {\r\n Quantity: PosInitData ('QuantityPrecision'),\r\n Price: PosInitData ('PricePrecision'),\r\n TaxAmount: PosInitData ('AmountPrecision'),\r\n };\r\n const {isHorizontalSunMi} = platform || {};\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n }\r\n\r\n //执行测试打印\r\n doTestPrint = (printParams, callback) => {\r\n this.cloudAddList (printParams, result => {\r\n const {ret} = result;\r\n if (ret === 0) {\r\n this.cloudPrint (\r\n '\\n\\n' + '飞蛾打印机测试打印成功。' + '\\n\\n',\r\n printParams,\r\n callback\r\n );\r\n } else {\r\n if (typeof callback == 'function') callback (result);\r\n }\r\n });\r\n };\r\n\r\n // 触发打印\r\n doPrint = (printParams, Id, callback) => {\r\n if (!printParams || !Id) return;\r\n let _this = this;\r\n API.getPrintDataInfo (Id).then (ret => {\r\n let {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n RetailDetails,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n } = ret || {};\r\n\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n\r\n let details = [];\r\n if (RetailDetails && RetailDetails.length > 0) {\r\n RetailDetails.map (item => {\r\n let quantity = this.toDecimal2NoZero (item.Quantity)\r\n // tool.formatPrecision (\r\n // item.Quantity,\r\n // this.Precision.Quantity\r\n // );\r\n quantity += item.Unit.Name;\r\n let taxPrice = this.toDecimal2NoZero (item.TaxPrice);\r\n // item.TaxPrice,\r\n // this.Precision.Price\r\n let taxAmount = tool.formatPrecision (\r\n item.TaxAmount,\r\n this.Precision.TaxAmount\r\n );\r\n details.push ([item.Inventory.Name, quantity, taxPrice, taxAmount]);\r\n });\r\n }\r\n let constr = _this.loadBTPrintData ({\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 日结打印\r\n doDialyPrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getDialyPrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTDutyAndDialyPrintData (ret, 'Dialy');\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 交班打印\r\n doDutyPrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getDutyPrintDataInfo (Id).then (ret => {\r\n let constr = _this.loadBTDutyAndDialyPrintData (ret, 'Duty');\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n // 储值打印\r\n doStoragePrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getStoragePrintDataInfo (Id).then (ret => {\r\n let {\r\n Store,\r\n StorageDetails,\r\n MadeDate,\r\n Member,\r\n CardCode,\r\n StorageMutiSettleDetails,\r\n CreatedTime,\r\n Person,\r\n } = ret || {};\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n let constr = _this.loadBTStoragePrintData ({\r\n Store,\r\n StorageDetails,\r\n MadeDate,\r\n Member,\r\n CardCode,\r\n StorageMutiSettleDetails,\r\n CreatedTime,\r\n Person,\r\n });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n\r\n //储值打印\r\n loadBTStoragePrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n StorageDetails,\r\n CreatedTime,\r\n Member,\r\n StorageMutiSettleDetails,\r\n Person,\r\n } = params || {};\r\n const { Mobilephone, Name : MemberName, CardCode } = Member || {};\r\n const { Name : StorageName} = Person || {};\r\n const {\r\n ThisStorageAmount,\r\n ThisPresentAmount,\r\n AfterBalanceStorage,\r\n } = StorageDetails[0] || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.footerMap1 = new Map ();\r\n printEntity.footerMap2 = new Map ();\r\n printEntity.headerMap.set ('日期', tool.changeDateFormat (CreatedTime));\r\n printEntity.headerMap.set ('储值业务员', StorageName || '');\r\n printEntity.headerMap.set ('会员卡号', CardCode || '');\r\n printEntity.headerMap.set ('手机号', Mobilephone || '');\r\n printEntity.headerMap.set ('会员姓名', MemberName || '');\r\n printEntity.headerMap.set ('本次储值金额', tool.format (ThisStorageAmount) || '');\r\n printEntity.headerMap.set ('本次赠送金额', tool.format (ThisPresentAmount) || '');\r\n printEntity.headerMap.set (\r\n '本次储值后金额',\r\n tool.format (AfterBalanceStorage) || ''\r\n );\r\n if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\r\n StorageMutiSettleDetails.forEach (details => {\r\n const {IdsettleStyle, StorageAmount} = details;\r\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\r\n printEntity.headerMap.set (\r\n IdsettleStyleList[IdsettleStyle],\r\n StorageAmount || '0.00'\r\n );\r\n }\r\n });\r\n }\r\n printEntity.headerMap.set ('顾客签字', '');\r\n\r\n // 设定打印尺寸\r\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n //单据头部\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.printTitle (Store.Name || '');\r\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n }\r\n templateContent += '\\n\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n // 交班日结打印 type: Duty 交班 Dialy 日结\r\n loadBTDutyAndDialyPrintData = (params, type) => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Code,\r\n Store,\r\n UserName,\r\n POSCode,\r\n POS,\r\n POSName,\r\n WorkingDate,\r\n StartDate,\r\n ShiftDate,\r\n DailyDate,\r\n RetailAmount,\r\n ReturnAmount,\r\n StorageAmount,\r\n CashOutAmount,\r\n CouponsDeduct,\r\n CouponsAmount,\r\n OnlineAmount,\r\n TotalCount,\r\n TotalCustom,\r\n Price,\r\n InitialAmount,\r\n ImprestAmount,\r\n ImprestBalanceAmount,\r\n ShiftVoucherDetails,\r\n DailyDetails,\r\n WorkingTime,\r\n ShiftTime,\r\n StartTime,\r\n DailyTime,\r\n Memo\r\n } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.footerMap1 = new Map ();\r\n printEntity.footerMap2 = new Map ();\r\n printEntity.detailTopList = [];\r\n printEntity.detailContentList = [];\r\n printEntity.headerMap.set ('单号', Code);\r\n printEntity.headerMap.set ('门店', Store.Name || '');\r\n printEntity.headerMap.set ('POS编码', POSCode || '');\r\n printEntity.headerMap.set ('POS名称', type == 'Duty' ? POSName : POS || '');\r\n printEntity.headerMap.set ('收 银 员', UserName || '');\r\n printEntity.headerMap.set (\r\n '上班日期',\r\n tool\r\n .changeDateFormat (type == 'Duty' ? WorkingDate : StartDate)\r\n .replace ('00:00:00', type == 'Duty' ? WorkingTime : StartTime)\r\n );\r\n printEntity.headerMap.set (\r\n type == 'Duty' ? '交班日期' : '日结日期',\r\n tool\r\n .changeDateFormat (type == 'Duty' ? ShiftDate : DailyDate)\r\n .replace ('00:00:00', type == 'Duty' ? ShiftTime : DailyTime)\r\n );\r\n\r\n printEntity.footerMap1.set ('销售金额', tool.format (RetailAmount) || '0.00');\r\n printEntity.footerMap1.set ('退货金额', tool.format (ReturnAmount) || '0.00');\r\n printEntity.footerMap1.set (\r\n '净销售金额',\r\n tool.format (RetailAmount + ReturnAmount) || '0.00'\r\n );\r\n printEntity.footerMap1.set (\r\n '储值销售金额',\r\n tool.format (StorageAmount) || '0.00'\r\n );\r\n printEntity.footerMap1.set (\r\n '抵现销售金额',\r\n tool.format (CashOutAmount) || '0.00'\r\n );\r\n printEntity.footerMap1.set (\r\n '券抵扣(负劳务行)',\r\n tool.format (CouponsDeduct) || '0.00'\r\n );\r\n printEntity.footerMap1.set ('代金券抵扣', 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?Name:'',\r\n tool.format (OrigAmount),\r\n tool.format (MemberDepositAmount),\r\n ]);\r\n });\r\n }\r\n printEntity.detailContentList.push (...details);\r\n\r\n templateContent += '\\n';\r\n // printEntity.footerMap2.set('现金', BalanceIntegral || '');\r\n printEntity.footerMap2.set (\r\n '备用金初始金额',\r\n tool.format (InitialAmount) || '0.00'\r\n );\r\n printEntity.footerMap2.set ('增减备用金', tool.format (ImprestAmount) || '0.00');\r\n printEntity.footerMap2.set (\r\n '备用金余额',\r\n tool.format (InitialAmount+ImprestAmount) || '0.00'\r\n );\r\n // 设定打印尺寸\r\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n //单据头部\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.printTitle (\r\n type == 'Duty' ? '交班' : '日结'\r\n );\r\n templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n }\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.printStarTitle ('销售看板');\r\n templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n //单据底部1\r\n if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap1\r\n );\r\n }\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.printStarTitle ('收银统计');\r\n templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n\r\n //单据内容--头部\r\n let mhList = [];\r\n if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n printEntity.detailTopList.forEach (item => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n mhList.push (mh);\r\n });\r\n }\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n printEntity.detailContentList.forEach (items => {\r\n let bodyValue = [];\r\n items.forEach (item => {\r\n bodyValue.push (item);\r\n });\r\n bodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyValueList,\r\n mhList,\r\n true\r\n );\r\n\r\n //单据底部2\r\n if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap2\r\n );\r\n }\r\n templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n templateContent += '备注:'+ (Memo || '');\r\n templateContent += '\\n'; //备注\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.spaceCenterPrintMsg (\r\n '收银员签字:',\r\n '收银主管签字:'\r\n );\r\n templateContent += '\\n\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n //正常打印机(58mm)数据 小票打印\r\n loadBTPrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n UserName,\r\n Code,\r\n CreatedTime,\r\n details,\r\n TotalCount,\r\n TotalTaxAmount,\r\n WipeChange,\r\n Member,\r\n BalanceIntegral,\r\n Integral,\r\n BalanceStorage,\r\n } = params || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.detailTopList = [];\r\n printEntity.detailContentList = [];\r\n printEntity.footerMap1 = new Map ();\r\n printEntity.footerMap2 = new Map ();\r\n printEntity.headerMap.set ('门店名称', Store.Name || '');\r\n printEntity.headerMap.set ('门店电话', Store.Telephone || '');\r\n printEntity.headerMap.set ('收银员', UserName || '');\r\n printEntity.headerMap.set ('单号', Code);\r\n printEntity.headerMap.set ('日期', tool.changeDateFormat (CreatedTime));\r\n printEntity.detailTopList.push ({\r\n Caption: '存货名称',\r\n IsTitle: true,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '数量',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '单价',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailTopList.push ({\r\n Caption: '金额',\r\n IsTitle: false,\r\n IsFoot: false,\r\n });\r\n printEntity.detailContentList.push (...details);\r\n printEntity.footerMap1.set ('数量', TotalCount);\r\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\r\n printEntity.footerMap1.set ('抹零', WipeChange);\r\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\r\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\r\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '');\r\n printEntity.footerMap2.set ('本次积分', Integral || '');\r\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '');\r\n // 设定打印尺寸\r\n BTPrintFormatUtil.setLineByteSize (this.lineSize);\r\n\r\n //单据头部\r\n templateContent += '\\n';\r\n if (printEntity.headerMap && printEntity.headerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.headerMap);\r\n }\r\n //单据内容--头部\r\n let mhList = [];\r\n if (printEntity.detailTopList && printEntity.detailTopList.length > 0) {\r\n printEntity.detailTopList.forEach (item => {\r\n let mh = {\r\n headerText: item.Caption,\r\n headerWeight: 1,\r\n isTitle: item.IsTitle,\r\n isFoot: item.IsFoot,\r\n };\r\n mhList.push (mh);\r\n });\r\n }\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n printEntity.detailContentList.forEach (items => {\r\n let bodyValue = [];\r\n items.forEach (item => {\r\n bodyValue.push (item);\r\n });\r\n bodyValueList.push (bodyValue);\r\n });\r\n templateContent += BTPrintFormatUtil.printMenuMSG (\r\n bodyValueList,\r\n mhList,\r\n true\r\n );\r\n //单据底部1\r\n if (printEntity.footerMap1 && printEntity.footerMap1.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap1\r\n );\r\n }\r\n templateContent += BTPrintFormatUtil.drawSeparateLine ();\r\n templateContent += '\\n';\r\n //单据底部2\r\n if (printEntity.footerMap2 && printEntity.footerMap2.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (\r\n printEntity.footerMap2\r\n );\r\n }\r\n templateContent += '\\n';\r\n templateContent += BTPrintFormatUtil.drawSeparateLine2 ();\r\n templateContent += '\\n';\r\n templateContent += '\\t谢谢惠顾,欢迎再次光临';\r\n templateContent += '\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n //小票-云打印\r\n cloudPrint = (cloudContents, printParams, callback) => {\r\n const { Open ,Key, Sign, Name, Card} = printParams || {};\r\n // 商米没有配置则调用本地打印接口\r\n if (this.isHorizontalSunMi && !Open) {\r\n console.log (cloudContents);\r\n this.sunmiPrint (cloudContents, callback);\r\n } else if(Open) {\r\n let arr = [];\r\n arr.push (Sign, Key);\r\n if (Name) arr.push (Name);\r\n if (Card) arr.push (Card);\r\n let printerContent = arr.join ('#');\r\n let PrintCount = this.PrintCount; //打印次数\r\n API.openPrintMsg ({\r\n content: cloudContents,\r\n printerContent: printerContent,\r\n apiname: 'Open_printMsg',\r\n deviceCode: Sign,\r\n times: PrintCount,\r\n }).then (s => {\r\n if (typeof callback == 'function' && s && s.data) callback (s.data);\r\n });\r\n }\r\n };\r\n\r\n //小票-商米打印\r\n sunmiPrint = (cloudContents, callback) => {\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n // 检测打印机状态\r\n .updatePrinterState().then(status => {\r\n const { state , message } = status || {};\r\n if(state == 1){\r\n window.sunMi_OperatingCashier &&\r\n window.sunMi_OperatingCashier\r\n .PrintSmallTicketter (cloudContents + '\\n\\n')\r\n .then (ret => {\r\n if(ret && ret.state && ret.state == 200){\r\n callback && callback ({\r\n ret:0,\r\n msg:\"打印成功\"\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:ret.message?ret.message:\"打印失败\"\r\n });\r\n }\r\n });\r\n }else{\r\n callback && callback ({\r\n ret:-1,\r\n msg:message?message:\"打印失败\"\r\n });\r\n }\r\n })\r\n };\r\n\r\n////\r\n\r\n // 项目储值打印\r\n doProjectStoragePrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getProjectStoragePrintDataInfo (Id).then (ret => {\r\n let {\r\n Store,\r\n Details,\r\n MadeDate,\r\n Member,\r\n StorageAmount,\r\n StorageMutiSettleDetails,\r\n CreatedTime,\r\n } = ret || {};\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n let constr = _this.loadBTProjectStoragePrintData ({\r\n Store,\r\n Details,\r\n MadeDate,\r\n Member,\r\n StorageAmount,\r\n StorageMutiSettleDetails,\r\n CreatedTime,\r\n });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n //项目储值打印\r\n loadBTProjectStoragePrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n Details,\r\n CreatedTime,\r\n Member,\r\n StorageAmount,\r\n StorageMutiSettleDetails,\r\n } = params || {};\r\n const { Mobilephone, Code : CardCode, Name : MemberName } = Member || {};\r\n const { Name : PersonName} = Details[0].Person || {};\r\n //const { StorageAmount} = Details[0] || {};\r\n printEntity.detailTopList = [];\r\n printEntity.detailContentList = [];\r\n printEntity.headerMap = new Map ();\r\n printEntity.footerMap = new Map ();\r\n printEntity.headerMap.set ('日期', tool.changeDateFormat (CreatedTime));\r\n printEntity.headerMap.set ('储值业务员', PersonName || '');\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 let details = [];\r\n if (Details && Details.length > 0) {\r\n var i=0;\r\n Details.map (item => {\r\n i++;\r\n let quantity =tool.formatPrecision ( this.toDecimal2NoZero (item.Quantity) ,0);\r\n details.push ([i,item.ServiceProject.Name, quantity]);\r\n });\r\n }\r\n printEntity.detailContentList.push (...details);\r\n printEntity.footerMap.set ('会员卡号', CardCode || '');\r\n printEntity.footerMap.set ('手机号', Mobilephone || '');\r\n printEntity.footerMap.set ('会员姓名', MemberName || '');\r\n printEntity.footerMap.set ('储值金额', tool.formatPrecision (StorageAmount,2));\r\n\r\n if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\r\n StorageMutiSettleDetails.forEach (items => {\r\n const {IdsettleStyle, StorageAmount:storageAmount} = items;\r\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\r\n printEntity.footerMap.set (\r\n IdsettleStyleList[IdsettleStyle],\r\n tool.formatPrecision (storageAmount,2)\r\n );\r\n }\r\n });\r\n }\r\n printEntity.footerMap.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 //单据内容--头部\r\n BTPrintFormatUtil.drawSeparateLine();\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 BTPrintFormatUtil.drawSeparateLine();\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n\r\n\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 templateContent += '\\n';\r\n if (printEntity.footerMap && printEntity.footerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.footerMap);\r\n }\r\n templateContent += '\\n\\n\\n\\n';\r\n return templateContent;\r\n };\r\n\r\n\r\n // 扣次打印\r\n doProjectConsumePrint = (printParams, Id, callback) => {\r\n if (!Id) return;\r\n let _this = this;\r\n API.getProjectConsumePrintDataInfo (Id).then (ret => {\r\n let {\r\n Store,\r\n RetailDetails,\r\n MadeDate,\r\n Member,\r\n Person,\r\n CreatedTime,\r\n } = ret || {};\r\n Member = tools.changePrivateInfo(Member, 'print');\r\n let constr = _this.loadBTProjectConsumePrintData ({\r\n Store,\r\n RetailDetails,\r\n MadeDate,\r\n Member,\r\n Person,\r\n CreatedTime,\r\n });\r\n _this.cloudPrint (constr, printParams, callback);\r\n });\r\n };\r\n //扣次打印\r\n loadBTProjectConsumePrintData = params => {\r\n let templateContent = '';\r\n let printEntity = {};\r\n const {\r\n Store,\r\n RetailDetails,\r\n CreatedTime,\r\n Member,\r\n Person,\r\n } = params || {};\r\n const { Mobilephone, Code : CardCode, Name : MemberName } = Member || {};\r\n const { Name : PersonName} = Person || {};\r\n printEntity.detailTopList = [];\r\n printEntity.detailContentList = [];\r\n //const { StorageAmount} = Details[0] || {};\r\n printEntity.headerMap = new Map ();\r\n printEntity.footerMap = new Map ();\r\n printEntity.headerMap.set ('日期', tool.changeDateFormat (CreatedTime));\r\n printEntity.headerMap.set ('营业员', PersonName || '');\r\n printEntity.footerMap.set ('会员卡号', CardCode || '');\r\n printEntity.footerMap.set ('会员姓名', MemberName || '');\r\n printEntity.footerMap.set ('会员手机号', Mobilephone || '');\r\n printEntity.footerMap.set ('顾客签字', '');\r\n\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 let details = [];\r\n\r\n\r\n if (RetailDetails && RetailDetails.length > 0) {\r\n RetailDetails.map (item => {\r\n let serviceprojectpackagename =tool.getDynamicProperty(\r\n item.DynamicPropertyKeys,\r\n item.DynamicPropertyValues,\r\n 'serviceprojectpackagename'\r\n );\r\n let serviceprojectname =tool.getDynamicProperty(\r\n item.DynamicPropertyKeys,\r\n item.DynamicPropertyValues,\r\n 'serviceprojectname'\r\n );\r\n let UsedTimes =tool.formatPrecision ( this.toDecimal2NoZero (tool.getDynamicProperty(\r\n item.DynamicPropertyKeys,\r\n item.DynamicPropertyValues,\r\n 'usedtimes'\r\n )) ,0);\r\n let BalanceTimes =tool.formatPrecision ( this.toDecimal2NoZero (tool.getDynamicProperty(\r\n item.DynamicPropertyKeys,\r\n item.DynamicPropertyValues,\r\n 'balancetimes'\r\n )) ,0);\r\n\r\n details.push ([serviceprojectpackagename,serviceprojectname, UsedTimes,BalanceTimes == '0' ? '' : BalanceTimes]);\r\n });\r\n }\r\n printEntity.detailContentList.push (...details);\r\n\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 //单据内容--头部\r\n BTPrintFormatUtil.drawSeparateLine();\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 BTPrintFormatUtil.drawSeparateLine();\r\n //单据内容--明细\r\n let bodyValueList = [];\r\n\r\n\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 templateContent += '\\n';\r\n if (printEntity.footerMap && printEntity.footerMap.size > 0) {\r\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.footerMap);\r\n }\r\n templateContent += '\\n\\n\\n\\n';\r\n console.log('扣次打印',templateContent);\r\n return templateContent;\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":["IdsettleStyleList","PrintUtil","doTestPrint","printParams","callback","cloudAddList","ret","result","cloudPrint","doOnlyRetail","Id","doPrint","_this","API","getPrintDataInfo","then","Store","UserName","Code","CreatedTime","TotalCount","TotalTaxAmount","WipeChange","RetailDetails","Member","BalanceIntegral","Integral","BalanceStorage","tools","changePrivateInfo","details","length","map","quantity","toDecimal2NoZero","item","Quantity","Unit","Name","taxPrice","TaxPrice","taxAmount","tool","formatPrecision","TaxAmount","Precision","push","Inventory","constr","loadBTPrintData","doDialyPrint","getDialyPrintDataInfo","loadBTDutyAndDialyPrintData","doDutyPrint","getDutyPrintDataInfo","doStoragePrint","getStoragePrintDataInfo","StorageDetails","MadeDate","CardCode","StorageMutiSettleDetails","Person","loadBTStoragePrintData","templateContent","printEntity","params","Mobilephone","MemberName","StorageName","ThisStorageAmount","ThisPresentAmount","AfterBalanceStorage","headerMap","footerMap1","footerMap2","set","changeDateFormat","format","forEach","IdsettleStyle","StorageAmount","undefined","BTPrintFormatUtil","setLineByteSize","lineSize","printTitle","size","leftPrintMsg","type","POSCode","POS","POSName","WorkingDate","StartDate","ShiftDate","DailyDate","RetailAmount","ReturnAmount","CashOutAmount","CouponsDeduct","CouponsAmount","OnlineAmount","TotalCustom","Price","InitialAmount","ImprestAmount","ImprestBalanceAmount","ShiftVoucherDetails","DailyDetails","WorkingTime","ShiftTime","StartTime","DailyTime","Memo","detailTopList","detailContentList","replace","Caption","IsTitle","IsFoot","DailyDetailsCommon","OrigAmount","detailsOb","MemberDepositAmount","SettleStyle","drawSeparateLine","printStarTitle","mhList","mh","headerText","headerWeight","isTitle","isFoot","bodyValueList","bodyValue","items","printMenuMSG","drawSeparateLine2","spaceCenterPrintMsg","Telephone","cloudContents","Open","Key","Sign","Card","isHorizontalSunMi","console","log","sunmiPrint","arr","printerContent","join","PrintCount","openPrintMsg","content","apiname","deviceCode","times","s","data","window","sunMi_OperatingCashier","updatePrinterState","status","state","message","PrintSmallTicketter","msg","doProjectStoragePrint","getProjectStoragePrintDataInfo","Details","loadBTProjectStoragePrintData","PersonName","footerMap","i","ServiceProject","storageAmount","doProjectConsumePrint","getProjectConsumePrintDataInfo","loadBTProjectConsumePrintData","serviceprojectpackagename","getDynamicProperty","DynamicPropertyKeys","DynamicPropertyValues","serviceprojectname","UsedTimes","BalanceTimes","openPrinterAddlist","BTPrintEntity","BTPrintContent","platform","x","f","Math","round","toString"],"mappings":"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","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} from 'mutants-util';\nimport tools from \"../../util/tools\";\n\nconst IdsettleStyleList = {\n '10': '微信',\n '11': '转账',\n '12': '扫码收款',\n '13': '代金券',\n '1': '现金',\n '5': '支票',\n '4': '银行汇款',\n '3': '银行本票',\n '2': '信用卡',\n '6': '积分储值卡',\n '7': '储值卡',\n '8': '积分抵现',\n '9': '支付宝',\n};\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 }\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 doOnlyRetail = (printParams, Id, callback) => {\n this.doPrint(printParams, Id, callback);\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 } = ret || {};\n\n Member = tools.changePrivateInfo(Member, 'print');\n\n let details = [];\n if (RetailDetails && RetailDetails.length > 0) {\n RetailDetails.map (item => {\n let quantity = this.toDecimal2NoZero (item.Quantity)\n // tool.formatPrecision (\n // item.Quantity,\n // this.Precision.Quantity\n // );\n quantity += item.Unit.Name;\n let taxPrice = this.toDecimal2NoZero (item.TaxPrice);\n // item.TaxPrice,\n // this.Precision.Price\n let taxAmount = tool.formatPrecision (\n item.TaxAmount,\n this.Precision.TaxAmount\n );\n details.push ([item.Inventory.Name, quantity, taxPrice, taxAmount]);\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 });\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 (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 (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 {\n Store,\n StorageDetails,\n MadeDate,\n Member,\n CardCode,\n StorageMutiSettleDetails,\n CreatedTime,\n Person,\n } = ret || {};\n Member = tools.changePrivateInfo(Member, 'print');\n let constr = _this.loadBTStoragePrintData ({\n Store,\n StorageDetails,\n MadeDate,\n Member,\n CardCode,\n StorageMutiSettleDetails,\n CreatedTime,\n Person,\n });\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n\n //储值打印\n loadBTStoragePrintData = params => {\n let templateContent = '';\n let printEntity = {};\n const {\n Store,\n StorageDetails,\n CreatedTime,\n Member,\n StorageMutiSettleDetails,\n Person,\n } = params || {};\n const { Mobilephone, Name : MemberName, CardCode } = 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 ('日期', tool.changeDateFormat (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 {IdsettleStyle, StorageAmount} = details;\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\n printEntity.headerMap.set (\n IdsettleStyleList[IdsettleStyle],\n StorageAmount || '0.00'\n );\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 = (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 StorageAmount,\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名称', type == 'Duty' ? POSName : POS || '');\n printEntity.headerMap.set ('收 银 员', UserName || '');\n printEntity.headerMap.set (\n '上班日期',\n tool\n .changeDateFormat (type == 'Duty' ? WorkingDate : StartDate)\n .replace ('00:00:00', type == 'Duty' ? WorkingTime : StartTime)\n );\n printEntity.headerMap.set (\n type == 'Duty' ? '交班日期' : '日结日期',\n tool\n .changeDateFormat (type == 'Duty' ? ShiftDate : DailyDate)\n .replace ('00:00:00', type == 'Duty' ? ShiftTime : 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 (StorageAmount) || '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 printEntity.footerMap1.set ('代金券抵扣', 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?Name:'',\n tool.format (OrigAmount),\n tool.format (MemberDepositAmount),\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 //正常打印机(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 } = params || {};\n printEntity.headerMap = new Map ();\n printEntity.detailTopList = [];\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 ('日期', tool.changeDateFormat (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 printEntity.detailContentList.push (...details);\n printEntity.footerMap1.set ('数量', TotalCount);\n printEntity.footerMap1.set ('金额', TotalTaxAmount);\n printEntity.footerMap1.set ('抹零', WipeChange);\n printEntity.footerMap2.set ('会员卡号', (Member && Member.CardCode) || '');\n printEntity.footerMap2.set ('会员手机', (Member && Member.Mobilephone) || '');\n printEntity.footerMap2.set ('积分余额', BalanceIntegral || '');\n printEntity.footerMap2.set ('本次积分', Integral || '');\n printEntity.footerMap2.set ('储值余额', BalanceStorage || '');\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 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 //单据底部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 //单据底部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} = printParams || {};\n // 商米没有配置则调用本地打印接口\n if (this.isHorizontalSunMi && !Open) {\n console.log (cloudContents);\n this.sunmiPrint (cloudContents, callback);\n } else if(Open) {\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')\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////\n\n // 项目储值打印\n doProjectStoragePrint = (printParams, Id, callback) => {\n if (!Id) return;\n let _this = this;\n API.getProjectStoragePrintDataInfo (Id).then (ret => {\n let {\n Store,\n Details,\n MadeDate,\n Member,\n StorageAmount,\n StorageMutiSettleDetails,\n CreatedTime,\n } = ret || {};\n Member = tools.changePrivateInfo(Member, 'print');\n let constr = _this.loadBTProjectStoragePrintData ({\n Store,\n Details,\n MadeDate,\n Member,\n StorageAmount,\n StorageMutiSettleDetails,\n CreatedTime,\n });\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n //项目储值打印\n loadBTProjectStoragePrintData = params => {\n let templateContent = '';\n let printEntity = {};\n const {\n Store,\n Details,\n CreatedTime,\n Member,\n StorageAmount,\n StorageMutiSettleDetails,\n } = params || {};\n const { Mobilephone, Code : CardCode, Name : MemberName } = Member || {};\n const { Name : PersonName} = Details[0].Person || {};\n //const { StorageAmount} = Details[0] || {};\n printEntity.detailTopList = [];\n printEntity.detailContentList = [];\n printEntity.headerMap = new Map ();\n printEntity.footerMap = new Map ();\n printEntity.headerMap.set ('日期', tool.changeDateFormat (CreatedTime));\n printEntity.headerMap.set ('储值业务员', PersonName || '');\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 let details = [];\n if (Details && Details.length > 0) {\n var i=0;\n Details.map (item => {\n i++;\n let quantity =tool.formatPrecision ( this.toDecimal2NoZero (item.Quantity) ,0);\n details.push ([i,item.ServiceProject.Name, quantity]);\n });\n }\n printEntity.detailContentList.push (...details);\n printEntity.footerMap.set ('会员卡号', CardCode || '');\n printEntity.footerMap.set ('手机号', Mobilephone || '');\n printEntity.footerMap.set ('会员姓名', MemberName || '');\n printEntity.footerMap.set ('储值金额', tool.formatPrecision (StorageAmount,2));\n\n if (StorageMutiSettleDetails && StorageMutiSettleDetails.length != 0) {\n StorageMutiSettleDetails.forEach (items => {\n const {IdsettleStyle, StorageAmount:storageAmount} = items;\n if (IdsettleStyle !== undefined && IdsettleStyle !== null) {\n printEntity.footerMap.set (\n IdsettleStyleList[IdsettleStyle],\n tool.formatPrecision (storageAmount,2)\n );\n }\n });\n }\n printEntity.footerMap.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 //单据内容--头部\n BTPrintFormatUtil.drawSeparateLine();\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 BTPrintFormatUtil.drawSeparateLine();\n //单据内容--明细\n let bodyValueList = [];\n\n\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 templateContent += '\\n';\n if (printEntity.footerMap && printEntity.footerMap.size > 0) {\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.footerMap);\n }\n templateContent += '\\n\\n\\n\\n';\n return templateContent;\n };\n\n\n // 扣次打印\n doProjectConsumePrint = (printParams, Id, callback) => {\n if (!Id) return;\n let _this = this;\n API.getProjectConsumePrintDataInfo (Id).then (ret => {\n let {\n Store,\n RetailDetails,\n MadeDate,\n Member,\n Person,\n CreatedTime,\n } = ret || {};\n Member = tools.changePrivateInfo(Member, 'print');\n let constr = _this.loadBTProjectConsumePrintData ({\n Store,\n RetailDetails,\n MadeDate,\n Member,\n Person,\n CreatedTime,\n });\n _this.cloudPrint (constr, printParams, callback);\n });\n };\n //扣次打印\n loadBTProjectConsumePrintData = params => {\n let templateContent = '';\n let printEntity = {};\n const {\n Store,\n RetailDetails,\n CreatedTime,\n Member,\n Person,\n } = params || {};\n const { Mobilephone, Code : CardCode, Name : MemberName } = Member || {};\n const { Name : PersonName} = Person || {};\n printEntity.detailTopList = [];\n printEntity.detailContentList = [];\n //const { StorageAmount} = Details[0] || {};\n printEntity.headerMap = new Map ();\n printEntity.footerMap = new Map ();\n printEntity.headerMap.set ('日期', tool.changeDateFormat (CreatedTime));\n printEntity.headerMap.set ('营业员', PersonName || '');\n printEntity.footerMap.set ('会员卡号', CardCode || '');\n printEntity.footerMap.set ('会员姓名', MemberName || '');\n printEntity.footerMap.set ('会员手机号', Mobilephone || '');\n printEntity.footerMap.set ('顾客签字', '');\n\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 let details = [];\n\n\n if (RetailDetails && RetailDetails.length > 0) {\n RetailDetails.map (item => {\n let serviceprojectpackagename =tool.getDynamicProperty(\n item.DynamicPropertyKeys,\n item.DynamicPropertyValues,\n 'serviceprojectpackagename'\n );\n let serviceprojectname =tool.getDynamicProperty(\n item.DynamicPropertyKeys,\n item.DynamicPropertyValues,\n 'serviceprojectname'\n );\n let UsedTimes =tool.formatPrecision ( this.toDecimal2NoZero (tool.getDynamicProperty(\n item.DynamicPropertyKeys,\n item.DynamicPropertyValues,\n 'usedtimes'\n )) ,0);\n let BalanceTimes =tool.formatPrecision ( this.toDecimal2NoZero (tool.getDynamicProperty(\n item.DynamicPropertyKeys,\n item.DynamicPropertyValues,\n 'balancetimes'\n )) ,0);\n\n details.push ([serviceprojectpackagename,serviceprojectname, UsedTimes,BalanceTimes == '0' ? '' : BalanceTimes]);\n });\n }\n printEntity.detailContentList.push (...details);\n\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 //单据内容--头部\n BTPrintFormatUtil.drawSeparateLine();\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 BTPrintFormatUtil.drawSeparateLine();\n //单据内容--明细\n let bodyValueList = [];\n\n\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 templateContent += '\\n';\n if (printEntity.footerMap && printEntity.footerMap.size > 0) {\n templateContent += BTPrintFormatUtil.leftPrintMsg (printEntity.footerMap);\n }\n templateContent += '\\n\\n\\n\\n';\n console.log('扣次打印',templateContent);\n return templateContent;\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"]}