TextIn:打造智能文本处理的完美体验

 一:前言

在数字化时代,API(应用程序编程接口)已成为软件开发不可或缺的一部分。TextIn的 API提供了一个强大的文本处理平台,使开发者能够轻松集成各种文本分析和处理功能。本文将分享我们团队的使用心得,探讨这个API如何在我们的项目中发挥作用。

 二:合合信息介绍
合合TextIn - 合合信息旗下OCR云服务产品icon-default.png?t=N7T8https://www.textin.com/

上海合合信息科技股份有限公司是一家人工智能及大数据科技企业,专注于智能文字识别、图像处理、自然语言处理(NLP)、知识图谱、大数据挖掘等技术。基于自主研发的智能文字识别及商业大数据核心技术,为全球C端用户和多元行业B端客户提供数字化、智能化的产品及服务。

TextIn是合合信息旗下智能文字识别产品,拥有智能文字识别技术和企业服务经验,产品提供公有云API、SDK及私有化部署多种部署方式,为金融、物流、制造、移动互联网、智慧政务、智慧社区等行业提供行业个性化智能文字识别解决方案。致力于为企业、开发者及个人用户提供一站式智能文字识别服务。TextIn智能文字识别引擎可以从图像和PDF文档中提取印刷、手写、印章、公式、表格、图片等富文本信息,支持50+多语言识别,众多文档类型,包括商业文件、发票、账单、收据、名片和海报。

在本次项目开发中,我们团队使用了发票验真和通用票据识别的API。

三:API的使用

1.登录或注册账号进入工作台

 2.在市场中选择需要调用的API

3.学习如何使用API

TextIn的API的集成过程非常简洁。它提供了清晰的文档和示例代码,让我们能够快速理解如何调用API。通过简单的HTTP请求,我就可以访问到强大的文本处理功能,这让我们省去了大量的开发时间。

它还提供了清晰易懂的错误信息,供开发者们及时纠正错误。

 它对小白开发者也是极为友好,提供了各种语言的示例代码供开发者参考。

它还提供了在线使用和在线调试功能,非常方便快捷。

四:通用票据识别API

在使用时,我们注意到它的响应速度非常快,即使是处理大量文本数据也不例外。这种高效的性能对于需要实时分析的应用来说至关重要。我们可以依赖它来提供快速准确的结果,这让我们对TextIn充满信心。

识别结果清晰,详细,准确无差错。

返回的JSON 结果

我们团队在本次项目中使用了 通用票据识别和发票验真api

以下是通用识别票据的使用

