Commit graph

25 commits

Author SHA1 Message Date
1b5e1f4365 Improve sql for items table
Now if item_id or unique_name change, that counts as a record
being deleted and a new one inserted.
If neither of that changed but any other field did, the old
field gets updated with the new value.
2020-08-12 01:07:34 +01:00
ef39dee43e Fix issue with items table; enable foreign key constraints
Program receives the full items list periodically. I don't think
they will ever remove records from there, but if they do the
program should not corruct the db. So far the simple approach
drop table items/create table items ensured the items list is
always fresh, but it prevented foreign key constraints on shop
items. Also, if an item was removed from items, any entry in
shop would become orphaned or worse point to the wrong item if
they recycled the id. Solution is to not use item_id at all for
the relationship between shop items and items table, instead
have my own internal id that is valid forever. Now records
removed upstream get just marked as deleted (by adding a removal
timestamp). The same item_id can be reused since the unique part
now must be (item_id, removal_date), in other words there is only
one non-deleted item_id, but there can be several deleted ones.

Code stores the full items set into items_staging, marks records
in items but not in items_staging as deleted, then adds any
missing records to items from items_staging, then drops items_staging.
2020-08-12 00:07:22 +01:00
cb500fd67c Add TimerCreators 2020-08-11 02:10:43 +01:00
bc0de0cf8b Populate slotted_cards table
It contains the list of cards inserted into the
slots of the items in the shop_items table

I can't enable the foreign key on card_id because
the items table gets razed periodically - need
to find a solution to this
2020-08-10 23:40:05 +01:00
b76a2f22a4 Populate shop_items table 2020-08-10 23:17:17 +01:00
bf055b5b87 Rename property 2020-08-10 23:15:25 +01:00
a930622569 Add more timestamp conversion functions to dateconv.hpp 2020-08-10 22:17:42 +01:00
616ac36a34 Populate the shops table 2020-08-10 21:52:56 +01:00
417030f4fe Parse the YYYY-MM-DDTHH:MM:SSZ dates correctly
Dates in the json reply seem to come in two different formats.
One is the reply timestamp, second one is the actual
content (for example shop opening dates)
2020-08-10 21:52:56 +01:00
c1e21bb8d6 Add TimerShops 2020-08-10 21:52:56 +01:00
9f4a5baebb Store icons into their own separate table 2020-08-10 21:52:56 +01:00
35118dbe4e Get db path from settings file instead of using a hardcoded value 2020-08-10 13:21:04 +01:00
2717817958 Attach GPL3+ licence 2020-08-10 11:22:25 +01:00
ab8f8b1533 I don't think I need transactions for those 2020-08-10 10:18:15 +01:00
53ba7febf4 This stuff doesn't need to be in oro 2020-08-10 02:47:55 +01:00
eeab1d5c5e Add base64 decoding function 2020-08-10 02:35:27 +01:00
6b9502ea3e Store items and icons into the db 2020-08-10 02:34:09 +01:00
b4c9b013a0 Add fame_list() to Api.
With this commit the whole remote API is currently covered.
2020-06-23 10:29:59 +02:00
5b480f3ae5 Add market_list() to Api. 2020-06-23 10:19:02 +02:00
fd5c29ca54 Add items_icons() to Api. 2020-06-22 22:29:14 +02:00
fd147c4f2a Add items_list() to Api. 2020-06-22 20:53:56 +02:00
939bcffc61 Add who_am_i() method to Api. 2020-06-22 19:40:37 +02:00
b1376f7379 Default initalise values 2020-06-20 02:02:43 +02:00
bab47fbd0b Parse the date from the responce header 2020-06-20 02:01:52 +02:00
96e35a5814 Giving code some initial structure 2020-06-20 01:27:47 +02:00