Skip to content

Commit 25b6393

Browse files
ArgoZhangdensen2014lambert leeh2ls
authored
doc: add verify vat invoice sample code (#348)
Co-authored-by: alex chow <zhouchuanglin@gmail.com> Co-authored-by: lambert lee <1708416@qq.com> Co-authored-by: lambert lee <lish@live.cn>
1 parent 4533488 commit 25b6393

6 files changed

Lines changed: 40 additions & 15 deletions

File tree

src/BootstrapBlazor.Shared/Demos/BaiduOcr/BaiduOcrNormal.razor

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@
3131
<div class="col-12 col-sm-6">
3232
<Display ShowLabel="true" DisplayText="开票日期" Value="Invoice.InvoiceDate"></Display>
3333
</div>
34+
<div class="col-12">
35+
<Display ShowLabel="true" DisplayText="校验码" Value="Invoice.CheckCode"></Display>
36+
</div>
3437
<div class="col-12 col-sm-6">
3538
<Display ShowLabel="true" DisplayText="购方名称" @bind-Value="Invoice.PurchaserName"></Display>
3639
</div>
@@ -72,7 +75,7 @@
7275
@if (Invoice.CommodityName?.Any() ?? false)
7376
{
7477
<div class="col-12 col-sm-6">
75-
<Display ShowLabel="true" DisplayText="税率" Value="Invoice.CommodityName.First().CommodityName"></Display>
78+
<Display ShowLabel="true" DisplayText="项目名称" Value="Invoice.CommodityName.First().CommodityName"></Display>
7679
</div>
7780
}
7881
@if (Invoice.CommodityTaxRate?.Any() ?? false)

src/BootstrapBlazor.Shared/Demos/BaiduOcr/BaiduOcrVerifyVatInvoice.razor

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,23 @@
55
<ValidateForm Model="Model" OnValidSubmit="@Verify">
66
<EditorForm TModel="InvoiceForm" RowType="RowType.Inline" AutoGenerateAllItem="false">
77
<FieldItems>
8+
<EditorItem @bind-Field="@context.InvoiceType" Text="发票种类" Readonly="true" />
89
<EditorItem @bind-Field="@context.InvoiceCode" Text="发票代码" />
910
<EditorItem @bind-Field="@context.InvoiceNum" Text="发票号码" />
10-
<EditorItem @bind-Field="@context.InvoiceDate" Text="开票日期" />
11-
<EditorItem @bind-Field="@context.CheckCode" Text="校验码" />
12-
<EditorItem @bind-Field="@context.TotalAmount" Text="金额" />
11+
<EditorItem @bind-Field="@context.InvoiceDate" Text="开票日期" PlaceHolder="YYYYMMDD" />
12+
<EditorItem @bind-Field="@context.CheckCode" Text="校验码" PlaceHolder="后六位" />
13+
<EditorItem @bind-Field="@context.TotalAmount" Text="金额" PlaceHolder="可为空" />
1314
</FieldItems>
1415
<Buttons>
1516
<Button ButtonType="ButtonType.Submit" Icon="fa-solid fa-check" Text="Verify" />
1617
</Buttons>
1718
</EditorForm>
1819
</ValidateForm>
1920

20-
<div class="mt-3">@InvoiceVerifyResult?.VerifyMessage</div>
21+
@if (InvoiceVerifyResult != null)
22+
{
23+
<div class="mt-3">@InvoiceVerifyResult.VerifyMessage</div>
24+
}
2125

2226
@code {
2327
/// <summary>

src/BootstrapBlazor.Shared/Locales/en.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -562,12 +562,14 @@
562562
"BootstrapBlazor.Shared.Samples.BaiduOcr": {
563563
"Title": "IBaiduOcr",
564564
"SubTitle": "Character recognition",
565-
"BasicUsageTitle": "VAT Invoice",
566-
"BasicUsageIntro": "Call Baidu Ocr interface for text recognition by uploading VAT invoice image",
565+
"VatInvoiceTitle": "VAT Invoice",
566+
"VatInvoiceIntro": "Call Baidu Ocr interface for text recognition by uploading VAT invoice image",
567567
"BaiduOcrDesc": "本组件通过调用 Baidu AI 平台文字识别接口进行增值税发票文字识别。支持对增值税普票、专票、全电发票(新版全国统一电子发票,专票/普票)、卷票、区块链发票的所有字段进行结构化识别,包括发票基本信息、销售方及购买方信息、商品信息、价税信息等,其中五要素字段的识别准确率超过 99.9%; 同时,支持对增值税卷票的 21 个关键字段进行识别,包括发票类型、发票代码、发票号码、机打号码、机器编号、收款人、销售方名称、销售方纳税人识别号、开票日期、购买方名称、购买方纳税人识别号、项目、单价、数量、金额、税额、合计金额(小写)、合计金额(大写)、校验码、省、市,四要素字段的识别准确率可达95%。上传图片不能超过 4M",
568568
"BaiduOcrIntro": "Usage",
569569
"BaiduOcrStep1": "1. Get <code>IBaiduOcr</code> instance by inject service",
570-
"BaiduOcrStep2": "2. Call <code>IBaiduOcr</code> instance method"
570+
"BaiduOcrStep2": "2. Call <code>IBaiduOcr</code> instance method",
571+
"VerifyVatInvoiceTitle": "增值税验真",
572+
"VerifyVatInvoiceIntro": "通过调用 <code>IBaiduOcr</code> 服务实例的发票验真方法 <code>VerifyInvoiceAsync</code> 返回 <code>InvoiceVerifyResult</code> 其属性 <code>Valid</code> 为 <code>true</code> 时为真"
571573
},
572574
"BootstrapBlazor.Shared.Demos.EditDialog.EditDialogNormal": {
573575
"LeftAlignedButton": "Edit popup (left-aligned)",

src/BootstrapBlazor.Shared/Locales/zh.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -563,12 +563,14 @@
563563
"BootstrapBlazor.Shared.Samples.BaiduOcr": {
564564
"Title": "IBaiduOcr 百度文字识别服务",
565565
"SubTitle": "文字识别服务",
566-
"BasicUsageTitle": "增值税发票文字识别",
567-
"BasicUsageIntro": "通过上传增值税发票图片调用百度 Ocr 接口进行文字识别",
566+
"VatInvoiceTitle": "增值税发票文字识别",
567+
"VatInvoiceIntro": "通过上传增值税发票图片调用百度 Ocr 接口进行文字识别",
568568
"BaiduOcrDesc": "本组件通过调用 Baidu AI 平台文字识别接口进行增值税发票文字识别。支持对增值税普票、专票、全电发票(新版全国统一电子发票,专票/普票)、卷票、区块链发票的所有字段进行结构化识别,包括发票基本信息、销售方及购买方信息、商品信息、价税信息等,其中五要素字段的识别准确率超过 99.9%; 同时,支持对增值税卷票的 21 个关键字段进行识别,包括发票类型、发票代码、发票号码、机打号码、机器编号、收款人、销售方名称、销售方纳税人识别号、开票日期、购买方名称、购买方纳税人识别号、项目、单价、数量、金额、税额、合计金额(小写)、合计金额(大写)、校验码、省、市,四要素字段的识别准确率可达95%。上传图片不能超过 4M",
569569
"BaiduOcrIntro": "使用方法",
570570
"BaiduOcrStep1": "1. 通过注入服务获得 <code>IBaiduOcr</code> 实例",
571-
"BaiduOcrStep2": "2. 调用服务相对应的识别方法即可"
571+
"BaiduOcrStep2": "2. 调用服务相对应的识别方法即可",
572+
"VerifyVatInvoiceTitle": "增值税验真",
573+
"VerifyVatInvoiceIntro": "通过调用 <code>IBaiduOcr</code> 服务实例的发票验真方法 <code>VerifyInvoiceAsync</code> 返回 <code>InvoiceVerifyResult</code> 其属性 <code>Valid</code> 为 <code>true</code> 时为真",
572574
},
573575
"BootstrapBlazor.Shared.Demos.EditDialog.EditDialogNormal": {
574576
"LeftAlignedButton": "编辑弹窗(左对齐)",

src/BootstrapBlazor.Shared/Samples/BaiduOcr.razor

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,20 @@
1414
<div>@((MarkupString)Localizer["BaiduOcrStep1"].Value)</div>
1515
<div>@((MarkupString)Localizer["BaiduOcrStep2"].Value)</div>
1616

17-
<DemoBlock Title="@Localizer["BasicUsageTitle"]" Introduction="@Localizer["BasicUsageIntro"]" Name="Normal" Demo="typeof(Demos.BaiduOcr.BaiduOcrNormal)" />
18-
19-
<DemoBlock Title="@Localizer["BasicUsageTitle"]" Introduction="@Localizer["BasicUsageIntro"]" Name="Normal" Demo="typeof(Demos.BaiduOcr.BaiduOcrVerifyVatInvoice)" />
17+
<DemoBlock Title="@Localizer["VatInvoiceTitle"]" Introduction="@Localizer["VatInvoiceIntro"]" Name="VatInvoice" Demo="typeof(Demos.BaiduOcr.BaiduOcrNormal)" />
18+
19+
<DemoBlock Title="@Localizer["VerifyVatInvoiceTitle"]" Introduction="@Localizer["VerifyVatInvoiceIntro"]" Name="Verify" Demo="typeof(Demos.BaiduOcr.BaiduOcrVerifyVatInvoice)">
20+
<h4 class="mb-2">发票种类</h4>
21+
<div>增值税专用发票:special_vat_invoice</div>
22+
<div>增值税电子专用发票:elec_special_vat_invoice</div>
23+
<div>增值税普通发票:normal_invoice</div>
24+
<div>增值税普通发票(电子):elec_normal_invoice</div>
25+
<div>增值税普通发票(卷式):roll_normal_invoice</div>
26+
<div>通行费增值税电子普通发票:toll_elec_normal_invoice</div>
27+
<div>区块链电子发票(目前仅支持深圳地区):blockchain_invoice</div>
28+
<div>全电发票(专用发票):elec_invoice_special</div>
29+
<div>全电发票(普通发票):elec_invoice_normal</div>
30+
<div>货运运输业增值税专用发票:special_freight_transport_invoice</div>
31+
<div>机动车销售发票:motor_vehicle_invoice</div>
32+
<div class="mb-3">二手车销售发票:used_vehicle_invoice</div>
33+
</DemoBlock>

src/Extensions/Components/BootstrapBlazor.BaiduOcr/BootstrapBlazor.BaiduOcr.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk.Razor">
22

33
<PropertyGroup>
4-
<Version>7.1.0</Version>
4+
<Version>7.1.1</Version>
55
</PropertyGroup>
66

77
<PropertyGroup>

0 commit comments

Comments
 (0)