tplus-components-touch 3.28.3 → 3.29.1

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 (185) hide show
  1. package/README.md +16 -16
  2. package/dist/components/acCitySelect/CitySelect.js +18 -18
  3. package/dist/components/acCitySelect/CitySelect.js.map +1 -1
  4. package/dist/components/acCitySelect/CitySelect.less +9 -9
  5. package/dist/components/acCitySelect/citys.js.map +1 -1
  6. package/dist/components/acCitySelect/index.js.map +1 -1
  7. package/dist/components/acCitySelect/provinceData.js +7 -7
  8. package/dist/components/acCitySelect/provinceData.js.map +1 -1
  9. package/dist/components/addLog/AddLogProcessor.js +6 -6
  10. package/dist/components/addLog/AddLogProcessor.js.map +1 -1
  11. package/dist/components/addLog/OperationLogApi.js +3 -3
  12. package/dist/components/addLog/OperationLogApi.js.map +1 -1
  13. package/dist/components/autoComplete/index.js +14 -14
  14. package/dist/components/autoComplete/index.js.map +1 -1
  15. package/dist/components/autoComplete/index.less +89 -89
  16. package/dist/components/autoComplete/option.js.map +1 -1
  17. package/dist/components/autoCompleteWithKeyboard/index.js +14 -14
  18. package/dist/components/autoCompleteWithKeyboard/index.js.map +1 -1
  19. package/dist/components/autoCompleteWithKeyboard/index.less +7 -7
  20. package/dist/components/billSearch/api.js +29 -29
  21. package/dist/components/billSearch/api.js.map +1 -1
  22. package/dist/components/billSearch/index.js +9 -147
  23. package/dist/components/billSearch/index.js.map +1 -1
  24. package/dist/components/billSearch/index.less +373 -376
  25. package/dist/components/cloudPrint/BTPrintFormatUtil.js +17 -17
  26. package/dist/components/cloudPrint/BTPrintFormatUtil.js.map +1 -1
  27. package/dist/components/cloudPrint/api.js +43 -85
  28. package/dist/components/cloudPrint/api.js.map +1 -1
  29. package/dist/components/cloudPrint/index.js.map +1 -1
  30. package/dist/components/cloudPrint/printDispatch.js +108 -209
  31. package/dist/components/cloudPrint/printDispatch.js.map +1 -1
  32. package/dist/components/commonForm/addressPicker/index.js +7 -7
  33. package/dist/components/commonForm/addressPicker/index.js.map +1 -1
  34. package/dist/components/commonForm/addressPicker/style.less +10 -10
  35. package/dist/components/commonForm/autoComplete/index.js.map +1 -1
  36. package/dist/components/commonForm/autoComplete/style.less +2 -2
  37. package/dist/components/commonForm/datePicker/index.js.map +1 -1
  38. package/dist/components/commonForm/datePicker/style.less +4 -4
  39. package/dist/components/commonForm/formControl/index.js.map +1 -1
  40. package/dist/components/commonForm/index.js +4 -4
  41. package/dist/components/commonForm/index.js.map +1 -1
  42. package/dist/components/commonForm/inputNumber/index.js.map +1 -1
  43. package/dist/components/commonForm/inputNumber/style.less +10 -10
  44. package/dist/components/commonForm/radio/index.js.map +1 -1
  45. package/dist/components/commonForm/style.less +1 -1
  46. package/dist/components/deliverySearch/api.js +21 -21
  47. package/dist/components/deliverySearch/api.js.map +1 -1
  48. package/dist/components/deliverySearch/index.js +6 -6
  49. package/dist/components/deliverySearch/index.js.map +1 -1
  50. package/dist/components/deliverySearch/index.less +553 -553
  51. package/dist/components/form/index.js.map +1 -1
  52. package/dist/components/hardwareAPI/index.js.map +1 -1
  53. package/dist/components/hotKey/config.js +23 -23
  54. package/dist/components/hotKey/config.js.map +1 -1
  55. package/dist/components/hotKey/hotKeyModal.js.map +1 -1
  56. package/dist/components/hotKey/index.js +26 -26
  57. package/dist/components/hotKey/index.js.map +1 -1
  58. package/dist/components/hotKey/localConfig.js.map +1 -1
  59. package/dist/components/hotKey/style.less +96 -96
  60. package/dist/components/hotKey/utils.js.map +1 -1
  61. package/dist/components/input/index.js +6 -6
  62. package/dist/components/input/index.js.map +1 -1
  63. package/dist/components/input/scanInput.js.map +1 -1
  64. package/dist/components/input/scanInput.less +27 -27
  65. package/dist/components/input/style.less +99 -99
  66. package/dist/components/input/tplusInput/index.js +30 -30
  67. package/dist/components/input/tplusInput/index.js.map +1 -1
  68. package/dist/components/input/tplusInput/inputContent.js.map +1 -1
  69. package/dist/components/input/tplusInput/inputs.js.map +1 -1
  70. package/dist/components/input/tplusInput/style.less +132 -132
  71. package/dist/components/input/utils/index.js.map +1 -1
  72. package/dist/components/inventorySearch/api.js +58 -58
  73. package/dist/components/inventorySearch/api.js.map +1 -1
  74. package/dist/components/inventorySearch/index.js +3 -3
  75. package/dist/components/inventorySearch/index.js.map +1 -1
  76. package/dist/components/inventorySearch/index.less +119 -119
  77. package/dist/components/inventorySearch/store.js.map +1 -1
  78. package/dist/components/inventorySearch/tab.js +67 -75
  79. package/dist/components/inventorySearch/tab.js.map +1 -1
  80. package/dist/components/keyboard/index.js.map +1 -1
  81. package/dist/components/keyboard/index.less +469 -469
  82. package/dist/components/keyboard/letterKeyboard.js +2 -2
  83. package/dist/components/keyboard/letterKeyboard.js.map +1 -1
  84. package/dist/components/keyboard/numKeyboard.js +4 -4
  85. package/dist/components/keyboard/numKeyboard.js.map +1 -1
  86. package/dist/components/keyboard/numKeyboardScan.js.map +1 -1
  87. package/dist/components/keyboard/numberButton_input.js +5 -5
  88. package/dist/components/keyboard/numberButton_input.js.map +1 -1
  89. package/dist/components/keyboard/numkeyboardPassword.js +4 -4
  90. package/dist/components/keyboard/numkeyboardPassword.js.map +1 -1
  91. package/dist/components/keyboard/onlyKeyboard.js +7 -7
  92. package/dist/components/keyboard/onlyKeyboard.js.map +1 -1
  93. package/dist/components/keyboard/onlyLetterButton.js +2 -2
  94. package/dist/components/keyboard/onlyLetterButton.js.map +1 -1
  95. package/dist/components/keyboard/onlyLetterButton2.js +2 -2
  96. package/dist/components/keyboard/onlyLetterButton2.js.map +1 -1
  97. package/dist/components/keyboard/onlyLetterButton2.less +161 -161
  98. package/dist/components/keyboard/onlyNumberButton.js +2 -2
  99. package/dist/components/keyboard/onlyNumberButton.js.map +1 -1
  100. package/dist/components/keyboard/onlyNumberButton2.js +3 -3
  101. package/dist/components/keyboard/onlyNumberButton2.js.map +1 -1
  102. package/dist/components/keyboard/textKeyboard.js.map +1 -1
  103. package/dist/components/layout/hamburger.js.map +1 -1
  104. package/dist/components/layout/index.js +10 -10
  105. package/dist/components/layout/index.js.map +1 -1
  106. package/dist/components/layout/layout.js.map +1 -1
  107. package/dist/components/layout/sider.js +12 -12
  108. package/dist/components/layout/sider.js.map +1 -1
  109. package/dist/components/layout/style.less +82 -82
  110. package/dist/components/loading/index.js +15 -15
  111. package/dist/components/loading/index.js.map +1 -1
  112. package/dist/components/loading/loadingContent.js.map +1 -1
  113. package/dist/components/loading/style.less +70 -70
  114. package/dist/components/loading/utils.js.map +1 -1
  115. package/dist/components/message/index.js +8 -8
  116. package/dist/components/message/index.js.map +1 -1
  117. package/dist/components/message/index.less +101 -101
  118. package/dist/components/modal/index.js.map +1 -1
  119. package/dist/components/modal/index.less +19 -19
  120. package/dist/components/modalVertical/index.js +7 -7
  121. package/dist/components/modalVertical/index.js.map +1 -1
  122. package/dist/components/modalVertical/style.less +60 -60
  123. package/dist/components/modalWraper/index.js +15 -15
  124. package/dist/components/modalWraper/index.js.map +1 -1
  125. package/dist/components/modalWraper/style.less +257 -257
  126. package/dist/components/modalWraper/utils.js.map +1 -1
  127. package/dist/components/notification/index.js +4 -4
  128. package/dist/components/notification/index.js.map +1 -1
  129. package/dist/components/notification/index.less +51 -51
  130. package/dist/components/overflowTip/index.js +15 -15
  131. package/dist/components/overflowTip/index.js.map +1 -1
  132. package/dist/components/overflowTip/style.less +66 -66
  133. package/dist/components/page/index.js.map +1 -1
  134. package/dist/components/page/index.less +21 -21
  135. package/dist/components/product/detail.js +7 -7
  136. package/dist/components/product/detail.js.map +1 -1
  137. package/dist/components/product/getCard.js +5 -5
  138. package/dist/components/product/getCard.js.map +1 -1
  139. package/dist/components/product/index.less +128 -128
  140. package/dist/components/progressState/EmptyAndErrorView.js.map +1 -1
  141. package/dist/components/progressState/ProgressState.js +10 -10
  142. package/dist/components/progressState/ProgressState.js.map +1 -1
  143. package/dist/components/progressState/index.js.map +1 -1
  144. package/dist/components/progressState/style.less +65 -65
  145. package/dist/components/scan/index.js.map +1 -1
  146. package/dist/components/scan/index.less +33 -33
  147. package/dist/components/select/index.js.map +1 -1
  148. package/dist/components/select/index.less +11 -11
  149. package/dist/components/settlement/asyncModal.js.map +1 -1
  150. package/dist/components/settlement/index.js.map +1 -1
  151. package/dist/components/settlement/prototypeTable/index.js.map +1 -1
  152. package/dist/components/settlement/prototypeTable/style.less +58 -58
  153. package/dist/components/settlement/prototypeTable/utils.js.map +1 -1
  154. package/dist/components/settlement/settlement.js +7 -7
  155. package/dist/components/settlement/settlement.js.map +1 -1
  156. package/dist/components/settlement/settlement.less +1594 -1594
  157. package/dist/components/settlement/settlementStore.js +41 -48
  158. package/dist/components/settlement/settlementStore.js.map +1 -1
  159. package/dist/components/settlement/utils.js.map +1 -1
  160. package/dist/components/socket/index.js +11 -11
  161. package/dist/components/socket/index.js.map +1 -1
  162. package/dist/components/spin/index.js +6 -6
  163. package/dist/components/spin/index.js.map +1 -1
  164. package/dist/components/spin/spin-style.less +436 -436
  165. package/dist/components/test/index.js +3 -3
  166. package/dist/components/test/index.js.map +1 -1
  167. package/dist/components/ticon/iconfont/iconfont.svg +593 -593
  168. package/dist/components/ticon/index.js.map +1 -1
  169. package/dist/components/touchScroll/index.js +9 -9
  170. package/dist/components/touchScroll/index.js.map +1 -1
  171. package/dist/components/touchTable/AuthProcess.js.map +1 -1
  172. package/dist/components/touchTable/generateWater.js.map +1 -1
  173. package/dist/components/touchTable/index.js +9 -9
  174. package/dist/components/touchTable/index.js.map +1 -1
  175. package/dist/components/touchTable/index.less +369 -369
  176. package/dist/components/touchTable/utils.js.map +1 -1
  177. package/dist/demo/PopOverDemo.js.map +1 -1
  178. package/dist/index.js +8 -20
  179. package/dist/index.js.map +1 -1
  180. package/dist/util/tools.js.map +1 -1
  181. package/locales/zh/tplus-components-touch.json +1 -1
  182. package/locales/zh-CN/tplus-components-touch.json +1 -1
  183. package/mocks/memberInfo.json +79 -79
  184. package/package.json +2 -2
  185. 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;\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
