美文网首页dotNET.NET
C#通过接口获取黑盘基本信息

C#通过接口获取黑盘基本信息

作者: 不是程序猿的程序猿 | 来源:发表于2020-02-24 11:46 被阅读0次

    C#读盘需要引用C++ DLL
    通过传入XML报文,传出XML报文

    • 注意事项
    1. 程序必须使用32位
    2. 除了查询基本信息无需注册码外,其它操作均需要注册码。注册码来源不明
    3. 开票有开票接口组件,本文仅读取盘内的基本信息

    接口定义

    skpc.dll文件依赖 NISEC_SKP.dll、ZLib_Tools.dll

    //税控盘接口//
    //载入DLL
    [DllImport("skpc.dll", EntryPoint = "OperateDisk", CharSet = CharSet.Ansi)];
    //声明方法
    public static extern IntPtr OperateDisk(String InXml, byte[] OutXml);
    

    传入的Xml报文

    //skpkl节点为盘口令,默认口令是88888888
    <?xml version=""1.0"" encoding=""gbk""?>
    <business comment=""税控盘信息查询"" id=""SKPXXCX"">
      <body yylxdm=""1"">
        <input>
          <skpkl>88888888</skpkl>
        </input>
      </body>
    </business>
    

    应用实例

            /// <summary>
            /// 读取税控盘
            /// </summary>
            /// <param name="sInputxml">传入的XML报文</param>
            /// <returns>返回XML</returns>
            public static string Skpinfo(string sInputxml)
            {
                byte[] buffer = new byte[1048576]; 
                OperateDisk(sInputxml, buffer); 
                return Encoding.Default.GetString(buffer, 0, Array.IndexOf(buffer, (byte)0));
            }
    

    返回Xml报文

    <?xml version="1.0" encoding="gbk"?>
    <business comment="税控盘信息查询" id="SKPXXCX">
      <body yylxdm="1">
        <output>
            <skpbh>税控盘编号</skpbh>
            <nsrsbh>纳税人识别号</nsrsbh>
            <nsrmc>纳税人名称</nsrmc>
            <swjgdm>税务机关代码</swjgdm>
            <swjgmc>税务机关名称</swjgmc>
            <fplxdm>发票类型代码</fplxdm>
            <dqsz>当前时钟</dqsz>
            <qysj>启用时间</qysj>
            <bbh>版本号</bbh>
            <kpjh>开票机号</kpjh>
            <qylx>企业类型</qylx>
            <blxx>保留信息</blxx>
            <qtkzxx>其它扩展信息</qtkzxx>
            <returncode>读盘状态代码</returncode>
            <returnmsg>读盘状态信息</returnmsg>
         </output>
      </body>
    </business>
    
    • 参数说明
    节点 名称 长度 说明
    yylxdm 应用类型代码 1 1:国税 、2:地税
    skpkl 税控盘口令 8
    skpbh 税控盘编号 12
    nsrsbh 纳税人识别号 20
    nsrmc 纳税人名称 80
    swjgdm 税务机关代码 11 9位或者11位
    swjgmc 税务机关名称 80
    fplxdm 发票类型代码 30 存在的所有发票类型代码(三位一组,无分割)
    dqsz 当前时钟 14 YYYYMMDDHHMMSS
    qysj 启用时间 14 YYYYMMDDHHMMSS
    bbh 版本号 10
    kpjh 开票机号 5 最大65535
    qylx 企业类型 3 “00”不特殊企业“01”特殊企业
    blxx 保留信息 16 农产品销售收购类型+铁路企业类型+纳税人性质
    qtkzxx 其它扩展信息
    returncode 返回代码 8 00000000成功,其它失败
    returnmsg 返回信息 256 读盘状态信息

    税控盘信息查询工具

    相关文章

      网友评论

        本文标题:C#通过接口获取黑盘基本信息

        本文链接:https://www.haomeiwen.com/subject/gqmyqhtx.html