Home
This commit is contained in:
		@@ -18,62 +18,89 @@ namespace ApiServer.Controllers
 | 
			
		||||
	public class PasportController : ControllerBase
 | 
			
		||||
	{
 | 
			
		||||
		private Logger log = LogManager.GetCurrentClassLogger();
 | 
			
		||||
 | 
			
		||||
		[HttpPost, Route("check")]
 | 
			
		||||
		public PasportCheckReq Check([FromBody] object value)
 | 
			
		||||
		public PasportCheckClient Check([FromBody] object value)
 | 
			
		||||
		{
 | 
			
		||||
			try
 | 
			
		||||
			{
 | 
			
		||||
				var reply = JsonConvert.DeserializeObject<PasportCheckRep>(value.ToString());
 | 
			
		||||
				if (!reply.HasData || string.IsNullOrEmpty(reply.Name)) throw new Exception();
 | 
			
		||||
				
 | 
			
		||||
				var getResult = JsonConvert.DeserializeObject<PasportCheckApi>(value.ToString());
 | 
			
		||||
				if (!getResult.Status || string.IsNullOrEmpty(getResult.Name))
 | 
			
		||||
				{
 | 
			
		||||
					log.Warn("Wrong answer.");
 | 
			
		||||
					return new PasportCheckClient();
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				var paspName =
 | 
			
		||||
					reply.DateAndTime.Hour.ToString("D2") +
 | 
			
		||||
					reply.DateAndTime.Minute.ToString("D2") +
 | 
			
		||||
					reply.DateAndTime.Second.ToString("D2") +
 | 
			
		||||
					"-" + reply.Name;
 | 
			
		||||
					getResult.DateAndTime.Hour.ToString("D2") +
 | 
			
		||||
					getResult.DateAndTime.Minute.ToString("D2") +
 | 
			
		||||
					getResult.DateAndTime.Second.ToString("D2") +
 | 
			
		||||
					"-" + getResult.Name;
 | 
			
		||||
				var paspDir = Path.Combine(
 | 
			
		||||
					Directory.GetCurrentDirectory(),
 | 
			
		||||
					"data", "pasport",
 | 
			
		||||
					reply.DateAndTime.Year.ToString("D4"),
 | 
			
		||||
					reply.DateAndTime.Month.ToString("D2"),
 | 
			
		||||
					reply.DateAndTime.Day.ToString("D2"),
 | 
			
		||||
					getResult.DateAndTime.Year.ToString("D4"),
 | 
			
		||||
					getResult.DateAndTime.Month.ToString("D2"),
 | 
			
		||||
					getResult.DateAndTime.Day.ToString("D2"),
 | 
			
		||||
					paspName);
 | 
			
		||||
 | 
			
		||||
				log.Info("Search pasport: " + paspDir);
 | 
			
		||||
				if (!System.IO.File.Exists(paspDir))
 | 
			
		||||
					return new PasportCheckReq { Status = true, Exist = false };
 | 
			
		||||
				return new PasportCheckReq { Status = true, Exist = true, Pasp = new Pasport(System.IO.File.ReadAllBytes(paspDir)) };
 | 
			
		||||
				{
 | 
			
		||||
					log.Info("Psport not exist: " + paspDir);
 | 
			
		||||
					return new PasportCheckClient { Status = true, Exist = false, PaspSum = 0 };
 | 
			
		||||
				}
 | 
			
		||||
				var pasport = System.IO.File.ReadAllBytes(paspDir);
 | 
			
		||||
				ulong paspResult = 0;
 | 
			
		||||
				foreach (var b in pasport)
 | 
			
		||||
					paspResult += b;
 | 
			
		||||
				log.Info("Send pasport size: " + paspResult + " | " + paspDir);
 | 
			
		||||
				return new PasportCheckClient { Status = true, Exist = true, PaspSum = paspResult };
 | 
			
		||||
			}
 | 
			
		||||
			catch(Exception e)
 | 
			
		||||
			{
 | 
			
		||||
				log.Warn(e);
 | 
			
		||||
				return new PasportCheckClient();
 | 
			
		||||
			}
 | 
			
		||||
			catch { return new PasportCheckReq { Status = false }; }
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		[HttpPost, Route("create")]
 | 
			
		||||
		public PasportCreateReq Create([FromBody] object value)
 | 
			
		||||
		public PasportCreateClient Create([FromBody] object value)
 | 
			
		||||
		{
 | 
			
		||||
			try
 | 
			
		||||
			{
 | 
			
		||||
				var reply = JsonConvert.DeserializeObject<PasportCreateRep>(value.ToString());
 | 
			
		||||
				if (!reply.HasData || string.IsNullOrEmpty(reply.Name)) throw new Exception();
 | 
			
		||||
 | 
			
		||||
				var getResult = JsonConvert.DeserializeObject<PasportCreateApi>(value.ToString());
 | 
			
		||||
				if (!getResult.Status ||
 | 
			
		||||
					getResult.Pasp == null ||
 | 
			
		||||
					!getResult.Pasp.HasData)
 | 
			
		||||
				{
 | 
			
		||||
					log.Warn("Wrong answer.");
 | 
			
		||||
					return new PasportCreateClient();
 | 
			
		||||
				}
 | 
			
		||||
				var paspName =
 | 
			
		||||
					reply.DateAndTime.Hour.ToString("D2") +
 | 
			
		||||
					reply.DateAndTime.Minute.ToString("D2") +
 | 
			
		||||
					reply.DateAndTime.Second.ToString("D2") +
 | 
			
		||||
					"-" + reply.Name;
 | 
			
		||||
					getResult.Pasp.dEnd.Value.Hour.ToString("D2") +
 | 
			
		||||
					getResult.Pasp.dEnd.Value.Minute.ToString("D2") +
 | 
			
		||||
					getResult.Pasp.dEnd.Value.Second.ToString("D2") +
 | 
			
		||||
					"-" + (string.IsNullOrEmpty(getResult.Pasp.nplav) ?
 | 
			
		||||
										getResult.Pasp.numVDP.Value.ToString("D2") :
 | 
			
		||||
										getResult.Pasp.nplav);
 | 
			
		||||
				var dir = Path.Combine(
 | 
			
		||||
					Directory.GetCurrentDirectory(),
 | 
			
		||||
					"data", "pasport",
 | 
			
		||||
					reply.DateAndTime.Year.ToString("D4"),
 | 
			
		||||
					reply.DateAndTime.Month.ToString("D2"),
 | 
			
		||||
					reply.DateAndTime.Day.ToString("D2"));
 | 
			
		||||
					getResult.Pasp.dEnd.Value.Year.ToString("D4"),
 | 
			
		||||
					getResult.Pasp.dEnd.Value.Month.ToString("D2"),
 | 
			
		||||
					getResult.Pasp.dEnd.Value.Day.ToString("D2"));
 | 
			
		||||
				var paspDir = Path.Combine(dir, paspName);
 | 
			
		||||
 | 
			
		||||
				if (!Directory.Exists(dir))
 | 
			
		||||
					Directory.CreateDirectory(dir);
 | 
			
		||||
				System.IO.File.WriteAllBytes(paspDir, reply.Pasp.PaspByte);
 | 
			
		||||
 | 
			
		||||
				return new PasportCreateReq { Status = true };
 | 
			
		||||
				System.IO.File.WriteAllBytes(paspDir, getResult.Pasp.PaspByte);
 | 
			
		||||
				log.Info("Save pasport: " + paspDir);
 | 
			
		||||
				return new PasportCreateClient { Status = true };
 | 
			
		||||
			}
 | 
			
		||||
			catch (Exception e)
 | 
			
		||||
			{
 | 
			
		||||
				log.Warn(e);
 | 
			
		||||
				return new PasportCreateClient();
 | 
			
		||||
			}
 | 
			
		||||
			catch { return new PasportCreateReq { Status = false }; }
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user