Files
n8n/4.证书识别.md
2025-09-01 23:48:02 +08:00

418 lines
18 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"nodes": [
{
"parameters": {
"operation": "Upload File to PDF.co",
"uploadMethod": "base64",
"base64Content": "={{ $('Loop').item.binary.data.data}}",
"name": "={{ $('Loop').item.json.fileName}}"
},
"type": "n8n-nodes-pdfco.PDFco Api",
"typeVersion": 1,
"position": [
624,
16
],
"id": "5a25a808-8e50-48e3-a044-38876405d088",
"name": "PDFco Api1",
"alwaysOutputData": true,
"credentials": {
"pdfcoApi": {
"id": "FzZjcxm1RTNvCgQO",
"name": "PDF.co account"
}
}
},
{
"parameters": {
"url": "={{ $json.url }}",
"advancedOptions": {}
},
"type": "n8n-nodes-pdfco.PDFco Api",
"typeVersion": 1,
"position": [
816,
16
],
"id": "a53cf652-50b2-4dac-85fb-2d40e1b32141",
"name": "PDFco Api2",
"credentials": {
"pdfcoApi": {
"id": "FzZjcxm1RTNvCgQO",
"name": "PDF.co account"
}
}
},
{
"parameters": {
"operation": "append",
"documentId": {
"__rl": true,
"value": "1cU1DgnWH5rOEay9yeAwTawhu0bc7U-lpOyIFbp1L4Iw",
"mode": "list",
"cachedResultName": "证书识别",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1cU1DgnWH5rOEay9yeAwTawhu0bc7U-lpOyIFbp1L4Iw/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "工作表1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1cU1DgnWH5rOEay9yeAwTawhu0bc7U-lpOyIFbp1L4Iw/edit#gid=0"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"报告编号": "={{ $json.body.certificate_information.report_number }}",
"证书编号": "={{ $json.body.certificate_information.certificate_number }}",
"项目名称": "={{ $json.body.certificate_information.certificate_title }}",
"单位名称": "={{ $json.body.certificate_information.company_name }}",
"依据标准": "={{ $json.body.certificate_information.standard_passed }}"
},
"matchingColumns": [],
"schema": [
{
"id": "证书编号",
"displayName": "证书编号",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "报告编号",
"displayName": "报告编号",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "项目名称",
"displayName": "项目名称",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "单位名称",
"displayName": "单位名称",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "依据标准",
"displayName": "依据标准",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "检验单位",
"displayName": "检验单位",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
},
{
"id": "通过时间",
"displayName": "通过时间",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.6,
"position": [
1040,
16
],
"id": "5013cc0f-f31b-40d8-b8d6-e1875bcefb63",
"name": "Append row in sheet",
"credentials": {
"googleSheetsOAuth2Api": {
"id": "N5B6RNl3HG7DQpbC",
"name": "Google Sheets account"
}
}
},
{
"parameters": {
"conditions": {
"string": [
{
"value1": "={{ $('Loop').item.json.fileName}}",
"operation": "endsWith",
"value2": ".pdf"
}
]
}
},
"id": "763af92a-a053-4344-a363-6b7fc0ae7dcf",
"name": "2. 判断是否为PDF",
"type": "n8n-nodes-base.if",
"typeVersion": 1,
"position": [
352,
32
]
},
{
"parameters": {
"jsCode": "// 创建一个空数组,用于存放我们拆分后的新项目。\nconst outputItems = [];\n\n// 获取输入的第一个(也是唯一一个)项目。\nconst inputItem = $input.first();\n\n// 获取这个项目里包含所有二进制文件的那个 \"binary\" 对象。\n// 这个对象内部有 'files0', 'files1' 等属性。\nconst allBinaries = inputItem.binary;\n\n// 安全检查:如果这个项目里没有任何二进制文件,就直接返回空。\nif (!allBinaries) {\n return [];\n}\n\n// **核心逻辑**\n// 我们遍历 `allBinaries` 对象的所有属性(即 'files0', 'files1', 'files2' ...)。\nfor (const key in allBinaries) {\n\n // 获取当前属性(比如 'files0')对应的那个文件数据。\n const binaryData = allBinaries[key];\n \n // 再次安全检查,以防某个属性值为空。\n if (!binaryData) {\n continue;\n }\n\n // 为这个独立的文件创建新的JSON元数据。\n const newJsonData = {\n fileName: binaryData.fileName,\n mimeType: binaryData.mimeType,\n status: '已拆分,等待处理',\n originalProperty: key // 记录一下它原始的属性名,有时会很有用\n };\n\n // 创建一个符合n8n标准的新项目。\n const newOutputItem = {\n json: newJsonData,\n binary: {\n // 我们将这个独立的文件放入新项目的'binary'对象中。\n // 使用 'data' 作为属性名是一个n8n的标准做法。\n data: binaryData\n }\n };\n\n // 将这个全新的、只包含一个文件的项目,添加到我们的输出数组中。\n outputItems.push(newOutputItem);\n}\n\n// 返回包含所有新项目的数组。\n// n8n 接收到这个数组后,会自动将其内容“展开”成多个独立的输出项目。\nreturn outputItems;"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
-128,
16
],
"id": "50b6e62c-a047-484c-a67f-7847fc490a08",
"name": "Code"
},
{
"parameters": {
"batchSize": 10,
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
64,
16
],
"id": "d1b7387d-8da5-414d-ae99-b2edbc17d1d4",
"name": "Loop"
},
{
"parameters": {
"httpMethod": "POST",
"path": "4a113d40-fd68-47e3-8b8a-313769be940e",
"options": {}
},
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
-368,
16
],
"id": "5d233cbf-6807-4c81-9f08-5181aa1f4596",
"name": "Webhook",
"webhookId": "4a113d40-fd68-47e3-8b8a-313769be940e"
}
],
"connections": {
"PDFco Api1": {
"main": [
[
{
"node": "PDFco Api2",
"type": "main",
"index": 0
}
]
]
},
"PDFco Api2": {
"main": [
[
{
"node": "Append row in sheet",
"type": "main",
"index": 0
}
]
]
},
"Append row in sheet": {
"main": [
[
{
"node": "Loop",
"type": "main",
"index": 0
}
]
]
},
"2. 判断是否为PDF": {
"main": [
[
{
"node": "PDFco Api1",
"type": "main",
"index": 0
}
]
]
},
"Code": {
"main": [
[
{
"node": "Loop",
"type": "main",
"index": 0
}
]
]
},
"Loop": {
"main": [
[],
[
{
"node": "2. 判断是否为PDF",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "Code",
"type": "main",
"index": 0
}
]
]
}
},
"pinData": {
"PDFco Api1": [
{
"url": "https://pdf-temp-files.s3.us-west-2.amazonaws.com/JPR77ORXVD5WLXJD3GNZKT9Q1IOXTSG3/__-24V01Y002201-______________-____-_______-V8.13.1._-___.pdf?X-Amz-Expires=3600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZJDPLX6D7EHVCKA/20250814/us-west-2/s3/aws4_request&X-Amz-Date=20250814T082655Z&X-Amz-SignedHeaders=host&X-Amz-Signature=ebdcf1b4644d9ddfd4814b180f7743729480d0d873aa2f06c19bf54cca8bf570"
},
{
"url": "https://pdf-temp-files.s3.us-west-2.amazonaws.com/VPC72VAC1VQFP2WXT27Q1AKKV3XI5MAX/__-24V01Y002261-______________-_____-_________-V6.6.2_-___.pdf?X-Amz-Expires=3600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZJDPLX6D7EHVCKA/20250814/us-west-2/s3/aws4_request&X-Amz-Date=20250814T082708Z&X-Amz-SignedHeaders=host&X-Amz-Signature=dd65a5617bee0f958907ade37618dc0cc1d01fc1638fff918879128ca8dbe391"
},
{
"url": "https://pdf-temp-files.s3.us-west-2.amazonaws.com/2EODD4FGPVKLO6GWP57Z2JL9W3YU9CBX/__-24V01Y002263-______________-____-______MySQL-V5.8.0_-___.pdf?X-Amz-Expires=3600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZJDPLX6D7EHVCKA/20250814/us-west-2/s3/aws4_request&X-Amz-Date=20250814T082719Z&X-Amz-SignedHeaders=host&X-Amz-Signature=0e15e772651706af561da3c1df212fb516b79398ac2e021622f5cb463fa7d6ea"
}
],
"PDFco Api2": [
{
"pageCount": 1,
"url": "https://pdf-temp-files.s3.us-west-2.amazonaws.com/X7T3SNEZJCCIXKKWNK60ZCB2W94YN15U--155-100/invoice.json?X-Amz-Expires=3600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZJDPLX6D7EHVCKA/20250814/us-west-2/s3/aws4_request&X-Amz-Date=20250814T082746Z&X-Amz-SignedHeaders=host&X-Amz-Signature=dd0a56f5c3feccfffa3026e5136ad2c3eeb5865d888e15f9476e7d491c21dea3",
"body": {
"certificate_information": {
"certificate_number": "2024VY004140",
"report_number": "24V01Y002201-001",
"certificate_title": "可信云·对象存储服务能力检验证书",
"company_name": "中移 (苏州) 软件技术有限公司",
"company_address": "苏州市高新区昆仑山路58号1幢",
"product_name": "移动云对象存储",
"product_version": "V8.13.1",
"standard_passed": "Q/KXY G002-2018 《云计算服务客户信任体系能力要求 第2部分: 对象存储服务》"
},
"compliance_description": {
"description": "经中国信息通信研究院的检验, 贵单位的 移动云对象存储 V8.13.1 通过了Q/KXY G002-2018 《云计算服务客户信任体系能力要求 第2部分: 对象存储服务》 标准能力的检验, 达到可信云服务评估的要求, 特发此证。"
},
"additional_information": {
"website": "www.beetly.hot.cnt",
"disclaimer": "由于该检验是针对2024年10月15日前该产品/服务情况进行披露, 用户依然应留意在具体使用过程中可能发生的风险。因云计算软件等技术快速发展、产品/服务不断升级迭代、标准规范随行业发展不断更新等原因, 当产品或检验标准发生较大变化时, 建议本产品/服务进行重新检验。中国信息通信研究院将在2025年7月组织新一批检验。"
},
"authorized_signatory": {
"name": "구원석",
"organization": "云计算开源产业联盟 TRUSTED CLOUD 可信云 Openflource IndustRy/OSCAR",
"issue_date": "2024年10月5日"
},
"issuer_information": {
"organization": "中国信息通信研究院",
"address": "北京市海淀区花园北路52号",
"website": "http://www.caict.ac.cn/"
}
},
"duration": 82
},
{
"pageCount": 1,
"url": "https://pdf-temp-files.s3.us-west-2.amazonaws.com/T214HEXWOZ31RG6JZQ7CLJ6QA4FKIWRT--155-400/invoice.json?X-Amz-Expires=3600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZJDPLX6D7EHVCKA/20250814/us-west-2/s3/aws4_request&X-Amz-Date=20250814T082804Z&X-Amz-SignedHeaders=host&X-Amz-Signature=8ed258242e779ceef102be4533ae85ab94bf0b5a14a84d14b39a4b9b48932b3d",
"body": {
"certificate_information": {
"certificate_number": "2024VY004155",
"report_number": "24V01Y002261-001",
"certificate_title": "可信云·物理云主机服务能力检验证书",
"company_name": "中移 (苏州) 软件技术有限公司",
"company_address": "苏州高新区昆仑山路58号1幢",
"product_name": "移动云裸金属服务器",
"product_version": "V6.6.2",
"standard_passed": "Q/KXY G011-2018 《云计算服务客户信任体系能力要求第7部分: 物理云主机》"
},
"compliance_description": {
"description": "经中国信息通信研究院的检验, 贵单位的 移动云裸金属服务器 V6.6.2 通过了Q/KXY G011-2018 《云计算服务客户信任体系能力要求第7部分: 物理云主机》 标准能力的检验, 达到可信云服务评估的要求, 特发此证。"
},
"validity_information": {
"validity_details": "认证书有效性信息及详情可见vixuilextry.taog.com及可使云服务号。由于该检验是针对2024年10月15日前该产品/服务情况进行披露, 用户依然应留意在具体使用过程中可能发生的风险。因云计算软件等技术快速发展、产品/服务不断升级迭代、标准规范随行业发展不断更新等原因, 当产品或检验标准发生较大变化时, 建议本产品/服务进行重新检验。中国信息通信研究院将在2025年7月组织新一批检验。",
"issue_date": "2024年10月15日",
"authorized_signatory": "2원50"
},
"issuer_information": {
"issuer_name": "中国信息通信研究院",
"issuer_address": "北京市海淀区花园北路52号",
"issuer_website": "http://www.caict.ac.cn/"
}
},
"duration": 77
},
{
"pageCount": 1,
"url": "https://pdf-temp-files.s3.us-west-2.amazonaws.com/89UTBCGK7U607BRLG0A72JVQZO6YT9FN--155-600/invoice.json?X-Amz-Expires=3600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZJDPLX6D7EHVCKA/20250814/us-west-2/s3/aws4_request&X-Amz-Date=20250814T082821Z&X-Amz-SignedHeaders=host&X-Amz-Signature=23cd537c5284985c632fa6b372dbec6c413cd29630fb421411db1af8bbd1797c",
"body": {
"certificate_information": {
"certificate_number": "2024VY004145",
"report_number": "24V01Y002263-001",
"certificate_title": "可信云·云数据库服务能力检验证书",
"company_name": "中移 (苏州) 软件技术有限公司",
"company_address": "苏州高新区昆仑山路58号1幢",
"product_name": "移动云数据库MySQL",
"product_version": "V5.8.0",
"standard_passed": "Q/KXY G003-2018 《云计算服务客户信任体系能力要求 第3部分: 云数据库服务》"
},
"compliance_description": {
"description": "经中国信息通信研究院的检验, 贵单位的 移动云数据库MySQL V5.8.0 通过了Q/KXY G003-2018 《云计算服务客户信任体系能力要求 第3部分: 云数据库服务》 标准能力的检验, 达到可信云服务评估的要求, 特发此证。"
},
"validity_information": {
"validity_details": "证书有效性信息及详情可见,www.cs.yourtog.com及网络云服务等, 由于该检验是针对2024年10月15日前该产品/服务情况进行披露, 用户依然应留意在具体使用过程中可能发生的风险。因云计算软件等技术快速发展、产品/服务不断升级迭代、标准规范随行业发展不断更新等原因, 建议本产品/服务进行重新检验。中国信息通信研究院将在2025年7月组织新一批检验。",
"disclaimer": "当产品或检验标准发生较大变化时, 建议重新检验。"
},
"issuing_authority": {
"organization_name": "中国信息通信研究院",
"authorized_signatory": "授权签字人",
"issue_date": "2024年10月18日",
"address": "北京市海淀区花园北路52号",
"website": "http://www.caict.ac.cn/"
}
},
"duration": 85
}
]
},
"meta": {
"instanceId": "d4bc54c4750443ddb7fb9e6b4c7e38c46f3d96e6d4cbfdf57a74efbc3218b7c8"
}
}