tsk-59: Got the code for MER and added TODO
This commit is contained in:
@@ -12,6 +12,7 @@ const GetScheduledMessageEventEndpoint = "/api/v1/schedule/message/event"
|
|||||||
const DeleteScheduledMessageEventEndpoint = "/api/v1/schedule/message/event/{id}"
|
const DeleteScheduledMessageEventEndpoint = "/api/v1/schedule/message/event/{id}"
|
||||||
const UpdateScheduledMessageStatusEndpoint = "/api/v1/schedule/message/status/update"
|
const UpdateScheduledMessageStatusEndpoint = "/api/v1/schedule/message/status/update"
|
||||||
const FetchNextScheduledMessageEndpoint = "/api/v1/schedule/message/fetch"
|
const FetchNextScheduledMessageEndpoint = "/api/v1/schedule/message/fetch"
|
||||||
|
// TODO: Tweak endpoint verbage for MessageEventResponse endpoint
|
||||||
// TODO: Make RecordEventResponse more consistent with MessageEventResponse
|
// TODO: Make RecordEventResponse more consistent with MessageEventResponse
|
||||||
const RecordEventResponse = "/api/v1/schedule/message/event/response/record"
|
const RecordEventResponse = "/api/v1/schedule/message/event/response/record"
|
||||||
const FetchMessageEventResponse = "/api/v1/schedule/message/event/response"
|
const FetchMessageEventResponse = "/api/v1/schedule/message/event/response"
|
||||||
|
|||||||
@@ -93,8 +93,43 @@ type GetMessageEventResponseFetchedResponse struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (e *EventResponseHandler) Fetch(w http.ResponseWriter, r *http.Request) {
|
func (e *EventResponseHandler) Fetch(w http.ResponseWriter, r *http.Request) {
|
||||||
|
queryParams := r.URL.Query()
|
||||||
|
var userId uuid.UUID
|
||||||
|
|
||||||
|
if _, exists := queryParams["user_id"]; !exists {
|
||||||
|
http.Error(w, "Query params", http.StatusBadRequest)
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
var err error
|
||||||
|
userId, err = uuid.Parse(queryParams.Get("user_id"))
|
||||||
|
if err != nil {
|
||||||
|
http.Error(w, "Query params", http.StatusBadRequest)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var statusCode int
|
var statusCode int
|
||||||
var resp GetMessageEventResponseFetchedResponse
|
var resp GetMessageEventResponseFetchedResponse
|
||||||
|
|
||||||
|
if userId == uuid.Nil {
|
||||||
|
statusCode = http.StatusBadRequest
|
||||||
|
resp.Message = "User Id is nil"
|
||||||
|
} else {
|
||||||
|
ctx := r.Context()
|
||||||
|
if sentMessages, err := e.MessageEventResponseStore.GetWithUserId(ctx, userId); err != nil {
|
||||||
|
statusCode = http.StatusInternalServerError
|
||||||
|
resp.Message = err.Error()
|
||||||
|
} else {
|
||||||
|
if len(sentMessages) == 0 {
|
||||||
|
statusCode = http.StatusNotFound
|
||||||
|
resp.Message = "Not MessageEventResponses found"
|
||||||
|
} else {
|
||||||
|
statusCode = http.StatusOK
|
||||||
|
resp.Message = "Successful"
|
||||||
|
resp.Data = sentMessages
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
RespondWithJSON(w, statusCode, &resp)
|
RespondWithJSON(w, statusCode, &resp)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user