This commit is contained in:
2021-08-01 19:48:09 +05:00
parent 52eaaaac79
commit cffb8a180b
195 changed files with 1172 additions and 1022 deletions

View File

@@ -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 }; }
}
}