(w http.ResponseWriter, r *http.Request)
| 185 | } |
| 186 | |
| 187 | func (h *handler) updateOrderStatus(w http.ResponseWriter, r *http.Request) { |
| 188 | claims := r.Context().Value(authKey{}).(*token.UserClaims) |
| 189 | |
| 190 | var o OrderReq |
| 191 | if err := json.NewDecoder(r.Body).Decode(&o); err != nil { |
| 192 | http.Error(w, "error decoding request body", http.StatusBadRequest) |
| 193 | return |
| 194 | } |
| 195 | |
| 196 | status, err := toPBOrderStatus(OrderStatus(o.Status)) |
| 197 | if err != nil { |
| 198 | http.Error(w, "invalid status", http.StatusBadRequest) |
| 199 | return |
| 200 | } |
| 201 | |
| 202 | res, err := h.client.UpdateOrderStatus(h.ctx, &pb.OrderReq{ |
| 203 | Id: o.ID, |
| 204 | UserId: claims.ID, |
| 205 | UserEmail: claims.Email, |
| 206 | Status: status, |
| 207 | }) |
| 208 | if err != nil { |
| 209 | http.Error(w, "failed to update order status", http.StatusInternalServerError) |
| 210 | return |
| 211 | } |
| 212 | |
| 213 | w.Header().Set("Content-Type", "application/json") |
| 214 | json.NewEncoder(w).Encode(res) |
| 215 | } |
| 216 | |
| 217 | func (h *handler) deleteOrder(w http.ResponseWriter, r *http.Request) { |
| 218 | id := chi.URLParam(r, "id") |
nothing calls this directly
no test coverage detected