etreschenkov 2025-07-09 14:31:55 +03:00
parent 6da33747cb
commit 5457773174

View file

@ -4,10 +4,13 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import java.util.Collection;
import java.util.Map;
import java.util.concurrent.ExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@ -21,9 +24,6 @@ import ru.spcex.clearing.backendapi.controller.response.entity.CommonGetAllRespo
import ru.spcex.clearing.backendapi.service.IOperator;
import ru.spcex.clearing.backendapi.service.IStateLoader;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import java.util.Collection;
import java.util.Map;
import ru.spcex.clearing.platform.messaging.domain.Consts;
@Controller
@ -50,21 +50,19 @@ public class SessionController extends AbstractQueueController {
@ApiOperation(value = "Continue session")
@ApiResponses(value = {@ApiResponse(code = 200, message = "OK", response = CudResponse.class), @ApiResponse(code = 400, message = "Ошибка валидации", response = BasicSpcexResponse.class)})
@RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
@RequestMapping(value = "/{event_type}", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public CudResponse repeatSession(
@ApiParam(value = "Параметры команды в JSON формате.", required = true)
@PathVariable("event_type") String eventType,
@RequestBody ContinueSessionAction continueSessionAction) throws ExecutionException, InterruptedException {
if ("REPT".equals(eventType)) {
return processRequest(Consts.REPEAT_SESSION, continueSessionAction);
} else if ("NEXT".equals(eventType)){
return processRequest(Consts.CONTINUE_SESSION, continueSessionAction);
} else {
throw new UnsupportedOperationException("Unsupported event type: " + eventType);
}
}
@ApiOperation(value = "Continue session")
@ApiResponses(value = {@ApiResponse(code = 200, message = "OK", response = CudResponse.class), @ApiResponse(code = 400, message = "Ошибка валидации", response = BasicSpcexResponse.class)})
@RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public CudResponse continueSession(
@ApiParam(value = "Параметры команды в JSON формате.", required = true)
@RequestBody ContinueSessionAction continueSessionAction) throws ExecutionException, InterruptedException {
return processRequest(Consts.CONTINUE_SESSION, continueSessionAction);
}
}