queries.gd 10,5 КБ
Newer Older
magcourier's avatar
magcourier включено в состав коммита
1
2
3
4
5
6
7
8
9
extends Object
# Здесь будем хранить всё для запросов к бэкэнду по блоку "Космос"


# URL к API
const URL = "https://t34.tehnokom.su/api/v1.1/"


# Запрос к API
magcourier's avatar
magcourier включено в состав коммита
10
func objecto_query(kuboId, statusoId, kategorioId, tipo_id):
magcourier's avatar
magcourier включено в состав коммита
11
12
13
	return JSON.print({ "query": "query ($kuboId:Float, $statusoId:Float, "+
		" $realecoId:Float, $kategorioId:Float, $tipoId:Float) " +
		"{ universoObjekto (realeco_Id:$realecoId, kubo_Id: $kuboId,  koordinatoX_Gt:-5000000, "+
magcourier's avatar
magcourier включено в состав коммита
14
		" koordinatoY_Gt:-5000000, koordinatoZ_Gt:-5000000) { edges { node { uuid posedantoId "+
magcourier's avatar
magcourier включено в состав коммита
15
		" projekto (statuso_Id: $statusoId, tipo_Id: $tipoId){ "+
magcourier's avatar
magcourier включено в состав коммита
16
17
18
19
20
21
22
		"  edges { node { uuid "+
		"  tasko (kategorio_Id:$kategorioId){ edges {node { "+
		"   uuid finKoordinatoX finKoordinatoY finKoordinatoZ statuso {objId} } } } } } } "+
		" inCosmo nomo { enhavo } priskribo { enhavo } "+
		" resurso { nomo { enhavo } priskribo { enhavo } "+
		"  tipo { objId nomo { enhavo } } } "+
		" koordinatoX koordinatoY koordinatoZ "+
magcourier's avatar
magcourier включено в состав коммита
23
		" rotaciaX rotaciaY rotaciaZ } } } }",
magcourier's avatar
magcourier включено в состав коммита
24
25
26
		'variables': {"kuboId":kuboId, "statusoId":statusoId, 
		"kategorioId":kategorioId, "tipoId":tipo_id,
		"realecoId":Global.realeco} })
magcourier's avatar
magcourier включено в состав коммита
27

magcourier's avatar
magcourier включено в состав коммита
28

magcourier's avatar
magcourier включено в состав коммита
29
# задаём координаты и угол поворота объекту
magcourier's avatar
magcourier включено в состав коммита
30
31
32
33
34
35
36
37
38
39
func objecto_mutation(uuid, koordX, koordY, koordZ, rotaciaX, rotaciaY, rotaciaZ):
	return JSON.print({ 'query': 'mutation ($uuid:UUID, $koordX:Float, $koordY:Float, $koordZ:Float,'+
		' $rotaciaX:Float, $rotaciaY:Float, $rotaciaZ:Float )'+
		' { redaktuUniversoObjekto ( uuid: $uuid, koordinatoX: $koordX, koordinatoY: $koordY, '+
		'koordinatoZ: $koordZ, rotaciaX: $rotaciaX, rotaciaY: $rotaciaY, rotaciaZ: $rotaciaZ ) '+
		' { status message universoObjektoj { uuid } } }',
		'variables': {"uuid":uuid, "koordX": koordX, "koordY": koordY, "koordZ": koordZ,
		"rotaciaX": rotaciaX, "rotaciaY": rotaciaY, "rotaciaZ": rotaciaZ} })


magcourier's avatar
magcourier включено в состав коммита
40
41
# устанавливаем проект
func instalo_projekto(posedantoObjektoUuid, kom_koordX, kom_koordY, kom_koordZ,
magcourier's avatar
magcourier включено в состав коммита
42
	fin_koordX, fin_koordY, fin_koordZ):
magcourier's avatar
magcourier включено в состав коммита
43
44
45
46
47
	var tipoId = 2
	var kategorio = 3
	var statusoId = 2
	var nomo = "Movado"
	var priskribo = "Movado de objekto"
