package jnpf.elnController;
|
|
import jnpf.elnService.TemplateFillTicketService;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpStatus;
|
import org.springframework.http.ResponseEntity;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.RequestHeader;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.Collections;
|
import java.util.Map;
|
|
@RestController
|
@RequiredArgsConstructor
|
public class TemplateFillController {
|
|
private static final String TICKET_PREFIX = "Ticket ";
|
private final TemplateFillTicketService ticketService;
|
|
@GetMapping("/onlyoffice/template-fill/data")
|
public ResponseEntity<Map<String, Object>> data(
|
@RequestHeader(value = HttpHeaders.AUTHORIZATION, required = false) String authorization) {
|
try {
|
if (authorization == null || !authorization.startsWith(TICKET_PREFIX)
|
|| authorization.length() == TICKET_PREFIX.length()) {
|
throw new TemplateFillTicketService.InvalidFillTicketException();
|
}
|
ticketService.parse(authorization.substring(TICKET_PREFIX.length()).trim());
|
return ResponseEntity.ok(Collections.singletonMap("fields", Collections.emptyMap()));
|
} catch (TemplateFillTicketService.InvalidFillTicketException e) {
|
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body(Collections.emptyMap());
|
}
|
}
|
}
|