Schema

input CreateTeamAutoMatcher_QuestionnaireInput {
	questionTitle: String!
	questionList: [String]!
	bDuplicate: Boolean!
}

input CreateUserInput {
	userId: String
	question: [questionInput]
}

input DeleteTeamAutoMatcher_QuestionnaireInput {
	id: ID!
}

input DeleteUserInput {
	id: ID!
}

type ModelSingleUserConnection {
	items: [user]
	nextToken: String
}

type Mutation {
	createTeamAutoMatcher_Questionnaire(input: CreateTeamAutoMatcher_QuestionnaireInput!): TeamAutoMatcher_Questionnaire
	updateTeamAutoMatcher_Questionnaire(input: UpdateTeamAutoMatcher_QuestionnaireInput!): TeamAutoMatcher_Questionnaire
	deleteTeamAutoMatcher_Questionnaire(input: DeleteTeamAutoMatcher_QuestionnaireInput!): TeamAutoMatcher_Questionnaire
	createUser(input: CreateUserInput!): user
	updateUser(input: UpdateUserInput!): user
	deleteUser(input: DeleteUserInput!): user
}

type Query {
	getQuestionnaire(id: ID!): TeamAutoMatcher_Questionnaire
	listQuestionnaires(nextToken: String): TeamAutoMatcher_QuestionnaireConnection
	getUser: ModelSingleUserConnection
	listUsers(filter: TableUserFilterInput, limit: Int, nextToken: String): userConnection
	getTeamDashboard(id: ID!): teamDashboard
	listTeamDashboard(nextToken: String): teamDashbaord_Connection
	getPersonDashboard(id: ID!): teamDashboard
	listPersonDashboard(nextToken: String): personDashboard_Connection
}

type Subscription {
	onCreateTeamAutoMatcher_Questionnaire(
		id: ID,
		questionTitle: String,
		questionList: [String],
		bDuplicate: Boolean
	): TeamAutoMatcher_Questionnaire
		@aws_subscribe(mutations: ["createTeamAutoMatcher_Questionnaire"])
	onUpdateTeamAutoMatcher_Questionnaire(
		id: ID,
		questionTitle: String,
		questionList: [String],
		bDuplicate: Boolean
	): TeamAutoMatcher_Questionnaire
		@aws_subscribe(mutations: ["updateTeamAutoMatcher_Questionnaire"])
	onDeleteTeamAutoMatcher_Questionnaire(
		id: ID,
		questionTitle: String,
		questionList: [String],
		bDuplicate: Boolean
	): TeamAutoMatcher_Questionnaire
		@aws_subscribe(mutations: ["deleteTeamAutoMatcher_Questionnaire"])
	onCreateUser(id: ID, userId: String, question: [questionInput]): user
		@aws_subscribe(mutations: ["createUser"])
	onUpdateUser(id: ID, userId: String, question: [questionInput]): user
		@aws_subscribe(mutations: ["updateUser"])
	onDeleteUser(id: ID, userId: String, question: [questionInput]): user
		@aws_subscribe(mutations: ["deleteUser"])
}

input TableBooleanFilterInput {
	ne: Boolean
	eq: Boolean
}

input TableFloatFilterInput {
	ne: Float
	eq: Float
	le: Float
	lt: Float
	ge: Float
	gt: Float
	contains: Float
	notContains: Float
	between: [Float]
}

input TableIDFilterInput {
	ne: ID
	eq: ID
	le: ID
	lt: ID
	ge: ID
	gt: ID
	contains: ID
	notContains: ID
	between: [ID]
	beginsWith: ID
}

input TableIntFilterInput {
	ne: Int
	eq: Int
	le: Int
	lt: Int
	ge: Int
	gt: Int
	contains: Int
	notContains: Int
	between: [Int]
}

input TableStringFilterInput {
	ne: String
	eq: String
	le: String
	lt: String
	ge: String
	gt: String
	contains: String
	notContains: String
	between: [String]
	beginsWith: String
}