magcourier's avatar
magcourier включено в состав коммита
48
49
	var statusoPosedantoId = 1
	var tipoPosedantoId = 1
magcourier's avatar
magcourier включено в состав коммита
50
	var query = JSON.print({ 'query': 'mutation ($tipoId:Int, $kategorio:[Int],'+
magcourier's avatar
magcourier включено в состав коммита
51
52
		' $nomo:String, $priskribo:String, $statusoId:Int, $kom_koordX:Float, '+
		' $kom_koordY:Float, $kom_koordZ:Float, $fin_koordX:Float, '+
magcourier's avatar
magcourier включено в состав коммита
53
		' $fin_koordY:Float, $fin_koordZ:Float, $tipoPosedantoId:Int,'+
magcourier's avatar
magcourier включено в состав коммита
54
55
		' $statusoPosedantoId:Int, $posedantoObjektoUuid:String, '+
		' $realecoId:Int ) '+
magcourier's avatar
magcourier включено в состав коммита
56
		'{ redaktuUniversoProjekto ( '+
magcourier's avatar
magcourier включено в состав коммита
57
		' tipoId:$tipoId, kategorio:$kategorio, nomo:$nomo, '+
magcourier's avatar
magcourier включено в состав коммита
58
59
		' priskribo:$priskribo, statusoId:$statusoId, publikigo:true, komKoordinatoX:$kom_koordX,'+
		' komKoordinatoY:$kom_koordY, komKoordinatoZ:$kom_koordZ, finKoordinatoX:$fin_koordX,'+
magcourier's avatar
magcourier включено в состав коммита
60
		' finKoordinatoY:$fin_koordY, finKoordinatoZ:$fin_koordZ, posedantoTipoId:$tipoPosedantoId, '+
magcourier's avatar
magcourier включено в состав коммита
61
62
		' posedantoObjektoUuid: $posedantoObjektoUuid, posedantoStatusoId:$statusoPosedantoId ,'+
		' realecoId:$realecoId ) '+
magcourier's avatar
magcourier включено в состав коммита
63
		' { status message '+
magcourier's avatar
magcourier включено в состав коммита
64
65
		' universoProjekto { uuid } } }',
		'variables': {"tipoId":tipoId, "kategorio": kategorio, "nomo": nomo,
magcourier's avatar
magcourier включено в состав коммита
66
67
68
			"priskribo": priskribo, "statusoId": statusoId,
			"kom_koordX": kom_koordX, "kom_koordY": kom_koordY, "kom_koordZ": kom_koordZ, 
			"fin_koordX":fin_koordX, 
magcourier's avatar
magcourier включено в состав коммита
69
70
			"fin_koordY":fin_koordY, "fin_koordZ":fin_koordZ,
			"posedantoObjektoUuid":posedantoObjektoUuid, "statusoPosedantoId":statusoPosedantoId,
magcourier's avatar
magcourier включено в состав коммита
71
72
73
			"tipoPosedantoId":tipoPosedantoId, "realecoId":Global.realeco} })
	# print('===instalo_projekto===',query)
	return query
magcourier's avatar
magcourier включено в состав коммита
74

magcourier's avatar
magcourier включено в состав коммита
75
# записываем список задач с их владельцами и текущие координаты объекту
magcourier's avatar
magcourier включено в состав коммита
76
77
func instalo_tasko_posedanto_koord(uuid, projekto_uuid, kom_koordX, kom_koordY, kom_koordZ, itineroj):
	# создаём список задач, создаём владельца проекта, устанавливаем координаты объекту
magcourier's avatar
magcourier включено в состав коммита
78
79
	var tipoId = 2
	var kategorio = 3
magcourier's avatar
magcourier включено в состав коммита
80
	var statusoId = [2]
magcourier's avatar
magcourier включено в состав коммита
81
82
83
84
	var nomo = "Movado"
	var priskribo = "Movado de objekto"
	var tipoPosedantoId = 1
	var statusoPosedantoId = 1
