Sobes.tech
Middle

CRIAR OU ALTERAR PROCEDIMENTO dif.get_request_to_cancel_not_confirmed_delivery AS BEGIN SET NOCOUNT ON; DECLARE @delivery_id BIGINT , @request_queue_id BIGINT , @request_id BIGINT , @contents VARCHAR(MAX) SELECT TOP 1 @delivery_id = od.delivery_id , @request_queue_id = NULL , @request_id = odr.request_id , @contents = cn.contents FROM opsapi.request rq JOIN ops.contents cn ON cn.contents_uid = rq.contents_uid JOIN dif.ops_delivery_request odr ON odr.request_id = rq.request_id JOIN dif.ops_delivery od ON od.delivery_id = odr.delivery_id WHERE 1 = 1 AND rq.state_code = 200 AND rq.scheme_name = 'исх:опс.лк.отмена.слота.ффд' AND od.state_code = 257 ORDER BY rq.request_id UPDATE opsapi.request SET state_code = 202 , state_name = opsapi.get_state_name(202) , state_note = NULL , state_datetime = GETDATE() , updated_at = GETDATE() WHERE request_id = @request_id SELECT @request_queue_id request_queue_id, @request_id request_id, @contents contents END GO

sobes.tech IA

Resposta da IA

O procedimento dif.get_request_to_cancel_not_confirmed_delivery seleciona a primeira solicitação adequada para cancelar uma entrega de slot com um determinado estado, atualiza seu status e retorna os dados.

Ele faz o seguinte:

  • Procura a primeira solicitação (request) com estado 200 e esquema 'исх:опс.лк.отмена.слота.ффд', cuja entrega relacionada está em estado 257.
  • Extrai delivery_id, request_id e o conteúdo da solicitação.
  • Atualiza o estado da solicitação para 202, atualiza o horário e limpa as notas.
  • Retorna request_queue_id (null), request_id e o conteúdo.

Este é um procedimento típico para lidar com uma fila de solicitações com atualização de seus estados e recuperação de dados para processamento posterior.