zcw-shared 2.8.0 → 2.10.0
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/functions/file/getIconfontNameByExtension.js +8 -8
- package/dist/functions/file/getIconfontNameByExtension.js.map +1 -1
- package/package.json +1 -1
- package/types/im-api.d.ts +7 -3
- package/types/im-chat.d.ts +7 -5
- package/dist/functions/api/auth.d.ts +0 -14
- package/dist/functions/api/auth.js +0 -109
- package/dist/functions/api/auth.js.map +0 -1
- package/dist/functions/api/schemas/auth.schema.d.ts +0 -363
- package/dist/functions/api/schemas/auth.schema.js +0 -39
- package/dist/functions/api/schemas/auth.schema.js.map +0 -1
- package/dist/functions/api/schemas/video.schema.d.ts +0 -391
- package/dist/functions/api/schemas/video.schema.js +0 -55
- package/dist/functions/api/schemas/video.schema.js.map +0 -1
- package/dist/functions/api/video.d.ts +0 -62
- package/dist/functions/api/video.js +0 -243
- package/dist/functions/api/video.js.map +0 -1
- package/dist/functions/oss/uploadViaSignedPut.d.ts +0 -35
- package/dist/functions/oss/uploadViaSignedPut.js +0 -86
- package/dist/functions/oss/uploadViaSignedPut.js.map +0 -1
- package/dist/functions/software/publishToPgyer.d.ts +0 -16
- package/dist/functions/software/publishToPgyer.js +0 -96
- package/dist/functions/software/publishToPgyer.js.map +0 -1
- package/dist/functions/validation/generateFakeBankCard.d.ts +0 -87
- package/dist/functions/validation/generateFakeBankCard.js +0 -152
- package/dist/functions/validation/generateFakeBankCard.js.map +0 -1
- package/dist/functions/validation/generateFakeBusinessLicense.d.ts +0 -21
- package/dist/functions/validation/generateFakeBusinessLicense.js +0 -160
- package/dist/functions/validation/generateFakeBusinessLicense.js.map +0 -1
- package/dist/functions/validation/generateFakeDrivingLicense.d.ts +0 -31
- package/dist/functions/validation/generateFakeDrivingLicense.js +0 -119
- package/dist/functions/validation/generateFakeDrivingLicense.js.map +0 -1
- package/dist/functions/validation/generateFakeIdCard.d.ts +0 -30
- package/dist/functions/validation/generateFakeIdCard.js +0 -123
- package/dist/functions/validation/generateFakeIdCard.js.map +0 -1
- package/dist/functions/validation/generateFakeLicensePlate.d.ts +0 -13
- package/dist/functions/validation/generateFakeLicensePlate.js +0 -87
- package/dist/functions/validation/generateFakeLicensePlate.js.map +0 -1
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
const BANKS = [
|
|
2
|
-
{ name: '中国建设银行', shortName: 'CCB', tagline: '建设现代生活' },
|
|
3
|
-
{ name: '中国工商银行', shortName: 'ICBC', tagline: '让金融更贴近你' },
|
|
4
|
-
{ name: '招商银行', shortName: 'CMB', tagline: '因您而变' },
|
|
5
|
-
{ name: '中国农业银行', shortName: 'ABC', tagline: '服务三农,立足城乡' },
|
|
6
|
-
{ name: '中国银行', shortName: 'BOC', tagline: '跨越百年,与您同行' },
|
|
7
|
-
{ name: '交通银行', shortName: 'BOCOM', tagline: '财富流动的力量' },
|
|
8
|
-
{ name: '兴业银行', shortName: 'CIB', tagline: '真诚 服务 永恒' }
|
|
9
|
-
];
|
|
10
|
-
const BRAND_PREFIXES = {
|
|
11
|
-
UnionPay: ['62'],
|
|
12
|
-
VISA: ['4'],
|
|
13
|
-
Mastercard: ['51', '52', '53', '54', '55'],
|
|
14
|
-
JCB: ['3528', '3530', '3589'],
|
|
15
|
-
AMEX: ['34', '37']
|
|
16
|
-
};
|
|
17
|
-
const CARD_TYPES = ['金卡', '白金卡', '钻石卡', '经典卡'];
|
|
18
|
-
const CHIP_STYLES = ['classic', 'minimal'];
|
|
19
|
-
const THEMES = {
|
|
20
|
-
sapphire: {
|
|
21
|
-
name: '蓝宝石',
|
|
22
|
-
baseColor: '#0b1f44',
|
|
23
|
-
accentColor: '#7dd3fc',
|
|
24
|
-
gradient: ['#0b3d91', '#051937'],
|
|
25
|
-
patternColor: 'rgba(255, 255, 255, 0.08)',
|
|
26
|
-
textColor: '#f4f8ff',
|
|
27
|
-
secondaryTextColor: 'rgba(244, 248, 255, 0.8)'
|
|
28
|
-
},
|
|
29
|
-
jade: {
|
|
30
|
-
name: '翡翠绿',
|
|
31
|
-
baseColor: '#064e3b',
|
|
32
|
-
accentColor: '#a7f3d0',
|
|
33
|
-
gradient: ['#0f9d58', '#0c5c3c'],
|
|
34
|
-
patternColor: 'rgba(255, 255, 255, 0.1)',
|
|
35
|
-
textColor: '#ecfdf5',
|
|
36
|
-
secondaryTextColor: 'rgba(236, 253, 245, 0.85)'
|
|
37
|
-
},
|
|
38
|
-
ember: {
|
|
39
|
-
name: '赤焰金',
|
|
40
|
-
baseColor: '#7c2d12',
|
|
41
|
-
accentColor: '#fde68a',
|
|
42
|
-
gradient: ['#f97316', '#b45309'],
|
|
43
|
-
patternColor: 'rgba(255, 255, 255, 0.12)',
|
|
44
|
-
textColor: '#fff7ed',
|
|
45
|
-
secondaryTextColor: 'rgba(255, 247, 237, 0.8)'
|
|
46
|
-
},
|
|
47
|
-
carbon: {
|
|
48
|
-
name: '碳纤黑',
|
|
49
|
-
baseColor: '#0f172a',
|
|
50
|
-
accentColor: '#facc15',
|
|
51
|
-
gradient: ['#1f2937', '#0f172a'],
|
|
52
|
-
patternColor: 'rgba(250, 204, 21, 0.08)',
|
|
53
|
-
textColor: '#f8fafc',
|
|
54
|
-
secondaryTextColor: 'rgba(248, 250, 252, 0.75)'
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
const HOLDER_SURNAMES = ['李', '王', '张', '刘', '陈', '杨', '赵', '黄', '周', '吴'];
|
|
58
|
-
const HOLDER_GIVEN = ['伟', '芳', '娜', '敏', '静', '丽', '强', '磊', '军', '涛', '鹏', '杰', '秀英', '霞', '平'];
|
|
59
|
-
function randomInt(min, max) {
|
|
60
|
-
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
61
|
-
}
|
|
62
|
-
function pickOne(items) {
|
|
63
|
-
return items[randomInt(0, items.length - 1)];
|
|
64
|
-
}
|
|
65
|
-
function formatCardNumber(cardNumber) {
|
|
66
|
-
const sanitized = cardNumber.replace(/\D/g, '');
|
|
67
|
-
return sanitized.replace(/(.{4})/g, '$1 ').trim();
|
|
68
|
-
}
|
|
69
|
-
function calcLuhnCheckDigit(payload) {
|
|
70
|
-
let sum = 0;
|
|
71
|
-
const reversed = payload.split('').reverse();
|
|
72
|
-
for (let i = 0; i < reversed.length; i++) {
|
|
73
|
-
let digit = parseInt(reversed[i], 10);
|
|
74
|
-
if (i % 2 === 0) {
|
|
75
|
-
digit *= 2;
|
|
76
|
-
if (digit > 9)
|
|
77
|
-
digit -= 9;
|
|
78
|
-
}
|
|
79
|
-
sum += digit;
|
|
80
|
-
}
|
|
81
|
-
return (10 - (sum % 10)) % 10;
|
|
82
|
-
}
|
|
83
|
-
function generateCardNumberForBrand(brand, desiredLength) {
|
|
84
|
-
const prefixes = BRAND_PREFIXES[brand];
|
|
85
|
-
const prefix = prefixes[randomInt(0, prefixes.length - 1)];
|
|
86
|
-
const remaining = desiredLength - prefix.length - 1;
|
|
87
|
-
let payload = prefix;
|
|
88
|
-
for (let i = 0; i < remaining; i++) {
|
|
89
|
-
payload += randomInt(0, 9).toString();
|
|
90
|
-
}
|
|
91
|
-
const checkDigit = calcLuhnCheckDigit(payload);
|
|
92
|
-
return `${payload}${checkDigit}`;
|
|
93
|
-
}
|
|
94
|
-
function clampCardLength(value) {
|
|
95
|
-
if (value < 14)
|
|
96
|
-
return 14;
|
|
97
|
-
if (value > 19)
|
|
98
|
-
return 19;
|
|
99
|
-
return value;
|
|
100
|
-
}
|
|
101
|
-
function generateRandomHolder() {
|
|
102
|
-
const surname = pickOne(HOLDER_SURNAMES);
|
|
103
|
-
const given = pickOne(HOLDER_GIVEN);
|
|
104
|
-
return `${surname}${given}`;
|
|
105
|
-
}
|
|
106
|
-
function formatValidDate(date) {
|
|
107
|
-
return `${String(date.getFullYear()).slice(-2)}/${String(date.getMonth() + 1).padStart(2, '0')}`;
|
|
108
|
-
}
|
|
109
|
-
export function generateFakeBankCard(options = {}) {
|
|
110
|
-
const bank = options.bankName
|
|
111
|
-
? BANKS.find(item => item.name === options.bankName) ?? { name: options.bankName, shortName: options.bankName.slice(0, 4).toUpperCase(), tagline: '体验未来金融' }
|
|
112
|
-
: pickOne(BANKS);
|
|
113
|
-
const cardBrand = options.brand ?? pickOne(Object.keys(BRAND_PREFIXES));
|
|
114
|
-
const cardType = options.cardType ?? pickOne(CARD_TYPES);
|
|
115
|
-
const chipStyle = pickOne(CHIP_STYLES);
|
|
116
|
-
const contactless = Math.random() > 0.4;
|
|
117
|
-
const desiredLength = clampCardLength(cardBrand === 'AMEX' ? 15 : 16);
|
|
118
|
-
const rawNumber = options.cardNumber
|
|
119
|
-
? options.cardNumber.replace(/\D/g, '')
|
|
120
|
-
: generateCardNumberForBrand(cardBrand, desiredLength);
|
|
121
|
-
const cardNumber = rawNumber.padEnd(desiredLength, '0').slice(0, desiredLength);
|
|
122
|
-
const formattedNumber = formatCardNumber(cardNumber);
|
|
123
|
-
const holderName = options.holderName ?? generateRandomHolder();
|
|
124
|
-
const issuerCode = cardNumber.slice(0, 6).padEnd(6, '0');
|
|
125
|
-
const now = new Date();
|
|
126
|
-
const startYear = now.getFullYear() - randomInt(0, 3);
|
|
127
|
-
const startMonth = randomInt(0, 11);
|
|
128
|
-
const validFrom = new Date(startYear, startMonth, 1);
|
|
129
|
-
const validYears = options.validYears ?? (cardType === '经典卡' ? 10 : 5);
|
|
130
|
-
const validThruDate = new Date(validFrom);
|
|
131
|
-
validThruDate.setFullYear(validFrom.getFullYear() + validYears);
|
|
132
|
-
validThruDate.setMonth(validFrom.getMonth());
|
|
133
|
-
const themeKey = options.theme ?? (pickOne(Object.keys(THEMES)));
|
|
134
|
-
const theme = THEMES[themeKey];
|
|
135
|
-
return {
|
|
136
|
-
bankName: bank.name,
|
|
137
|
-
bankShortName: bank.shortName,
|
|
138
|
-
cardBrand,
|
|
139
|
-
cardType,
|
|
140
|
-
holderName,
|
|
141
|
-
cardNumber,
|
|
142
|
-
formattedNumber,
|
|
143
|
-
issuerCode,
|
|
144
|
-
validFrom: formatValidDate(validFrom),
|
|
145
|
-
validThru: formatValidDate(validThruDate),
|
|
146
|
-
tagline: bank.tagline,
|
|
147
|
-
background: theme,
|
|
148
|
-
chipStyle,
|
|
149
|
-
contactless
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
//# sourceMappingURL=generateFakeBankCard.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateFakeBankCard.js","sourceRoot":"","sources":["../../../src/functions/validation/generateFakeBankCard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export interface GenerateFakeBusinessLicenseOptions {
|
|
2
|
-
companyName?: string;
|
|
3
|
-
province?: string;
|
|
4
|
-
establishDate?: string;
|
|
5
|
-
legalRepresentative?: string;
|
|
6
|
-
}
|
|
7
|
-
export interface GeneratedBusinessLicenseProfile {
|
|
8
|
-
creditCode: string;
|
|
9
|
-
companyName: string;
|
|
10
|
-
companyType: string;
|
|
11
|
-
address: string;
|
|
12
|
-
legalRepresentative: string;
|
|
13
|
-
registeredCapital: string;
|
|
14
|
-
establishDate: string;
|
|
15
|
-
businessTerm: string;
|
|
16
|
-
businessScope: string;
|
|
17
|
-
registrationAuthority: string;
|
|
18
|
-
registrationDate: string;
|
|
19
|
-
province: string;
|
|
20
|
-
}
|
|
21
|
-
export declare function generateFakeBusinessLicense(options?: GenerateFakeBusinessLicenseOptions): GeneratedBusinessLicenseProfile;
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
const COMPANY_TYPES = [
|
|
2
|
-
'有限责任公司',
|
|
3
|
-
'股份有限公司',
|
|
4
|
-
'个人独资企业',
|
|
5
|
-
'合伙企业',
|
|
6
|
-
'个体工商户',
|
|
7
|
-
'外商投资企业',
|
|
8
|
-
'其他'
|
|
9
|
-
];
|
|
10
|
-
const INDUSTRY_KEYWORDS = [
|
|
11
|
-
'科技', '信息', '网络', '软件', '电子', '通信', '贸易', '商贸', '实业',
|
|
12
|
-
'投资', '管理', '咨询', '服务', '文化', '传媒', '广告', '设计', '教育',
|
|
13
|
-
'医疗', '健康', '环保', '能源', '物流', '运输', '建筑', '装饰', '餐饮',
|
|
14
|
-
'旅游', '金融', '房地产', '制造', '加工', '销售', '零售', '批发'
|
|
15
|
-
];
|
|
16
|
-
const COMPANY_SUFFIXES = [
|
|
17
|
-
'有限公司', '股份有限公司', '有限责任公司', '集团有限公司',
|
|
18
|
-
'科技股份有限公司', '信息技术有限公司', '贸易有限公司'
|
|
19
|
-
];
|
|
20
|
-
const SURNAMES = ['张', '王', '李', '刘', '陈', '杨', '黄', '赵', '吴', '周', '徐', '孙', '马', '朱', '胡', '郭', '何', '高', '林', '罗', '郑', '梁', '谢', '宋', '唐', '许', '韩', '冯', '邓', '曹', '彭', '曾', '肖', '田', '董', '袁', '潘', '于', '蒋', '蔡', '余', '杜', '叶', '程', '苏', '魏', '吕', '丁', '任', '沈', '姚', '卢', '姜', '崔', '钟', '谭', '陆', '汪', '范', '金', '石', '廖', '贾', '夏', '韦', '付', '方', '白', '邹', '孟', '熊', '秦', '邱', '江', '尹', '薛', '闫', '段', '雷', '侯', '龙', '史', '陶', '黎', '贺', '顾', '毛', '郝', '龚', '邵', '万', '钱', '严', '覃', '武', '戴', '莫', '孔', '向', '汤'];
|
|
21
|
-
const GIVEN_NAMES = ['伟', '芳', '娜', '秀英', '敏', '静', '丽', '强', '磊', '军', '洋', '勇', '艳', '杰', '娟', '涛', '明', '超', '秀兰', '霞', '平', '刚', '桂英'];
|
|
22
|
-
const PROVINCE_CODES = {
|
|
23
|
-
'北京市': '11',
|
|
24
|
-
'天津市': '12',
|
|
25
|
-
'河北省': '13',
|
|
26
|
-
'山西省': '14',
|
|
27
|
-
'内蒙古自治区': '15',
|
|
28
|
-
'辽宁省': '21',
|
|
29
|
-
'吉林省': '22',
|
|
30
|
-
'黑龙江省': '23',
|
|
31
|
-
'上海市': '31',
|
|
32
|
-
'江苏省': '32',
|
|
33
|
-
'浙江省': '33',
|
|
34
|
-
'安徽省': '34',
|
|
35
|
-
'福建省': '35',
|
|
36
|
-
'江西省': '36',
|
|
37
|
-
'山东省': '37',
|
|
38
|
-
'河南省': '41',
|
|
39
|
-
'湖北省': '42',
|
|
40
|
-
'湖南省': '43',
|
|
41
|
-
'广东省': '44',
|
|
42
|
-
'广西壮族自治区': '45',
|
|
43
|
-
'海南省': '46',
|
|
44
|
-
'重庆市': '50',
|
|
45
|
-
'四川省': '51',
|
|
46
|
-
'贵州省': '52',
|
|
47
|
-
'云南省': '53',
|
|
48
|
-
'西藏自治区': '54',
|
|
49
|
-
'陕西省': '61',
|
|
50
|
-
'甘肃省': '62',
|
|
51
|
-
'青海省': '63',
|
|
52
|
-
'宁夏回族自治区': '64',
|
|
53
|
-
'新疆维吾尔自治区': '65'
|
|
54
|
-
};
|
|
55
|
-
function randomInt(min, max) {
|
|
56
|
-
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
57
|
-
}
|
|
58
|
-
function randomChoice(array) {
|
|
59
|
-
return array[randomInt(0, array.length - 1)];
|
|
60
|
-
}
|
|
61
|
-
function randomString(length, chars = '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ') {
|
|
62
|
-
let result = '';
|
|
63
|
-
for (let i = 0; i < length; i++) {
|
|
64
|
-
result += randomChoice(chars.split(''));
|
|
65
|
-
}
|
|
66
|
-
return result;
|
|
67
|
-
}
|
|
68
|
-
function randomDate(startYear, endYear) {
|
|
69
|
-
const year = randomInt(startYear, endYear);
|
|
70
|
-
const month = randomInt(1, 12);
|
|
71
|
-
const day = randomInt(1, 28);
|
|
72
|
-
return `${year}-${String(month).padStart(2, '0')}-${String(day).padStart(2, '0')}`;
|
|
73
|
-
}
|
|
74
|
-
function formatDateChinese(dateStr) {
|
|
75
|
-
const [year, month, day] = dateStr.split('-');
|
|
76
|
-
return `${year}年${month}月${day}日`;
|
|
77
|
-
}
|
|
78
|
-
function calculateCreditCodeCheckDigit(code17) {
|
|
79
|
-
const weights = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];
|
|
80
|
-
const checkCodes = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'T', 'U', 'W', 'X', 'Y'];
|
|
81
|
-
let sum = 0;
|
|
82
|
-
for (let i = 0; i < 17; i++) {
|
|
83
|
-
const char = code17[i];
|
|
84
|
-
let value;
|
|
85
|
-
if (char >= '0' && char <= '9') {
|
|
86
|
-
value = parseInt(char);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
value = char.charCodeAt(0) - 55;
|
|
90
|
-
}
|
|
91
|
-
sum += value * weights[i];
|
|
92
|
-
}
|
|
93
|
-
const remainder = sum % 31;
|
|
94
|
-
return checkCodes[remainder];
|
|
95
|
-
}
|
|
96
|
-
export function generateFakeBusinessLicense(options = {}) {
|
|
97
|
-
const provinces = Object.keys(PROVINCE_CODES);
|
|
98
|
-
const province = options.province || randomChoice(provinces);
|
|
99
|
-
const provinceCode = PROVINCE_CODES[province] || '11';
|
|
100
|
-
const managementCode = '9';
|
|
101
|
-
const orgTypeCode = '1';
|
|
102
|
-
const areaCode = provinceCode + randomString(4, '0123456789');
|
|
103
|
-
const subjectCode = randomString(9, '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ');
|
|
104
|
-
const code17 = managementCode + orgTypeCode + areaCode + subjectCode;
|
|
105
|
-
const checkDigit = calculateCreditCodeCheckDigit(code17);
|
|
106
|
-
const creditCode = code17 + checkDigit;
|
|
107
|
-
let companyName;
|
|
108
|
-
if (options.companyName) {
|
|
109
|
-
companyName = options.companyName;
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
const industry = randomChoice(INDUSTRY_KEYWORDS);
|
|
113
|
-
const suffix = randomChoice(COMPANY_SUFFIXES);
|
|
114
|
-
const cityName = province.replace(/省|市|自治区|特别行政区/g, '');
|
|
115
|
-
const randomNum = randomInt(1, 999);
|
|
116
|
-
companyName = `${cityName}${industry}${randomNum > 1 ? randomNum : ''}${suffix}`;
|
|
117
|
-
}
|
|
118
|
-
const companyType = randomChoice(COMPANY_TYPES);
|
|
119
|
-
const cityName = province.replace(/省|市|自治区|特别行政区/g, '');
|
|
120
|
-
const address = `${province}${cityName}${randomChoice(['市', '县'])}${randomChoice(['区', '县'])}${randomChoice(['XX路', 'XX街', 'XX大道', 'XX科技园'])}${randomInt(1, 999)}号${randomInt(1, 20)}层${randomInt(100, 999)}室`;
|
|
121
|
-
const legalRepresentative = options.legalRepresentative || `${randomChoice(SURNAMES)}${randomChoice(GIVEN_NAMES)}`;
|
|
122
|
-
const capitalAmount = randomInt(10, 10000);
|
|
123
|
-
const registeredCapital = `${capitalAmount}万元`;
|
|
124
|
-
const currentYear = new Date().getFullYear();
|
|
125
|
-
const establishDate = options.establishDate || randomDate(2000, currentYear - 2);
|
|
126
|
-
const registrationDate = randomDate(parseInt(establishDate.split('-')[0]), Math.min(parseInt(establishDate.split('-')[0]) + 1, currentYear));
|
|
127
|
-
const establishYear = parseInt(establishDate.split('-')[0]);
|
|
128
|
-
const businessTerm = establishYear < 2020 ? `${formatDateChinese(establishDate)}至${establishYear + 20}年${establishDate.split('-')[1]}月${establishDate.split('-')[2]}日` : '长期';
|
|
129
|
-
const scopeKeywords = [
|
|
130
|
-
'技术开发', '技术咨询', '技术服务', '技术转让', '销售', '代理', '进出口',
|
|
131
|
-
'生产', '加工', '制造', '设计', '安装', '维修', '租赁', '广告', '咨询',
|
|
132
|
-
'企业管理', '投资管理', '资产管理', '市场调查', '会议服务', '展览展示',
|
|
133
|
-
'文化艺术交流', '计算机系统服务', '软件开发', '网络技术服务', '电子商务'
|
|
134
|
-
];
|
|
135
|
-
const scopeCount = randomInt(3, 8);
|
|
136
|
-
const selectedScopes = [];
|
|
137
|
-
for (let i = 0; i < scopeCount; i++) {
|
|
138
|
-
const keyword = randomChoice(scopeKeywords);
|
|
139
|
-
if (!selectedScopes.includes(keyword)) {
|
|
140
|
-
selectedScopes.push(keyword);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
const businessScope = selectedScopes.join(';') + '。';
|
|
144
|
-
const registrationAuthority = `${province.replace(/省|市|自治区|特别行政区/g, '')}${randomChoice(['市', '区'])}市场监督管理局`;
|
|
145
|
-
return {
|
|
146
|
-
creditCode,
|
|
147
|
-
companyName,
|
|
148
|
-
companyType,
|
|
149
|
-
address,
|
|
150
|
-
legalRepresentative,
|
|
151
|
-
registeredCapital,
|
|
152
|
-
establishDate: formatDateChinese(establishDate),
|
|
153
|
-
businessTerm,
|
|
154
|
-
businessScope,
|
|
155
|
-
registrationAuthority,
|
|
156
|
-
registrationDate: formatDateChinese(registrationDate),
|
|
157
|
-
province
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
//# sourceMappingURL=generateFakeBusinessLicense.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateFakeBusinessLicense.js","sourceRoot":"","sources":["../../../src/functions/validation/generateFakeBusinessLicense.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
export interface GenerateFakeDrivingLicenseOptions {
|
|
2
|
-
plateNumber?: string;
|
|
3
|
-
owner?: string;
|
|
4
|
-
province?: string;
|
|
5
|
-
registerDate?: string;
|
|
6
|
-
}
|
|
7
|
-
export interface GeneratedDrivingLicenseProfile {
|
|
8
|
-
plateNumber: string;
|
|
9
|
-
vehicleType: string;
|
|
10
|
-
owner: string;
|
|
11
|
-
address: string;
|
|
12
|
-
useNature: string;
|
|
13
|
-
engineNumber: string;
|
|
14
|
-
vin: string;
|
|
15
|
-
registerDate: string;
|
|
16
|
-
issueDate: string;
|
|
17
|
-
fileNumber: string;
|
|
18
|
-
approvedPassengers: number;
|
|
19
|
-
totalMass: number;
|
|
20
|
-
curbWeight: number;
|
|
21
|
-
approvedLoad: number;
|
|
22
|
-
dimensions: string;
|
|
23
|
-
approvedTowingMass: number;
|
|
24
|
-
cabPassengers: number;
|
|
25
|
-
cargoDimensions: string;
|
|
26
|
-
rearSpringLeaves: number;
|
|
27
|
-
manufactureDate: string;
|
|
28
|
-
issueAuthority: string;
|
|
29
|
-
province: string;
|
|
30
|
-
}
|
|
31
|
-
export declare function generateFakeDrivingLicense(options?: GenerateFakeDrivingLicenseOptions): GeneratedDrivingLicenseProfile;
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { generateFakeLicensePlate } from './generateFakeLicensePlate';
|
|
2
|
-
const VEHICLE_TYPES = [
|
|
3
|
-
'小型汽车',
|
|
4
|
-
'大型汽车',
|
|
5
|
-
'普通摩托车',
|
|
6
|
-
'轻便摩托车',
|
|
7
|
-
'低速车',
|
|
8
|
-
'挂车',
|
|
9
|
-
'教练汽车',
|
|
10
|
-
'教练摩托车',
|
|
11
|
-
'新能源汽车'
|
|
12
|
-
];
|
|
13
|
-
const USE_NATURES = [
|
|
14
|
-
'非营运',
|
|
15
|
-
'营运',
|
|
16
|
-
'营转非',
|
|
17
|
-
'出租转非',
|
|
18
|
-
'租赁',
|
|
19
|
-
'教练',
|
|
20
|
-
'警用',
|
|
21
|
-
'消防',
|
|
22
|
-
'救护',
|
|
23
|
-
'工程救险',
|
|
24
|
-
'幼儿校车',
|
|
25
|
-
'小学生校车',
|
|
26
|
-
'其他校车'
|
|
27
|
-
];
|
|
28
|
-
const SURNAMES = ['张', '王', '李', '刘', '陈', '杨', '黄', '赵', '吴', '周', '徐', '孙', '马', '朱', '胡', '郭', '何', '高', '林', '罗', '郑', '梁', '谢', '宋', '唐', '许', '韩', '冯', '邓', '曹', '彭', '曾', '肖', '田', '董', '袁', '潘', '于', '蒋', '蔡', '余', '杜', '叶', '程', '苏', '魏', '吕', '丁', '任', '沈', '姚', '卢', '姜', '崔', '钟', '谭', '陆', '汪', '范', '金', '石', '廖', '贾', '夏', '韦', '付', '方', '白', '邹', '孟', '熊', '秦', '邱', '江', '尹', '薛', '闫', '段', '雷', '侯', '龙', '史', '陶', '黎', '贺', '顾', '毛', '郝', '龚', '邵', '万', '钱', '严', '覃', '武', '戴', '莫', '孔', '向', '汤'];
|
|
29
|
-
const GIVEN_NAMES = ['伟', '芳', '娜', '秀英', '敏', '静', '丽', '强', '磊', '军', '洋', '勇', '艳', '杰', '娟', '涛', '明', '超', '秀兰', '霞', '平', '刚', '桂英'];
|
|
30
|
-
function randomInt(min, max) {
|
|
31
|
-
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
32
|
-
}
|
|
33
|
-
function randomChoice(array) {
|
|
34
|
-
return array[randomInt(0, array.length - 1)];
|
|
35
|
-
}
|
|
36
|
-
function randomString(length, chars = '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ') {
|
|
37
|
-
let result = '';
|
|
38
|
-
for (let i = 0; i < length; i++) {
|
|
39
|
-
result += randomChoice(chars.split(''));
|
|
40
|
-
}
|
|
41
|
-
return result;
|
|
42
|
-
}
|
|
43
|
-
function randomDate(startYear, endYear) {
|
|
44
|
-
const year = randomInt(startYear, endYear);
|
|
45
|
-
const month = randomInt(1, 12);
|
|
46
|
-
const day = randomInt(1, 28);
|
|
47
|
-
return `${year}-${String(month).padStart(2, '0')}-${String(day).padStart(2, '0')}`;
|
|
48
|
-
}
|
|
49
|
-
function formatDate(dateStr) {
|
|
50
|
-
return dateStr.replace(/-/g, '.');
|
|
51
|
-
}
|
|
52
|
-
export function generateFakeDrivingLicense(options = {}) {
|
|
53
|
-
let plateProfile;
|
|
54
|
-
if (options.plateNumber) {
|
|
55
|
-
plateProfile = {
|
|
56
|
-
plate: options.plateNumber,
|
|
57
|
-
province: options.province || '北京市',
|
|
58
|
-
provinceShort: options.plateNumber.charAt(0),
|
|
59
|
-
type: options.plateNumber.length === 8 ? 'newEnergy' : 'normal',
|
|
60
|
-
length: options.plateNumber.length
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
plateProfile = generateFakeLicensePlate({ province: options.province });
|
|
65
|
-
}
|
|
66
|
-
const owner = options.owner || `${randomChoice(SURNAMES)}${randomChoice(GIVEN_NAMES)}`;
|
|
67
|
-
const address = `${plateProfile.province}${randomChoice(['市', '县'])}${randomChoice(['区', '县'])}${randomChoice(['XX路', 'XX街', 'XX大道'])}${randomInt(1, 999)}号`;
|
|
68
|
-
const currentYear = new Date().getFullYear();
|
|
69
|
-
const registerDate = options.registerDate || randomDate(2010, currentYear - 1);
|
|
70
|
-
const issueDate = randomDate(parseInt(registerDate.split('-')[0]), Math.min(parseInt(registerDate.split('-')[0]) + 1, currentYear));
|
|
71
|
-
const vehicleType = randomChoice(VEHICLE_TYPES);
|
|
72
|
-
const engineNumber = randomString(17);
|
|
73
|
-
const vin = randomChoice('ABCDEFGHJKLMNPQRSTUVWXYZ'.split('')) + randomString(16);
|
|
74
|
-
const fileNumber = randomString(12, '0123456789');
|
|
75
|
-
const isSmallVehicle = vehicleType === '小型汽车' || vehicleType === '新能源汽车';
|
|
76
|
-
const approvedPassengers = isSmallVehicle ? randomInt(5, 7) : randomInt(10, 50);
|
|
77
|
-
const totalMass = isSmallVehicle ? randomInt(1500, 2500) : randomInt(5000, 15000);
|
|
78
|
-
const curbWeight = isSmallVehicle ? randomInt(1200, 2000) : randomInt(4000, 12000);
|
|
79
|
-
const approvedLoad = isSmallVehicle ? randomInt(300, 500) : randomInt(1000, 5000);
|
|
80
|
-
const length = isSmallVehicle ? randomInt(4000, 5000) : randomInt(6000, 12000);
|
|
81
|
-
const width = isSmallVehicle ? randomInt(1700, 1900) : randomInt(2000, 2500);
|
|
82
|
-
const height = isSmallVehicle ? randomInt(1400, 1600) : randomInt(2500, 3500);
|
|
83
|
-
const dimensions = `${length}×${width}×${height}`;
|
|
84
|
-
const approvedTowingMass = isSmallVehicle ? 0 : randomInt(2000, 8000);
|
|
85
|
-
const cabPassengers = isSmallVehicle ? 0 : randomInt(2, 3);
|
|
86
|
-
const cargoLength = isSmallVehicle ? 0 : randomInt(4000, 8000);
|
|
87
|
-
const cargoWidth = isSmallVehicle ? 0 : randomInt(2000, 2400);
|
|
88
|
-
const cargoHeight = isSmallVehicle ? 0 : randomInt(1500, 2500);
|
|
89
|
-
const cargoDimensions = isSmallVehicle ? '-' : `${cargoLength}×${cargoWidth}×${cargoHeight}`;
|
|
90
|
-
const rearSpringLeaves = isSmallVehicle ? 0 : randomInt(3, 8);
|
|
91
|
-
const registerYear = parseInt(registerDate.split('-')[0]);
|
|
92
|
-
const manufactureDate = randomDate(registerYear - 2, registerYear - 1);
|
|
93
|
-
const issueAuthority = `${plateProfile.province.replace(/省|市|自治区|特别行政区/g, '')}公安局交通警察支队`;
|
|
94
|
-
return {
|
|
95
|
-
plateNumber: plateProfile.plate,
|
|
96
|
-
vehicleType,
|
|
97
|
-
owner,
|
|
98
|
-
address,
|
|
99
|
-
useNature: randomChoice(USE_NATURES),
|
|
100
|
-
engineNumber,
|
|
101
|
-
vin,
|
|
102
|
-
registerDate: formatDate(registerDate),
|
|
103
|
-
issueDate: formatDate(issueDate),
|
|
104
|
-
fileNumber,
|
|
105
|
-
approvedPassengers,
|
|
106
|
-
totalMass,
|
|
107
|
-
curbWeight,
|
|
108
|
-
approvedLoad,
|
|
109
|
-
dimensions,
|
|
110
|
-
approvedTowingMass,
|
|
111
|
-
cabPassengers,
|
|
112
|
-
cargoDimensions,
|
|
113
|
-
rearSpringLeaves,
|
|
114
|
-
manufactureDate: formatDate(manufactureDate),
|
|
115
|
-
issueAuthority,
|
|
116
|
-
province: plateProfile.province
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
//# sourceMappingURL=generateFakeDrivingLicense.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateFakeDrivingLicense.js","sourceRoot":"","sources":["../../../src/functions/validation/generateFakeDrivingLicense.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
export interface GenerateFakeIdCardOptions {
|
|
2
|
-
gender?: 'male' | 'female';
|
|
3
|
-
birthYear?: number;
|
|
4
|
-
birthMonth?: number;
|
|
5
|
-
birthDay?: number;
|
|
6
|
-
provinceCode?: string;
|
|
7
|
-
nation?: string;
|
|
8
|
-
}
|
|
9
|
-
export interface GeneratedIdCardProfile {
|
|
10
|
-
id: string;
|
|
11
|
-
birth: {
|
|
12
|
-
year: number;
|
|
13
|
-
month: number;
|
|
14
|
-
day: number;
|
|
15
|
-
ymd: string;
|
|
16
|
-
};
|
|
17
|
-
gender: 'male' | 'female';
|
|
18
|
-
nation: string;
|
|
19
|
-
areaCode: string;
|
|
20
|
-
address: {
|
|
21
|
-
province: string;
|
|
22
|
-
city: string;
|
|
23
|
-
county: string;
|
|
24
|
-
full: string;
|
|
25
|
-
};
|
|
26
|
-
issueAuthority: string;
|
|
27
|
-
validPeriod: string;
|
|
28
|
-
}
|
|
29
|
-
export declare function generateFakeIdProfile(options?: GenerateFakeIdCardOptions): GeneratedIdCardProfile;
|
|
30
|
-
export declare function generateFakeIdCard(options?: GenerateFakeIdCardOptions): GeneratedIdCardProfile;
|