magcourier's avatar
magcourier включено в состав коммита
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
	var pozicio =[1]
	var fin_koordX = []
	var fin_koordY = []
	var fin_koordZ = []
	# параметры координат последующих задач
	var i = 0
	var komKoordinatoX=[]
	var komKoordinatoY=[]
	var komKoordinatoZ=[]
	for iti in itineroj:
		if i==0:
			komKoordinatoX.append(kom_koordX)
			komKoordinatoY.append(kom_koordY)
			komKoordinatoZ.append(kom_koordZ)
		else:
			pozicio.append(i+1)
			komKoordinatoX.append(itineroj[i-1]['koordinatoX'])
			komKoordinatoY.append(itineroj[i-1]['koordinatoY'])
			komKoordinatoZ.append(itineroj[i-1]['koordinatoZ'])
			statusoId.append(1)
		fin_koordX.append(itineroj[i]['koordinatoX'])
		fin_koordY.append(itineroj[i]['koordinatoY'])
		fin_koordZ.append(itineroj[i]['koordinatoZ'])
		i += 1

magcourier's avatar
magcourier включено в состав коммита
110
	var query = JSON.print({ 'query': 'mutation ($uuid:UUID, $koordX:Float, $koordY:Float, $koordZ:Float, ' +
magcourier's avatar
magcourier включено в состав коммита
111
112
113
		'$tipoId:Int, $kategorio:[Int], $nomo:String, $priskribo:String, $statusoId:[Int], $projekto_uuid: String,' +
		'$komKoordinatoX:[Float], $komKoordinatoY:[Float], $komKoordinatoZ:[Float], $tipoPosedantoId:Int,' +
		'$fin_koordX:[Float], $fin_koordY:[Float], $fin_koordZ:[Float], $pozicio:[Int], $statusoPosedantoId:Int,' +
magcourier's avatar
magcourier включено в состав коммита
114
		'$posedantoObjektoUuid:String, $realecoId:Int)'+
magcourier's avatar
magcourier включено в состав коммита
115
		' { redaktuUniversoObjekto ( uuid: $uuid, koordinatoX: $koordX, koordinatoY: $koordY, '+
magcourier's avatar
magcourier включено в состав коммита
116
		' koordinatoZ: $koordZ, realecoId:$realecoId ) { status message universoObjektoj { uuid } } '+
magcourier's avatar
magcourier включено в состав коммита
117
118
119
120
		'redaktuKreiUniversoTaskojPosedanto (projektoUuid: $projekto_uuid, tipoId:$tipoId, kategorio:$kategorio, nomo:$nomo, '+
		' priskribo:$priskribo, statusoId:$statusoId, pozicio:$pozicio, komKoordinatoX:$komKoordinatoX,'+
		' komKoordinatoY:$komKoordinatoY, komKoordinatoZ:$komKoordinatoZ, finKoordinatoX:$fin_koordX,'+
		' finKoordinatoY:$fin_koordY, finKoordinatoZ:$fin_koordZ, posedantoStatusoId:$statusoPosedantoId,'+
magcourier's avatar
magcourier включено в состав коммита
121
122
		' posedantoTipoId:$tipoPosedantoId, posedantoObjektoUuid:$posedantoObjektoUuid, '+
		' realecoId:$realecoId ) { status '+
magcourier's avatar
magcourier включено в состав коммита
123
		' message universoTaskoj { uuid } } }',
magcourier's avatar
magcourier включено в состав коммита
124
		'variables':  {"uuid":uuid, "koordX": kom_koordX, "koordY": kom_koordY, "koordZ": kom_koordZ,
magcourier's avatar
magcourier включено в состав коммита
125
126
127
		"tipoId":tipoId, "kategorio": kategorio, "nomo": nomo, "priskribo": priskribo, 
		"statusoId": statusoId, "projekto_uuid": projekto_uuid, "fin_koordX":fin_koordX, 
		"fin_koordY":fin_koordY, "fin_koordZ":fin_koordZ, "tipoPosedantoId":tipoPosedantoId,
magcourier's avatar
magcourier включено в состав коммита
128
		"statusoPosedantoId":statusoPosedantoId, "posedantoObjektoUuid":uuid, "pozicio":pozicio,
magcourier's avatar
magcourier включено в состав коммита
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
		"komKoordinatoX":komKoordinatoX, "komKoordinatoY":komKoordinatoY, "komKoordinatoZ":komKoordinatoZ,
		"realecoId":Global.realeco}})
	# print('===instalo_tasko_posedanto_koord===',query)
	return query


