【精伦iDR210】 身份证读取与酒店收银系统源码整合:CyberWinApp-SAAS 本地化及未来之窗行业应用跨平台架构

一、酒店系统连接身份证阅读器好处


在开房界面,点击读取身份证,可以自动读取姓名,性别,地址,身份证号码

1. 提高办理入住效率
- 传统的手动输入身份证信息繁琐且容易出错,一键读取能够快速准确地获取客人身份信息,减少客人等待时间。例如,在旅游旺季,大量客人涌入酒店,快速的办理入住可以避免大堂拥堵,提升客人的第一印象。
- 让前台工作人员能够更专注于提供优质的服务,而不是花费大量时间在信息录入上。

2. 确保信息准确性
- 避免因手动输入导致的错误,如姓名拼写错误、身份证号码错误等。曾经就有酒店因为手动输入错误的身份证信息,导致与公安系统的信息对接出现问题,给酒店带来了不必要的麻烦。
- 保证客人信息的完整性和一致性,为后续的服务和管理提供可靠的数据基础。

二、查看二代证读卡器信息

三、玄武星辰查到对应名称

知道自己家身份证读卡器,使用未来之窗【玄武芯辰】查询

通过上面我看出叫做iDR210

在【玄武芯辰】输入iDR210,人工智能会提示app信息

四、设置身份证控制app

在上一步找到app,直接在酒店系统重选择控制app

五:iDR210身份证代码

using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.Specialized;

using System.Windows.Forms;

using System.Data.SQLite; 

using System.IO;
using System.Drawing;

//
using System.Data;
using System.Data.Common;

//引用数据库


//using CyberSnow.VB.NET.Data.Helper;

//
using System.Text.RegularExpressions;

using CyberWin.CSHARP.YNWLZC.WebFrame.CyberPHP.CyberWinWeb.WebData;

using System.Runtime.InteropServices;//这是用到DllImport时候要引入的包
 



//故障排查系统查询
namespace CyberPHP_Dynamic
{
    class APP
    {
        private string cyber_db_shopgoods = Application.StartupPath + "/CyberWinPHP/CyberPHP_DataBase/cwpd_local_shopnew.cyberphp";

	private string 身份证照片保存路径="";


	 public string start(NameValueCollection obj){
	    string 车牌号码="";
	       NameValueCollection d=obj;
	       车牌号码 = d["carNO"];

	     string s="随机预安装插件"+cyber_db_shopgoods;
	     return s;
	 }


	 public string getCardInfo(NameValueCollection obj){
	        NameValueCollection d=obj;
	        string param = d["param"];

	        身份证照片保存路径=param;

		  try
		    {
			    StringBuilder Name = new StringBuilder(31);
            StringBuilder Gender = new StringBuilder(3);
            StringBuilder Folk = new StringBuilder(10);
            StringBuilder BirthDay = new StringBuilder(9);
            StringBuilder Code = new StringBuilder(19);
            StringBuilder Address = new StringBuilder(71);
            StringBuilder Agency = new StringBuilder(31);
            StringBuilder ExpireStart = new StringBuilder(9);
            StringBuilder ExpireEnd = new StringBuilder(9);
            StringBuilder directory = new StringBuilder(100);
            StringBuilder pucFPMsg = new StringBuilder(1024);
            //byte[] pMsg = new byte[256];
            //int len = 0;
            //string[] temp;
            //string[] baseinfo = new string[9];
            //char[] param = { '\0' };

            //打开端口
            int intOpenRet = InitComm(1001);
            if (intOpenRet != 1)
            {
                //MessageBox.Show("阅读机具未连接");
		return "9";
            }

            //卡认证
            int intReadRet = Authenticate();
            if (intReadRet != 1)
            {
               // MessageBox.Show("卡认证失败");
	        
                CloseComm();
                return "9";
            }
           
            //directory.Append("C:\\");

            
            int intReadBaseInfosRet = ReadBaseInfosPhoto(Name, Gender, Folk, BirthDay, Code, Address, Agency, ExpireStart, ExpireEnd, directory);
                      if (intReadBaseInfosRet != 1)
            {
                //MessageBox.Show("读卡失败");
		 
                CloseComm();
		return "9";
                
            }
            
          //  label4.Text = Code.ToString();

          //  label6.Text = Name.ToString();

           // label8.Text = Gender.ToString();

           // label10.Text = Folk.ToString();

          //  label12.Text = BirthDay.ToString();

          //  label14.Text = Address.ToString();

           // label16.Text = Agency.ToString();

          //  label18.Text = ExpireStart.ToString();

          //  label20.Text = ExpireEnd.ToString();
            
           // pictureBox1.Load("c:\\photo.bmp");
            //pictureBox1.Load("photo.bmp");
            //MessageBox.Show("" + pucFPMsg.ToString());


//ReadBaseMsg(不推荐使用)






          


                     string labelSamID ="";


		      string labelIdCardNo  = Code.ToString();

            string labelName = Name.ToString();

            string labelSex  = Gender.ToString();

           string labelNation = Folk.ToString();

          string labelBirthday  = BirthDay.ToString();

           string labelAddress = Address.ToString();

             string labelDepartment  = Agency.ToString();

             string labelValidDate = ExpireStart.ToString();

            string labelValidDate2 = ExpireEnd.ToString();



            

            

            

             

           

              

            

           // label18.Text = baseinfo[7];

 

            //pictureBox1.Load("photo.bmp"); 
 
            //关闭端口
            int intCloseRet = CloseComm();

	     string json="";

	     json=json+"{";
			      json=json+"\"name\":"+"\""+labelName+"\",";
			      json=json+"\"sex\":"+"\""+labelSex+"\",";
			      json=json+"\"nation\":"+"\""+labelNation+"\",";
			      json=json+"\"birthday\":"+"\""+labelBirthday+"\",";
			      json=json+"\"idcardno\":"+"\""+labelIdCardNo+"\",";
			      json=json+"\"address\":"+"\""+labelAddress+"\",";
			      json=json+"\"department\":"+"\""+labelDepartment+"\",";
			       json=json+"\"validdate\":"+"\""+labelValidDate+"\",";
			        json=json+"\"samiD\":"+"\""+labelSamID+"\"";
				
			      json=json+"}";

			     json=json+"";
			     return json;




		    }
		    catch (Exception ex)
		    {
			//MessageBox.Show(ex.ToString());
			//return ex.ToString();
			return "4";
		    }
	    }



	 
	 

 

	 

 