input TableTeamAutoMatcher_QuestionnaireFilterInput {
	id: TableIDFilterInput
	questionTitle: TableStringFilterInput
	questionList: TableStringFilterInput
	bDuplicate: TableBooleanFilterInput
}

input TableUserFilterInput {
	id: TableIDFilterInput
	userId: TableStringFilterInput
	question: TableStringFilterInput
}

type TeamAutoMatcher_Questionnaire {
	id: ID!
	questionTitle: String!
	priority: Int!
	questionList: [String]!
	bDuplicate: Boolean!
}

type TeamAutoMatcher_QuestionnaireConnection {
	items: [TeamAutoMatcher_Questionnaire]
	nextToken: String
}

input UpdateTeamAutoMatcher_QuestionnaireInput {
	id: ID!
	questionTitle: String
	priority: Int
	questionList: [String]
	bDuplicate: Boolean
}

input UpdateUserInput {
	id: ID!
	userId: String
	question: [questionInput]
}

type dashboardContent {
	title: String
	text: String
}

type personDashboard {
	id: ID!
	name: String
	skills: [String]
	team: [String]
	outline: String
	domain: String
	contents: [dashboardContent]
}

type personDashboard_Connection {
	items: [personDashboard]
	nextToken: String
}

input questionInput {
	title: String
	answers: [String]
}

type questionType {
	title: String
	answers: [String]
}

type teamDashbaord_Connection {
	items: [teamDashboard]
	nextToken: String
}

type teamDashboard {
	id: ID!
	name: String!
	people: [String]
	skills: [String]
	outline: String
	contents: [dashboardContent]
}

type user {
	id: ID!
	userId: String
	question: [questionType]
	owner: String
}

type userConnection {
	items: [user]
	nextToken: String
}
{
	"id": "aaaaa",
	"name": "라바마",
	"people": ["user1", "user2", "user3"],
  "skills": ["React", "MongoDB", "GraphQL"],
	"outline": "한줄 소개 입니다.",
  "contents": [
		{
			"title": "구현하고자 하는 것",
			"text": "출시를 목적으로 하는 앱을 개발하려 합니다"
		},
		{
			"title": "진행 상황",
			"text": "아이디어를 내고 있는 중입니다."
		}
	]
}

{
	"id": "aaaaa",
	"name": "가나다",
	"people": ["user1", "user2", "user3"],
  "skills": ["Vue", "MongoDB", "GraphQL"],
	"outline": "한줄 소개 입니다.",
  "contents": [
		{
			"title": "구현하고자 하는 것",
			"text": "출시를 목적으로 하는 앱을 개발하려 합니다"
		},
		{
			"title": "진행 상황",
			"text": "아이디어를 내고 있는 중입니다."
		}
	]
}

Data Sources 에서 create data source 클릭

Dynamodb로 이동

이렇게 생성

샘플 데이터 주입

{
	"id": "aaaaa",
	"name": "pkiop",
	"skills": ["React", "MongoDB", "AWS"],
	"team": ["TeamAutoMatcher", "팀 구하는중"],
	"outline": "열심히 하겠습니다",
  "domain": "Web Frontend",
  "contents": [{
		"title": "자기소개",
		"text": "라매개발자입니다."
	},
	{
		"title": "하고싶은 말",
		"text": "구독과 조아요 부탁드립니다~"
	}]
}

{
	"id": "bbbbb",
	"name": "테스트계정",
	"skills": ["React", "MongoDB", "Express"],
	"team": ["팀 구하는중"],
	"outline": "열심히 하겠습니다",
  "domain": "Backend",
  "contents": [{
		"title": "자기소개",
		"text": "재밌게 하겠습니다.."
	},
	{
		"title": "하고싶은 말",
		"text": "재밌게 합시다.."
	}]
}