예제 #1
0
        public async Task <ResponseModel> Delete(NationalityModel model)
        {
            ResponseModel response = new ResponseModel();

            try
            {
                Nationality md = await _context.NationalityRepository.FirstOrDefaultAsync(m => m.Id == model.Id);

                if (!md.RowVersion.SequenceEqual(model.RowVersion))
                {
                    response.ResponseStatus = Core.CommonModel.Enums.ResponseStatus.OutOfDateData;
                    return(response);
                }

                md.Deleted    = true;
                md.UpdateBy   = base.UserId;
                md.UpdateDate = DateTime.Now;

                _context.NationalityRepository.Update(md);

                await _context.SaveChangesAsync();

                _memoryCachingService.Remove(CacheKey);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(response);
        }
예제 #2
0
        public async Task <ResponseModel> Insert(NationalityModel model)
        {
            ResponseModel response = new ResponseModel();

            try
            {
                Nationality md = new Nationality();

                md.Name       = model.Name;
                md.Precedence = model.Precedence;
                md.IsActive   = model.IsActive;
                md.CreateBy   = base.UserId;
                md.CreateDate = DateTime.Now;
                md.Deleted    = false;

                await _context.NationalityRepository.AddAsync(md).ConfigureAwait(true);

                await _context.SaveChangesAsync();

                _memoryCachingService.Remove(CacheKey);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(response);
        }
예제 #3
0
 public static Nationality ToEntity(this NationalityModel model)
 {
     return(new Nationality
     {
         Id = model.Id,
         Title = model.Title
     });
 }
 public NationalityModel UpdateNationality(NationalityModel nationality)
 {
     try
     {
         return(_nationalityRepository.UpdateNationality(nationality));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #5
0
 public IHttpActionResult SaveNationality(NationalityModel nationality)
 {
     try
     {
         return(Ok(_nationalityService.SaveNationality(nationality)));
     }
     catch (Exception ex)
     {
         return(InternalServerError(ex));
     }
 }
예제 #6
0
        public NationalityModel UpdateNationality(NationalityModel nationalityModel)
        {
            var nationality = _dbContext.Nationalities
                              .FirstOrDefault(x => x.Id == nationalityModel.Id && x.RecordStatus == true);

            nationality.Name       = nationalityModel.Name;
            nationality.UpdateDate = DateTime.Now;

            _dbContext.SaveChanges();

            return(nationalityModel);
        }
예제 #7
0
        public NationalityModel SaveNationality(NationalityModel nationalityModel)
        {
            var nationality = new Nationality
            {
                Name = nationalityModel.Name
            };

            _dbContext.Nationalities.Add(nationality);
            _dbContext.SaveChanges();

            nationalityModel.Id = nationality.Id;
            return(nationalityModel);
        }
예제 #8
0
        public IHttpActionResult UpdateNationality(NationalityModel nationality)
        {
            try
            {
                if (nationality.Id == null || nationality.Id <= 0)
                {
                    return(BadRequest("Invalid nationality id"));
                }

                return(Ok(_nationalityService.UpdateNationality(nationality)));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
예제 #9
0
        public static NationalityModel mapToModel(this Nationality nationality)
        {
            if (nationality != null)
            {
                NationalityModel nationalityModel = new NationalityModel()
                {
                    NationalityId = nationality.NationalityId,
                    Name          = nationality.Name,
                    PlayerId      = nationality.PlayerId
                };

                return(nationalityModel);
            }
            else
            {
                return(null);
            }
        }
예제 #10
0
        public static Nationality mapToNationality(this NationalityModel model)
        {
            if (model != null)
            {
                Nationality nationality = new Nationality()
                {
                    NationalityId = model.NationalityId,
                    Name          = model.Name,
                    PlayerId      = model.PlayerId
                };

                return(nationality);
            }
            else
            {
                return(null);
            }
        }
        public async Task <IActionResult> GetCountriesAsync()
        {
            var request = new HttpRequestMessage(HttpMethod.Get, "https://restcountries.eu/rest/v2/all");

            var client = _clientFactory.CreateClient();


            var response = await client.SendAsync(request);

            if (response.IsSuccessStatusCode)
            {
                var responseStream = await response.Content.ReadAsStreamAsync();

                var resp = await JsonSerializer.DeserializeAsync <List <Dictionary <string, object> > >(responseStream);

                countries = new List <NationalityModel>();

                foreach (var item in resp)
                {
                    var country = new NationalityModel
                    {
                        Name      = item["name"].ToString(),
                        Capital   = item["capital"].ToString(),
                        Region    = item["region"].ToString(),
                        Subregion = item["subregion"].ToString()
                    };
                    countries.Add(country);
                }

                // Insert result inside Nation table
                EntityConnection connection = new EntityConnection("tbl_nationality");
                connection.InsertResult(countries);

                return(Ok(countries));
            }
            else
            {
                NotFound();
                //nationalityModel = new List<NationalityModel>();
            }

            return(null);
        }
예제 #12
0
 public NationalityModel Update(NationalityModel nationalityModel)
 {
     _nationalityRepository.Update(nationalityModel.mapToNationality());
     return(nationalityModel);
 }
예제 #13
0
 public NationalityModel Add(NationalityModel nationalityModel)
 {
     _nationalityRepository.Add(nationalityModel.mapToNationality());
     return(nationalityModel);
 }
예제 #14
0
        public async Task <ResponseModel> Delete([FromBody] NationalityModel model)
        {
            var response = await _nationalityService.Delete(model);

            return(response);
        }