public async Task <HttpResponseMessage> AddCopyright(UsersIp usersIp) { HttpResponseMessage responseMessage = new HttpResponseMessage(); bool exist = await CheckIfExistingName(usersIp.Title); if (exist) { responseMessage.StatusCode = HttpStatusCode.Conflict; responseMessage.Content = new StringContent("Conflict: This title ia already taken!"); } else { usersIp.IpType = IpType.Copyright; usersIp.Status = IpStatus.Registered; usersIp.CreatedAt = DateTime.Now; usersIp.LastModify = DateTime.Now; usersIp.IsActive = true; if (usersIp.ImagePath != null) { } else { usersIp.ImagePath = "Placeholder.jpg"; } await _dbContext.UsersIps.AddAsync(usersIp); await _dbContext.SaveChangesAsync(); responseMessage.StatusCode = HttpStatusCode.OK; responseMessage.Content = new StringContent("Success: " + usersIp.IpType + "registered successfully."); } return(responseMessage); }
public async Task <UsersIp> AddPatent(UsersIpModel patentModel) { if (patentModel.Title == null || patentModel.Title == "") { throw new Exception($"Title is required. Please write a Title."); } if (await IsTitleDuplicate(patentModel.Title)) { throw new Exception($"'{patentModel.Title}' already exists. Please choose a different title."); } var image = await UploadedImage(patentModel.IpType, patentModel.ImagePath); if (image == null) { throw new Exception($"Image is required."); } var document = await UploadFile(patentModel.IpType, patentModel.FileDocument); if (document == null) { throw new Exception($"File is required."); } UsersIp patent = new UsersIp { Title = patentModel.Title, Description = patentModel.Description, IpType = IpType.Patent, Contact = patentModel.Contact, Application = patentModel.Application, Status = IpStatus.Registered, ClaimId = patentModel.ClaimId, CityId = patentModel.CityId, UserId = patentModel.UserId, IpFilterId = patentModel.IpFilterId, ImagePath = image.ImagePath, FileDocument = document.FileDocument, DocumentPath = document.DocumentPath }; await _dbContext.UsersIps.AddAsync(patent); await _dbContext.SaveChangesAsync(); return(patent); }