+ {"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;"]}
@@ -4,10 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
 
7
- var _stringify = require('babel-runtime/core-js/json/stringify');
8
-
9
- var _stringify2 = _interopRequireDefault(_stringify);
10
-
11
7
  var _regenerator = require('babel-runtime/regenerator');
12
8
 
13
9
  var _regenerator2 = _interopRequireDefault(_regenerator);
@@ -132,30 +128,25 @@ var API = function () {
132
128
  return getPrintDataInfo;
133
129
  }()
134
130
 
135
- //获取当前门店硬件配置信息
131
+ //获取日结打印数据
136
132
 
137
133
  }, {
138
- key: 'GetPrintInfomation',
134
+ key: 'getDialyPrintDataInfo',
139
135
  value: function () {
140
- var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3(dto) {
141
- var param, data;
136
+ var _ref3 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3(Id) {
137
+ var data;
142
138
  return _regenerator2.default.wrap(function _callee3$(_context3) {
143
139
  while (1) {
144
140
  switch (_context3.prev = _context3.next) {
145
141
  case 0:
146
- param = {};
147
-
148
- param.Idstore = dto.Idstore;
149
- param.POSCode = dto.POSCode;
150
-
151
- _context3.next = 5;
152
- return (0, _tplusApi.tApi)({ param: (0, _stringify2.default)(param) }, 'chanjet.RE.NewPos.GetPrintInfomation', false, false);
142
+ _context3.next = 2;
143
+ return (0, _tplusApi.tApi)({ id: Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);
153
144
 
154
- case 5:
145
+ case 2:
155
146
  data = _context3.sent;
156
147
  return _context3.abrupt('return', data);
157
148
 
158
- case 7:
149
+ case 4:
159
150
  case 'end':
160
151
  return _context3.stop();
161
152
  }
@@ -163,17 +154,17 @@ var API = function () {
163
154
  }, _callee3, this);
164
155
  }));
165
156
 
166
- function GetPrintInfomation(_x3) {
157
+ function getDialyPrintDataInfo(_x3) {
167
158
  return _ref3.apply(this, arguments);
168
159
  }
169
160
 
170
- return GetPrintInfomation;
161
+ return getDialyPrintDataInfo;
171
162
  }()
172
163
 
173
- //获取日结打印数据
164
+ //获取交班打印数据
174
165
 
175
166
  }, {
176
- key: 'getDialyPrintDataInfo',
167
+ key: 'getDutyPrintDataInfo',
177
168
  value: function () {
178
169
  var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee4(Id) {
179
170
  var data;
@@ -182,7 +173,7 @@ var API = function () {
182
173
  switch (_context4.prev = _context4.next) {
183
174
  case 0:
184
175
  _context4.next = 2;
185
- return (0, _tplusApi.tApi)({ id: Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);
176
+ return (0, _tplusApi.tApi)({ id: Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);
186
177
 
187
178
  case 2:
188
179
  data = _context4.sent;
@@ -196,17 +187,17 @@ var API = function () {
196
187
  }, _callee4, this);
197
188
  }));
198
189
 
199
- function getDialyPrintDataInfo(_x4) {
190
+ function getDutyPrintDataInfo(_x4) {
200
191
  return _ref4.apply(this, arguments);
201
192
  }
202
193
 
203
- return getDialyPrintDataInfo;
194
+ return getDutyPrintDataInfo;
204
195
  }()
205
196
 
206
- //获取交班打印数据
197
+ //获取储值打印数据
207
198
 
208
199
  }, {
209
- key: 'getDutyPrintDataInfo',
200
+ key: 'getStoragePrintDataInfo',
210
201
  value: function () {
211
202
  var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee5(Id) {
212
203
  var data;
@@ -215,7 +206,7 @@ var API = function () {
215
206
  switch (_context5.prev = _context5.next) {
216
207
  case 0:
217
208
  _context5.next = 2;
218
- return (0, _tplusApi.tApi)({ id: Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);
209
+ return (0, _tplusApi.tApi)({ id: Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindById', false, false);
219
210
 
220
211
  case 2:
221
212
  data = _context5.sent;
@@ -229,43 +220,10 @@ var API = function () {
229
220
  }, _callee5, this);
230
221
  }));
231
222
 
232
- function getDutyPrintDataInfo(_x5) {
223
+ function getStoragePrintDataInfo(_x5) {
233
224
  return _ref5.apply(this, arguments);
234
225
  }
235
226
 
236
- return getDutyPrintDataInfo;
237
- }()
238
-
239
- //获取储值打印数据
240
-
241
- }, {
242
- key: 'getStoragePrintDataInfo',
243
- value: function () {
244
- var _ref6 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee6(Id) {
245
- var data;
246
- return _regenerator2.default.wrap(function _callee6$(_context6) {
247
- while (1) {
248
- switch (_context6.prev = _context6.next) {
249
- case 0:
250
- _context6.next = 2;
251
- return (0, _tplusApi.tApi)({ id: Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindById', false, false);
252
-
253
- case 2:
254
- data = _context6.sent;
255
- return _context6.abrupt('return', data);
256
-
257
- case 4:
258
- case 'end':
259
- return _context6.stop();
260
- }
261
- }
262
- }, _callee6, this);
263
- }));
264
-
265
- function getStoragePrintDataInfo(_x6) {
266
- return _ref6.apply(this, arguments);
267
- }
268
-
269
227
  return getStoragePrintDataInfo;
270
228
  }()
271
229
 
@@ -274,11 +232,11 @@ var API = function () {
274
232
  }, {
275
233
  key: 'openQueryPrinterStatus',
276
234
  value: function () {
277
- var _ref7 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee7(params) {
235
+ var _ref6 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee6(params) {
278
236
  var ts, dt, options;
279
- return _regenerator2.default.wrap(function _callee7$(_context7) {
237
+ return _regenerator2.default.wrap(function _callee6$(_context6) {
280
238
  while (1) {
281
- switch (_context7.prev = _context7.next) {
239
+ switch (_context6.prev = _context6.next) {
282
240
  case 0:
283
241
  ts = Math.round(new Date().getTime() / 1000).toString();
284
242
  dt = ['sig=' + this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts), 'apiname=' + params.apiname, 'debug=0', 'stime=' + ts, 'sn=' + params.deviceCode, 'user=' + FEI_E_YUN_USER];
@@ -290,18 +248,18 @@ var API = function () {
290
248
  data: dt,
291
249
  url: HTTP_PROXY_URL + '?url=' + FEI_E_YUN_HOST
292
250
  };
293
- return _context7.abrupt('return', (0, _mutantsMicrofx.api)(options));
251
+ return _context6.abrupt('return', (0, _mutantsMicrofx.api)(options));
294
252
 
295
253
  case 5:
296
254
  case 'end':
297
- return _context7.stop();
255
+ return _context6.stop();
298
256
  }
299
257
  }
300
- }, _callee7, this);
258
+ }, _callee6, this);
301
259
  }));
302
260
 
303
- function openQueryPrinterStatus(_x7) {
304
- return _ref7.apply(this, arguments);
261
+ function openQueryPrinterStatus(_x6) {
262
+ return _ref6.apply(this, arguments);
305
263
  }
306
264
 
307
265
  return openQueryPrinterStatus;
@@ -312,11 +270,11 @@ var API = function () {
312
270
  }, {
313
271
  key: 'openPrinterAddlist',
314
272
  value: function () {
315
- var _ref8 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee8(params) {
273
+ var _ref7 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee7(params) {
316
274
  var ts, dt, options;
317
- return _regenerator2.default.wrap(function _callee8$(_context8) {
275
+ return _regenerator2.default.wrap(function _callee7$(_context7) {
318
276
  while (1) {
319
- switch (_context8.prev = _context8.next) {
277
+ switch (_context7.prev = _context7.next) {
320
278
  case 0:
321
279
  ts = Math.round(new Date().getTime() / 1000).toString();
322
280
  dt = ['printerContent=' + params.printerContent, 'user=' + FEI_E_YUN_USER, 'stime=' + ts, 'sig=' + this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts), 'apiname=' + params.apiname, 'debug=0'];
@@ -328,18 +286,18 @@ var API = function () {
328
286
  data: dt,
329
287
  url: HTTP_PROXY_URL + '?url=' + FEI_E_YUN_HOST
330
288
  };
331
- return _context8.abrupt('return', (0, _mutantsMicrofx.api)(options));
289
+ return _context7.abrupt('return', (0, _mutantsMicrofx.api)(options));
332
290
 
333
291
  case 5:
334
292
  case 'end':
335
- return _context8.stop();
293
+ return _context7.stop();
336
294
  }
337
295
  }
338
- }, _callee8, this);
296
+ }, _callee7, this);
339
297
  }));
340
298
 
341
- function openPrinterAddlist(_x8) {
342
- return _ref8.apply(this, arguments);
299
+ function openPrinterAddlist(_x7) {
300
+ return _ref7.apply(this, arguments);
343
301
  }
344
302
 
345
303
  return openPrinterAddlist;
@@ -350,11 +308,11 @@ var API = function () {
350
308
  }, {
351
309
  key: 'openPrintMsg',
352
310
  value: function () {
353
- var _ref9 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee9(params) {
311
+ var _ref8 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee8(params) {
354
312
  var ts, dt, options;
355
- return _regenerator2.default.wrap(function _callee9$(_context9) {
313
+ return _regenerator2.default.wrap(function _callee8$(_context8) {
356
314
  while (1) {
357
- switch (_context9.prev = _context9.next) {
315
+ switch (_context8.prev = _context8.next) {
358
316
  case 0:
359
317
  ts = Math.round(new Date().getTime() / 1000).toString();
360
318
  dt = ['content=' + params.content, 'printerContent=' + params.printerContent, 'user=' + FEI_E_YUN_USER, 'stime=' + ts, 'sig=' + this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts), 'apiname=' + params.apiname, 'debug=0', 'sn=' + params.deviceCode, 'times=' + params.times //打印次数
@@ -367,18 +325,18 @@ var API = function () {
367
325
  data: dt,
368
326
  url: HTTP_PROXY_URL + '?url=' + FEI_E_YUN_HOST
369
327
  };
370
- return _context9.abrupt('return', (0, _mutantsMicrofx.api)(options));
328
+ return _context8.abrupt('return', (0, _mutantsMicrofx.api)(options));
371
329
 
372
330
  case 5:
373
331
  case 'end':
374
- return _context9.stop();
332
+ return _context8.stop();
375
333
  }
376
334
  }
377
- }, _callee9, this);
335
+ }, _callee8, this);
378
336
  }));
379
337
 
380
- function openPrintMsg(_x9) {
381
- return _ref9.apply(this, arguments);
338
+ function openPrintMsg(_x8) {
339
+ return _ref8.apply(this, arguments);
382
340
  }
383
341
 
384
342
  return openPrintMsg;
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/cloudPrint/api.js"],"names":["HTTP_PROXY_URL","FEI_E_YUN_HOST","FEI_E_YUN_USER","FEI_E_YUN_KEYS","API","props","shaEncrypt","originalText","password","md5","crypto","createHash","update","data","digest","i","length","v","hv","toString","params","dataSource","BizCode","bizCode","Id","id","dto","param","Idstore","POSCode","ts","Math","round","Date","getTime","dt","apiname","deviceCode","join","options","method","headers","url","printerContent","content","times"],"mappings":"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","file":"api.js","sourcesContent":["import { tApi } from 'tplus-api';\nimport { api } from 'mutants-microfx';\nimport crypto from 'crypto';\n\nconst HTTP_PROXY_URL = \"http://tfproxy.chanjet.com\";\nconst FEI_E_YUN_HOST = \"http://api.feieyun.cn/Api/Open/\";\nconst FEI_E_YUN_USER = \"tplus@chanjet.com\";\nconst FEI_E_YUN_KEYS = \"nyktjQ9nVyY6BfIs\";\n\nclass API {\n constructor(props) { }\n\n //飞蛾参数加密\n shaEncrypt = (originalText) => {\n let password = \"\";\n let md5 = crypto.createHash('sha1');\n md5.update(originalText);\n let data = md5.digest();\n for (let i = 0; i < data.length; i++) {\n\n let v = data[i] & 0xFF;\n let hv = v.toString(16);\n if (hv.length < 2) {\n password = password + 0;\n }\n password = password + hv;\n }\n return password;\n }\n\n //获取枚举列表信息\n async getDataSource(params) {\n const { dataSource } = params;\n const data = await tApi({ BizCode: params.bizCode }, dataSource, false, false);\n return data;\n }\n\n //获取打印数据\n async getPrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'chanjet.RE.INewRetail.FindById', false, false);\n return data;\n }\n\n //获取当前门店硬件配置信息\n async GetPrintInfomation(dto) {\n let param={};\n param.Idstore=dto.Idstore;\n param.POSCode=dto.POSCode;\n \n const data = await tApi({ param: JSON.stringify(param) }, 'chanjet.RE.NewPos.GetPrintInfomation', false, false);\n return data;\n }\n\n //获取日结打印数据\n async getDialyPrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);\n return data;\n }\n\n //获取交班打印数据\n async getDutyPrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);\n return data;\n } \n\n //获取储值打印数据\n async getStoragePrintDataInfo(Id) {\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindById', false, false);\n return data;\n }\n\n // 小票打印-获取状态信息。类似{\"msg\":\"ok\",\"ret\":0,\"data\":\"\\u79bb\\u7ebf\\u3002\",\"serverExecutedTime\":5}\n async openQueryPrinterStatus(params) {\n let ts = Math.round(new Date().getTime() / 1000).toString();\n let dt = [\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\n `apiname=${params.apiname}`,\n `debug=0`,\n `stime=${ts}`,\n `sn=${params.deviceCode}`,\n `user=${FEI_E_YUN_USER}`\n ]\n dt = dt.join('&');\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\n data: dt,\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\n };\n return api(options);\n }\n\n // 小票打印-云打印\n async openPrinterAddlist(params) {\n let ts = Math.round(new Date().getTime() / 1000).toString();\n let dt = [\n `printerContent=${params.printerContent}`,\n `user=${FEI_E_YUN_USER}`,\n `stime=${ts}`,\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\n `apiname=${params.apiname}`,\n `debug=0`\n ]\n dt = dt.join('&');\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\n data: dt,\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\n };\n return api(options);\n }\n\n // 小票打印-发出打印指令\n async openPrintMsg(params) {\n let ts = Math.round(new Date().getTime() / 1000).toString();\n let dt = [\n `content=${params.content}`,\n `printerContent=${params.printerContent}`,\n `user=${FEI_E_YUN_USER}`,\n `stime=${ts}`,\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\n `apiname=${params.apiname}`,\n `debug=0`,\n `sn=${params.deviceCode}`,\n `times=${params.times}` //打印次数\n ]\n dt = dt.join('&');\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\n data: dt,\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\n };\n return api(options);\n }\n}\nexport default new API;\n"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/cloudPrint/api.js"],"names":["HTTP_PROXY_URL","FEI_E_YUN_HOST","FEI_E_YUN_USER","FEI_E_YUN_KEYS","API","props","shaEncrypt","originalText","password","md5","crypto","createHash","update","data","digest","i","length","v","hv","toString","params","dataSource","BizCode","bizCode","Id","id","ts","Math","round","Date","getTime","dt","apiname","deviceCode","join","options","method","headers","url","printerContent","content","times"],"mappings":"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","file":"api.js","sourcesContent":["import { tApi } from 'tplus-api';\r\nimport { api } from 'mutants-microfx';\r\nimport crypto from 'crypto';\r\n\r\nconst HTTP_PROXY_URL = \"http://tfproxy.chanjet.com\";\r\nconst FEI_E_YUN_HOST = \"http://api.feieyun.cn/Api/Open/\";\r\nconst FEI_E_YUN_USER = \"tplus@chanjet.com\";\r\nconst FEI_E_YUN_KEYS = \"nyktjQ9nVyY6BfIs\";\r\n\r\nclass API {\r\n constructor(props) { }\r\n\r\n //飞蛾参数加密\r\n shaEncrypt = (originalText) => {\r\n let password = \"\";\r\n let md5 = crypto.createHash('sha1');\r\n md5.update(originalText);\r\n let data = md5.digest();\r\n for (let i = 0; i < data.length; i++) {\r\n\r\n let v = data[i] & 0xFF;\r\n let hv = v.toString(16);\r\n if (hv.length < 2) {\r\n password = password + 0;\r\n }\r\n password = password + hv;\r\n }\r\n return password;\r\n }\r\n\r\n //获取枚举列表信息\r\n async getDataSource(params) {\r\n const { dataSource } = params;\r\n const data = await tApi({ BizCode: params.bizCode }, dataSource, false, false);\r\n return data;\r\n }\r\n\r\n //获取打印数据\r\n async getPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'chanjet.RE.INewRetail.FindById', false, false);\r\n return data;\r\n }\r\n\r\n //获取日结打印数据\r\n async getDialyPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.Interface.IDailyDetail.FindById', false, false);\r\n return data;\r\n }\r\n\r\n //获取交班打印数据\r\n async getDutyPrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.RE.IShiftVoucher.FindById', false, false);\r\n return data;\r\n } \r\n\r\n //获取储值打印数据\r\n async getStoragePrintDataInfo(Id) {\r\n const data = await tApi({ id:Id }, 'Ufida.T.ME.Interface.IMemberStorage.FindById', false, false);\r\n return data;\r\n }\r\n\r\n // 小票打印-获取状态信息。类似{\"msg\":\"ok\",\"ret\":0,\"data\":\"\\u79bb\\u7ebf\\u3002\",\"serverExecutedTime\":5}\r\n async openQueryPrinterStatus(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`,\r\n `stime=${ts}`,\r\n `sn=${params.deviceCode}`,\r\n `user=${FEI_E_YUN_USER}`\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n\r\n // 小票打印-云打印\r\n async openPrinterAddlist(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `printerContent=${params.printerContent}`,\r\n `user=${FEI_E_YUN_USER}`,\r\n `stime=${ts}`,\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n\r\n // 小票打印-发出打印指令\r\n async openPrintMsg(params) {\r\n let ts = Math.round(new Date().getTime() / 1000).toString();\r\n let dt = [\r\n `content=${params.content}`,\r\n `printerContent=${params.printerContent}`,\r\n `user=${FEI_E_YUN_USER}`,\r\n `stime=${ts}`,\r\n `sig=${this.shaEncrypt(FEI_E_YUN_USER + FEI_E_YUN_KEYS + ts)}`,\r\n `apiname=${params.apiname}`,\r\n `debug=0`,\r\n `sn=${params.deviceCode}`,\r\n `times=${params.times}` //打印次数\r\n ]\r\n dt = dt.join('&');\r\n const options = {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/x-www-form-urlencoded' },\r\n data: dt,\r\n url: `${HTTP_PROXY_URL}?url=${FEI_E_YUN_HOST}`,\r\n };\r\n return api(options);\r\n }\r\n}\r\nexport default new API;\r\n"]}