Пример #1
0
        private BaseModel FillUserInfoKPS(string token, string name, string surname, string tckn, string birthOfDate)
        {
            var model = new BaseModel();

            try {
                ulong    TCKN       = Convert.ToUInt64(tckn);
                DateTime birthDate  = DateTime.ParseExact(birthOfDate, "MM-dd-yyyy", null);
                var      jwtResult  = authenticator.ConvertAndRefreshToken(token);
                var      email      = jwtResult.Email;
                var      isActive   = jwtResult.IsActive;
                var      isValidKPS = kPSService.Validate(name, surname, TCKN, birthDate.Year);
                model.token = jwtResult.Token;
                if (!isValidKPS)
                {
                    model.isError          = true;
                    model.errorDescription = "Kimlik bilgileri uyuşmazlığı";
                    return(model);
                }
                var userInfo = context.UserInfo.AsNoTracking().FirstOrDefault(x => x.Tckn == TCKN);
                if (userInfo != null)
                {
                    model.isError          = true;
                    model.errorDescription = "TC'si kayıtlı kullanıcı";
                    return(model);
                }
                var userInfoToInsert = new UserInfo()
                {
                    Email     = email,
                    Name      = name,
                    Surname   = surname,
                    Tckn      = TCKN,
                    BirthDate = birthDate
                };
                context.UserInfo.Add(userInfoToInsert);
                context.SaveChanges();
                return(model);
            }

            catch (Exception ex) {
                model.isError          = true;
                model.errorDescription = "Beklenmeyen hata";
                return(model);
            }
        }