# func posedanto_tasko(uuid, tasko_uuid):
# 	# создаём владельца задачи
# 	var tipoPosedantoId = 1
# 	var statusoPosedantoId = 1
# 	return JSON.print({ 'query': 'mutation ($uuid:String, '+
# 		' $tasko_uuid: String,'+
# 		' $tipoPosedantoId:Int, $statusoPosedantoId:Int)'+
# 		' { redaktuUniversoTaskoPosedantoj( taskoUuid: $tasko_uuid, tipoId:$tipoPosedantoId, '+
# 		' posedantoObjektoUuid: $uuid, statusoId:$statusoPosedantoId, publikigo:true ) '+
# 		' { status message universoTaskoPosedantoj{ uuid } } }',
# 		'variables': {"uuid":uuid, "tasko_uuid": tasko_uuid, "tipoPosedantoId":tipoPosedantoId,
# 		"statusoPosedantoId":statusoPosedantoId} })
magcourier's avatar
magcourier включено в состав коммита
147
148
	

magcourier's avatar
magcourier включено в состав коммита
149
# создаём задачу, устанавливаем координаты объекту, изменяем финальные координаты проекту
magcourier's avatar
magcourier включено в состав коммита
150
151
func instalo_tasko_koord(uuid, projekto_uuid, kom_koordX, kom_koordY, kom_koordZ,
		fin_koordX, fin_koordY, fin_koordZ):
magcourier's avatar
magcourier включено в состав коммита
152
153
	var posedantoTipoId = 1
	var posedantoStatusoId = 1
magcourier's avatar
magcourier включено в состав коммита
154
155
156
157
158
	var tipoId = 2
	var kategorio = 3
	var statusoId = 2
	var nomo = "Movado"
	var priskribo = "Movado de objekto"
