TagController.java
package io.smartir.smartir.website.controller;
import io.smartir.smartir.website.model.Tag;
import io.smartir.smartir.website.model.TagItem;
import io.smartir.smartir.website.requests.TagRequest;
import io.smartir.smartir.website.service.TagService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("tag")
@Slf4j
public class TagController {
private final TagService tagService;
public TagController(TagService tagService) {
this.tagService = tagService;
}
@PostMapping("add")
public String addTag(@RequestBody TagRequest tagRequest) {
return tagService.addTag(tagRequest);
}
@PostMapping("get-all")
public ResponseEntity<Tag> getTags(@RequestBody TagRequest request) {
var result = tagService.getTags(request);
return ResponseEntity.ok(Tag.toTag(result));
}
@GetMapping("get-all-tags")
public ResponseEntity<List<TagItem>> getAllTags() {
var result = tagService.getAllTags();
return ResponseEntity.ok(result.stream().map(TagItem::toTag).toList());
}
@GetMapping("status")
public String getStatus() {
return "Filter-service is working";
}
}