@equt/clis 0.1.11 → 0.1.13
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms-parse.d.ts","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"sms-parse.d.ts","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA8HxC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+CvD"}
|
|
@@ -2,10 +2,18 @@ import fs from 'node:fs';
|
|
|
2
2
|
import process from 'node:process';
|
|
3
3
|
import { TZDate } from '@date-fns/tz';
|
|
4
4
|
import { format } from 'date-fns';
|
|
5
|
+
const ACCOUNT_IDS = {
|
|
6
|
+
'BOC 9288': '2284724d-dd75-8006-a50e-c5b65864a107',
|
|
7
|
+
'BOC 9849': '22c4724d-dd75-8063-bbcf-cfb8b7feb66d',
|
|
8
|
+
'BOC 6849': '22e4724d-dd75-80e4-877a-c4ef57533d61',
|
|
9
|
+
'SPDB 6587': '31c4724d-dd75-8175-95e0-dc6d53249db0',
|
|
10
|
+
'BOSC 5571': '2f24724d-dd75-8080-aa02-d75cde885841',
|
|
11
|
+
};
|
|
5
12
|
const RE_BOC = /信用卡(\d+)于[^在]+在([^消]+)消费(RMB|USD|JPY|人民币)([0-9,]+(?:\.\d+)?)元/;
|
|
6
13
|
const RE_SPDB = /转入([0-9,]+(?:\.\d+)?)元\[(工资|其他代发)\]/;
|
|
7
14
|
const RE_CMB = /您账户(\d+)于[^信]+信用卡还款交易人民币([0-9,]+(?:\.\d+)?)/;
|
|
8
15
|
const RE_BOS = /本期贷款已足额归还,当期还款本息合计([0-9,]+(?:\.\d+)?)元/;
|
|
16
|
+
const RE_BOS_DEBIT = /您尾号(\d+)的借记卡于(\d+)月(\d+)日(\d+)时(\d+)分转出([0-9,]+(?:\.\d+)?)元/;
|
|
9
17
|
const RE_COMMA = /,/g;
|
|
10
18
|
function toLocalISOString(createdAt) {
|
|
11
19
|
const tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
@@ -25,9 +33,11 @@ function parse95566(text, createdAt) {
|
|
|
25
33
|
const m = RE_BOC.exec(text);
|
|
26
34
|
if (!m)
|
|
27
35
|
return null;
|
|
36
|
+
const account = `BOC ${m[1]}`;
|
|
28
37
|
return {
|
|
29
38
|
date: toLocalISOString(createdAt),
|
|
30
|
-
account
|
|
39
|
+
account,
|
|
40
|
+
accountId: ACCOUNT_IDS[account],
|
|
31
41
|
currency: normalizeCurrency(m[3]),
|
|
32
42
|
amount: parseAmount(m[4]),
|
|
33
43
|
type: 'Credit',
|
|
@@ -41,6 +51,7 @@ function parse95528(text, createdAt) {
|
|
|
41
51
|
return {
|
|
42
52
|
date: toLocalISOString(createdAt),
|
|
43
53
|
account: 'SPDB 6587',
|
|
54
|
+
accountId: ACCOUNT_IDS['SPDB 6587'],
|
|
44
55
|
currency: 'CNY',
|
|
45
56
|
amount: parseAmount(m[1]),
|
|
46
57
|
type: 'Debit',
|
|
@@ -61,15 +72,35 @@ function parse95555(text, createdAt) {
|
|
|
61
72
|
}
|
|
62
73
|
function parse95594(text, createdAt) {
|
|
63
74
|
const m = RE_BOS.exec(text);
|
|
64
|
-
if (
|
|
65
|
-
return
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
75
|
+
if (m) {
|
|
76
|
+
return {
|
|
77
|
+
date: toLocalISOString(createdAt),
|
|
78
|
+
account: 'BOSC 5571',
|
|
79
|
+
accountId: ACCOUNT_IDS['BOSC 5571'],
|
|
80
|
+
currency: 'CNY',
|
|
81
|
+
amount: parseAmount(m[1]),
|
|
82
|
+
type: 'Debit',
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
const md = RE_BOS_DEBIT.exec(text);
|
|
86
|
+
if (md) {
|
|
87
|
+
const account = `BOSC ${md[1]}`;
|
|
88
|
+
const year = new TZDate(createdAt, 'Asia/Shanghai').getFullYear();
|
|
89
|
+
const month = md[2].padStart(2, '0');
|
|
90
|
+
const day = md[3].padStart(2, '0');
|
|
91
|
+
const hour = md[4].padStart(2, '0');
|
|
92
|
+
const minute = md[5].padStart(2, '0');
|
|
93
|
+
const date = format(new TZDate(`${year}-${month}-${day}T${hour}:${minute}:00`, 'Asia/Shanghai'), 'yyyy-MM-dd\'T\'HH:mm:ss.SSSxxx');
|
|
94
|
+
return {
|
|
95
|
+
date,
|
|
96
|
+
account,
|
|
97
|
+
accountId: ACCOUNT_IDS[account],
|
|
98
|
+
currency: 'CNY',
|
|
99
|
+
amount: parseAmount(md[6]),
|
|
100
|
+
type: 'Credit',
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
return null;
|
|
73
104
|
}
|
|
74
105
|
export function registerSmsParse(program) {
|
|
75
106
|
program
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms-parse.js","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"sms-parse.js","sourceRoot":"","sources":["../../../src/bookkeeping/commands/sms-parse.ts"],"names":[],"mappings":"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"}
|