magcourier's avatar
magcourier включено в состав коммита
159
	return JSON.print({ 'query': 'mutation ($uuid:UUID, $koordX:Float, $koordY:Float, $koordZ:Float, '+
magcourier's avatar
magcourier включено в состав коммита
160
		'$tipoId:Int, $kategorio:[Int], $nomo:String, $priskribo:String, $statusoId:Int, $projekto_uuid: UUID,'+
magcourier's avatar
magcourier включено в состав коммита
161
		'$fin_koordX:Float, $fin_koordY:Float, $fin_koordZ:Float, $projektoUuid: String, '+
magcourier's avatar
magcourier включено в состав коммита
162
163
		'$posedantoTipoId:Int, $posedantoStatusoId:Int, $posedantoObjektoUuid:String, '+
		'$realecoId:Int)'+
magcourier's avatar
magcourier включено в состав коммита
164
		'{ redaktuUniversoObjekto ( uuid: $uuid, koordinatoX: $koordX, koordinatoY: $koordY, '+
magcourier's avatar
magcourier включено в состав коммита
165
		' koordinatoZ: $koordZ, realecoId:$realecoId ) { status message universoObjektoj { uuid } } '+
magcourier's avatar
magcourier включено в состав коммита
166
		'redaktuUniversoTaskoj (projektoUuid: $projektoUuid, tipoId:$tipoId, kategorio:$kategorio, nomo:$nomo, '+
magcourier's avatar
magcourier включено в состав коммита
167
168
		' priskribo:$priskribo, statusoId:$statusoId, publikigo:true, komKoordinatoX:$koordX,'+
		' komKoordinatoY:$koordY, komKoordinatoZ:$koordZ, finKoordinatoX:$fin_koordX,'+
magcourier's avatar
magcourier включено в состав коммита
169
		' finKoordinatoY:$fin_koordY, finKoordinatoZ:$fin_koordZ, posedantoTipoId:$posedantoTipoId, '+
magcourier's avatar
magcourier включено в состав коммита
170
171
		' posedantoObjektoUuid:$posedantoObjektoUuid, posedantoStatusoId:$posedantoStatusoId, '+
		' realecoId:$realecoId) '+
magcourier's avatar
magcourier включено в состав коммита
172
		'{ status '+
magcourier's avatar
magcourier включено в состав коммита
173
174
175
176
177
178
		' message universoTaskoj { uuid } } '+
		'redaktuUniversoProjekto ( uuid:$projekto_uuid ,'+
		' finKoordinatoX:$fin_koordX,'+
		' finKoordinatoY:$fin_koordY, finKoordinatoZ:$fin_koordZ ) '+
		' { status message '+
		' universoProjekto { uuid } } }',
magcourier's avatar
magcourier включено в состав коммита
179
180
		'variables': {"uuid":uuid, "koordX": kom_koordX, "koordY": kom_koordY, "koordZ": kom_koordZ,
		"tipoId":tipoId, "kategorio": kategorio, "nomo": nomo, "priskribo": priskribo, 
magcourier's avatar
magcourier включено в состав коммита
181
		"statusoId": statusoId, "projekto_uuid": projekto_uuid, "projektoUuid": projekto_uuid, 
magcourier's avatar
magcourier включено в состав коммита
182
183
		"fin_koordX":fin_koordX, "fin_koordY":fin_koordY, "fin_koordZ":fin_koordZ,
		"posedantoStatusoId":posedantoStatusoId, "posedantoTipoId":posedantoTipoId,
magcourier's avatar
magcourier включено в состав коммита
184
		"posedantoObjektoUuid":uuid, "realecoId":Global.realeco } })
magcourier's avatar
magcourier включено в состав коммита
185
186
187


# завершение задачи
magcourier's avatar
magcourier включено в состав коммита
188
func finado_tasko(tasko_uuid, statusoId = 4):
magcourier's avatar
magcourier включено в состав коммита
189
190
191
192
193
194
195
196
	return JSON.print({ 'query': 'mutation ($uuid:UUID,  '+
		' $statusoId:Int, )'+
		'{ redaktuUniversoTaskoj (uuid: $uuid,  '+
		' statusoId:$statusoId) { status '+
		' message universoTaskoj { uuid } } }',
		'variables': {"uuid":tasko_uuid, "statusoId": statusoId } })


magcourier's avatar
magcourier включено в состав коммита
197
# завершение задачи и проекта
magcourier's avatar
magcourier включено в состав коммита
198
199
200
201
202
203
204
func finado_projeko_tasko(projekto_uuid, tasko_uuid):
	var statusoId = 4
	return JSON.print({ 'query': 'mutation ($tasko_uuid:UUID, $projekto_uuid:UUID, '+
		' $statusoId:Int, )'+
		'{ redaktuUniversoTaskoj (uuid: $tasko_uuid,  '+
		' statusoId:$statusoId) { status '+
		' message universoTaskoj { uuid } } '+
magcourier's avatar
magcourier включено в состав коммита
205
		'redaktuUniversoProjekto (uuid: $projekto_uuid,  '+
magcourier's avatar
magcourier включено в состав коммита
206
207
208
209
		' statusoId:$statusoId) { status '+
		' message universoProjekto { uuid } } '+
		'}',
		'variables': {"tasko_uuid":tasko_uuid, "statusoId": statusoId, "projekto_uuid":projekto_uuid } })