public bool Add(T asset)
 {
     if (_repository.AddAsset(asset))
     {
         return(true);
     }
     return(false);
 }
예제 #2
0
        public async Task <ActionResult <Asset> > CreateAsset(Asset Asset)
        {
            try
            {
                if (Asset == null)
                {
                    return(BadRequest());
                }
                _logger.LogInformation("Checking if the email is associated with any record.");

                var emp = AssetRepository.GetAssetByEmail(Asset.EMailAdressOfDepartment);

                if (emp != null)
                {
                    ModelState.AddModelError("email", "Asset email already in use");
                    return(BadRequest(ModelState));
                }

                AssetValidator   validator = new AssetValidator();
                ValidationResult results   = validator.Validate(Asset);

                if (!results.IsValid)
                {
                    foreach (var failure in results.Errors)
                    {
                        Console.WriteLine("Property " + failure.PropertyName + " failed validation. Error was: " + failure.ErrorMessage);
                    }
                    _logger.LogInformation("Some validation errors have been generated. " + string.Join("", results.Errors));

                    return(BadRequest(string.Join("", results.Errors)));
                }
                else
                {
                    _logger.LogInformation("Creating new Asset.");
                    var createdAsset = await AssetRepository.AddAsset(Asset);

                    return(CreatedAtAction(nameof(GetAsset), new { id = createdAsset.Id },
                                           createdAsset));
                }
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError,
                                  "Error retrieving data from the database"));
            }
        }
예제 #3
0
        public IHttpActionResult Post(Asset asset)
        {
            IHttpActionResult ret = null;

            var result = _repository.AddAsset(asset);

            if (result != null)
            {
                ret = Created <Asset>(Request.RequestUri +
                                      result.AssetId,
                                      asset);
            }
            else
            {
                ret = NotFound();
            }

            return(ret);
        }
예제 #4
0
 public Task <ImageUploadResponse> Asset([FromForm] ImageUploadInput arg)
 {
     return(assetRepo.AddAsset(arg));
 }
예제 #5
0
 /// <summary>
 /// Add asset
 /// </summary>
 /// <param name="asset">Asset to be added</param>
 /// <returns>Count of saved assets</returns>
 public Task <int> AddAsset(Asset asset)
 {
     return(_assetRepository.AddAsset(asset));
 }