ソースを参照

fix: add GetOrder, fix ErrConflict code to match spec

b 1 ヶ月 前
コミット
f79fb48740
3 ファイル変更7 行追加3 行削除
  1. 1 1
      model/order.go
  2. 4 0
      service/order.go
  3. 2 2
      service/order_test.go

+ 1 - 1
model/order.go

@@ -48,7 +48,7 @@ func (e *AppError) Error() string {
 // 预定义错误
 var (
 	ErrNotFound   = NewAppError("not_found", "订单不存在", 404)
-	ErrConflict   = NewAppError("already_accepted", "订单已被其他服务者接单", 409)
+	ErrConflict   = NewAppError("conflict", "订单已被其他服务者接单", 409)
 	ErrStatusConflict = NewAppError("conflict", "订单状态已变更,请重试", 409)
 )
 

+ 4 - 0
service/order.go

@@ -61,6 +61,10 @@ func (s *OrderService) AcceptOrder(id, providerID string) (*model.Order, error)
 	return s.repo.FindByID(id)
 }
 
+func (s *OrderService) GetOrder(id string) (*model.Order, error) {
+	return s.repo.FindByID(id)
+}
+
 func (s *OrderService) CancelOrder(id string) (*model.Order, error) {
 	order, err := s.repo.FindByID(id)
 	if err != nil {

+ 2 - 2
service/order_test.go

@@ -71,8 +71,8 @@ func TestAcceptOrder_AlreadyAccepted(t *testing.T) {
 		t.Fatal("expected error")
 	}
 	appErr, ok := err.(*model.AppError)
-	if !ok || appErr.Code != "already_accepted" {
-		t.Errorf("expected already_accepted error, got %v", err)
+	if !ok || appErr.Code != "conflict" {
+		t.Errorf("expected conflict error, got %v", err)
 	}
 }