diff --git a/account-service/src/main/java/com/drinkool/entities/ManagerEntity.java b/account-service/src/main/java/com/drinkool/entities/ManagerEntity.java index 8649b9c..5c7d8a0 100644 --- a/account-service/src/main/java/com/drinkool/entities/ManagerEntity.java +++ b/account-service/src/main/java/com/drinkool/entities/ManagerEntity.java @@ -2,6 +2,8 @@ package com.drinkool.entities; import com.drinkool.Role; import com.drinkool.models.UserModel; +import com.fasterxml.jackson.annotation.JsonIgnore; + import jakarta.persistence.*; import jakarta.transaction.Transactional; import java.util.ArrayList; @@ -11,6 +13,7 @@ import java.util.List; @Table(name = Role.Manager) public class ManagerEntity extends UserModel { + @JsonIgnore @OneToMany( mappedBy = "serve", cascade = CascadeType.ALL, @@ -18,6 +21,7 @@ public class ManagerEntity extends UserModel { ) public List staffs = new ArrayList<>(); + @JsonIgnore @Column(nullable = true) public String bankAccount; diff --git a/account-service/src/main/java/com/drinkool/services/ManagerService.java b/account-service/src/main/java/com/drinkool/services/ManagerService.java index ddb77fe..de00fcc 100644 --- a/account-service/src/main/java/com/drinkool/services/ManagerService.java +++ b/account-service/src/main/java/com/drinkool/services/ManagerService.java @@ -66,6 +66,7 @@ public class ManagerService extends BaseService { .build(); return Response.accepted() + .entity(manager) .header(InternalValue.userId, manager.id.toString()) .header(InternalValue.role, Role.Manager) .build(); diff --git a/gateway-service/src/main/java/com/drinkool/controller/GraphqlBase.java b/gateway-service/src/main/java/com/drinkool/controller/GraphqlBase.java index 1616c3c..bc34a95 100644 --- a/gateway-service/src/main/java/com/drinkool/controller/GraphqlBase.java +++ b/gateway-service/src/main/java/com/drinkool/controller/GraphqlBase.java @@ -9,6 +9,9 @@ import jakarta.json.bind.Jsonb; import jakarta.ws.rs.core.HttpHeaders; import jakarta.ws.rs.core.MediaType; import jakarta.ws.rs.core.Response; +import java.util.HashMap; +import java.util.List; +import java.util.Map; public abstract class GraphqlBase { @@ -39,18 +42,25 @@ public abstract class GraphqlBase { gqlRequest.variables ); - if (response.hasError()) { - return Response.status(400) - .entity(jsonb.toJson(response.getErrors())) - .build(); - } + Map gqlBody = new HashMap<>(); - return Response.ok(jsonb.toJson(response.getData())) + gqlBody.put("data", response.getData()); + gqlBody.put("errors", response.getErrors()); + return Response.ok(jsonb.toJson(gqlBody)) .type(MediaType.APPLICATION_JSON) .build(); } catch (Exception e) { e.printStackTrace(); - return Response.serverError().entity("Lỗi kết nối tới service").build(); + Map errorBody = new HashMap<>(); + errorBody.put( + "errors", + List.of(Map.of("message", "Lỗi kết nối tới service: " + e.getMessage())) + ); + + return Response.serverError() + .type(MediaType.APPLICATION_JSON) + .entity(jsonb.toJson(errorBody)) + .build(); } } }