Skip to content

Commit 1efdb29

Browse files
committed
feat(api): add ItemPrice resource and add item prices, remove item cost
1 parent d3f8ce8 commit 1efdb29

File tree

12 files changed

+124
-4
lines changed

12 files changed

+124
-4
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ make docker-migrate
121121
When you start PokéAPI with the above Docker Compose setup, an [Hasura Engine](https://github.com/hasura/graphql-engine) server is started as well. It's possible to track all the PokeAPI tables and foreign keys by simply
122122

123123
```sh
124-
# hasura cli needs to be installed and available in your $PATH: https://hasura.io/docs/latest/graphql/core/hasura-cli/install-hasura-cli.html
124+
# hasura cli needs to be installed and available in your $PATH: https://hasura.io/docs/2.0/hasura-cli/install-hasura-cli
125125
# hasura cli's version has to greater than v2.48.1
126126
make hasura-apply
127127
```

graphql/v1beta/metadata/databases/default/tables/public_pokemon_v2_item.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,13 @@ array_relationships:
6565
table:
6666
name: pokemon_v2_itemname
6767
schema: public
68+
- name: pokemon_v2_itemprices
69+
using:
70+
foreign_key_constraint_on:
71+
column: item_id
72+
table:
73+
name: pokemon_v2_itemprice
74+
schema: public
6875
- name: pokemon_v2_itemsprites
6976
using:
7077
foreign_key_constraint_on:
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
table:
2+
name: pokemon_v2_itemprice
3+
schema: public
4+
object_relationships:
5+
- name: pokemon_v2_item
6+
using:
7+
foreign_key_constraint_on: item_id
8+
- name: pokemon_v2_versiongroup
9+
using:
10+
foreign_key_constraint_on: version_group_id
11+
select_permissions:
12+
- role: anon
13+
permission:
14+
columns: '*'
15+
filter: {}
16+
limit: 100000
17+
allow_aggregations: true

graphql/v1beta/metadata/databases/default/tables/public_pokemon_v2_versiongroup.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,13 @@ array_relationships:
3434
table:
3535
name: pokemon_v2_itemflavortext
3636
schema: public
37+
- name: pokemon_v2_itemprices
38+
using:
39+
foreign_key_constraint_on:
40+
column: version_group_id
41+
table:
42+
name: pokemon_v2_itemprice
43+
schema: public
3744
- name: pokemon_v2_machines
3845
using:
3946
foreign_key_constraint_on:

graphql/v1beta/metadata/databases/default/tables/tables.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
- "!include public_pokemon_v2_itemflingeffecteffecttext.yaml"
5252
- "!include public_pokemon_v2_itemgameindex.yaml"
5353
- "!include public_pokemon_v2_itemname.yaml"
54+
- "!include public_pokemon_v2_itemprice.yaml"
5455
- "!include public_pokemon_v2_itempocket.yaml"
5556
- "!include public_pokemon_v2_itempocketname.yaml"
5657
- "!include public_pokemon_v2_itemsprites.yaml"

graphql/v1beta2/metadata/databases/default/tables/public_pokemon_v2_item.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,13 @@ array_relationships:
7070
table:
7171
name: pokemon_v2_itemname
7272
schema: public
73+
- name: itemprices
74+
using:
75+
foreign_key_constraint_on:
76+
column: item_id
77+
table:
78+
name: pokemon_v2_itemprice
79+
schema: public
7380
- name: itemsprites
7481
using:
7582
foreign_key_constraint_on:
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
table:
2+
name: pokemon_v2_itemprice
3+
schema: public
4+
configuration:
5+
column_config: {}
6+
custom_column_names: {}
7+
custom_name: itemprice
8+
custom_root_fields: {}
9+
object_relationships:
10+
- name: item
11+
using:
12+
foreign_key_constraint_on: item_id
13+
- name: versiongroup
14+
using:
15+
foreign_key_constraint_on: version_group_id
16+
select_permissions:
17+
- role: anon
18+
permission:
19+
columns: '*'
20+
filter: {}
21+
limit: 100000
22+
allow_aggregations: true

graphql/v1beta2/metadata/databases/default/tables/public_pokemon_v2_versiongroup.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ array_relationships:
3939
table:
4040
name: pokemon_v2_itemflavortext
4141
schema: public
42+
- name: itemprices
43+
using:
44+
foreign_key_constraint_on:
45+
column: version_group_id
46+
table:
47+
name: pokemon_v2_itemprice
48+
schema: public
4249
- name: machines
4350
using:
4451
foreign_key_constraint_on:

graphql/v1beta2/metadata/databases/default/tables/tables.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
- "!include public_pokemon_v2_itemflingeffecteffecttext.yaml"
5252
- "!include public_pokemon_v2_itemgameindex.yaml"
5353
- "!include public_pokemon_v2_itemname.yaml"
54+
- "!include public_pokemon_v2_itemprice.yaml"
5455
- "!include public_pokemon_v2_itempocket.yaml"
5556
- "!include public_pokemon_v2_itempocketname.yaml"
5657
- "!include public_pokemon_v2_itemsprites.yaml"
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Generated by Django 5.2.10 on 2026-03-07 00:00
2+
3+
import django.db.models.deletion
4+
from django.db import migrations, models
5+
6+
7+
class Migration(migrations.Migration):
8+
9+
dependencies = [
10+
("pokemon_v2", "0025_pokemonstatpast"),
11+
]
12+
13+
operations = [
14+
migrations.CreateModel(
15+
name="ItemPrice",
16+
fields=[
17+
(
18+
"id",
19+
models.AutoField(
20+
auto_created=True,
21+
primary_key=True,
22+
serialize=False,
23+
verbose_name="ID",
24+
),
25+
),
26+
("is_purchasable", models.BooleanField()),
27+
("purchase_price", models.IntegerField()),
28+
("sell_price", models.IntegerField()),
29+
(
30+
"item",
31+
models.ForeignKey(
32+
blank=True,
33+
null=True,
34+
on_delete=django.db.models.deletion.CASCADE,
35+
related_name="%(class)s",
36+
to="pokemon_v2.item",
37+
),
38+
),
39+
(
40+
"version_group",
41+
models.ForeignKey(
42+
blank=True,
43+
null=True,
44+
on_delete=django.db.models.deletion.CASCADE,
45+
related_name="%(class)s",
46+
to="pokemon_v2.versiongroup",
47+
),
48+
),
49+
],
50+
options={
51+
"abstract": False,
52+
},
53+
),
54+
]

0 commit comments

Comments
 (0)