@syzlm/function 1.0.1 → 1.0.3
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/business/index.d.ts +2 -0
- package/dist/business/index.d.ts.map +1 -0
- package/dist/business/parseQrcode.d.ts +34 -0
- package/dist/business/parseQrcode.d.ts.map +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/objects/objectUtils.d.ts +1 -2
- package/dist/objects/objectUtils.d.ts.map +1 -1
- package/docs/README.md +4 -2
- package/docs/functions/capitalize.md +1 -1
- package/docs/functions/chunk.md +1 -1
- package/docs/functions/clamp.md +1 -1
- package/docs/functions/debounce.md +1 -1
- package/docs/functions/deepClone.md +1 -1
- package/docs/functions/delay.md +1 -1
- package/docs/functions/get.md +1 -1
- package/docs/functions/getFontLength.md +1 -1
- package/docs/functions/getFontWidth.md +1 -1
- package/docs/functions/hasOwnProperty.md +33 -0
- package/docs/functions/isPlainObject.md +1 -1
- package/docs/functions/merge.md +1 -1
- package/docs/functions/parseQrcode.md +63 -0
- package/docs/functions/parseStrEmpty.md +1 -1
- package/docs/functions/randomString.md +1 -1
- package/docs/functions/range.md +1 -1
- package/docs/functions/round.md +1 -1
- package/docs/functions/set.md +1 -1
- package/docs/functions/shuffle.md +1 -1
- package/docs/functions/simpleUnique.md +1 -1
- package/docs/functions/thousandSign.md +1 -1
- package/docs/functions/thousandSignZero.md +1 -1
- package/docs/functions/throttle.md +1 -1
- package/docs/functions/toCamelCase.md +1 -1
- package/docs/functions/toFixed.md +1 -1
- package/docs/functions/unique.md +1 -1
- package/package.json +1 -1
- package/src/business/index.ts +2 -0
- package/src/business/parseQrcode.ts +81 -0
- package/src/index.ts +4 -1
- package/src/objects/objectUtils.ts +3 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/business/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description 税局生成的PDF/OFD版式文件中,左上角二维码扫描之后是一串有规则数字,现整理规则如下:
|
|
3
|
+
* @param str 二维码字符串
|
|
4
|
+
* @returns 解析后的 发票代码、发票号码、开票日期、校验码、不含税金额
|
|
5
|
+
* @example ```
|
|
6
|
+
* import {parseQrcode} from '@syzlm/function;'
|
|
7
|
+
* const invoiceInfo = parseQrcode('01,10,033002200111,46492869,330.09,20220602,53243853171194973439,E247,')
|
|
8
|
+
* console.log(invoiceInfo);// {invoiceCode:'033002200111',invoiceNumber:'46492869',invoiceDate:'20220602',taxFreeAmount:'330.09',optionField:'53243853171194973439'}
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
export declare const parseQrcode: (str: string) => {
|
|
12
|
+
/**
|
|
13
|
+
* 发票代码
|
|
14
|
+
*/
|
|
15
|
+
invoiceCode: string;
|
|
16
|
+
/**
|
|
17
|
+
* 发票号码
|
|
18
|
+
*/
|
|
19
|
+
invoiceNumber: string;
|
|
20
|
+
/**
|
|
21
|
+
* 开票日期
|
|
22
|
+
*/
|
|
23
|
+
invoiceDate: string;
|
|
24
|
+
/**
|
|
25
|
+
* 校验码
|
|
26
|
+
*/
|
|
27
|
+
optionField: string;
|
|
28
|
+
/**
|
|
29
|
+
* 不含税金额
|
|
30
|
+
*/
|
|
31
|
+
taxFreeAmount: string;
|
|
32
|
+
} | null;
|
|
33
|
+
export default parseQrcode;
|
|
34
|
+
//# sourceMappingURL=parseQrcode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseQrcode.d.ts","sourceRoot":"","sources":["../../src/business/parseQrcode.ts"],"names":[],"mappings":"AAWA;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,MAAM,KACV;IACD;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,IAkCH,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function t(t,e=0){let n=String(t),r=n.startsWith("-");if(r&&(n=n.slice(1)),n.includes("e")||n.includes("E")){const[t,e]=n.split(/[eE]/);let r=parseInt(e),[o,
|
|
1
|
+
"use strict";function t(t,e=0){let n=String(t),r=n.startsWith("-");if(r&&(n=n.slice(1)),n.includes("e")||n.includes("E")){const[t,e]=n.split(/[eE]/);let r=parseInt(e),[o,i]=t.split(".");i=i||"",n=r>=0?o+i.padEnd(r,"0"):"0."+"0".repeat(-r-1)+o+i}let[o,i]=n.split(".");if(i=i||"",e<0&&(e=0),i.length>e){let t=parseInt(i[e]),n=i.slice(0,e);if(t>=5){let t=1;const e=n.split("");for(let n=e.length-1;n>=0&&t>0;n--){let r=parseInt(e[n])+t;10===r?(e[n]="0",t=1):(e[n]=r.toString(),t=0)}n=e.join(""),t>0&&(o=(parseInt(o)+1).toString())}i=n}else i=i.padEnd(e,"0");return 0===e?(r?"-":"")+o:(r?"-":"")+o+"."+i}Object.defineProperty(exports,"__esModule",{value:!0});exports.capitalize=function(t){return t?t.charAt(0).toUpperCase()+t.slice(1):t},exports.chunk=function(t,e){const n=[];for(let r=0;r<t.length;r+=e)n.push(t.slice(r,r+e));return n},exports.clamp=function(t,e,n){return Math.min(Math.max(t,e),n)},exports.debounce=function(t,e){let n;return(...r)=>{clearTimeout(n),n=setTimeout(()=>t(...r),e)}},exports.deepClone=function t(e){if(null===e||"object"!=typeof e)return e;if(e instanceof Date)return new Date(e.getTime());if(e instanceof Array)return e.map(e=>t(e));if("object"==typeof e){const n={};for(const r in e)e.hasOwnProperty(r)&&(n[r]=t(e[r]));return n}return e},exports.delay=function(t){return new Promise(e=>setTimeout(e,t))},exports.get=function(t,e,n){const r=e.split(".");let o=t;for(const t of r){if(null==o)return n;o=o[t]}return void 0===o?n:o},exports.getFontLength=function(t){let e=0;for(let n=0;n<t.length;n++)t.charCodeAt(n)>127||94===t.charCodeAt(n)?e+=2:e+=1;return e},exports.getFontWidth=function(t,e){let n="undefined"!=typeof document?document.createElement("canvas"):null;const r=n.getContext("2d");return r.font=e||'600 14px / 22px -apple-system, "system-ui", "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',n=null,r.measureText(t).width},exports.hasOwnProperty=function(t,e){return t&&Object.prototype.hasOwnProperty.call(t,e)},exports.isPlainObject=function(t){if(null===t||"object"!=typeof t)return!1;const e=Object.getPrototypeOf(t);return null===e||e===Object.prototype},exports.merge=function(t,...e){return Object.assign({},t,...e)},exports.parseQrcode=t=>{var e,n,r;try{if(t&&String(t).indexOf(",")>-1){const o=String(t).split(",");if(!o[4])return null;const i=o[5],s=i.substring(0,4),u=i.substring(4,6),l=i.substring(6),c=null===(e=o[2])||void 0===e?void 0:e.replace(/^ | $/,""),p=o[3],a=null===(n=o[4])||void 0===n?void 0:n.replace(/^ | $/,""),f=`${s}-${u}-${l}`;return{invoiceCode:c,invoiceNumber:p,invoiceDate:f,optionField:o[6]?null===(r=o[6])||void 0===r?void 0:r.replace(/^ | $/,""):"",taxFreeAmount:a}}}catch(t){console.error("scan:",t)}return null},exports.parseStrEmpty=function(t){return t&&"undefined"!==t&&"null"!==t?t:""},exports.randomString=function(t){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let n="";for(let r=0;r<t;r++)n+=e.charAt(Math.floor(62*Math.random()));return n},exports.range=function(t,e,n=1){const r=[];for(let o=t;o<=e;o+=n)r.push(o);return r},exports.round=function(t,e=0){const n=Math.pow(10,e);return Math.round(t*n)/n},exports.set=function(t,e,n){const r=e.split(".");let o=t;for(let t=0;t<r.length-1;t++){const e=r[t];null!==o[e]&&void 0!==o[e]||(o[e]={}),o=o[e]}return o[r[r.length-1]]=n,t},exports.shuffle=function(t){const e=[...t];for(let t=e.length-1;t>0;t--){const n=Math.floor(Math.random()*(t+1));[e[t],e[n]]=[e[n],e[t]]}return e},exports.simpleUnique=function(t){return[...new Set(t)]},exports.thousandSign=function(t){if(t){const[e,n]=String(t).split(".");let r=e.replace(/\d(?=(\d{3})+$)/g,"$&,");return n&&(r+=Number(n)>0?`${parseFloat(`0.${n}`)}`.replace(/0\./,"."):""),r}return String(t||"0").replace(/\d(?=(\d{3})+$)/g,"$&,")},exports.thousandSignZero=function(e,n){if(e){const r=t(Number(e),n||2),[o,i]=r.split(".");let s=o.replace(/\d(?=(\d{3})+$)/g,"$&,");return i&&(s+=`.${i}`),s}return String(e||"0.00").replace(/\d(?=(\d{3})+$)/g,"$&,")},exports.throttle=function(t,e){let n;return(...r)=>{n||(t(...r),n=!0,setTimeout(()=>n=!1,e))}},exports.toCamelCase=function(t){return t.replace(/[-_\s]+(.)?/g,(t,e)=>e?e.toUpperCase():"")},exports.toFixed=t,exports.unique=function(t,e){if(e&&(null==t?void 0:t.length)){const n=new Map;return t.reduce((t,r)=>{const o=e?r[e]:JSON.stringify(r);return n.has(o)||(n.set(o,!0),t.push(r)),t},[])}return[...new Set(t)]};
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../src/numbers/numberUtils.ts","../src/strings/stringUtils.ts","../src/arrays/arrayUtils.ts","../src/utils/utilFunctions.ts","../src/objects/objectUtils.ts"],"sourcesContent":[null,null,null,null,null],"names":["toFixed","num","digits","numStr","String","isNegative","startsWith","slice","includes","base","exponent","split","exp","parseInt","intPart","decPart","padEnd","repeat","integerPart","decimalPart","length","roundDigit","newDecimalPart","carry","newDecimalArray","i","digit","toString","join","str","charAt","toUpperCase","arr","size","result","push","min","max","Math","func","wait","timeoutId","args","clearTimeout","setTimeout","deepClone","obj","Date","getTime","Array","map","item","clonedObj","key","hasOwnProperty","ms","Promise","resolve","path","defaultValue","keys","undefined","len","charCodeAt","fontStyle","canvas","document","createElement","ctx","getContext","font","measureText","width","
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../src/numbers/numberUtils.ts","../src/strings/stringUtils.ts","../src/arrays/arrayUtils.ts","../src/utils/utilFunctions.ts","../src/objects/objectUtils.ts","../src/business/parseQrcode.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["toFixed","num","digits","numStr","String","isNegative","startsWith","slice","includes","base","exponent","split","exp","parseInt","intPart","decPart","padEnd","repeat","integerPart","decimalPart","length","roundDigit","newDecimalPart","carry","newDecimalArray","i","digit","toString","join","str","charAt","toUpperCase","arr","size","result","push","min","max","Math","func","wait","timeoutId","args","clearTimeout","setTimeout","deepClone","obj","Date","getTime","Array","map","item","clonedObj","key","hasOwnProperty","ms","Promise","resolve","path","defaultValue","keys","undefined","len","charCodeAt","fontStyle","canvas","document","createElement","ctx","getContext","font","measureText","width","Object","prototype","call","value","proto","getPrototypeOf","target","sources","assign","indexOf","fpInfo","kpTime","kpYear","substring","kpMonth","kpDay","invoiceCode","_a","replace","invoiceNumber","taxFreeAmount","_b","invoiceDate","optionField","_c","err","console","error","chars","floor","random","start","end","step","decimals","factor","pow","round","current","newArr","j","Set","integer","decimal","ret","Number","parseFloat","fixed","limit","inThrottle","_","c","field","Map","reduce","res","cur","uniqueKey","JSON","stringify","has","set"],"mappings":"sBA2CgBA,EAAQC,EAAaC,EAAiB,GAEpD,IAAIC,EAASC,OAAOH,GAChBI,EAAaF,EAAOG,WAAW,KAMnC,GALID,IACFF,EAASA,EAAOI,MAAM,IAIpBJ,EAAOK,SAAS,MAAQL,EAAOK,SAAS,KAAM,CAChD,MAAOC,EAAMC,GAAYP,EAAOQ,MAAM,QACtC,IAAIC,EAAMC,SAASH,IACdI,EAASC,GAAWN,EAAKE,MAAM,KACpCI,EAAUA,GAAW,GAInBZ,EAFES,GAAO,EAEAE,EAAUC,EAAQC,OAAOJ,EAAK,KAG9B,KAAO,IAAIK,QAAQL,EAAM,GAAKE,EAAUC,CAEpD,CAGD,IAAKG,EAAaC,GAAehB,EAAOQ,MAAM,KAS9C,GARAQ,EAAcA,GAAe,GAGzBjB,EAAS,IACXA,EAAS,GAIPiB,EAAYC,OAASlB,EAAQ,CAE/B,IAAImB,EAAaR,SAASM,EAAYjB,IAClCoB,EAAiBH,EAAYZ,MAAM,EAAGL,GAG1C,GAAImB,GAAc,EAAG,CAEnB,IAAIE,EAAQ,EACZ,MAAMC,EAAkBF,EAAeX,MAAM,IAG7C,IAAK,IAAIc,EAAID,EAAgBJ,OAAS,EAAGK,GAAK,GAAKF,EAAQ,EAAGE,IAAK,CACjE,IAAIC,EAAQb,SAASW,EAAgBC,IAAMF,EAC7B,KAAVG,GACFF,EAAgBC,GAAK,IACrBF,EAAQ,IAERC,EAAgBC,GAAKC,EAAMC,WAC3BJ,EAAQ,EAEX,CAEDD,EAAiBE,EAAgBI,KAAK,IAGlCL,EAAQ,IACVL,GAAeL,SAASK,GAAe,GAAGS,WAE7C,CAEDR,EAAcG,CACf,MAECH,EAAcA,EAAYH,OAAOd,EAAQ,KAI3C,OAAe,IAAXA,GACMG,EAAa,IAAM,IAAMa,GAEzBb,EAAa,IAAM,IAAMa,EAAc,IAAMC,CAEzD,2ECxGM,SAAqBU,GACzB,OAAKA,EACEA,EAAIC,OAAO,GAAGC,cAAgBF,EAAItB,MAAM,GAD9BsB,CAEnB,gBCwCgB,SAASG,EAAUC,GACjC,MAAMC,EAAgB,GACtB,IAAK,IAAIT,EAAI,EAAGA,EAAIO,EAAIZ,OAAQK,GAAKQ,EACnCC,EAAOC,KAAKH,EAAIzB,MAAMkB,EAAGA,EAAIQ,IAE/B,OAAOC,CACT,yBFhCsBjC,EAAamC,EAAaC,GAC9C,OAAOC,KAAKF,IAAIE,KAAKD,IAAIpC,EAAKmC,GAAMC,EACtC,mBG7BgB,SACdE,EACAC,GAEA,IAAIC,EACJ,MAAO,IAAIC,KACTC,aAAaF,GACbA,EAAYG,WAAW,IAAML,KAAQG,GAAOF,GAEhD,oBCVM,SAAUK,EAAaC,GAC3B,GAAY,OAARA,GAA+B,iBAARA,EACzB,OAAOA,EAGT,GAAIA,aAAeC,KACjB,OAAO,IAAIA,KAAKD,EAAIE,WAGtB,GAAIF,aAAeG,MACjB,OAAOH,EAAII,IAAKC,GAASN,EAAUM,IAGrC,GAAmB,iBAARL,EAAkB,CAC3B,MAAMM,EAAY,CAAA,EAClB,IAAK,MAAMC,KAAOP,EACZA,EAAIQ,eAAeD,KACrBD,EAAUC,GAAkBR,EAAUC,EAAIO,KAG9C,OAAOD,CACR,CAED,OAAON,CACT,gBDaM,SAAgBS,GACpB,OAAO,IAAIC,QAASC,GAAYb,WAAWa,EAASF,GACtD,uBCIoBT,EAAUY,EAAcC,GAC1C,MAAMC,EAAOF,EAAK/C,MAAM,KACxB,IAAIuB,EAAcY,EAElB,IAAK,MAAMO,KAAOO,EAAM,CACtB,GAAI1B,QACF,OAAOyB,EAETzB,EAASA,EAAOmB,EACjB,CAED,YAAkBQ,IAAX3B,EAAuByB,EAAezB,CAC/C,wBHPM,SAAwBL,GAC5B,IAAIiC,EAAM,EACV,IAAK,IAAIrC,EAAI,EAAGA,EAAII,EAAIT,OAAQK,IAC1BI,EAAIkC,WAAWtC,GAAK,KAA6B,KAAtBI,EAAIkC,WAAWtC,GAC5CqC,GAAO,EAEPA,GAAO,EAGX,OAAOA,CACT,uBAQgB,SAAajC,EAAamC,GACxC,IAAIC,EACkB,oBAAbC,SAA2BA,SAASC,cAAc,UAAY,KACvE,MAAMC,EAAMH,EAAOI,WAAW,MAO9B,OANAD,EAAIE,KACFN,GACA,iMAGFC,EAAS,KAFKG,EAAIG,YAAY1C,GAAK2C,KAIrC,yBG4BgB,SAAe1B,EAAajB,GAC1C,OAAOiB,GAAO2B,OAAOC,UAAUpB,eAAeqB,KAAK7B,EAAKjB,EAC1D,wBAlBM,SAAwB+C,GAC5B,GAAc,OAAVA,GAAmC,iBAAVA,EAC3B,OAAO,EAGT,MAAMC,EAAQJ,OAAOK,eAAeF,GAGpC,OAAiB,OAAVC,GAAkBA,IAAUJ,OAAOC,SAC5C,yBAlEwCK,KAAcC,GACpD,OAAOP,OAAOQ,OAAO,CAAA,EAAIF,KAAWC,EACtC,sBCjBEnD,cAuBA,IACE,GAAIA,GAAOzB,OAAOyB,GAAKqD,QAAQ,MAAQ,EAAG,CACxC,MAAMC,EAAS/E,OAAOyB,GAAKlB,MAAM,KACjC,IAAKwE,EAAO,GAEV,OAAO,KAET,MAAMC,EAASD,EAAO,GAChBE,EAASD,EAAOE,UAAU,EAAG,GAC7BC,EAAUH,EAAOE,UAAU,EAAG,GAC9BE,EAAQJ,EAAOE,UAAU,GAEzBG,EAAyB,QAAXC,EAAAP,EAAO,UAAI,IAAAO,OAAA,EAAAA,EAAAC,QAAQ,QAAS,IAE1CC,EAAgBT,EAAO,GAEvBU,EAA2B,QAAXC,EAAAX,EAAO,UAAI,IAAAW,OAAA,EAAAA,EAAAH,QAAQ,QAAS,IAE5CI,EAAc,GAAGV,KAAUE,KAAWC,IAG5C,MAAO,CACLC,cACAG,gBACAG,cACAC,YALkBb,EAAO,GAAc,QAATc,EAAAd,EAAO,UAAE,IAAAc,OAAA,EAAAA,EAAEN,QAAQ,QAAS,IAAM,GAMhEE,gBAEH,CACF,CAAC,MAAOK,GACPC,QAAQC,MAAM,QAASF,EACxB,CACD,OAAO,4BJpCH,SAAwBrE,GAC5B,OAAKA,GAAe,cAARA,GAA+B,SAARA,EAG5BA,EAFE,EAGX,uBApBM,SAAuBT,GAC3B,MAAMiF,EACJ,iEACF,IAAInE,EAAS,GACb,IAAK,IAAIT,EAAI,EAAGA,EAAIL,EAAQK,IAC1BS,GAAUmE,EAAMvE,OAAOQ,KAAKgE,MAAsBD,GAAhB/D,KAAKiE,WAEzC,OAAOrE,CACT,gBD3BM,SAAgBsE,EAAeC,EAAaC,EAAe,GAC/D,MAAMxE,EAAmB,GACzB,IAAK,IAAIT,EAAI+E,EAAO/E,GAAKgF,EAAKhF,GAAKiF,EACjCxE,EAAOC,KAAKV,GAEd,OAAOS,CACT,yBAQsBjC,EAAa0G,EAAmB,GACpD,MAAMC,EAAStE,KAAKuE,IAAI,GAAIF,GAC5B,OAAOrE,KAAKwE,MAAM7G,EAAM2G,GAAUA,CACpC,uBI8CE9D,EACAY,EACAkB,GAEA,MAAMhB,EAAOF,EAAK/C,MAAM,KACxB,IAAIoG,EAA+BjE,EAEnC,IAAK,IAAIrB,EAAI,EAAGA,EAAImC,EAAKxC,OAAS,EAAGK,IAAK,CACxC,MAAM4B,EAAMO,EAAKnC,GACI,OAAjBsF,EAAQ1D,SAAkCQ,IAAjBkD,EAAQ1D,KACnC0D,EAAQ1D,GAAO,IAEjB0D,EAAUA,EAAQ1D,EACnB,CAGD,OADA0D,EAAQnD,EAAKA,EAAKxC,OAAS,IAAMwD,EAC1B9B,CACT,kBF3CM,SAAqBd,GACzB,MAAMgF,EAAS,IAAIhF,GACnB,IAAK,IAAIP,EAAIuF,EAAO5F,OAAS,EAAGK,EAAI,EAAGA,IAAK,CAC1C,MAAMwF,EAAI3E,KAAKgE,MAAMhE,KAAKiE,UAAY9E,EAAI,KACzCuF,EAAOvF,GAAIuF,EAAOC,IAAM,CAACD,EAAOC,GAAID,EAAOvF,GAC7C,CACD,OAAOuF,CACT,uBAzCM,SAA0BhF,GAC9B,MAAO,IAAI,IAAIkF,IAAIlF,GACrB,uBD6EM,SAAuB/B,GAC3B,GAAIA,EAAK,CACP,MAAOkH,EAASC,GAAWhH,OAAOH,GAAKU,MAAM,KAC7C,IAAI0G,EAAMF,EAAQxB,QAAQ,mBAAoB,OAO9C,OANIyB,IACFC,GACEC,OAAOF,GAAW,EACd,GAAGG,WAAW,KAAKH,OAAazB,QAAQ,MAAO,KAC/C,IAED0B,CACR,CACD,OAAOjH,OAAOH,GAAO,KAAK0F,QAAQ,mBAAoB,MACxD,2BAOgB,SAAiB1F,EAAsBuH,GACrD,GAAIvH,EAAK,CAEP,MAAME,EAASH,EAAQsH,OAAOrH,GAAMuH,GAAS,IACtCL,EAASC,GAAWjH,EAAOQ,MAAM,KACxC,IAAI0G,EAAMF,EAAQxB,QAAQ,mBAAoB,OAI9C,OAHIyB,IACFC,GAAO,IAAID,KAENC,CACR,CACD,OAAOjH,OAAOH,GAAO,QAAQ0F,QAAQ,mBAAoB,MAC3D,mBElGgB,SACdpD,EACAkF,GAEA,IAAIC,EACJ,MAAO,IAAIhF,KACJgF,IACHnF,KAAQG,GACRgF,GAAa,EACb9E,WAAW,IAAO8E,GAAa,EAAQD,IAG7C,sBF5BM,SAAsB5F,GAC1B,OAAOA,EAAI8D,QAAQ,eAAgB,CAACgC,EAAGC,IAAOA,EAAIA,EAAE7F,cAAgB,GACtE,mCCWgB,SACdC,EACA6F,GAEA,GAAIA,IAAS7F,aAAA,EAAAA,EAAKZ,QAAQ,CACxB,MAAM8B,EAAM,IAAI4E,IAChB,OAAO9F,EAAI+F,OAAY,CAACC,EAAKC,KAC3B,MAAMC,EAAYL,EAAQI,EAAIJ,GAASM,KAAKC,UAAUH,GAKtD,OAJK/E,EAAImF,IAAIH,KACXhF,EAAIoF,IAAIJ,GAAW,GACnBF,EAAI7F,KAAK8F,IAEJD,GACN,GACJ,CACC,MAAO,IAAI,IAAId,IAAIlF,GAEvB"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function t(t){return[...new Set(t)]}function e(t,e){if(e&&(null==t?void 0:t.length)){const n=new Map;return t.reduce((t,r)=>{const o=e?r[e]:JSON.stringify(r);return n.has(o)||(n.set(o,!0),t.push(r)),t},[])}return[...new Set(t)]}function n(t){const e=[...t];for(let t=e.length-1;t>0;t--){const n=Math.floor(Math.random()*(t+1));[e[t],e[n]]=[e[n],e[t]]}return e}function r(t,e){const n=[];for(let r=0;r<t.length;r+=e)n.push(t.slice(r,r+e));return n}function o(t){if(null===t||"object"!=typeof t)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof Array)return t.map(t=>o(t));if("object"==typeof t){const e={};for(const n in t)t.hasOwnProperty(n)&&(e[n]=o(t[n]));return e}return t}function
|
|
1
|
+
function t(t){return[...new Set(t)]}function e(t,e){if(e&&(null==t?void 0:t.length)){const n=new Map;return t.reduce((t,r)=>{const o=e?r[e]:JSON.stringify(r);return n.has(o)||(n.set(o,!0),t.push(r)),t},[])}return[...new Set(t)]}function n(t){const e=[...t];for(let t=e.length-1;t>0;t--){const n=Math.floor(Math.random()*(t+1));[e[t],e[n]]=[e[n],e[t]]}return e}function r(t,e){const n=[];for(let r=0;r<t.length;r+=e)n.push(t.slice(r,r+e));return n}function o(t){if(null===t||"object"!=typeof t)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof Array)return t.map(t=>o(t));if("object"==typeof t){const e={};for(const n in t)t.hasOwnProperty(n)&&(e[n]=o(t[n]));return e}return t}function i(t,...e){return Object.assign({},t,...e)}function u(t,e,n){const r=e.split(".");let o=t;for(const t of r){if(null==o)return n;o=o[t]}return void 0===o?n:o}function l(t,e,n){const r=e.split(".");let o=t;for(let t=0;t<r.length-1;t++){const e=r[t];null!==o[e]&&void 0!==o[e]||(o[e]={}),o=o[e]}return o[r[r.length-1]]=n,t}function c(t){if(null===t||"object"!=typeof t)return!1;const e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}function s(t,e){return t&&Object.prototype.hasOwnProperty.call(t,e)}function f(t,e,n=1){const r=[];for(let o=t;o<=e;o+=n)r.push(o);return r}function a(t,e=0){const n=Math.pow(10,e);return Math.round(t*n)/n}function p(t,e,n){return Math.min(Math.max(t,e),n)}function d(t,e=0){let n=String(t),r=n.startsWith("-");if(r&&(n=n.slice(1)),n.includes("e")||n.includes("E")){const[t,e]=n.split(/[eE]/);let r=parseInt(e),[o,i]=t.split(".");i=i||"",n=r>=0?o+i.padEnd(r,"0"):"0."+"0".repeat(-r-1)+o+i}let[o,i]=n.split(".");if(i=i||"",e<0&&(e=0),i.length>e){let t=parseInt(i[e]),n=i.slice(0,e);if(t>=5){let t=1;const e=n.split("");for(let n=e.length-1;n>=0&&t>0;n--){let r=parseInt(e[n])+t;10===r?(e[n]="0",t=1):(e[n]=r.toString(),t=0)}n=e.join(""),t>0&&(o=(parseInt(o)+1).toString())}i=n}else i=i.padEnd(e,"0");return 0===e?(r?"-":"")+o:(r?"-":"")+o+"."+i}function g(t){return t.replace(/[-_\s]+(.)?/g,(t,e)=>e?e.toUpperCase():"")}function h(t){return t?t.charAt(0).toUpperCase()+t.slice(1):t}function m(t){const e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let n="";for(let r=0;r<t;r++)n+=e.charAt(Math.floor(62*Math.random()));return n}function S(t){return t&&"undefined"!==t&&"null"!==t?t:""}function $(t){let e=0;for(let n=0;n<t.length;n++)t.charCodeAt(n)>127||94===t.charCodeAt(n)?e+=2:e+=1;return e}function b(t,e){let n="undefined"!=typeof document?document.createElement("canvas"):null;const r=n.getContext("2d");r.font=e||'600 14px / 22px -apple-system, "system-ui", "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"';return n=null,r.measureText(t).width}function v(t){if(t){const[e,n]=String(t).split(".");let r=e.replace(/\d(?=(\d{3})+$)/g,"$&,");return n&&(r+=Number(n)>0?`${parseFloat(`0.${n}`)}`.replace(/0\./,"."):""),r}return String(t||"0").replace(/\d(?=(\d{3})+$)/g,"$&,")}function y(t,e){if(t){const n=d(Number(t),e||2),[r,o]=n.split(".");let i=r.replace(/\d(?=(\d{3})+$)/g,"$&,");return o&&(i+=`.${o}`),i}return String(t||"0.00").replace(/\d(?=(\d{3})+$)/g,"$&,")}function j(t,e){let n;return(...r)=>{clearTimeout(n),n=setTimeout(()=>t(...r),e)}}function w(t,e){let n;return(...r)=>{n||(t(...r),n=!0,setTimeout(()=>n=!1,e))}}function M(t){return new Promise(e=>setTimeout(e,t))}const O=t=>{var e,n,r;try{if(t&&String(t).indexOf(",")>-1){const o=String(t).split(",");if(!o[4])return null;const i=o[5],u=i.substring(0,4),l=i.substring(4,6),c=i.substring(6),s=null===(e=o[2])||void 0===e?void 0:e.replace(/^ | $/,""),f=o[3],a=null===(n=o[4])||void 0===n?void 0:n.replace(/^ | $/,""),p=`${u}-${l}-${c}`;return{invoiceCode:s,invoiceNumber:f,invoiceDate:p,optionField:o[6]?null===(r=o[6])||void 0===r?void 0:r.replace(/^ | $/,""):"",taxFreeAmount:a}}}catch(t){console.error("scan:",t)}return null};export{h as capitalize,r as chunk,p as clamp,j as debounce,o as deepClone,M as delay,u as get,$ as getFontLength,b as getFontWidth,s as hasOwnProperty,c as isPlainObject,i as merge,O as parseQrcode,S as parseStrEmpty,m as randomString,f as range,a as round,l as set,n as shuffle,t as simpleUnique,v as thousandSign,y as thousandSignZero,w as throttle,g as toCamelCase,d as toFixed,e as unique};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/arrays/arrayUtils.ts","../src/objects/objectUtils.ts","../src/numbers/numberUtils.ts","../src/strings/stringUtils.ts","../src/utils/utilFunctions.ts"],"sourcesContent":[null,null,null,null,null],"names":["simpleUnique","arr","Set","unique","field","length","map","Map","reduce","res","cur","uniqueKey","JSON","stringify","has","set","push","shuffle","newArr","i","j","Math","floor","random","chunk","size","result","slice","deepClone","obj","Date","getTime","Array","item","clonedObj","key","hasOwnProperty","merge","target","sources","Object","assign","get","path","defaultValue","keys","split","undefined","value","current","isPlainObject","proto","getPrototypeOf","prototype","range","start","end","step","round","num","decimals","factor","pow","clamp","min","max","toFixed","digits","numStr","String","isNegative","startsWith","includes","base","exponent","exp","parseInt","intPart","decPart","padEnd","repeat","integerPart","decimalPart","roundDigit","newDecimalPart","carry","newDecimalArray","digit","toString","join","toCamelCase","
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/arrays/arrayUtils.ts","../src/objects/objectUtils.ts","../src/numbers/numberUtils.ts","../src/strings/stringUtils.ts","../src/utils/utilFunctions.ts","../src/business/parseQrcode.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["simpleUnique","arr","Set","unique","field","length","map","Map","reduce","res","cur","uniqueKey","JSON","stringify","has","set","push","shuffle","newArr","i","j","Math","floor","random","chunk","size","result","slice","deepClone","obj","Date","getTime","Array","item","clonedObj","key","hasOwnProperty","merge","target","sources","Object","assign","get","path","defaultValue","keys","split","undefined","value","current","isPlainObject","proto","getPrototypeOf","prototype","str","call","range","start","end","step","round","num","decimals","factor","pow","clamp","min","max","toFixed","digits","numStr","String","isNegative","startsWith","includes","base","exponent","exp","parseInt","intPart","decPart","padEnd","repeat","integerPart","decimalPart","roundDigit","newDecimalPart","carry","newDecimalArray","digit","toString","join","toCamelCase","replace","_","c","toUpperCase","capitalize","charAt","randomString","chars","parseStrEmpty","getFontLength","len","charCodeAt","getFontWidth","fontStyle","canvas","document","createElement","ctx","getContext","font","measureText","width","thousandSign","integer","decimal","ret","Number","parseFloat","thousandSignZero","fixed","debounce","func","wait","timeoutId","args","clearTimeout","setTimeout","throttle","limit","inThrottle","delay","ms","Promise","resolve","parseQrcode","indexOf","fpInfo","kpTime","kpYear","substring","kpMonth","kpDay","invoiceCode","_a","invoiceNumber","taxFreeAmount","_b","invoiceDate","optionField","_c","err","console","error"],"mappings":"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"}
|
|
@@ -38,6 +38,5 @@ export declare function isPlainObject(value: any): value is object;
|
|
|
38
38
|
* @param {object} obj 带检测对象
|
|
39
39
|
* @param {string} str 属性名称
|
|
40
40
|
*/
|
|
41
|
-
declare
|
|
42
|
-
export default _default;
|
|
41
|
+
export declare function hasOwnProperty(obj: object, str: string): boolean;
|
|
43
42
|
//# sourceMappingURL=objectUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"objectUtils.d.ts","sourceRoot":"","sources":["../../src/objects/objectUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAwBtC;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAEvE;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,CAYnE;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/C,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,CAAC,CAcH;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,CASzD;AAED;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"objectUtils.d.ts","sourceRoot":"","sources":["../../src/objects/objectUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAwBtC;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAEvE;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,CAYnE;AAED;;;;;;GAMG;AACH,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/C,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,CAAC,CAcH;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,CASzD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,WAEtD"}
|
package/docs/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
**Function - TypeScript 工具函数库 v1.0.
|
|
1
|
+
**Function - TypeScript 工具函数库 v1.0.2**
|
|
2
2
|
|
|
3
3
|
***
|
|
4
4
|
|
|
5
|
-
# Function - TypeScript 工具函数库 v1.0.
|
|
5
|
+
# Function - TypeScript 工具函数库 v1.0.2
|
|
6
6
|
|
|
7
7
|
## Functions
|
|
8
8
|
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
- [unique](functions/unique.md)
|
|
11
11
|
- [shuffle](functions/shuffle.md)
|
|
12
12
|
- [chunk](functions/chunk.md)
|
|
13
|
+
- [parseQrcode](functions/parseQrcode.md)
|
|
13
14
|
- [range](functions/range.md)
|
|
14
15
|
- [round](functions/round.md)
|
|
15
16
|
- [clamp](functions/clamp.md)
|
|
@@ -19,6 +20,7 @@
|
|
|
19
20
|
- [get](functions/get.md)
|
|
20
21
|
- [set](functions/set.md)
|
|
21
22
|
- [isPlainObject](functions/isPlainObject.md)
|
|
23
|
+
- [hasOwnProperty](functions/hasOwnProperty.md)
|
|
22
24
|
- [toCamelCase](functions/toCamelCase.md)
|
|
23
25
|
- [capitalize](functions/capitalize.md)
|
|
24
26
|
- [randomString](functions/randomString.md)
|
package/docs/functions/chunk.md
CHANGED
package/docs/functions/clamp.md
CHANGED
package/docs/functions/delay.md
CHANGED
package/docs/functions/get.md
CHANGED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
[**Function - TypeScript 工具函数库 v1.0.2**](../README.md)
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
[Function - TypeScript 工具函数库](../README.md) / hasOwnProperty
|
|
6
|
+
|
|
7
|
+
# Function: hasOwnProperty()
|
|
8
|
+
|
|
9
|
+
> **hasOwnProperty**(`obj`, `str`): `boolean`
|
|
10
|
+
|
|
11
|
+
Defined in: objects/objectUtils.ts:111
|
|
12
|
+
|
|
13
|
+
## Parameters
|
|
14
|
+
|
|
15
|
+
### obj
|
|
16
|
+
|
|
17
|
+
`object`
|
|
18
|
+
|
|
19
|
+
带检测对象
|
|
20
|
+
|
|
21
|
+
### str
|
|
22
|
+
|
|
23
|
+
`string`
|
|
24
|
+
|
|
25
|
+
属性名称
|
|
26
|
+
|
|
27
|
+
## Returns
|
|
28
|
+
|
|
29
|
+
`boolean`
|
|
30
|
+
|
|
31
|
+
## Description
|
|
32
|
+
|
|
33
|
+
检测对象是否存在指定属性
|
package/docs/functions/merge.md
CHANGED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
[**Function - TypeScript 工具函数库 v1.0.2**](../README.md)
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
[Function - TypeScript 工具函数库](../README.md) / parseQrcode
|
|
6
|
+
|
|
7
|
+
# Function: parseQrcode()
|
|
8
|
+
|
|
9
|
+
> **parseQrcode**(`str`): \{ `invoiceCode`: `string`; `invoiceNumber`: `string`; `invoiceDate`: `string`; `optionField`: `string`; `taxFreeAmount`: `string`; \} \| `null`
|
|
10
|
+
|
|
11
|
+
Defined in: business/parseQrcode.ts:22
|
|
12
|
+
|
|
13
|
+
## Parameters
|
|
14
|
+
|
|
15
|
+
### str
|
|
16
|
+
|
|
17
|
+
`string`
|
|
18
|
+
|
|
19
|
+
二维码字符串
|
|
20
|
+
|
|
21
|
+
## Returns
|
|
22
|
+
|
|
23
|
+
\{ `invoiceCode`: `string`; `invoiceNumber`: `string`; `invoiceDate`: `string`; `optionField`: `string`; `taxFreeAmount`: `string`; \}
|
|
24
|
+
|
|
25
|
+
### invoiceCode
|
|
26
|
+
|
|
27
|
+
> **invoiceCode**: `string`
|
|
28
|
+
|
|
29
|
+
发票代码
|
|
30
|
+
|
|
31
|
+
### invoiceNumber
|
|
32
|
+
|
|
33
|
+
> **invoiceNumber**: `string`
|
|
34
|
+
|
|
35
|
+
发票号码
|
|
36
|
+
|
|
37
|
+
### invoiceDate
|
|
38
|
+
|
|
39
|
+
> **invoiceDate**: `string`
|
|
40
|
+
|
|
41
|
+
开票日期
|
|
42
|
+
|
|
43
|
+
### optionField
|
|
44
|
+
|
|
45
|
+
> **optionField**: `string`
|
|
46
|
+
|
|
47
|
+
校验码
|
|
48
|
+
|
|
49
|
+
### taxFreeAmount
|
|
50
|
+
|
|
51
|
+
> **taxFreeAmount**: `string`
|
|
52
|
+
|
|
53
|
+
不含税金额
|
|
54
|
+
|
|
55
|
+
`null`
|
|
56
|
+
|
|
57
|
+
解析后的 发票代码、发票号码、开票日期、校验码、不含税金额
|
|
58
|
+
|
|
59
|
+
## Description
|
|
60
|
+
|
|
61
|
+
税局生成的PDF/OFD版式文件中,左上角二维码扫描之后是一串有规则数字,现整理规则如下:
|
|
62
|
+
|
|
63
|
+
## Example
|
package/docs/functions/range.md
CHANGED
package/docs/functions/round.md
CHANGED
package/docs/functions/set.md
CHANGED
package/docs/functions/unique.md
CHANGED
package/package.json
CHANGED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
// 规则:税局生成的PDF/OFD版式文件中,左上角二维码扫描之后是一串有规则数字,现整理规则如下:
|
|
2
|
+
|
|
3
|
+
// 第一项 01
|
|
4
|
+
// 第二项:发票种类代码,31-数电专票、32-数电普票、03-数电机动车销售统一发票(纸票)、33数电机动车发票(电子)
|
|
5
|
+
|
|
6
|
+
// 第三项:发票代码(数电电票时无)
|
|
7
|
+
// 第四项:发票号码 (数电电票时为20位数电票号码,数电纸票时为8位号码)
|
|
8
|
+
// 第五项:开票金额—数电电票取含税金额,数电纸票取不含税金额(精确到两位小数)
|
|
9
|
+
// 第六项:开票日期,格式为YYYYMMDD
|
|
10
|
+
// 第七项:空
|
|
11
|
+
// 第八项:产生的机密信息(随机码,按固定算法计算)
|
|
12
|
+
/**
|
|
13
|
+
* @description 税局生成的PDF/OFD版式文件中,左上角二维码扫描之后是一串有规则数字,现整理规则如下:
|
|
14
|
+
* @param str 二维码字符串
|
|
15
|
+
* @returns 解析后的 发票代码、发票号码、开票日期、校验码、不含税金额
|
|
16
|
+
* @example ```
|
|
17
|
+
* import {parseQrcode} from '@syzlm/function;'
|
|
18
|
+
* const invoiceInfo = parseQrcode('01,10,033002200111,46492869,330.09,20220602,53243853171194973439,E247,')
|
|
19
|
+
* console.log(invoiceInfo);// {invoiceCode:'033002200111',invoiceNumber:'46492869',invoiceDate:'20220602',taxFreeAmount:'330.09',optionField:'53243853171194973439'}
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export const parseQrcode = (
|
|
23
|
+
str: string
|
|
24
|
+
): {
|
|
25
|
+
/**
|
|
26
|
+
* 发票代码
|
|
27
|
+
*/
|
|
28
|
+
invoiceCode: string;
|
|
29
|
+
/**
|
|
30
|
+
* 发票号码
|
|
31
|
+
*/
|
|
32
|
+
invoiceNumber: string;
|
|
33
|
+
/**
|
|
34
|
+
* 开票日期
|
|
35
|
+
*/
|
|
36
|
+
invoiceDate: string;
|
|
37
|
+
/**
|
|
38
|
+
* 校验码
|
|
39
|
+
*/
|
|
40
|
+
optionField: string;
|
|
41
|
+
/**
|
|
42
|
+
* 不含税金额
|
|
43
|
+
*/
|
|
44
|
+
taxFreeAmount: string;
|
|
45
|
+
} | null => {
|
|
46
|
+
try {
|
|
47
|
+
if (str && String(str).indexOf(',') > -1) {
|
|
48
|
+
const fpInfo = String(str).split(',');
|
|
49
|
+
if (!fpInfo[4]) {
|
|
50
|
+
// 缺少检验字段二维码不合格
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
const kpTime = fpInfo[5];
|
|
54
|
+
const kpYear = kpTime.substring(0, 4);
|
|
55
|
+
const kpMonth = kpTime.substring(4, 6);
|
|
56
|
+
const kpDay = kpTime.substring(6);
|
|
57
|
+
// 发票代码
|
|
58
|
+
const invoiceCode = fpInfo[2]?.replace(/^ | $/, '');
|
|
59
|
+
// 发票号码
|
|
60
|
+
const invoiceNumber = fpInfo[3];
|
|
61
|
+
// 不含税金额合计
|
|
62
|
+
const taxFreeAmount = fpInfo[4]?.replace(/^ | $/, '');
|
|
63
|
+
// 开票日期
|
|
64
|
+
const invoiceDate = `${kpYear}-${kpMonth}-${kpDay}`;
|
|
65
|
+
// 发票校验字段
|
|
66
|
+
const optionField = fpInfo[6] ? fpInfo[6]?.replace(/^ | $/, '') : '';
|
|
67
|
+
return {
|
|
68
|
+
invoiceCode,
|
|
69
|
+
invoiceNumber,
|
|
70
|
+
invoiceDate,
|
|
71
|
+
optionField,
|
|
72
|
+
taxFreeAmount,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
} catch (err) {
|
|
76
|
+
console.error('scan:', err);
|
|
77
|
+
}
|
|
78
|
+
return null;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export default parseQrcode;
|
package/src/index.ts
CHANGED
|
@@ -108,5 +108,6 @@ export function isPlainObject(value: any): value is object {
|
|
|
108
108
|
* @param {object} obj 带检测对象
|
|
109
109
|
* @param {string} str 属性名称
|
|
110
110
|
*/
|
|
111
|
-
export
|
|
112
|
-
obj && Object.prototype.hasOwnProperty.call(obj, str);
|
|
111
|
+
export function hasOwnProperty(obj: object, str: string) {
|
|
112
|
+
return obj && Object.prototype.hasOwnProperty.call(obj, str);
|
|
113
|
+
}
|