コード例 #1
0
 private void button10_Click(object sender, EventArgs e)
 {
     Model.Q_sfz_save M_Q_sfz_save = new Hotel_app.Model.Q_sfz_save();
     BLL.Q_sfz_save   B_Q_sfz_save = new Hotel_app.BLL.Q_sfz_save();
     M_Q_sfz_save = B_Q_sfz_save.GetModel(1);
     if (M_Q_sfz_save != null)
     {
         byte[] b = (byte[])M_Q_sfz_save.krxp;
         if (b.Length > 0)
         {
             MemoryStream stream = new MemoryStream(b, true);
             stream.Write(b, 0, b.Length);
             pictureBox1.Image = new Bitmap(stream);
             stream.Close();
         }
     }
 }
コード例 #2
0
            /// <summary>
            /// 读取身份证信息
            /// </summary>
            /// <param name="tBkrxm"></param>
            /// <param name="tBkrxb"></param>
            /// <param name="tBnation"></param>
            /// <param name="tBadd"></param>
            /// <param name="tBid"></param>
            /// <param name="tBkrsr"></param>
            /// <param name="tBdepart"></param>
            /// <param name="tBstart"></param>
            /// <param name="tBend"></param>
            /// <param name="imakrxp"></param>
            /// <param name="sh_massage"></param>
            /// <param name="massage_nr"></param>
            /// <returns></returns>
            public string get_sfz_info(ref string tBkrxm, ref string tBkrxb, ref string tBnation, ref string tBadd, ref string tBid, ref string tBkrsr, ref string tBdepart, ref string tBstart, ref string tBend, ref byte[] imakrxp, bool sh_massage, ref string massage_nr)
            {
                string s_0        = "";
                int    tempReturn = 0;
                bool   usbPort    = false;

                try
                {
                    for (int port = 1001; port <= 1006; port++)
                    {
                        tempReturn = InitComm(port);
                        if (tempReturn == 1)
                        {
                            usbPort = true;
                            UsePort = port;
                            break;
                        }
                    }
                    //检测串口的机具连接
                    if (!usbPort)
                    {
                        for (int port = 1; port <= 6; port++)
                        {
                            tempReturn = InitComm(port);
                            if (tempReturn == 1)
                            {
                                usbPort = false;
                                UsePort = port;
                                break;
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.ToString());
                }
                finally
                {
                }


                if (tempReturn != 1)
                {
                    if (sh_massage == true)
                    {
                        common_file.common_app.Message_box_show(common_file.common_app.message_title, "端口打开失败,请检测相应的端口或者重新连接读卡器!");
                    }
                    else
                    {
                        massage_nr = "端口打开失败,请检测相应的端口或者重新连接读卡器!";
                    }
                    try
                    {
                        CloseComm();
                    }
                    catch
                    {
                    }
                }
                else
                {
                    try
                    {
                        CloseComm();
                        InitComm(UsePort);
                        Authenticate();
                        if (Read_Content(1) != 1)
                        {
                            if (sh_massage == true)
                            {
                                common_file.common_app.Message_box_show(common_file.common_app.message_title, "读卡失败,请确认是否把有效的二代身份证放在读卡器上!");
                            }
                            else
                            {
                                massage_nr = "读卡失败,请确认是否把有效的二代身份证放在读卡器上!";
                            }
                            CloseComm();
                        }
                        else
                        {
                            string cznr = "";
                            string czzy = "";
                            string czbz = "";
                            try
                            {
                                int           i      = 0;
                                StringBuilder szName = new StringBuilder(NameLen);
                                add_info(ref szName, NameLen);
                                czzy   = "1" + szName.ToString();
                                i      = GetPeopleName(szName, NameLen);
                                czzy   = "1" + szName.ToString();
                                tBkrxm = szName.ToString().Trim().Replace(bs, "");

                                cznr = "客人姓名";

                                StringBuilder szSex = new StringBuilder(SexLen);
                                add_info(ref szSex, SexLen);
                                czzy   = "2" + szSex.ToString();
                                i      = GetPeopleSex(szSex, SexLen);
                                czzy   = "2" + szSex.ToString();
                                tBkrxb = szSex.ToString().Trim().Replace(bs, "");

                                cznr = "性别";

                                StringBuilder szNation = new StringBuilder(NationLen);
                                add_info(ref szNation, NationLen);
                                czzy     = "3" + szNation.ToString();
                                i        = GetPeopleNation(szNation, NationLen);
                                czzy     = "3" + szNation.ToString();
                                tBnation = szNation.ToString().Trim().Replace(bs, "");

                                cznr = "民族";

                                StringBuilder szBirthday = new StringBuilder(DateLen);
                                add_info(ref szBirthday, DateLen);
                                czzy   = "4" + szBirthday.ToString();
                                i      = GetPeopleBirthday(szBirthday, DateLen);
                                czzy   = "4" + szBirthday.ToString();
                                tBkrsr = szBirthday.ToString().Trim().Replace(bs, "");

                                cznr = "生日";


                                StringBuilder szID = new StringBuilder(IdLen);
                                add_info(ref szID, IdLen);
                                czzy = "5" + szID.ToString();
                                i    = GetPeopleIDCode(szID, IdLen);
                                czzy = "5" + szID.ToString();
                                tBid = szID.ToString().Trim().Replace(bs, "");


                                cznr = "号码";


                                StringBuilder szStartDate = new StringBuilder(StartdateLen);
                                add_info(ref szStartDate, StartdateLen);
                                czzy    = "6" + szStartDate.ToString();
                                i       = GetStartDate(szStartDate, StartdateLen);
                                czzy    = "6" + szStartDate.ToString();
                                tBstart = szStartDate.ToString().Trim().Replace(bs, "");


                                cznr = "开始";

                                StringBuilder szEndDate = new StringBuilder(EnddateLen);
                                add_info(ref szEndDate, EnddateLen);
                                czzy  = "7" + szEndDate.ToString();
                                i     = GetEndDate(szEndDate, EnddateLen);
                                czzy  = "7" + szEndDate.ToString();
                                tBend = szEndDate.ToString().Trim().Replace(bs, "");

                                cznr = "结束";

                                StringBuilder szDepartment = new StringBuilder(DepartmentLen);
                                add_info(ref szDepartment, DepartmentLen);
                                czzy     = "8" + szDepartment.ToString();
                                i        = GetDepartment(szDepartment, DepartmentLen);
                                czzy     = "8" + szDepartment.ToString();
                                tBdepart = szDepartment.ToString().Trim().Replace(bs, "");


                                cznr = "部门";


                                StringBuilder szAddress = new StringBuilder(AddrLen);
                                add_info(ref szAddress, AddrLen);
                                czzy  = "9" + szAddress.ToString();
                                i     = GetPeopleAddress(szAddress, AddrLen);
                                czzy  = "9" + szAddress.ToString();
                                tBadd = szAddress.ToString().Trim().Replace(bs, "");

                                cznr = "地址";


                                Beep(2047, 300);
                                CloseComm();



                                if (tBid != "")
                                {
                                    BLL.Q_sfz_save B_Q_sfz_save = new Hotel_app.BLL.Q_sfz_save();
                                    DataSet        ds_temp      = B_Q_sfz_save.GetList("zjhm='" + tBid + "'");
                                    if (ds_temp != null && ds_temp.Tables[0].Rows.Count > 0)
                                    {
                                    }
                                    else
                                    {
                                        cznr = "输入数据"; czzy = cznr;
                                        byte[]     imageb   = new byte[0];
                                        string     savePath = Application.StartupPath + @"\ZP.bmp";
                                        FileStream fs       = System.IO.File.OpenRead(savePath);

                                        imageb = new byte[fs.Length];
                                        cznr   = "读图前"; czzy = cznr;
                                        fs.Read(imageb, 0, imageb.Length);
                                        cznr = "读图后"; czzy = cznr;
                                        Model.Q_sfz_save M_Q_sfz_save = new Hotel_app.Model.Q_sfz_save();
                                        cznr = "生成模前"; czzy = cznr;
                                        M_Q_sfz_save.zjhm = tBid;
                                        cznr = "生成模" + tBid; czzy = cznr;
                                        M_Q_sfz_save.krdz = tBadd;
                                        cznr = "生成模" + tBadd; czzy = cznr;
                                        M_Q_sfz_save.krmz = tBnation;
                                        cznr = "生成模" + tBnation; czzy = cznr;
                                        M_Q_sfz_save.krsr = DateTime.Parse(tBkrsr.Substring(0, 4) + "-" + tBkrsr.Substring(4, 2) + "-" + tBkrsr.Substring(6, 2));
                                        cznr = "生成模" + M_Q_sfz_save.krsr; czzy = cznr;
                                        M_Q_sfz_save.krxb = tBkrxb;
                                        cznr = "生成模" + tBkrxb; czzy = cznr;
                                        M_Q_sfz_save.krxm = tBkrxm;
                                        cznr = "生成模" + tBkrxm; czzy = cznr;

                                        fs.Flush();
                                        fs.Close();

                                        if (tBstart.Length > 9)
                                        {
                                            M_Q_sfz_save.startdate = DateTime.Parse(tBstart.Substring(0, 4) + "-" + tBstart.Substring(4, 2) + "-" + tBstart.Substring(6, 2));
                                            cznr = "生成模始" + tBstart.Substring(0, 4) + "-" + tBstart.Substring(4, 2) + "-" + tBstart.Substring(6, 2); czzy = cznr;
                                        }
                                        else
                                        {
                                            M_Q_sfz_save.startdate = DateTime.Parse(common_file.common_app.cssj);
                                        }
                                        if (tBend.Length > 9)
                                        {
                                            M_Q_sfz_save.enddate = DateTime.Parse(tBend.Substring(0, 4) + "-" + tBend.Substring(4, 2) + "-" + tBend.Substring(6, 2));
                                            cznr = "生成模尾" + tBend.Substring(0, 4) + "-" + tBend.Substring(4, 2) + "-" + tBend.Substring(6, 2); czzy = cznr;
                                        }
                                        else
                                        {
                                            M_Q_sfz_save.enddate = DateTime.Parse(common_file.common_app.cssj);
                                        }
                                        M_Q_sfz_save.department = tBdepart;
                                        cznr = "生成模尾" + tBdepart; czzy = cznr;
                                        if (imageb.Length > 0)
                                        {
                                            M_Q_sfz_save.krxp = imageb;
                                        }
                                        cznr = "获取片"; czzy = cznr;
                                        B_Q_sfz_save.Add(M_Q_sfz_save);
                                        imakrxp = imageb;
                                        cznr    = "保存后"; czzy = cznr;
                                    }
                                    //PictureBox PictureBox_new = new PictureBox();
                                    //PictureBox_new.ImageLocation = Application.StartupPath + @"\ZP.bmp";
                                    //PictureBox_nw_1 = PictureBox_new;
                                }
                            }
                            catch
                            {
                                common_file.common_czjl.add_czjl(common_file.common_app.yydh, common_file.common_app.qymc, common_file.common_app.czy, "检查身份证刷新问题", czzy, cznr, DateTime.Now);
                                common_file.common_app.Message_box_show(common_file.common_app.message_title, "读卡成功了,但转换数据时有问题了,请重新刷卡试试,如不行请重启酒店系统!");
                                CloseComm();
                            }
                            finally
                            {
                            }
                        }
                    }
                    catch (Exception ee)
                    {
                        common_file.common_app.Message_box_show(common_file.common_app.message_title, "读证错误,请关闭此窗体,打开重新读证.");
                    }
                }
                return(s_0);
            }