	//日志
	 public static void write_log(string capturetype, string type, string s)
         {
            string logPath = Application.StartupPath + "/log/" + capturetype + "/" + DateTime.Now.ToLongDateString() + "/";
            if (System.IO.Directory.Exists(logPath) == false)
            {
                System.IO.Directory.CreateDirectory(logPath);
            }
            string 文件路径 = logPath + type + "_log.log";

            FileStream fs = new FileStream(文件路径, FileMode.Append);
            StreamWriter sw = new StreamWriter(fs);
            //开始写入
            sw.WriteLine("==============================\r\n" + DateTime.Now.ToLongDateString() + "<<<<<<<<<<<<<<<<<<<<<<<<<<");
            sw.WriteLine(s);
            sw.WriteLine("");
            //清空缓冲区
            sw.Flush();
            //关闭流
            sw.Close();
            fs.Close();
        }



	[DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int InitComm(int iPort);
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int Authenticate();
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int ReadBaseInfos(StringBuilder Name, StringBuilder Gender, StringBuilder Folk,
                                                    StringBuilder BirthDay, StringBuilder Code, StringBuilder Address,
                                                        StringBuilder Agency, StringBuilder ExpireStart, StringBuilder ExpireEnd);
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int ReadBaseInfosPhoto(StringBuilder Name, StringBuilder Gender, StringBuilder Folk,
                                                    StringBuilder BirthDay, StringBuilder Code, StringBuilder Address,
                                                        StringBuilder Agency, StringBuilder ExpireStart, StringBuilder ExpireEnd, StringBuilder directory);
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int ReadBaseInfosFPPhoto(StringBuilder Name, StringBuilder Gender, StringBuilder Folk,
                                                    StringBuilder BirthDay, StringBuilder Code, StringBuilder Address,
                                                        StringBuilder Agency, StringBuilder ExpireStart, StringBuilder ExpireEnd, StringBuilder directory,StringBuilder pucFPMsg, ref int puiFPMsgLen);
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int CloseComm();
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int ReadBaseMsg(byte[] pMsg, ref int len);
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int ReadBaseMsgW(byte[] pMsg, ref int len);
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int Routon_IC_FindCard();
        [DllImport("CyberWinPHP/CyberPHP_Application/CyberWin_App/CyberWinIDCardJingLunID210/Sdtapi.dll")]
        private static extern int Routon_IC_HL_ReadCardSN(StringBuilder SN);

	 

    
	 
     }
}

 六、扩展资源配置

<?xml version="1.0" encoding="GBK"?>
<!--  Copyright www.ynwlzc.cn -->
<cyberwin>
	<include>
		<cyber_lib author="cybersnow" path="System.Xml.dll"> </cyber_lib>
		<cyber_lib author="cybersnow" path="{cyberphp_core}/System.Data.dll"></cyber_lib>
		<cyber_lib author="cybersnow" path="{cyberphp_core}/CyberWin.CSHARP.YNWLZC.WebFrame.CyberPHP.exe"></cyber_lib>
		<cyber_lib author="cybersnow" path="{cyberphp_core}/System.Data.SQLite.DLL"></cyber_lib>
		<cyber_lib author="cybersnow" path="System.Windows.Forms.dll"></cyber_lib>
		<cyber_lib author="cybersnow" path="System.Drawing.dll"></cyber_lib>
    </include>
</cyberwin>

 

七、身份证读卡器厂家dll模块,拖到指定位置

将厂家文件放入程序位置

八、如何开通酒店押金原路系统和收银系统

自己可以注册,不需要他人自己就就能搞定

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值