using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using ShenTun.IcCard.Common; using ShenTun.IcCard.Instance; namespace ShenTun.IcCard { public class IcCardClient { public async Task getReadCardAsync(RequestIcCardInterface req) { return await Task.Run(() => ReadCard(req)); } private string ReadCard(RequestIcCardInterface req) { IDCardInfo info = new IDCardInfo(); Response res = new Response() { code = -100, message = "", }; try { IReadCard iReadCard = null; if (req.IcCardInterface.Equals(1)) { iReadCard = new ReadCardByYT100(); } else if (req.IcCardInterface.Equals(2)) { iReadCard = new ReadCardByDCT10D(); } else if (req.IcCardInterface.Equals(3)) { iReadCard = new ReadCardByIDR210(); } else if (req.IcCardInterface.Equals(4)) { iReadCard = new ReadCardByHXFDX3S(); } if (BaseData.nList.Count == 0) BaseData.CreateNationList(); if (BaseData.sList.Count == 0) BaseData.CreateSexList(); res = iReadCard.GetReadCard(); } catch (Exception err) { res.code = -100; res.message = "系统级错误,读卡失败"; MessageBox.Show(err.Message); } return JsonHelper.SerializeObject(res); } } }