/// <summary> /// 获取读卡器设置 /// </summary> /// <param name="config"></param> /// <returns></returns> public static bool GetCardReaderBaseConfig(ref CardReaderBasicConfig config, string clienttype) { SCdoc = new XmlDocument(); string fileDircetoryPath = AppDomain.CurrentDomain.BaseDirectory; string scfilePath = ""; if (clienttype == "Select") { scfilePath = string.Format("{0}SeatClient\\SeatClient.exe.config", fileDircetoryPath); } else if (clienttype == "Leave") { scfilePath = string.Format("{0}LeaveClient.exe.config", fileDircetoryPath); } if (File.Exists(scfilePath)) { try { SCdoc.Load(scfilePath); XmlNodeList nodes = SCdoc.SelectNodes("//configuration/appSettings/add"); foreach (XmlNode node in nodes) { if (node.Attributes["key"].Value == "CardSnType") { int t = int.Parse(node.Attributes["value"].Value); switch (t) { case 0: config.CardID10Or16 = 10; config.CardIDIsChange = false; break; case 1: config.CardID10Or16 = 16; config.CardIDIsChange = false; break; case 2: config.CardID10Or16 = 16; config.CardIDIsChange = true; break; case 3: config.CardID10Or16 = 10; config.CardIDIsChange = true; break; } } else if (node.Attributes["key"].Value == "IsBeep") { config.IsBeep = bool.Parse(node.Attributes["value"].Value); } else if (node.Attributes["key"].Value == "cardSnLength") { if (node.Attributes["value"].Value == "Full") { config.IsAdd0 = true; } else { config.IsAdd0 = false; } } else if (node.Attributes["key"].Value == "XZX_ServerEndPort") { config.XZX_ServerEndPort = node.Attributes["value"].Value; } else if (node.Attributes["key"].Value == "XZX_SysCode") { config.XZX_SysCode = node.Attributes["value"].Value; } else if (node.Attributes["key"].Value == "XZX_TerminalNo") { config.XZX_TerminalNo = node.Attributes["value"].Value; } else if (node.Attributes["key"].Value == "XZX_Offline") { config.XZX_Offline = bool.Parse(node.Attributes["value"].Value); } else if (node.Attributes["key"].Value == "XZX_AddReader") { config.XZX_AddReader = bool.Parse(node.Attributes["value"].Value); } else if (node.Attributes["key"].Value == "XZX_IsOnelyReaderCardId") { config.XZX_IsOnelyReaderCardId = bool.Parse(node.Attributes["value"].Value); } else if (node.Attributes["key"].Value == "Hook_isCardNo") { config.Hook_isCardNo = bool.Parse(node.Attributes["value"].Value); } else if (node.Attributes["key"].Value == "PosPort") { config.FKport = node.Attributes["value"].Value; } else if (node.Attributes["key"].Value == "IPOSMethod") { switch (node.Attributes["value"].Value) { case "PosObject.PosObject,PosObject": config.CardReaderTye = 0; break; case "PosObject.PosObject,PosObject_XZX": config.CardReaderTye = 1; break; case "PosObject.PosObject,PosObject_FK": config.CardReaderTye = 2; break; case "PosObject.PosObject,PosObject_HOOK": config.CardReaderTye = 3; break; case "PosObject.PosObject,PosObject_CUT": config.CardReaderTye = 4; break; case "PosObject.PosObject,PosObject_Customer": config.CardReaderTye = 5; break; } } } return(true); } catch { return(false); } } else { return(false); } }
private void button13_Click(object sender, EventArgs e) { Code.CardReaderBasicConfig config = new Code.CardReaderBasicConfig(); if (rb_mh.Checked) { if (rb_10.Checked) { config.CardID10Or16 = 10; } else { config.CardID10Or16 = 16; } config.CardIDIsChange = cb_change.Checked; config.IsAdd0 = cb_add0.Checked; } else if (rb_fk.Checked) { if (fk_10.Checked) { config.CardID10Or16 = 10; } else { config.CardID10Or16 = 16; } config.CardIDIsChange = fk_change.Checked; config.IsAdd0 = fk_add0.Checked; } config.IsBeep = cb_Isbeep.Checked; config.FKport = fk_port.Text; config.XZX_Offline = xzx_off.Checked; config.XZX_ServerEndPort = txt_xzx_ip.Text; config.XZX_SysCode = txt_xzx_sys.Text; config.XZX_TerminalNo = txt_xzx_tre.Text; config.XZX_AddReader = xzx_addreader.Checked; if (rb_xzx_readcardid.Checked) { config.XZX_IsOnelyReaderCardId = true; } else { config.XZX_IsOnelyReaderCardId = false; } if (rb_gz_cardid.Checked) { config.Hook_isCardNo = false; } else { config.Hook_isCardNo = true; } if (rb_mh.Checked) { config.CardReaderTye = 0; } else if (rb_xzx.Checked) { config.CardReaderTye = 1; } else if (rb_fk.Checked) { config.CardReaderTye = 2; } else if (rb_gz.Checked) { config.CardReaderTye = 3; } else if (rb_cut.Checked) { config.CardReaderTye = 4; } else if (rb_dz.Checked) { config.CardReaderTye = 5; } if (Code.CardReaderConfig.SaveConfig(config, clientmode)) { MessageBox.Show("保存成功!"); } else { MessageBox.Show("保存失败!"); } }
/// <summary> /// 保存 /// </summary> /// <param name="config"></param> /// <returns></returns> public static bool SaveConfig(CardReaderBasicConfig config, string clienttype) { SCdoc = new XmlDocument(); string fileDircetoryPath = AppDomain.CurrentDomain.BaseDirectory; string scfilePath = ""; if (clienttype == "Select") { scfilePath = string.Format("{0}SeatClient\\SeatClient.exe.config", fileDircetoryPath); } else if (clienttype == "Leave") { scfilePath = string.Format("{0}LeaveClient.exe.config", fileDircetoryPath); } if (File.Exists(scfilePath)) { bool isbeepUpdate = false; bool isxzx_isreadcarddidupdate = false; bool ishook_isreadecard = false; try { SCdoc.Load(scfilePath); XmlNodeList nodes = SCdoc.SelectNodes("//configuration/appSettings/add"); foreach (XmlNode node in nodes) { if (node.Attributes["key"].Value == "CardSnType") { if (config.CardID10Or16 == 10) { if (config.CardIDIsChange) { node.Attributes["value"].Value = "3"; } else { node.Attributes["value"].Value = "0"; } } else { if (config.CardIDIsChange) { node.Attributes["value"].Value = "2"; } else { node.Attributes["value"].Value = "1"; } } } else if (node.Attributes["key"].Value == "IsBeep") { if (config.IsBeep) { node.Attributes["value"].Value = "true"; } else { node.Attributes["value"].Value = "false"; } isbeepUpdate = true; } else if (node.Attributes["key"].Value == "cardSnLength") { if (config.IsAdd0) { node.Attributes["value"].Value = "Full"; } else { node.Attributes["value"].Value = "Part"; } } else if (node.Attributes["key"].Value == "XZX_ServerEndPort") { node.Attributes["value"].Value = config.XZX_ServerEndPort; } else if (node.Attributes["key"].Value == "XZX_SysCode") { node.Attributes["value"].Value = config.XZX_SysCode; } else if (node.Attributes["key"].Value == "XZX_TerminalNo") { node.Attributes["value"].Value = config.XZX_TerminalNo; } else if (node.Attributes["key"].Value == "XZX_Offline") { if (config.XZX_Offline) { node.Attributes["value"].Value = "true"; } else { node.Attributes["value"].Value = "false"; } } else if (node.Attributes["key"].Value == "XZX_AddReader") { if (config.XZX_AddReader) { node.Attributes["value"].Value = "true"; } else { node.Attributes["value"].Value = "false"; } } else if (node.Attributes["key"].Value == "XZX_IsOnelyReaderCardId") { if (config.XZX_IsOnelyReaderCardId) { node.Attributes["value"].Value = "true"; } else { node.Attributes["value"].Value = "false"; } isxzx_isreadcarddidupdate = true; } else if (node.Attributes["key"].Value == "Hook_isCardNo") { if (config.Hook_isCardNo) { node.Attributes["value"].Value = "true"; } else { node.Attributes["value"].Value = "false"; } ishook_isreadecard = true; } else if (node.Attributes["key"].Value == "PosPort") { node.Attributes["value"].Value = config.FKport; } else if (node.Attributes["key"].Value == "IPOSMethod") { switch (config.CardReaderTye) { case 0: node.Attributes["value"].Value = "PosObject.PosObject,PosObject"; break; case 1: node.Attributes["value"].Value = "PosObject.PosObject,PosObject_XZX"; break; case 2: node.Attributes["value"].Value = "PosObject.PosObject,PosObject_FK"; break; case 3: node.Attributes["value"].Value = "PosObject.PosObject,PosObject_HOOK"; break; case 4: node.Attributes["value"].Value = "PosObject.PosObject,PosObject_CUT"; break; case 5: node.Attributes["value"].Value = "PosObject.PosObject,PosObject_Customer"; break; } } else if (node.Attributes["key"].Value == "ICardReader") { switch (config.CardReaderTye) { case 0: node.Attributes["value"].Value = "CardReaderObject.CardReaderObject,CardReaderObject"; break; case 1: node.Attributes["value"].Value = "CardReaderObject.CardReaderObject,CardReaderObject_XZX"; break; case 2: node.Attributes["value"].Value = "CardReaderObject.CardReaderObject,CardReaderObject_FK"; break; case 3: node.Attributes["value"].Value = "CardReaderObject.CardReaderObject,CardReaderObject_HOOK"; break; case 4: node.Attributes["value"].Value = "CardReaderObject.CardReaderObject,CardReaderObject_CUT"; break; case 5: node.Attributes["value"].Value = "CardReaderObject.CardReaderObject,CardReaderObject_Customer"; break; } } } if (!isbeepUpdate) { XmlNode node = SCdoc.SelectSingleNode("//configuration/appSettings"); XmlElement element = SCdoc.CreateElement("add"); element.SetAttribute("key", "IsBeep"); element.SetAttribute("value", "true"); node.AppendChild(element); } if (!isxzx_isreadcarddidupdate) { XmlNode node = SCdoc.SelectSingleNode("//configuration/appSettings"); XmlElement element = SCdoc.CreateElement("add"); element.SetAttribute("key", "XZX_IsOnelyReaderCardId"); element.SetAttribute("value", "false"); node.AppendChild(element); } if (!ishook_isreadecard) { XmlNode node = SCdoc.SelectSingleNode("//configuration/appSettings"); XmlElement element = SCdoc.CreateElement("add"); element.SetAttribute("key", "Hook_isCardNo"); element.SetAttribute("value", "true"); node.AppendChild(element); } SCdoc.Save(scfilePath); return(true); } catch { return(false); } } else { return(false); } }
private void SeatManageConfigTool_Load(object sender, EventArgs e) { Code.HostConfig hostconfig = new Code.HostConfig(); Code.ClientBasicConfig clientconfig = new Code.ClientBasicConfig(); Code.CardReaderBasicConfig cardReaderConfig = new Code.CardReaderBasicConfig(); Code.WebConfigSetting webConfigSeeting = new Code.WebConfigSetting(); Code.LeaveClientBesicConfig leaveConfigSetting = new Code.LeaveClientBesicConfig(); Code.DeviceSettingConfig deviceSettingConfig = new Code.DeviceSettingConfig(); Code.ShutDownConfig shutDownConfig = new Code.ShutDownConfig(); if (Code.ReadSeatHostConfigV3.ReadConfig(ref hostconfig)) { foreach (string server in hostconfig.HostServer) { if (server == "WcfHost") { cb_WCF.Checked = true; } else if (server == "MonitorService") { cb_Watch.Checked = true; } else if (server == "DataTransferService") { cb_DT.Checked = true; } } txt_DBIP.Text = hostconfig.DBIP; txt_DBName.Text = hostconfig.DBName; txt_DBpw.Text = hostconfig.DBPW; txt_DBUser.Text = hostconfig.DBUser; txt_SeverWCFConnString.Text = hostconfig.WCFString; txt_weixinendportwcf.Text = hostconfig.WeChatWCFString; txt_FilePath.Text = hostconfig.MediaFilePath; txt_ServerSchoolNo.Text = hostconfig.SchoolNo; txt_ServerLoopTime.Text = hostconfig.LoopTime; txt_Uploadtime.Text = hostconfig.UploadTime; if (Code.WebConfig.ReadConfig(ref webConfigSeeting)) { cb_web_pw_change.Checked = webConfigSeeting.IsChangePW; } else { MessageBox.Show("无法自动获取管理网站配置文件,请确保和Host服务文件夹放置在同一目录,并且文件夹为“SeatManageWebV5”"); gb_web.Enabled = false; } foreach (Control c in tabControl1.TabPages[1].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[2].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[3].Controls) { c.Enabled = false; } } else if (Code.ReadSeatClientConfig.GetSeatClientBaseConfig(ref clientconfig) && Code.CardReaderConfig.GetCardReaderBaseConfig(ref cardReaderConfig, "Select")) { clientmode = "Select"; txt_clientwcfstring.Text = clientconfig.WCFConnString; txt_schoolno.Text = clientconfig.SchoolNo; txt_campusno.Text = clientconfig.CampusNo; txt_deviceno.Text = clientconfig.TerminalNum; txt_defualtmedia.Text = clientconfig.DefaultMedia; txt_adloop.Text = clientconfig.SCLoopTime; txt_sentloop.Text = clientconfig.SentStatusTime; txt_update.Text = clientconfig.UpdateTime; txt_mac.Text = GetMacAddress.GetLocalAddress()[0]; gb_xzx.Enabled = false; gb_mh.Enabled = false; gb_fk.Enabled = false; gb_gz.Enabled = false; gb_cut.Enabled = false; gb_dz.Enabled = false; switch (cardReaderConfig.CardReaderTye) { case 0: rb_mh.Checked = true; break; case 1: rb_xzx.Checked = true; break; case 2: rb_fk.Checked = true; break; case 3: rb_gz.Checked = true; break; case 4: rb_cut.Checked = true; break; case 5: rb_dz.Checked = true; break; } if (cardReaderConfig.CardID10Or16 == 10) { fk_10.Checked = true; rb_10.Checked = true; } else { fk_16.Checked = true; rb_16.Checked = true; } cb_Isbeep.Checked = cardReaderConfig.IsBeep; fk_port.Text = cardReaderConfig.FKport; txt_xzx_ip.Text = cardReaderConfig.XZX_ServerEndPort; txt_xzx_sys.Text = cardReaderConfig.XZX_SysCode; txt_xzx_tre.Text = cardReaderConfig.XZX_TerminalNo; xzx_addreader.Checked = cardReaderConfig.XZX_AddReader; xzx_off.Checked = cardReaderConfig.XZX_Offline; if (cardReaderConfig.Hook_isCardNo) { rb_gz_cardno.Checked = true; } else { rb_gz_cardid.Checked = true; } if (cardReaderConfig.XZX_IsOnelyReaderCardId) { rb_xzx_readcardid.Checked = true; } else { rb_xzx_readcardno.Checked = true; } cb_change.Checked = cardReaderConfig.CardIDIsChange; fk_change.Checked = cardReaderConfig.CardIDIsChange; cb_add0.Checked = cardReaderConfig.IsAdd0; fk_add0.Checked = cardReaderConfig.IsAdd0; if (Code.DeviceSetting.GetDeviceSetting(ref deviceSettingConfig)) { txt_d_IP.Text = deviceSettingConfig.IP; txt_d_dns.Text = deviceSettingConfig.DNS; txt_d_getway.Text = deviceSettingConfig.Gateway; txt_d_mask.Text = deviceSettingConfig.Mask; txt_pc_name.Text = deviceSettingConfig.PCName; cb_staticIP.Checked = deviceSettingConfig.IsStaticIP; } if (Code.DeviceSetting.GetShotDownSetting(ref shutDownConfig)) { cb_sd.Checked = shutDownConfig.IsUsed; txt_sd_h.Text = shutDownConfig.ShutDownHour; txt_sd_m.Text = shutDownConfig.ShutDownMin; txt_sd_s.Text = shutDownConfig.ShutDownWaitSec; } foreach (Control c in tabControl1.TabPages[0].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[2].Controls) { c.Enabled = false; } tabControl1.SelectedIndex = 1; } else if (Code.LeaveClientConfig.GetLeaveClientConfig(ref leaveConfigSetting) && Code.CardReaderConfig.GetCardReaderBaseConfig(ref cardReaderConfig, "Leave")) { clientmode = "Leave"; txt_leave_wcfconn.Text = leaveConfigSetting.WCFConnString; switch (leaveConfigSetting.LeaveMode) { case "0": rb_leave_s.Checked = true; break; case "1": rb_leave_sl.Checked = true; break; case "2": rb_leave_l.Checked = true; break; case "3": rb_leave_s.Checked = true; break; } if (leaveConfigSetting.SetUpMode == "1") { rb_win_max.Checked = true; } else { rb_win_min.Checked = true; } gb_xzx.Enabled = false; gb_mh.Enabled = false; gb_fk.Enabled = false; gb_gz.Enabled = false; gb_cut.Enabled = false; gb_dz.Enabled = false; switch (cardReaderConfig.CardReaderTye) { case 0: rb_mh.Checked = true; break; case 1: rb_xzx.Checked = true; break; case 2: rb_fk.Checked = true; break; case 3: rb_gz.Checked = true; break; case 4: rb_cut.Checked = true; break; case 5: rb_dz.Checked = true; break; } if (cardReaderConfig.CardID10Or16 == 10) { fk_10.Checked = true; rb_10.Checked = true; } else { fk_16.Checked = true; rb_16.Checked = true; } cb_Isbeep.Checked = cardReaderConfig.IsBeep; fk_port.Text = cardReaderConfig.FKport; txt_xzx_ip.Text = cardReaderConfig.XZX_ServerEndPort; txt_xzx_sys.Text = cardReaderConfig.XZX_SysCode; txt_xzx_tre.Text = cardReaderConfig.XZX_TerminalNo; xzx_addreader.Checked = cardReaderConfig.XZX_AddReader; xzx_off.Checked = cardReaderConfig.XZX_Offline; if (cardReaderConfig.Hook_isCardNo) { rb_gz_cardno.Checked = true; } else { rb_gz_cardid.Checked = true; } if (cardReaderConfig.XZX_IsOnelyReaderCardId) { rb_xzx_readcardid.Checked = true; } else { rb_xzx_readcardno.Checked = true; } cb_change.Checked = cardReaderConfig.CardIDIsChange; fk_change.Checked = cardReaderConfig.CardIDIsChange; cb_add0.Checked = cardReaderConfig.IsAdd0; fk_add0.Checked = cardReaderConfig.IsAdd0; foreach (Control c in tabControl1.TabPages[0].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[1].Controls) { c.Enabled = false; } tabControl1.SelectedIndex = 2; } else { MessageBox.Show("获取配置文件失败,请把配置工具拷贝到宿主服务或者终端的根目录下,再次尝试!"); foreach (Control c in tabControl1.TabPages[0].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[1].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[2].Controls) { c.Enabled = false; } foreach (Control c in tabControl1.TabPages[3].Controls) { c.Enabled = false; } btnBackupProgram.Enabled = false; tabControl1.SelectedIndex = 4; } }