public async Task <IActionResult> Post(AssetViewModel model)
        {
            try
            {
                Asset asset = new Asset()
                {
                    AssetName               = model.AssetName,
                    Broken                  = model.Broken,
                    CountryOfDepartment     = model.CountryOfDepartment,
                    Department              = (Department)model.Department,
                    EMailAdressOfDepartment = model.EMailAdressOfDepartment,
                    PurchaseDate            = Convert.ToDateTime(model.PurchaseDate)
                };
                AssetValidator   validator = new AssetValidator();
                ValidationResult results   = validator.Validate(asset);
                if (results.IsValid)
                {
                    List <CountryDTO> countryDtos = await _externalService.GetCountryAsync(model.CountryOfDepartment);

                    if (countryDtos != null && countryDtos.Count > 0)
                    {
                        _unitOfWork.AssetService.AddAsset(asset);
                        _unitOfWork.SaveChanges();
                        _logger.LogInformation($"Asset with Id {asset.Id} have beeen created Successufully.");
                        return(Created("", asset));
                    }
                    return(BadRequest(new { message = "Invilid country Name. Please enter a valid county name." }));
                }
                return(BadRequest(new { message = results.ToString() }));
            }
            catch (Exception ex)
            {
                _logger.LogWarning(ex, ex.Message);
                return(BadRequest(new { message = "Unknow server error.", succeed = false }));
            }
        }