Files
alla-allaos-fullstack/artifacts/pdf-audit/runtime-payload-report.json
2026-06-30 20:42:28 +07:00

614 lines
17 KiB
JSON

{
"audit": "runtime-payload",
"overallStatus": "PASS",
"staticLabelsStatus": "PASS",
"quotationCode": "CRA2606-1121",
"templateName": "ALLA Demo Organization Quotation Standard",
"templateVersion": "1.0",
"findingCount": 86,
"findings": [
{
"field": "documentData.company.id",
"source": "documentData",
"status": "PASS",
"value": "daf796fc-4588-5240-a27e-9bfef0739658",
"message": "String is populated"
},
{
"field": "documentData.company.name",
"source": "documentData",
"status": "PASS",
"value": "ALLA Demo Organization",
"message": "String is populated"
},
{
"field": "documentData.customer.id",
"source": "documentData",
"status": "PASS",
"value": "a6d9dec1-ff9d-4749-9542-f16d8efcf761",
"message": "String is populated"
},
{
"field": "documentData.customer.name",
"source": "documentData",
"status": "PASS",
"value": "บริษัท แอดวานซ์ โปรเจค คอนซัลแทนท์ จำกัด",
"message": "String is populated"
},
{
"field": "documentData.customer.address",
"source": "documentData",
"status": "PASS",
"value": "Bang Pakong, Chachoengsao",
"message": "String is populated"
},
{
"field": "documentData.customer.phone",
"source": "documentData",
"status": "PASS",
"value": "02-600832",
"message": "String is populated"
},
{
"field": "documentData.customer.email",
"source": "documentData",
"status": "PASS",
"value": "@example.co.th",
"message": "String is populated"
},
{
"field": "documentData.contact.id",
"source": "documentData",
"status": "PASS",
"value": "df4b3f5f-a4e0-42d7-9181-d56319b23275",
"message": "String is populated"
},
{
"field": "documentData.contact.name",
"source": "documentData",
"status": "PASS",
"value": "คุณวราภรณ์ จิรโรจน์",
"message": "String is populated"
},
{
"field": "documentData.contact.email",
"source": "documentData",
"status": "PASS",
"value": "@.co.th",
"message": "String is populated"
},
{
"field": "documentData.contact.mobile",
"source": "documentData",
"status": "PASS",
"value": "0810000303",
"message": "String is populated"
},
{
"field": "documentData.contact.position",
"source": "documentData",
"status": "PASS",
"value": "Maintenance Supervisor",
"message": "String is populated"
},
{
"field": "documentData.quotation.id",
"source": "documentData",
"status": "PASS",
"value": "16ea6fca-ef77-4cb9-8079-0b8dbcdbff57",
"message": "String is populated"
},
{
"field": "documentData.quotation.code",
"source": "documentData",
"status": "PASS",
"value": "CRA2606-1121",
"message": "String is populated"
},
{
"field": "documentData.quotation.projectName",
"source": "documentData",
"status": "PASS",
"value": "บริษัท แอดวานซ์ โปรเจค คอนซัลแทนท์ จำกัด - Phase 2",
"message": "String is populated"
},
{
"field": "documentData.quotation.projectLocation",
"source": "documentData",
"status": "PASS",
"value": "Bang Pakong, Chachoengsao",
"message": "String is populated"
},
{
"field": "documentData.quotation.attention",
"source": "documentData",
"status": "PASS",
"value": "Attention",
"message": "String is populated"
},
{
"field": "documentData.quotation.reference",
"source": "documentData",
"status": "PASS",
"value": "Reference",
"message": "String is populated"
},
{
"field": "documentData.quotation.currency",
"source": "documentData",
"status": "PASS",
"value": "THB",
"message": "String is populated"
},
{
"field": "documentData.quotation.currencyCode",
"source": "documentData",
"status": "PASS",
"value": "THB",
"message": "String is populated"
},
{
"field": "documentData.quotation.subtotal",
"source": "documentData",
"status": "PASS",
"value": 0,
"message": "Scalar value is populated"
},
{
"field": "documentData.quotation.totalAmount",
"source": "documentData",
"status": "PASS",
"value": 0,
"message": "Scalar value is populated"
},
{
"field": "documentData.items",
"source": "documentData",
"status": "PASS",
"value": "rows:0",
"message": "Array shape is valid"
},
{
"field": "documentData.quotationCustomers",
"source": "documentData",
"status": "PASS",
"value": "rows:2",
"message": "Collection payload is populated"
},
{
"field": "documentData.quotationCustomers[0].id",
"source": "documentData",
"status": "PASS",
"value": "8eac2230-5fc4-4e14-9fa4-b7457efe5660",
"message": "String is populated"
},
{
"field": "documentData.quotationCustomers[0].customerId",
"source": "documentData",
"status": "PASS",
"value": "05ae3d52-1157-499e-b6b2-d7e5ab509e4e",
"message": "String is populated"
},
{
"field": "documentData.quotationCustomers[0].role",
"source": "documentData",
"status": "PASS",
"value": "a3b51c9b-e1e6-48b9-95ba-f6e35ba5406e",
"message": "String is populated"
},
{
"field": "documentData.quotationCustomers[0].isPrimary",
"source": "documentData",
"status": "PASS",
"value": false,
"message": "Scalar value is populated"
},
{
"field": "documentData.quotationCustomers[1].id",
"source": "documentData",
"status": "PASS",
"value": "a8a589b5-5de5-403a-a6bb-a6d9c55efe71",
"message": "String is populated"
},
{
"field": "documentData.quotationCustomers[1].customerId",
"source": "documentData",
"status": "PASS",
"value": "a6d9dec1-ff9d-4749-9542-f16d8efcf761",
"message": "String is populated"
},
{
"field": "documentData.quotationCustomers[1].role",
"source": "documentData",
"status": "PASS",
"value": "cfaf96fd-39a2-4074-b295-a4798cf23253",
"message": "String is populated"
},
{
"field": "documentData.quotationCustomers[1].isPrimary",
"source": "documentData",
"status": "PASS",
"value": true,
"message": "Scalar value is populated"
},
{
"field": "documentData.topics.all",
"source": "documentData",
"status": "PASS",
"value": "rows:0",
"message": "Array shape is valid"
},
{
"field": "documentData.topics.exclusion",
"source": "documentData",
"status": "PASS",
"value": "rows:0",
"message": "Array shape is valid"
},
{
"field": "documentData.pdfme.labels.tel",
"source": "documentData",
"status": "PASS",
"value": "Tel",
"message": "String is populated"
},
{
"field": "documentData.pdfme.labels.email",
"source": "documentData",
"status": "PASS",
"value": "Email",
"message": "String is populated"
},
{
"field": "documentData.pdfme.labels.att",
"source": "documentData",
"status": "PASS",
"value": "Att",
"message": "String is populated"
},
{
"field": "documentData.pdfme.labels.project",
"source": "documentData",
"status": "PASS",
"value": "Project",
"message": "String is populated"
},
{
"field": "documentData.pdfme.labels.location",
"source": "documentData",
"status": "PASS",
"value": "Location",
"message": "String is populated"
},
{
"field": "documentData.pdfme.quotation_date",
"source": "documentData",
"status": "PASS",
"value": "Jun 30, 2026",
"message": "String is populated"
},
{
"field": "documentData.pdfme.quotation_price",
"source": "documentData",
"status": "PASS",
"value": "THB 0.00",
"message": "String is populated"
},
{
"field": "documentData.pdfme.quotation_price_data",
"source": "documentData",
"status": "PASS",
"value": "rows:1",
"message": "Array shape is valid"
},
{
"field": "documentData.pdfme.exclusion_data",
"source": "documentData",
"status": "PASS",
"value": "rows:1",
"message": "Array shape is valid"
},
{
"field": "documentData.signatures.preparedBy.name",
"source": "documentData",
"status": "PASS",
"value": "Sales Crane UAT",
"message": "String is populated"
},
{
"field": "documentData.signatures.preparedBy.position",
"source": "documentData",
"status": "PASS",
"value": "Sales Engineer",
"message": "String is populated"
},
{
"field": "documentData.signatures.preparedBy.actedAt",
"source": "documentData",
"status": "PASS",
"value": "2026-06-30T11:21:06.000Z",
"message": "String is populated"
},
{
"field": "documentData.signatures.approvedBy.name",
"source": "documentData",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "documentData.signatures.approvedBy.position",
"source": "documentData",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "documentData.signatures.approvedBy.actedAt",
"source": "documentData",
"status": "WARNING",
"value": null,
"message": "Value is null"
},
{
"field": "documentData.signatures.authorizedBy.name",
"source": "documentData",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "documentData.signatures.authorizedBy.position",
"source": "documentData",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "documentData.signatures.authorizedBy.actedAt",
"source": "documentData",
"status": "WARNING",
"value": null,
"message": "Value is null"
},
{
"field": "templateInput.customer_name",
"source": "templateInput",
"status": "PASS",
"value": "บริษัท แอดวานซ์ โปรเจค คอนซัลแทนท์ จำกัด",
"message": "String is populated"
},
{
"field": "templateInput.customer_addr",
"source": "templateInput",
"status": "PASS",
"value": "Bang Pakong, Chachoengsao",
"message": "String is populated"
},
{
"field": "templateInput.customer_tel",
"source": "templateInput",
"status": "PASS",
"value": "02-600832",
"message": "String is populated"
},
{
"field": "templateInput.customer_email",
"source": "templateInput",
"status": "PASS",
"value": "@example.co.th",
"message": "String is populated"
},
{
"field": "templateInput.customer_att",
"source": "templateInput",
"status": "PASS",
"value": "Attention",
"message": "String is populated"
},
{
"field": "templateInput.project_name",
"source": "templateInput",
"status": "PASS",
"value": "บริษัท แอดวานซ์ โปรเจค คอนซัลแทนท์ จำกัด - Phase 2",
"message": "String is populated"
},
{
"field": "templateInput.site_location",
"source": "templateInput",
"status": "PASS",
"value": "Bang Pakong, Chachoengsao",
"message": "String is populated"
},
{
"field": "templateInput.quotation_date_data",
"source": "templateInput",
"status": "PASS",
"value": "Jun 30, 2026",
"message": "String is populated"
},
{
"field": "templateInput.quotation_code_data",
"source": "templateInput",
"status": "PASS",
"value": "CRA2606-1121",
"message": "String is populated"
},
{
"field": "templateInput.quotation_price_data",
"source": "templateInput",
"status": "PASS",
"value": "rows:1",
"message": "Array shape is valid"
},
{
"field": "templateInput.quotation_price",
"source": "templateInput",
"status": "PASS",
"value": "THB 0.00",
"message": "String is populated"
},
{
"field": "templateInput.currency",
"source": "templateInput",
"status": "PASS",
"value": "THB",
"message": "String is populated"
},
{
"field": "templateInput.tel_label",
"source": "templateInput",
"status": "PASS",
"value": "Tel",
"message": "String is populated"
},
{
"field": "templateInput.email_label",
"source": "templateInput",
"status": "PASS",
"value": "Email",
"message": "String is populated"
},
{
"field": "templateInput.att_label",
"source": "templateInput",
"status": "PASS",
"value": "Att",
"message": "String is populated"
},
{
"field": "templateInput.project_label",
"source": "templateInput",
"status": "PASS",
"value": "Project",
"message": "String is populated"
},
{
"field": "templateInput.site_label",
"source": "templateInput",
"status": "PASS",
"value": "Location",
"message": "String is populated"
},
{
"field": "templateInput.app1",
"source": "templateInput",
"status": "PASS",
"value": "Sales Crane UAT",
"message": "String is populated"
},
{
"field": "templateInput.app1_position",
"source": "templateInput",
"status": "PASS",
"value": "Sales Engineer",
"message": "String is populated"
},
{
"field": "templateInput.app2",
"source": "templateInput",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "templateInput.app2_position",
"source": "templateInput",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "templateInput.app3",
"source": "templateInput",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "templateInput.app3_position",
"source": "templateInput",
"status": "PASS",
"value": "-",
"message": "String is populated"
},
{
"field": "templateInput.quotation_date",
"source": "templateInput",
"status": "PASS",
"value": "Jun 30, 2026",
"message": "String is populated"
},
{
"field": "templateInput.quotation_code",
"source": "templateInput",
"status": "PASS",
"value": "CRA2606-1121",
"message": "String is populated"
},
{
"field": "templateInput.quotation_price_data",
"source": "templateInput",
"status": "PASS",
"value": "rows:1",
"message": "Price table input is present"
},
{
"field": "templateInput.quotation_price_data[0][0]",
"source": "templateInput",
"status": "PASS",
"value": "Price (Exclude VAT)",
"message": "Price table label matches canonical text"
},
{
"field": "templateInput.quotation_price_data[0][1]",
"source": "templateInput",
"status": "PASS",
"value": "฿0.00",
"message": "Price table amount cell is formatted"
},
{
"field": "templateInput.quotation_price_data[0][3]",
"source": "templateInput",
"status": "PASS",
"value": "THB",
"message": "Price table currency code cell is populated"
},
{
"field": "templateInput.tel_label",
"source": "templateInput",
"status": "PASS",
"value": "Tel",
"message": "Static label is populated"
},
{
"field": "templateInput.email_label",
"source": "templateInput",
"status": "PASS",
"value": "Email",
"message": "Static label is populated"
},
{
"field": "templateInput.att_label",
"source": "templateInput",
"status": "PASS",
"value": "Att",
"message": "Static label is populated"
},
{
"field": "templateInput.project_label",
"source": "templateInput",
"status": "PASS",
"value": "Project",
"message": "Static label is populated"
},
{
"field": "templateInput.site_label",
"source": "templateInput",
"status": "PASS",
"value": "Location",
"message": "Static label is populated"
}
]
}