diff options
| author | ivarlovlie <git@ivarlovlie.no> | 2022-10-05 14:45:21 +0200 |
|---|---|---|
| committer | ivarlovlie <git@ivarlovlie.no> | 2022-10-05 14:45:21 +0200 |
| commit | b7e39b59fd0fc7b5610ebff29035bf622079e0d8 (patch) | |
| tree | 64be84ebbdac9f7ceced983390c53b10d575af5c /server/src/Endpoints/V1/Labels/CreateLabelRoute.cs | |
| parent | 2001c035fbb417ab0a3d42cfb04d17420bde4086 (diff) | |
| download | greatoffice-b7e39b59fd0fc7b5610ebff29035bf622079e0d8.tar.xz greatoffice-b7e39b59fd0fc7b5610ebff29035bf622079e0d8.zip | |
refactor: Change file structure
Diffstat (limited to 'server/src/Endpoints/V1/Labels/CreateLabelRoute.cs')
| -rw-r--r-- | server/src/Endpoints/V1/Labels/CreateLabelRoute.cs | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/server/src/Endpoints/V1/Labels/CreateLabelRoute.cs b/server/src/Endpoints/V1/Labels/CreateLabelRoute.cs deleted file mode 100644 index 31ef7d0..0000000 --- a/server/src/Endpoints/V1/Labels/CreateLabelRoute.cs +++ /dev/null @@ -1,46 +0,0 @@ - -namespace IOL.GreatOffice.Api.Endpoints.V1.Labels; - -/// <inheritdoc /> -public class CreateLabelRoute : RouteBaseSync.WithRequest<TimeLabel.TimeLabelDto>.WithActionResult<TimeLabel.TimeLabelDto> -{ - private readonly AppDbContext _context; - - /// <inheritdoc /> - public CreateLabelRoute(AppDbContext context) { - _context = context; - } - - /// <summary> - /// Create a time entry label. - /// </summary> - /// <param name="labelTimeLabelDto"></param> - /// <returns></returns> - [ApiVersion(ApiSpecV1.VERSION_STRING)] - [BasicAuthentication(AppConstants.TOKEN_ALLOW_CREATE)] - [HttpPost("~/v{version:apiVersion}/labels/create")] - public override ActionResult<TimeLabel.TimeLabelDto> Handle(TimeLabel.TimeLabelDto labelTimeLabelDto) { - var duplicate = _context.TimeLabels - .Where(c => c.UserId == LoggedInUser.Id) - .Any(c => c.Name.Trim() == labelTimeLabelDto.Name.Trim()); - if (duplicate) { - var label = _context.TimeLabels - .Where(c => c.UserId == LoggedInUser.Id) - .SingleOrDefault(c => c.Name.Trim() == labelTimeLabelDto.Name.Trim()); - - if (label != default) { - return Ok(label.AsDto); - } - } - - var newLabel = new TimeLabel(LoggedInUser.Id) { - Name = labelTimeLabelDto.Name.Trim(), - Color = labelTimeLabelDto.Color - }; - - _context.TimeLabels.Add(newLabel); - _context.SaveChanges(); - labelTimeLabelDto.Id = newLabel.Id; - return Ok(labelTimeLabelDto); - } -} |
