Commit graph

31 commits

Author SHA1 Message Date
7e5f3400ef feat(db): store name and description inputs in the properties table other than the items table 2025-03-11 23:27:52 +03:00
414e91a825 fix(db): preserve original item_order during updates 2025-03-10 20:48:17 +03:00
896de305cc fix(db): fix the issue of order preservation.
-Added CTE (Common Table Expression) to first get ordered items
-Changed result collection from HashMap to Vec to preserve order
-Process rows sequentially while maintaining item order
2025-03-10 17:39:39 +03:00
47c87159ae feat(db): add item_order to track the order that items are saved in 2025-03-10 17:00:38 +03:00
8ac1d77e06 test(db): add logging to tests 2025-03-06 15:09:28 +03:00
6c2442a82b fix(db): edit add_selected_property fn to Insert URL if it does not exists. 2025-03-06 14:32:52 +03:00
db29d1e05a test(db): test for selected properties addition, retrieval and duplicate prevention. 2025-03-05 16:50:26 +03:00
c96dacaaeb test(db): add url management test and use INSERT or IGNORE to handle url duplicates 2025-03-04 23:49:05 +03:00
aa9743fd2b test(db): test existence of selected properties table 2025-03-04 23:25:29 +03:00
88c6acd7e4 test(db): add test for property management. 2025-03-04 23:17:55 +03:00
505647b432 test(db): implement database layer tests.
-set up test structure
-implement item lifetime tests
2025-03-04 18:05:18 +03:00
5a14111db7 fix(properties): correct property saving and fetching 2025-02-26 02:18:32 +03:00
a47d6b2e3a fix(db): fix property and item deletion 2025-02-25 16:47:58 +03:00
0a05b41ffa fix(db): improve property handling 2025-02-25 15:07:28 +03:00
197e7be2a8 feat(db): replace item insertion with upsert operation. 2025-02-25 02:18:19 +03:00
2e0b038e2a fix(db): add transaction handling and logging for database operations. 2025-02-25 01:38:32 +03:00
b3ac709526 fix(missing url): handle missing URLs gracefully 2025-02-24 10:46:13 +03:00
585a4a6eb7 fix(debug): add logging to solve db saving issues 2025-02-21 15:11:11 +03:00
63aaa57fa1 refactor(imports): remove unused imports 2025-02-20 15:57:02 +03:00
a379e93f44 feat(db): add proper error handling to schema table creation 2025-02-20 15:01:29 +03:00
a8d8e9a131 feat(db): migrate to relational property storage
-Removed JSON (de)serialization from DbItem struct
-Added direct Item struct handling in database operations
-remove insert_item function
2025-02-19 22:45:24 +03:00
74bd1a89e5 feat(db): edit database schema and item insertion logic
* Added a junction table for custom properties to improve data normalization
* Modified the `insert_item_by_url` function to handle custom properties through the junction table
* Introduced `get_url_id` and `get_or_create_property` helper functions for improved code organization
* Updated the `insert_item_by_url` function to use the new helper functions and handle custom properties correctly
* Improved error handling and logging throughout the database module
2025-02-18 23:38:45 +03:00
ecc991cc24 feat(db): add properties table and junction table for custom properties 2025-02-17 17:04:16 +03:00
bfded464c9 feat(db): update db.rs to save url specific items and properties 2025-02-12 15:55:17 +03:00
ce1e93fc49 feat(db): create new URL table and update the existing table to include a foreign key to the URLs table 2025-02-11 23:36:43 +03:00
68b458df5e feat(db): enable user to delete items and properties from the database. 2025-01-28 14:36:17 +03:00
fc13b0dae6 feat(db): enable db to update items keeping track of the item's id 2025-01-24 01:54:25 +03:00
291cb05847 feat(db): run db on backend using actix web 2025-01-22 20:16:43 +03:00
af3f89c561 feat(db): add API endpoint for updating items to db and implement server-side functionality 2025-01-22 14:14:18 +03:00
dc70316bae fix(db): db debugging (in progress) 2025-01-20 18:49:54 +03:00
c8f32d027f feat(db): add a database using rusqlite. 2025-01-17 18:51:59 +03:00