You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							61 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							61 lines
						
					
					
						
							1.8 KiB
						
					
					
				
								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<string> 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);
							 | 
						|
								
							 | 
						|
								        }
							 | 
						|
								    }
							 | 
						|
								}
							 |