diff --git a/dataconnect/connector/partner/mutations.gql b/dataconnect/connector/partner/mutations.gql new file mode 100644 index 00000000..790ec7f7 --- /dev/null +++ b/dataconnect/connector/partner/mutations.gql @@ -0,0 +1,35 @@ +mutation CreatePartner( + $partnerName: String!, + $partnerNumber: String!, + $partnerType: PartnerType +) @auth(level: USER) { + partner_insert( + data: { + partnerName: $partnerName + partnerNumber: $partnerNumber + partnerType: $partnerType + } + ) +} + +mutation UpdatePartner( + $id: UUID!, + $partnerName: String, + $partnerNumber: String, + $partnerType: PartnerType +) @auth(level: USER) { + partner_update( + id: $id, + data: { + partnerName: $partnerName + partnerNumber: $partnerNumber + partnerType: $partnerType + } + ) +} + +mutation DeletePartner( + $id: UUID! +) @auth(level: USER) { + partner_delete(id: $id) +} diff --git a/dataconnect/connector/partner/queries.gql b/dataconnect/connector/partner/queries.gql new file mode 100644 index 00000000..bac247c3 --- /dev/null +++ b/dataconnect/connector/partner/queries.gql @@ -0,0 +1,40 @@ +# dataconnect/connector/partner/queries.gql + +query listPartner @auth(level: USER) { + partners { + id + partnerName + partnerNumber + partnerType + } +} + +query getPartnerById( + $id: UUID! +) @auth(level: USER) { + partner(id: $id) { + id + partnerName + partnerNumber + partnerType + } +} + +query filterPartner( + $partnerName: String, + $partnerNumber: String, + $partnerType: PartnerType +) @auth(level: USER) { + partners( + where: { + partnerName: { eq: $partnerName } + partnerNumber: { eq: $partnerNumber } + partnerType: { eq: $partnerType } + } + ) { + id + partnerName + partnerNumber + partnerType + } +} diff --git a/dataconnect/schema/partner.gql b/dataconnect/schema/partner.gql new file mode 100644 index 00000000..07047155 --- /dev/null +++ b/dataconnect/schema/partner.gql @@ -0,0 +1,17 @@ +enum PartnerType { + CORPORATE + EDUCATION + HEALTHCARE + SPORTS_ENTERTAINMENT + GOVERNMENT +} + +type Partner @table(name: "partner") { + id: UUID! @default(expr: "uuidV4()") + partnerName: String! + partnerNumber: String! + partnerType: PartnerType # partner_type + createdDate: Timestamp @default(expr: "request.time") + updatedDate: Timestamp @default(expr: "request.time") + createdBy: String @default(expr: "auth.uid") +}