tplus-components-touch 3.41.1 → 3.41.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/billSearch/index.js +15 -38
- package/dist/components/billSearch/index.js.map +1 -1
- package/dist/components/cloudPrint/BTPrintFormatUtil.js +2 -2
- package/dist/components/cloudPrint/BTPrintFormatUtil.js.map +1 -1
- package/dist/components/cloudPrint/index.js +891 -608
- package/dist/components/cloudPrint/index.js.map +1 -1
- package/dist/components/cloudPrint/printDispatch.js +151 -47
- package/dist/components/cloudPrint/printDispatch.js.map +1 -1
- package/dist/components/cloudPrint/printTemplate/dialy_one.json +239 -0
- package/dist/components/cloudPrint/printTemplate/duty_one.json +239 -0
- package/dist/components/cloudPrint/printTemplate/retail_one.json +208 -0
- package/dist/components/cloudPrint/printTemplate/retail_two.json +220 -0
- package/dist/components/cloudPrint/printTemplate/storage_one.json +129 -0
- package/dist/components/cloudPrint/printTemplate/template.js +52 -0
- package/dist/components/cloudPrint/printTemplate/template.js.map +1 -0
- package/dist/components/commonForm/formControl/index.js +1 -1
- package/dist/components/commonForm/formControl/index.js.map +1 -1
- package/dist/components/deliverySearch/index.js +5 -1
- package/dist/components/deliverySearch/index.js.map +1 -1
- package/dist/components/hardwareAPI/index.js +46 -12
- package/dist/components/hardwareAPI/index.js.map +1 -1
- package/dist/components/inventorySearch/tab.js +6 -1
- package/dist/components/inventorySearch/tab.js.map +1 -1
- package/dist/components/loading/loadingContent.js +5 -2
- package/dist/components/loading/loadingContent.js.map +1 -1
- package/dist/components/message/index.js +4 -5
- package/dist/components/message/index.js.map +1 -1
- package/dist/components/notification/index.js +11 -12
- package/dist/components/notification/index.js.map +1 -1
- package/dist/components/progressState/EmptyAndErrorView.js +5 -7
- package/dist/components/progressState/EmptyAndErrorView.js.map +1 -1
- package/dist/components/settlement/settlement.js +139 -116
- package/dist/components/settlement/settlement.js.map +1 -1
- package/dist/components/settlement/settlementStore.js +16 -26
- package/dist/components/settlement/settlementStore.js.map +1 -1
- package/dist/components/touchTable/index.js +5 -3
- package/dist/components/touchTable/index.js.map +1 -1
- package/package.json +35 -35
@@ -384,10 +384,10 @@ var BTPrintFormatUtil = function () {
|
|
384
384
|
|
385
385
|
}, {
|
386
386
|
key: 'drawSeparateLine',
|
387
|
-
value: function drawSeparateLine() {
|
387
|
+
value: function drawSeparateLine(value) {
|
388
388
|
var buffer = "";
|
389
389
|
for (var i = 0; i < LINE_BYTE_SIZE - 1; i++) {
|
390
|
-
buffer += '-';
|
390
|
+
buffer += value || '-';
|
391
391
|
}
|
392
392
|
buffer += '\n';
|
393
393
|
return buffer;
|
@@ -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;\r\nconst CHANGE_LINE = '\\n';\r\nconst SLASH = '\\/';\r\n\r\nclass BTPrintFormatUtil {\r\n\r\n\tstatic setLineByteSize(size) {\r\n\t\tLINE_BYTE_SIZE = size;\r\n\t}\r\n\r\n\tstatic printMenuMSG(bodyValueList, mhList) {\r\n\t\tif (!mhList || mhList.length == 0) {\r\n\t\t\treturn '';\r\n\t\t}\r\n\t\tthis.sb = '';\r\n\t\tlet tabHeaderByte = 4;\r\n\t\t// 对明细分层次渲染。\r\n\t\tfunction renderTableByStep(list, _this) {\r\n\t\t\tlet constr = '', index = 0, occupyedBytes = 0;\r\n\t\t\tlet topWeight = 0, contentWeight = 0, bottomWeight = 0, top = [], content = [], bottom = [];\r\n\t\t\tlist.forEach(item => {\r\n\t\t\t\tif (item.isTitle) {\r\n\t\t\t\t\ttop.push(item);\r\n\t\t\t\t\ttopWeight += item.headerWeight;\r\n\t\t\t\t} else if (item.isFoot) {\r\n\t\t\t\t\tbottom.push(item);\r\n\t\t\t\t\tbottomWeight += item.headerWeight;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tcontent.push(item);\r\n\t\t\t\t\tcontentWeight += item.headerWeight;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tindex = 0;\r\n\t\t\toccupyedBytes = 0;\r\n\t\t\ttop.forEach(mh => {\r\n\t\t\t\tlet occupyedByte = parseInt((LINE_BYTE_SIZE * mh.headerWeight / topWeight));\r\n\t\t\t\toccupyedBytes += occupyedByte;\r\n\t\t\t\tmh.headerOccupyBytes = occupyedByte;\r\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\r\n\t\t\t\tif (index == top.length - 1) {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = true;\r\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t\tconstr += _this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = false;\r\n\t\t\t\t\tmh.drawText = mh.headerText + SLASH;\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t}\r\n\t\t\t\tindex++;\r\n\t\t\t})\r\n\t\t\tindex = 0;\r\n\t\t\toccupyedBytes = 0;\r\n\t\t\tcontent.forEach(mh => {\r\n\t\t\t\tlet occupyedByte = parseInt(((LINE_BYTE_SIZE * mh.headerWeight - tabHeaderByte) / contentWeight));\r\n\t\t\t\tmh.headerOccupyBytes = _this.stringToByte(mh.headerText).length;\r\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\r\n\t\t\t\tif (mh.headerOccupyBytes < occupyedByte) {\r\n\t\t\t\t\tmh.headerOccupyBytes = occupyedByte;\r\n\t\t\t\t}\r\n\t\t\t\tif (mh.headerOccupyLength < occupyedByte) {\r\n\t\t\t\t\tmh.headerOccupyLength = occupyedByte;\r\n\t\t\t\t}\r\n\t\t\t\tif (index == content.length - 1) {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = true;\r\n\t\t\t\t\tmh.headerOccupyBytes = LINE_BYTE_SIZE - occupyedBytes;\r\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = false;\r\n\t\t\t\t\toccupyedBytes += occupyedByte;\r\n\t\t\t\t\tlet blankBytes = occupyedByte - _this.getBytesLength(mh.headerText);\r\n\t\t\t\t\tif (blankBytes <= 0) {\r\n\t\t\t\t\t\tmh.headerText += \" \";\r\n\t\t\t\t\t\tlet len = _this.getBytesLength(\" \");\r\n\t\t\t\t\t\toccupyedBytes += len;\r\n\t\t\t\t\t\tmh.headerOccupyBytes += len;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tmh.drawText = _this.concatBlank(mh.headerText, blankBytes, true);\r\n\t\t\t\t\tconstr += mh.drawText;\r\n\t\t\t\t}\r\n\t\t\t\tindex++;\r\n\t\t\t})\r\n\t\t\tindex = 0;\r\n\t\t\toccupyedBytes = 0;\r\n\t\t\tbottom.forEach(mh => {\r\n\t\t\t\tlet occupyedByte = parseInt((LINE_BYTE_SIZE * mh.headerWeight / bottomWeight));\r\n\t\t\t\toccupyedBytes += occupyedByte;\r\n\t\t\t\tmh.headerOccupyBytes = occupyedByte;\r\n\t\t\t\tmh.headerOccupyLength = _this.getBytesLength(mh.headerText);\r\n\t\t\t\tif (index == bottom.length - 1) {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = true;\r\n\t\t\t\t\tmh.drawText = mh.headerText + CHANGE_LINE;\r\n\t\t\t\t\t//constr += mh.drawText;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (index == 0) { mh.start = true; } else { mh.start = false; }\r\n\t\t\t\t\tmh.end = false;\r\n\t\t\t\t\tmh.drawText = mh.headerText + SLASH;\r\n\t\t\t\t\t//constr += mh.drawText;\r\n\t\t\t\t}\r\n\t\t\t\tindex++;\r\n\t\t\t})\r\n\t\t\treturn constr;\r\n\t\t}\r\n\t\tthis.sb += renderTableByStep(mhList, this);\r\n\t\t// 画分隔线\r\n\t\tthis.sb += this.drawSeparateLine();\r\n\r\n\t\tlet headerSize = mhList.length;\r\n\t\tlet valueListSize = bodyValueList.length;\r\n\t\t// 重新计算表体的集合,如果超过限度,折行显示 将一条数据拆成多条\r\n\t\tfor (let i = 0; i < valueListSize; i++) {\r\n\t\t\tlet maxLine = 1;\r\n\t\t\tlet rowValue = bodyValueList[i];\r\n\t\t\trowValue = rowValue.map(item => {\r\n\t\t\t\tif (!item) {\r\n\t\t\t\t\treturn '';\r\n\t\t\t\t}\r\n\t\t\t\treturn item.toString();\r\n\t\t\t});\r\n\t\t\tlet stringArrayMap = new Map();\r\n\t\t\tlet topContents = '', rowContents = '', bottomContents = '';\r\n\t\t\tfor (let j = 0; j < headerSize; j++) {\r\n\t\t\t\tlet mh = mhList[j];\r\n\t\t\t\tif (mh.isTitle === true) {\r\n\t\t\t\t\tif (mh.start === true) {\r\n\t\t\t\t\t\ttopContents += ((i + 1) + \".\" + rowValue[j]);\r\n\t\t\t\t\t\tif (mh.end === true) {\r\n\t\t\t\t\t\t\ttopContents += CHANGE_LINE;\r\n\t\t\t\t\t\t\ttopContents += this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (mh.start === false) {\r\n\t\t\t\t\t\tif (mh.end === true) {\r\n\t\t\t\t\t\t\ttopContents += SLASH + rowValue[j] + CHANGE_LINE;\r\n\t\t\t\t\t\t\ttopContents += this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\t\t\t} else if (mh.end === false) {\r\n\t\t\t\t\t\t\ttopContents += SLASH + rowValue[j];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (mh.isFoot === true) {\r\n\t\t\t\t\tif (mh.start === true) {\r\n\t\t\t\t\t\tbottomContents += rowValue[j];\r\n\t\t\t\t\t\tif (mh.end === true && bottomContents) {\r\n\t\t\t\t\t\t\tbottomContents = \"备注:\" + bottomContents + CHANGE_LINE\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (mh.start === false) {\r\n\t\t\t\t\t\tif (mh.end === true) {\r\n\t\t\t\t\t\t\tbottomContents += SLASH + rowValue[j] + CHANGE_LINE;\r\n\t\t\t\t\t\t} else if (mh.end === false) {\r\n\t\t\t\t\t\t\tbottomContents += SLASH + rowValue[j];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// 最多需要多少行 展示下 处理内容较长换行的情况\r\n\t\t\t\t\t// 每列都计算需要的行数,然后取最大值\r\n\t\t\t\t\tlet oldValue = rowValue[j]\r\n\t\t\t\t\tlet rowsValue = this.getSubString(oldValue, mh.headerOccupyBytes);\r\n\t\t\t\t\tlet subRowSize = rowsValue.length;\r\n\t\t\t\t\tfor (let subRow = 0; subRow < subRowSize; subRow++) {\r\n\t\t\t\t\t\tlet key = subRow.toString() + j.toString();\r\n\t\t\t\t\t\tlet value = rowsValue[subRow];\r\n\t\t\t\t\t\tlet blankBytes = mh.headerOccupyLength - this.getBytesLength(value);\r\n\t\t\t\t\t\tstringArrayMap.set(key, this.concatBlank(value, blankBytes, true));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (subRowSize > maxLine) {\r\n\t\t\t\t\t\tmaxLine = subRowSize;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tfor (let row = 0; row < maxLine; row++) {\r\n\t\t\t\tif (row > 0) rowContents += this.concatBlank('', tabHeaderByte, true);\r\n\t\t\t\tfor (let column = 0; column < headerSize; column++) {\r\n\t\t\t\t\tlet key = row.toString() + column.toString();\r\n\t\t\t\t\tlet value = stringArrayMap.get(key);\r\n\t\t\t\t\tlet mh = mhList[column];\r\n\t\t\t\t\tif (mh.isTitle === true) {\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tlet spaceLen = mh.headerOccupyLength;\r\n\t\t\t\t\tif (key.endsWith('0')) {\r\n\t\t\t\t\t\tspaceLen = LINE_BYTE_SIZE == 32 ? 5 : 8;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tvalue = value ? value : this.concatBlank('', spaceLen, true);\r\n\t\t\t\t\trowContents += value;\r\n\t\t\t\t}\r\n\t\t\t\tlet tempContents = rowContents;\r\n\t\t\t\tfor (let i = tempContents.length - 1; i >= 0; i--) {\r\n\t\t\t\t\tif (tempContents.charAt(i) != \" \") {\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t\trowContents = tempContents.substr(0, i);\r\n\t\t\t\t}\r\n\t\t\t\trowContents += \"\\n\";\r\n\t\t\t}\r\n\t\t\tthis.sb += topContents;\r\n\t\t\tthis.sb += rowContents;\r\n\t\t\tthis.sb += bottomContents;\r\n\t\t}\r\n\t\tthis.sb += this.drawSeparateLine();\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\t/**\r\n\t * 排版居中标题\r\n\t *\r\n\t */\r\n\tstatic printTitle(title) {\r\n\t\tthis.sb = '';\r\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(title)) / 2;\r\n\t\tfor (let i = 0; i < spaceSize; i++) {\r\n\t\t\tthis.sb += \" \";\r\n\t\t}\r\n\t\tthis.sb += title;\r\n\t\tthis.sb += \"\\n\";\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\t/**\r\n\t * 排版居中标题带*\r\n\t *\r\n\t */\r\n\tstatic printStarTitle(title) {\r\n\t\tthis.sb = '';\r\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(title)) / 2;\r\n\t\tfor (let i = 0; i < spaceSize/2; i++) {\r\n\t\t\tthis.sb += \"* \";\r\n\t\t}\r\n\t\tthis.sb += title;\r\n\t\tfor (let i = 0; i < spaceSize/2; i++) {\r\n\t\t\tthis.sb += \"* \";\r\n\t\t}\r\n\t\tthis.sb += \"\\n\";\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\t/**\r\n\t * 排版居左对齐\r\n\t */\r\n\tstatic leftPrintMsg(middleMsgMap) {\r\n\t\tthis.sb = '';\r\n\r\n\t\tfor (let item of middleMsgMap.entries()) {\r\n\t\t\tlet key = item[0];\r\n\t\t\tlet content = key == 'noTitle' ? item[1] : (key + \":\" + item[1])\r\n\t\t\tthis.sb += content;\r\n\t\t\tthis.sb += \"\\n\";\r\n\t\t}\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\tstatic spaceCenterPrintMsg(firstString,secondString){\r\n\t\tthis.sb = firstString;\r\n\t\tlet spaceSize = (LINE_BYTE_SIZE - this.getBytesLength(firstString+secondString)) / 2;\r\n\t\tfor (let i = 0; i < spaceSize; i++) {\r\n\t\t\tthis.sb += \" \";\r\n\t\t}\r\n\t\tthis.sb += secondString;\r\n\t\tthis.sb += \"\\n\";\r\n\t\treturn this.sb;\r\n\t}\r\n\r\n\r\n\t/**\r\n \t * 补全空格\r\n */\r\n\tstatic concatBlank(text, blankLength, isAll) {\r\n\t\tif (blankLength <= 0) {\r\n\t\t\treturn text;\r\n\t\t}\r\n\t\tif (!isAll) {\r\n\t\t\tblankLength = blankLength / 2;\r\n\t\t}\r\n\t\tfor (let i = 0; i < blankLength; i++) {\r\n\t\t\ttext += \" \";\r\n\t\t}\r\n\t\treturn text;\r\n\t}\r\n\r\n\t/**\r\n\t * 画分割线\r\n\t */\r\n\tstatic drawSeparateLine(value) {\r\n\t\tlet buffer = \"\";\r\n\t\tfor (let i = 0; i < LINE_BYTE_SIZE - 1; i++) {\r\n\t\t\tbuffer += value || '-';\r\n\t\t}\r\n\t\tbuffer += '\\n';\r\n\t\treturn buffer;\r\n\t}\r\n\r\n\t/**\r\n\t * 画分割线\r\n\t */\r\n\tstatic drawSeparateLine2() {\r\n\t\tlet buffer = \"\";\r\n\t\tfor (let i = 0; i < LINE_BYTE_SIZE - 1; i++) {\r\n\t\t\tbuffer += '=';\r\n\t\t}\r\n\t\tbuffer += '\\n';\r\n\t\treturn buffer;\r\n\t}\r\n\r\n\tstatic getSubString(oriStr, subStrLen) {\r\n\t\tif (!oriStr || subStrLen <= 0) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\r\n\t\tlet list = [];\r\n\t\tlet subStrBytes = this.stringToByte(oriStr);\r\n\t\tlet subStrIndex = 0;\r\n\t\tlet index = 0;\r\n\t\twhile (subStrIndex < subStrBytes.length) {\r\n\t\t\tlet len = subStrLen;\r\n\t\t\tif (subStrIndex + len > subStrBytes.length) {\r\n\t\t\t\tlen = subStrBytes.length - subStrIndex;\r\n\t\t\t}\r\n\t\t\tlet subStr = this.byteToString(subStrBytes.slice(subStrIndex, subStrIndex + len));\r\n\t\t\tif (subStr.length > oriStr.length) {\r\n\t\t\t\tsubStr = subStr.substr(0, oriStr.length);\r\n\t\t\t}\r\n\t\t\tlet tempindex = index + subStr.length - 1;\r\n\t\t\tif (tempindex < oriStr.length) {\r\n\t\t\t\tif (subStr.charAt(subStr.length - 1) != oriStr.charAt(tempindex)) {\r\n\t\t\t\t\tlet i = 7;\r\n\t\t\t\t\twhile (true) {\r\n\t\t\t\t\t\tif (subStr.length == 0 || i < 0) {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (subStr.endsWith(\"�\")) {\r\n\t\t\t\t\t\t\tsubStr = subStr.substr(0, subStr.length - 1);\r\n\t\t\t\t\t\t\tlen = this.stringToByte(subStr).length;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\ti--;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tsubStr = subStr.substr(0, subStr.length - 2);\r\n\t\t\t\tlen = this.stringToByte(subStr).length;\r\n\t\t\t}\r\n\r\n\t\t\tif (len <= 0) {\r\n\t\t\t\treturn list;\r\n\t\t\t}\r\n\t\t\tsubStrIndex += len;\r\n\t\t\tindex += subStr.length;\r\n\t\t\tlet strByteSize = 0;\r\n\t\t\tif (subStr) {\r\n\t\t\t\tstrByteSize = this.getBytesLength(subStr);\r\n\t\t\t}\r\n\t\t\tlet fillBlank = (subStrLen - strByteSize) / 2;\r\n\t\t\tlet sbuffer = subStr;\r\n\t\t\tfor (let i = 0; i < fillBlank; i++) {\r\n\t\t\t\tif (fillBlank >= 1)\r\n\t\t\t\t\tsbuffer += \" \";\r\n\t\t\t}\r\n\t\t\tlist.push(sbuffer);\r\n\t\t}\r\n\t\treturn list;\r\n\t}\r\n\r\n\t/**\r\n\t * 获取最大长度\r\n\t *\r\n\t */\r\n\tstatic getMaxLength(msgs) {\r\n\t\tlet max = 0;\r\n\t\tlet tmp;\r\n\t\tmsgs.forEach((item) => {\r\n\t\t\ttmp = this.getBytesLength(item);\r\n\t\t\tif (tmp > max) {\r\n\t\t\t\tmax = tmp;\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn max;\r\n\t}\r\n\r\n\tstatic getBytesLength(val) {\r\n\t\tvar len = 0;\r\n\t\tif (!val) return len;\r\n\t\tfor (var i = 0; i < val.length; i++) {\r\n\t\t\tvar length = val.charCodeAt(i);\r\n\t\t\tif (length >= 0 && length <= 128) {\r\n\t\t\t\tlen += 1;\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tlen += 2;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn len;\r\n\t}\r\n\r\n\tstatic stringToByte(str) {\r\n\t\tvar bytes = new Array();\r\n\t\tvar len, c;\r\n\t\tlen = str && str.length || 0;\r\n\t\tfor (var i = 0; i < len; i++) {\r\n\t\t\tc = str.charCodeAt(i);\r\n\t\t\tif (c >= 0x010000 && c <= 0x10FFFF) {\r\n\t\t\t\tbytes.push(((c >> 18) & 0x07) | 0xF0);\r\n\t\t\t\tbytes.push(((c >> 12) & 0x3F) | 0x80);\r\n\t\t\t\tbytes.push(((c >> 6) & 0x3F) | 0x80);\r\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\r\n\t\t\t} else if (c >= 0x000800 && c <= 0x00FFFF) {\r\n\t\t\t\tbytes.push(((c >> 12) & 0x0F) | 0xE0);\r\n\t\t\t\tbytes.push(((c >> 6) & 0x3F) | 0x80);\r\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\r\n\t\t\t} else if (c >= 0x000080 && c <= 0x0007FF) {\r\n\t\t\t\tbytes.push(((c >> 6) & 0x1F) | 0xC0);\r\n\t\t\t\tbytes.push((c & 0x3F) | 0x80);\r\n\t\t\t} else {\r\n\t\t\t\tbytes.push(c & 0xFF);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn bytes;\r\n\t}\r\n\r\n\tstatic byteToString(arr) {\r\n\t\tif (typeof arr === 'string') {\r\n\t\t\treturn arr;\r\n\t\t}\r\n\t\tvar str = '',\r\n\t\t\t_arr = arr;\r\n\t\tfor (var i = 0; i < _arr.length; i++) {\r\n\t\t\tvar one = _arr[i].toString(2),\r\n\t\t\t\tv = one.match(/^1+?(?=0)/);\r\n\t\t\tif (v && one.length == 8) {\r\n\t\t\t\tvar bytesLength = v[0].length;\r\n\t\t\t\tvar store = _arr[i].toString(2).slice(7 - bytesLength);\r\n\t\t\t\tfor (var st = 1; st < bytesLength; st++) {\r\n\t\t\t\t\tif ((st + i) < _arr.length)\r\n\t\t\t\t\t\tstore += _arr[st + i].toString(2).slice(2);\r\n\t\t\t\t}\r\n\t\t\t\tlet value = String.fromCharCode(parseInt(store, 2));\r\n\t\t\t\tlet asciiValue = value.charCodeAt()\r\n\t\t\t\tif ((asciiValue >= 0 && asciiValue <= 32) || asciiValue == 127) {\r\n\t\t\t\t\t//不可见字符变成�\r\n\t\t\t\t\tvalue = \"�\";\r\n\t\t\t\t}\r\n\t\t\t\tstr += value;\r\n\t\t\t\ti += bytesLength - 1;\r\n\t\t\t} else {\r\n\t\t\t\tstr += String.fromCharCode(_arr[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn str;\r\n\t}\r\n}\r\n\r\nexport default BTPrintFormatUtil;"]}
|