// 定义一个函数用于识别票据
recognizeBill:function() {
  const appId = ''//此处自己填写
  const secretCode = ''//此处自己填写
  const url = 'https://api.textin.com/robot/v1.0/api/bills_crop'

 
  // 调用微信小程序的选择图片接口
  wx.chooseMedia({
    count: 1,
    mediaType: ['image'],
    sourceType: ['album', 'camera'],
    camera: 'back',
    success:res=> {
      if(res.tempFiles.length>0)
      {
        res.tempFiles.forEach(tempFile=>{
          firstImageEncoding=wx.getFileSystemManager().readFileSync(tempFile.tempFilePath)
          filePath=tempFile.tempFilePath
        })
        console.log(firstImageEncoding)
        wx.request({
  url: 'https://api.textin.com/robot/v1.0/api/bills_crop',
  method: 'POST',
  header: {
    'content-type': 'application/octet-stream', // 指定内容类型为二进制流
    'x-ti-app-id': appId, // 自定义请求头部
    'x-ti-secret-code': secretCode
  },
  data: firstImageEncoding, // 读取文件二进制流作为请求体
  success:res=> {
    result_1 = res.data.result; // 将结果存储在变量中
    console.log(result_1); // 请求成功的回调函数
    wx.showModal({
      title: '提示',
      content: '照片已经成功识别,是否要保存?',
      showCancel: true,
      cancelText: '取消',
      confirmText: '确认',
      success(res) {
        if (res.confirm) {
          wx.cloud.uploadFile({
            
            // 指定上传到的云路径
            cloudPath: 'my-photo.png_'+count,
            // 指定要上传的文件的小程序临时文件路径
            filePath: filePath,
            // 成功回调
            success: res => {
              filePath=res.fileID
              wx.showModal({
                title: '提示',
                content: '选择收入还是支出',
                confirmText: '收入',
                cancelText: '支出',
                complete: (res) => {
                  if (res.cancel) {
                    flag=false
                  }
              
                  if (res.confirm) {
                    flag=true
                  }
                }
              }),
              console.log(result_1.object_list[0].type)
              /**
 * 以下为票据的共有属性
 * 
 * @param {String} date -发票时间,若没有则为null
 * @param {String} type -票据类型
 * @param {String} type_description -票据类型中文描述
 * @param {String} money -价税合计小写
 * @param {String} number -发票号码
 * @param {String} code -发票代码,若没有则为null
 * @param {String} buyer_id -纳税人识别号或购买人身份信息,若没有则为null
 * @param {boolean} income_or_expenses -布尔值,标记收入或支出,取值于flag,true为收入,false为支出
 */

var i;//循环变量
var item;//循环临时容器
if (result_1.object_list[0].type=='blockchain_electronic_invoiceblockchain_electronic_invoice'||
    result_1.object_list[0].type=='machine_printed_invoice'||
    result_1.object_list[0].type=='vat_common_invoice'||
    result_1.object_list[0].type=='vat_electronic_invoice'||
    result_1.object_list[0].type=='vat_electronic_special_invoice'||
    result_1.object_list[0].type=='vat_electronic_toll_invoice'||
    result_1.object_list[0].type=='vat_electronic_invoice_new'||
    result_1.object_list[0].type=='vat_electronic_special_invoice_new'||
    result_1.object_list[0].type=='vat_special_invoice') {
    /*
    blockchain_electronic_invoice	区块链电子发票
    machine_printed_invoice	机打发票
    vat_common_invoice	增值税普通发票
    vat_electronic_invoice	增值税电子普通发票
    vat_electronic_special_invoice	增值税电子专用发票
    vat_electronic_toll_invoice	增值税电子普通发票(通行费)
    vat_electronic_invoice_new	电子发票(普通发票)
    vat_electronic_special_invoice_new	电子发票(增值税专用发票)
    vat_special_invoice	增值税专用发票
    */
    var date;
    var money;
    var vat_invoice_goods_list;
    var number;
    var code;
    var buyer_id;
    var vat_invoice_haoma_large_size;
    var vat_invoice_tax_total;
    var vat_invoice_drawer;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='vat_invoice_issue_date_print') {
            date = item.value;//开票日期
        }
        else if (item.key=='vat_invoice_total_cover_tax_digits') {
            money = item.value;//价税合计小写
        }
        else if (item.key=='vat_invoice_goods_list') {
            vat_invoice_goods_list = item.value;//货物或服务名称
        }
        else if (item.key=='vat_invoice_haoma') {
            number = item.value;//发票号码
        }
        else if (item.key=='vat_invoice_daima') {
            code = item.value;//发票代码
        }
        else if (item.key=='vat_invoice_rate_payer_id') {
            buyer_id = item.value;//纳税人识别号
        }
        else if (item.key=='vat_invoice_haoma_large_size') {
            vat_invoice_haoma_large_size = item.value;//增值税发票No号码
        }
        else if (item.key=='vat_invoice_tax_total') {
            vat_invoice_tax_total = item.value;//税额合计
        }
        else if (item.key=='vat_invoice_drawer') {
            vat_invoice_drawer = item.value;//开票人
        }
    }
    db_1.add({
        data:{
            type_:true,
            image:filePath,
            date:date,//开票日期
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            money:money,//价税合计小写
            vat_invoice_goods_list:vat_invoice_goods_list,//货物或服务名称
            number:number,//发票号码
            code:code,//发票代码
            buyer_id:buyer_id,//纳税人识别号
            vat_invoice_haoma_large_size:vat_invoice_haoma_large_size,//增值税发票No号码
            vat_invoice_tax_total:vat_invoice_tax_total,//税额合计
            vat_invoice_drawer:vat_invoice_drawer,//开票人
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='motor_vehicle_sale_invoice') {
    /*
    motor_vehicle_sale_invoice	机动车销售统一发票
    */
    var date;
    var money;
    var vehicle_invoice_vehicle_type;
    var number;
    var code;
    var buyer_id;
    var tax;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='vehicle_invoice_issue_date') {
            date = item.value;//开票日期
        }
        else if (item.key=='vehicle_invoice_total_price_digits') {
            money = item.value;//价税合计小写
        }
        else if (item.key=='vehicle_invoice_vehicle_type') {
            vehicle_invoice_vehicle_type = item.value;//车辆类型
        }
        else if (item.key=='vehicle_invoice_haoma') {
            number = item.value;//发票号码
        }
        else if (item.key=='vehicle_invoice_daima') {
            code = item.value;//发票代码
        }
        else if (item.key=='vehicle_invoice_buyer_tax_id') {
            buyer_id = item.value;//购方纳税人识别号
        }
        else if (item.key=='vehicle_invoice_tax_amount') {
            tax = item.value;//增值税税额
        }
    }
    db_1.add({
        data:{
            type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            money:money,//价税合计小写
            date:date,//开票日期
            vehicle_invoice_vehicle_type:vehicle_invoice_vehicle_type,//车辆类型
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:buyer_id,//购方纳税人识别号
            tax:tax,//增值税税额
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='used_car_purchase_invoice') {
    /*
    used_car_purchase_invoice	二手车销售统一发票
    */
    var date;
    var money;
    var vehicle_invoice_vehicle_type;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='vehicle_invoice_issue_date') {
            date = item.value;//开票日期
        }
        else if (item.key=='vehicle_invoice_total_price_digits') {
            money = item.value;//价税合计小写
        }
        else if (item.key=='vehicle_invoice_vehicle_type') {
            vehicle_invoice_vehicle_type = item.value;//车辆类型
        }
        else if (item.key=='vehicle_invoice_haoma') {
            number = item.value;//发票号码
        }
        else if (item.key=='vehicle_invoice_daima') {
            code = item.value;//发票代码
        }
        else if (item.key=='vehicle_invoice_buyer_id') {
            buyer_id = item.value;//购买身份证号码/组织机构代码
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            money:money,//价税合计小写
            date:date,//开票日期
            vehicle_invoice_vehicle_type:vehicle_invoice_vehicle_type,//车辆类型
            code:code,//发票代码
            number:number,//购车发票号码
            buyer_id:buyer_id,//购买身份证号码/组织机构代码
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='vat_roll_invoice') {
    /*
    vat_roll_invoice	增值税普通发票(卷票)
    */
    var date;
    var money;
    var goods_name_list;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date_of_invoice') {
            date = item.value;//开票日期
        }
        else if (item.key=='total_money') {
            money = item.value;//合计金额(小写)
        }
        else if (item.key=='goods_name_list') {
            goods_name_list = item.value;//项目名称明细
        }
        else if (item.key=='invoice_number') {
            number = item.value;//发票号码
        }
        else if (item.key=='invoice_code') {
            code = item.value;//发票代码
        }
        else if (item.key=='buy_tax_number') {
            buyer_id = item.value;//购方纳税人识别号
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//开票日期
            money:money,//合计金额(小写)
            goods_name_list:goods_name_list,//项目名称明细
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:buyer_id,//购方纳税人识别号
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='vehicle_toll') {
    /*
    vehicle_toll	过路过桥费发票
    */
    var date;
    var money;
    var number;
    var code;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date') {
            date = item.value;//收费时间
        }
        else if (item.key=='money') {
            money = item.value;//收费金额
        }
        else if (item.key=='toll_number') {
            number = item.value;//车辆通行费号码
        }
        else if (item.key=='toll_code') {
            code = item.value;//发票代码
        }
    }
    db_1.add({
        data:{
          image:filePath,
          type_:false,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//收费时间
            money:money,//收费金额
            code:code,//发票代码
            number:number,//车辆通行费号码
            buyer_id:null,//
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='quota_invoice') {
    /*
    quota_invoice	通用定额发票
    */
    var money;
    var number;
    var code;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='money_small') {
            money = item.value;//金额(小写)
        }
        else if (item.key=='quota_invoice_number') {
            number = item.value;//发票号码
        }
        else if (item.key=='quota_invoice_code') {
            code = item.value;//发票代码
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:null,//
            money:money,//金额(小写)
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:null,//
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='taxi_ticket') {
    /*
    taxi_ticket	出租车发票
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date') {
            date = item.value;//日期
        }
        else if (item.key=='sum') {
            money = item.value;//总计金额
        }
        else if (item.key=='invoice_no') {
            number = item.value;//发票号码
        }
        else if (item.key=='invoice_code') {
            code = item.value;//发票代码
        }
        else if (item.key=='invoice_no') {
            buyer_id = item.value;//发票号码
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//日期
            money:money,//总计金额
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:null,//
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='air_transport') {
    /*
    air_transport	行程单
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='issued_date') {
            date = item.value;//填开日期
        }
        else if (item.key=='total') {
            money = item.value;//合计金额
        }
        else if (item.key=='e_ticket_no') {
            number = item.value;//电子客票号码
        }
        else if (item.key=='agentcode') {
            code = item.value;//销售单位代号
        }
        else if (item.key=='id_no') {
            buyer_id = item.value;//身份证件号码
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//填开日期
            money:money,//合计金额
            code:code,//销售单位代号
            number:number,//电子客票号码
            buyer_id:buyer_id,//身份证件号码
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='train_ticket') {
    /*
    train_ticket	火车票
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='departure_date') {
            date = item.value;//乘车时间
        }
        else if (item.key=='price') {
            money = item.value;//价格
        }
        else if (item.key=='ticket_id') {
            number = item.value;//火车票ID
        }
        else if (item.key=='code') {
            code = item.value;//发票代码
        }
        else if (item.key=='passenger_id') {
            buyer_id = item.value;//乘客身份证
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//乘车时间
            money:money,//价格
            code:code,//发票代码
            number:number,//火车票ID
            buyer_id:buyer_id,//乘客身份证
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='general_machine_invoice') {
    /*
    general_machine_invoice	通用机打发票
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    var seller_tax_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date') {
            date = item.value;//日期
        }
        else if (item.key=='money') {
            money = item.value;//金额
        }
        else if (item.key=='invoice_number') {
            number = item.value;//发票号码
        }
        else if (item.key=='invoice_code') {
            code = item.value;//发票代码
        }
        else if (item.key=='buyer_tax_id') {
            buyer_id = item.value;//付款方证件号
        }
        else if (item.key=='seller_tax_id') {
            seller_tax_id = item.value;//收款方证件号
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//日期
            money:money,//金额
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:buyer_id,//付款方证件号
            seller_id:seller_tax_id,//收款方证件号
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='shipping_invoice') {
    /*
    shipping_invoice	船运客票
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date') {
            date = item.value;//日期
        }
        else if (item.key=='money') {
            money = item.value;//金额
        }
        else if (item.key=='invoice_number') {
            number = item.value;//发票号码
        }
        else if (item.key=='invoice_code') {
            code = item.value;//发票代码
        }
        else if (item.key=='passenger') {
            buyer_id = item.value;//乘船人
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//日期
            money:money,//金额
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:buyer_id,//乘船人
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='highway_passenger_invoice'||
    result_1.object_list[0].type=='passenger_transport_invoice') {
    /*
    highway_passenger_invoice	公路客运发票
    passenger_transport_invoice	旅客运输普票
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date') {
            date = item.value;//日期
        }
        else if (item.key=='money') {
            money = item.value;//金额
        }
        else if (item.key=='invoice_number') {
            number = item.value;//发票号码
        }
        else if (item.key=='invoice_code') {
            code = item.value;//发票代码
        }
        else if (item.key=='passenger_id') {
            buyer_id = item.value;//乘客身份证号码
        }
    }
    db_1.add({
        data:{
          type_:false,
            image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//日期
            money:money,//金额
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:buyer_id,//乘客身份证号码
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='parking_invoice') {
    /*
    parking_invoice	停车费发票
    */
    var money;
    var number;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='money') {
            money = item.value;//金额
        }
        else if (item.key=='invoice_number') {
            number = item.value;//发票号码
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            date:null,//
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            money:money,//金额
            code:null,//
            number:number,//发票号码
            buyer_id:null,//
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='vat_invoice_sales_list') {
    /*
    vat_invoice_sales_list	增值税销货清单
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='issued_date') {
            date = item.value;//填开日期
        }
        else if (item.key=='total') {
            money = item.value;//合计金额
        }
        else if (item.key=='invoice_number') {
            number = item.value;//发票号码
        }
        else if (item.key=='invoice_code') {
            code = item.value;//发票代码
        }
        else if (item.key=='purchaser_name') {
            buyer_id = item.value;//购买方名称
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//填开日期
            money:money,//合计金额
            code:code,//发票代码
            number:number,//发票号码
            buyer_id:buyer_id,//购买方名称
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='shop_receipt') {
    /*
    shop_receipt	商户小票
    */
    var date;
    var money;
    var number;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='date') {
            date = item.value;//日期
        }
        else if (item.key=='money') {
            money = item.value;//金额
        }
        else if (item.key=='no') {
            number = item.value;//单号
        }
        else if (item.key=='shop') {
            buyer_id = item.value;//商户
        }
    }
    db_1.add({
        data:{
          type_:false,
            image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//日期
            money:money,//金额
            code:null,//
            number:number,//单号
            buyer_id:buyer_id,//商户
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='medical_receipt') {
    /*
    medical_receipt	医疗费收据
    */
    var money;
    var number;
    var code;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='amount_small') {
            money = item.value;//小写合计
        }
        else if (item.key=='invoice_number') {
            number = item.value;//票据编号
        }
        else if (item.key=='invoice_bar_code') {
            code = item.value;//票据条码
        }
        else if (item.key=='social_security_number') {
            buyer_id = item.value;//社会保障卡号
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            date:null,//
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            money:money,//小写合计
            code:code,//票据条码
            number:number,//票据编号
            buyer_id:buyer_id,//社会保障卡号
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='travel_transport') {
    /*
    travel_transport	出行行程单
    */
    var date;
    var money;
    var buyer_id;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='apply_date') {
            date = item.value;//申请日期
        }
        else if (item.key=='total_money') {
            money = item.value;//合计金额
        }
        else if (item.key=='phone_number') {
            buyer_id = item.value;//行程人手机号
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//申请日期
            money:money,//合计金额
            code:null,//
            number:null,//发票号码
            buyer_id:buyer_id,//行程人手机号
            income_or_expenses:flag,//
        }
    })
}
else if(result_1.object_list[0].type=='non_tax_income_unified_bill') {
    /*
    non_tax_income_unified_bill	非税收入票据
    */
    var date;
    var money;
    var number;
    var code;
    var buyer_id;
    var ItemName;
    for (i=0; i<result_1.object_list[0].item_list.length; i++) {
        item = result_1.object_list[0].item_list[i];
        if (item.key=='IssuedDate') {
            date = item.value;//开票日期
        }
        else if (item.key=='TotalAmount') {
            money = item.value;//总金额
        }
        else if (item.key=='EInvoiceNumber') {
            number = item.value;//电子票据号码
        }
        else if (item.key=='EInvoiceCode') {
            code = item.value;//电子票据代码
        }
        else if (item.key=='PayerPartyCode') {
            buyer_id = item.value;//交款人代码
        }
        else if (item.key=='ItemName') {
            buyer_id = item.value;//项目名称
        }
    }
    db_1.add({
        data:{
          type_:false,
          image:filePath,
            type:result_1.object_list[0].type,//票据类型
            type_description:result_1.object_list[0].type_description,//票据类型中文描述
            date:date,//开票日期
            money:money,//总金额
            ItemName:ItemName,//项目名称
            code:code,//电子票据代码
            number:number,//电子票据号码
            buyer_id:buyer_id,//交款人代码
            income_or_expenses:flag,//
        }
    })
}



              
              count++;
              wx.setStorageSync('count', count);
              console.log('上传成功', res)
            },
          })
          // 用户点击了确认按钮
          // 在这里可以添加保存操作的逻辑
        } else if (res.cancel) {
          // 用户点击了取消按钮
          // 在这里可以添加取消操作的逻辑
        }
      }
    })
  },
  fail(err) {
    console.error(err); // 请求失败的回调函数
  }
});
        
        // wx.request({
        //   url: url, // 替换为你的服务器地址
        //   method: 'POST',
        //   header: {
        //     'content-type': 'application/octet-stream' ,// 根据服务器的要求设置 content-type
        //     'x-ti-app-id': appId, // 可以添加其他表单数据
        //     'x-ti-secret-code': secretCode
        //   },
        //   data: {
        //     image: firstImageEncoding, // 将图片的 Base64 编码作为请求的参数
        //   },
        //   success:res=> {
        //     console.log(res.data); // 上传成功后的响应数据
        //   },
        //   fail(error) {
        //     console.error("上传文件失败:", error);
        //   }
        // });
      }

      else{
        console.log("未传输照片")
      }
    }
})
},

以下是发票验真的使用

formSubmit: function(e) {
    const formData = e.detail.value;
    wx.request({
      url: 'https://api.textin.com/robot/v1.0/api/verify_vat',
      method: 'POST',
      header: {
        'Content-Type': 'application/json',
        'x-ti-app-id': '',//此处自己填写
        'x-ti-secret-code': ''//此处自己填写
      },
      data: {
        "invoice_code": "",
        "invoice_no": formData.number,
        "invoice_date": formData.date,
        "invoice_sum": "",
        "verify_code": ""
      },
      success: function(res) {
        if (res.data.result.data.cyjgxx=='') {
          wx.showModal({
            title: '提示',
            content: '输入的信息有误',
            showCancel: false, // 不显示取消按钮
            success(res) {
              if (res.confirm) {
                console.log('用户点击了确定按钮');
                // 在这里可以执行相应的操作
              }
            }
          })
        }
        else
        {
          wx.showModal({
            title: '提示',
            content: res.data.result.data.cyjgxx,
            showCancel: false, // 不显示取消按钮
            success(res) {
              if (res.confirm) {
                console.log('用户点击了确定按钮');
                // 在这里可以执行相应的操作
              }
            }
          })
        }
        
        // 请求成功的处理逻辑
        console.log(res.data);
      },
      fail: function(error) {
        // 请求失败的处理逻辑
        console.error(error);
      }
    })
    
    // 这里可以处理表单提交后的逻辑
  },

 

五:使用心得

TextIn以其强大的功能、简便的集成和卓越的性能,成为了我们本次项目中不可或缺的工具。它不仅加快了我们的开发进程,还为我们提供了深入分析文本数据的能力。无论是初创公司还是大型企业,TextIn都是一个值得信赖的选择。 

  • 8
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值