Commit graph

58 commits

Author SHA1 Message Date
4e2c4c7ccb Features: 1) Add sku field to multiple serializers and GraphQL object types for better product identification;
Fixes: 1) Remove unnecessary `IntegrityError` import in 0038_backfill_product_sku migration;

Extra: 1) Minor formatting cleanup in migration files.
2025-09-01 20:52:42 +03:00
ec147984ab Features: 1) Add sku field to Product model with improvements, including unique constraint and default generation; 2) Implement migration to backfill SKUs for existing products.
Fixes: None.

Extra: 1) Adjust `.po` and `.mo` files for version change to `2.9.3`; 2) Update translations with minor formatting improvements; 3) Clean up comments in locale files.
2025-09-01 20:50:48 +03:00
54d8889ffa Fixes: 1) Corrected products' filtering options on interfaces 2025-08-25 00:41:02 +03:00
ea22ca69a3 Features: 1) Introduce ALLOW validation for generic actions in permissions; 2) Add AllowAny permission class to seo_meta endpoints; 3) Update SEO URL patterns and breadcrumbs with language codes; 4) Improve compatibility of attributes in serializers with ListField and DictField.;
Fixes: 1) Correct dynamic URL generation for images in Open Graph (`og_image` and `logo_url`); 2) Address potential missing or empty `crumbs` handling in breadcrumbs generation;

Extra: 1) Refactor redundant action names (e.g., `seo` to `seo_meta`) for better consistency; 2) Clean up and optimize serializer structures and Graphene object fields; 3) Improve readability and maintainability of action and object implementations.;
2025-08-18 15:20:47 +03:00
91ebaece07 Features: 1) Add SEOMetaType to support structured SEO metadata for brands, products, and categories; 2) Introduce resolve_seo_meta for dynamic SEO data generation on key models; 3) Add helper functions graphene_current_lang and graphene_abs for language-based URLs and absolute URI handling.
Fixes: None;

Extra: 1) Refactor utility docstrings for clarity and detail; 2) Modernize utility function logic and improve inline comments; 3) Adjust logging initialization in `object_types.py`.
2025-08-18 14:36:48 +03:00
ab10a7a0b7 Features: 1) Add SEO meta utilities and builder functions for schemas; 2) Implement SEO-related APIs in viewsets for categories, brands, and products; 3) Add SeoMeta model and serializer to manage SEO metadata.
Fixes: 1) Resolve annotations compatibility with mypy `type: ignore` adjustments; 2) Correct `resolve_price_with_currency` method to ensure proper float returns; 3) Handle scenarios for empty or null queryset in vendor methods.

Extra: 1) Refactor utility functions for better type annotations and robustness; 2) Minor formatting corrections and removal of redundant mypy strict setting; 3) Improve method return types for consistency.
2025-08-18 14:26:09 +03:00
640cfae961 Features: 1) Add feedbacks_count, personal_orders_only, quantity, and attribute_groups to graphene object types; 2) Extend serializer to include personal_orders_only;
Fixes: None;

Extra: None;
2025-07-29 22:38:05 +03:00
f52227973b Features: 1) Add b2b_auth_token and users fields to Vendor model with associated migration; 2) Introduce unique constraint for b2b_auth_token with migration; 3) Enhance VendorAdmin and Vendor model's save method to manage related users and token fields automatically;
Fixes: 1) Adjust `is_business` property logic for accuracy; 2) Fix import cleanup in serializers and utils files;

Extra: Refactor `core.models`, `core.utils`, and `core.vendors` for improved type annotations and other minor adjustments; Expand mypy exclusions in `pyproject.toml`.
2025-07-28 11:56:32 +03:00
954e02385c Features: 1) Add personal_orders_only field to GraphQL schema for Product; 2) Implement personal_orders_only property in Product model; 3) Include personal_orders_only in simple serializer;
Fixes: None;

Extra: 1) Remove redundant `stocks__isnull=False` filter from views and schema queries; 2) Minor formatting adjustments;
2025-07-26 14:48:21 +03:00
eb213c7f3f Features: 1) Add interfaces with relay.Node to Address Meta class;
Fixes: None;

Extra: None;
2025-07-12 19:04:00 +03:00
09366213b6 Features: 1) Introduced AddressFilter and AddressType to enable filtering and querying addresses via GraphQL; 2) Added resolve_addresses method with permission check in GraphQL schema; 3) Updated DRF settings to improve API documentation structure.
Fixes: 1) Corrected `apply_addresses` logic to handle address validation more robustly; 2) Fixed incorrect imports and annotations for better type safety; 3) Resolved typos and clarified docstrings for various views and methods.

Extra: Adjusted formatting, added `# type: ignore` for stricter type checks, and removed unused `dist/` directory from `.dockerignore`.
2025-07-12 18:49:25 +03:00
661f9f2fe6 Features: 1) Add additional filters to promocodes query, including used_on__isnull and start_time__lte.
Fixes: None;

Extra: 1) Adjust query formatting for improved readability.
2025-07-09 17:04:14 +03:00
89301d6432 Features: 1) Add support for processing chosen_products in order creation and update mutations; 2) Introduce new field chosen_products to serializers and GraphQL inputs; 3) Enhance order model to allow bulk addition of products with quantity updates;
Fixes: 1) Correct avatar resolution in `resolve_avatar` method for cases where `url` or `name` attributes are missing; 2) Refresh user object from the database after avatar update to avoid stale data;

Extra: 1) Rename `BulkActionOrderProductInput` to `BulkProductInput` for consistency; 2) Minor code refactorings and adjustments for clarity.
2025-07-08 21:02:54 +03:00
def55e9221 Features: None;
Fixes: 1) Change `UUID` to `String` for various GraphQL arguments; 2) Correct type annotation for `chosen_products` in `core/models.py`;

Extra: None;
2025-07-07 19:43:06 +03:00
34f25052e0 Features: 1) Update type annotations in resolver methods for clarity and type safety;
Fixes: 1) Ensure accurate return types in resolver methods to avoid potential runtime issues;

Extra: 1) Minor code consistency improvements in `object_types.py`;
2025-07-06 23:34:43 +03:00
07aadb5d83 Features: 1) Add type hinting to resolver methods in Order; 2) Improve resolve_payments_transactions to handle QuerySet access.
Fixes: 1) Add missing `QuerySet` import in `graphene/object_types.py`.

Extra: 1) Minor refactoring for clarity in resolver method definitions.
2025-07-06 23:34:16 +03:00
af127045ae Features: None;
Fixes: 1) Update logging configuration to align all logger instances to use "django" instead of "evibes"; 2) Remove unused logging configuration for "django.request";

Extra: 1) Add detailed error logging in GraphQL execution to include exception messages.
2025-07-06 17:22:14 +03:00
41dd02147c Fixes: 1) Ensure Wishlist object query includes user constraint to prevent unauthorized access;
Extra: None;
2025-07-06 16:25:28 +03:00
bf1668b35b Features: 1) Add BulkWishlistAction mutation to perform batch actions on wishlist products; 2) Add FeedbackProductAction mutation to manage feedback for order products.
Fixes: None;

Extra: Update locale files to `EVIBES 2.9.2`; add missing imports to `mutations.py`.
2025-07-05 00:55:27 +03:00
602a59bd84 Features: 1) Add exit condition checks for $LASTEXITCODE in various PowerShell scripts to ensure graceful error handling; 2) Enhance schema filtering with additional condition for active vendors in graphene/schema.py;
Fixes: 1) Remove unused imports in `celery.py`;

Extra: Refactor formatting and improve code readability in PowerShell scripts.
2025-07-04 03:00:51 +03:00
aa8f15d0ee Features: 1) RUFFVCKED 2025-07-03 02:53:01 +03:00
81675fc55f Features: 1) Add service_healthy condition for database in docker-compose.yml dependencies; 2) Add payments_transactions field to OrderType GraphQL schema.
Fixes: 1) Add missing imports for `TransactionType` and `Transaction` in `graphene.object_types.py`.

Extra: 1) Update `docker-compose.yml` and GraphQL schema for improved service health checks and payment transaction resolution.
2025-07-02 16:52:59 +03:00
83cad6c1cc Features: 1) Update all logger instances across the codebase to use "evibes" instead of "django";
Fixes: 1) None;

Extra: 1) Enhance consistency in logging configuration and improve alignment with project-specific naming conventions.
2025-06-30 01:44:20 +03:00
b040da6e5a Fixes: 1) Update logger initialization to use "django" logger across all modules for consistency;
Extra: None;
2025-06-30 01:37:38 +03:00
fdd92dbf8b Features: 1) Introduced strict parameter for zip function in widgets.py; 2) Added EXTENSIONS_MAX_UNIQUE_QUERY_ATTEMPTS setting;
Fixes: 1) Resolved redundant lines and formatting inconsistencies across multiple files; 2) Corrected Collection typing imports and Optional replacements with union types (e.g., `str | None`);

Extra: Improved formatting and readability by consolidating single-line code sections and simplifying expressions.
2025-06-21 20:38:37 +03:00
30144c5b6a Features: 1) Add image field to search result types (SearchProductsResultsType, SearchCategoriesResultsType, SearchBrandsResultsType); 2) Enhance tags field for categories with DjangoFilterConnectionField; 3) Implement descriptive error handling in rebuild_slugs script.
Fixes: 1) Correct inconsistent function calls with improved attribute formatting; 2) Fix invalid key usage (`uuid` vs. `pk`) in slug rebuilding logic to prevent uniqueness errors; 3) Ensure correct `query` usage in `process_query` function calls.

Extra: Reformat code for readability by updating indentation, and breaking long function signatures and expressions into multiple lines.
2025-06-18 23:03:50 +03:00
8fb4ca3362 Features: 1) Add type annotations for various models and methods; 2) Introduce refined graphene resolvers to enhance permission handling; 3) Include type checking suppression with # type: ignore for unsupported cases.
Fixes: 1) Correct `urlsafe_base64_encode` decoding logic in tests; 2) Fix queryset access issues in resolvers; 3) Address missing or incorrect imports across multiple files.

Extra: Improve code readability with consistent naming and formatting; Add `# noinspection` annotations to suppress IDE warnings; Update `pyproject.toml` to exclude `drf.py` in MyPy checks.
2025-06-18 16:38:07 +03:00
a33be30098 Features: 1) Added vendor, product tag, category tag models and metadata; 2) Introduced proper noinspection comments for Mypy warnings; 3) Extended Markdown linting rules.
Fixes: 1) Corrected `ForeignKey` type assertions across models; 2) Resolved typos and formatting inconsistencies in `.env` and README; 3) Fixed explicit boolean checks in user manager methods.

Extra: Updated type hints in multiple models, serializers, and views.
2025-06-18 15:58:49 +03:00
328ccaa615 Features: 1) 2.8.9 update
Fixes: 1) wtf go read diff;

Extra: ???
2025-06-18 15:05:58 +03:00
0153157653 Features: None;
Fixes: 1) Correct indentation in multiple modules, including mutations, models, and utility methods to maintain consistency; 2) Fix typos in function parameters and update alignment for readability;

Extra: Refactored for improved code readability and adherence to PEP 8 style guidelines.
2025-06-17 11:34:02 +03:00
6ee3870ab0 Features: 1) Add a management command to fix product stock prices; 2) Introduce 'products' field to CategoryType in GraphQL schema to fetch products associated with a category; 3) Enable GraphQL resolvers to utilize type hinting for better clarity.
Fixes: 1) Correct multiple unaligned code blocks in various Python scripts and GraphQL resolvers; 2) Improve condition formatting for readability in mutations and queries; 3) Resolve missing related_name in product model.

Extra: Simplify and refactor Windows scripts removing legacy spinner logic for clarity and better user feedback; adjust spacing, comments, and formatting across various files; update imports for unused QuerySet.
2025-06-17 11:13:11 +03:00
fbdc1bc243 Features: 1) Add CategoryTagType graphene object type with fields and filters; 2) Add tags field to CategoryType for associating category tags; 3) Add category_tags field in schema for querying category tag data.
Fixes: None;

Extra: 1) Update imports to include `CategoryTag` and `CategoryTagType`.
2025-06-16 19:23:14 +03:00
916648cf72 Features: 1) Add resolvers for big_logo and small_logo in object_types.py;
Fixes: 1) Ensure logo URLs are returned as absolute paths;

Extra: No additional changes.
2025-06-16 18:20:36 +03:00
1a36a19662 Features: 1) Add new fields description, big_logo, and small_logo to Brand GraphQL object type;
Fixes: None;

Extra: None;
2025-06-16 17:22:07 +03:00
7ba9afda6a Features: 1) Add analytics_data and advertisement_data fields to company configuration in GraphQL schema;
Fixes: 1) Correct spelling error in `CONSTANCE` configuration key from `ADVERTISIMENT_DATA` to `ADVERTISEMENT_DATA`;

Extra: 1) Update string translations in `constance.py`.
2025-06-16 10:42:39 +03:00
7cf133dccf Fixes: 1) Add support for passing additional keyword arguments (**kwargs) to resolve_brands method. 2025-05-30 18:05:43 +03:00
eb59f9c96e Features: 1) Add "name" to filter_fields in BrandType.
Fixes: 1) Simplify resolve_children method in CategoryType by removing unused depth argument.

Extra: 1) Remove redundant depth parameter declaration; 2) General code cleanup in CategoryType.
2025-05-30 17:35:12 +03:00
f3ebf029ef Features: 1) Add filter_fields to product tags in graphene object types;
Fixes: 1) None;

Extra: 1) None;
2025-05-29 19:18:07 +03:00
baf165ddd7 Features: 1) Add ProductTagType to GraphQL schema with associated queries and resolvers; 2) Register ProductTagViewSet in API URLs and core router; 3) Implement detailed and simple serializers for ProductTag.
Fixes: 1) Correct `serializer_class` assignments for `ProductImageViewSet`, `PromoCodeViewSet`, `PromotionViewSet`, `StockViewSet`, and `WishlistViewSet`.

Extra: 1) General code cleanup and reorganization for viewsets.
2025-05-29 18:22:44 +03:00
7520184e56 Features: 1) Add filter_parent_uuid method in CategoryFilter to handle parent UUID filtering; 2) Expand CategoryFilter fields to include parent_uuid and slug.
Fixes: 1) Update `resolve_categories` in schema to include all categories in query.

Extra: 1) Add missing `uuid` import in `filters.py`; 2) Improve handling for null and invalid parent UUID values in `filter_parent_uuid`.
2025-05-29 17:48:19 +03:00
eb48c78b9d Fixes: 1) Rename id field to uuid in BulkActionOrderProductInput for clarity and consistency;
Extra: align field naming with project standards.
2025-05-29 15:54:01 +03:00
e1c7197d49 Features: 1) Add request, *args, and **kwargs parameters to confirm_password_reset method for compatibility.
Fixes: 1) Adjust password reset serializer to use `request.data` instead of `self.request.data`; 2) Remove unnecessary language scoping from category query.

Extra: None;
2025-05-29 14:08:09 +03:00
4e269dc801 Features: 1) Add BulkOrderAction mutation to handle bulk addition/removal of order products; 2) Introduce bulk_add_order_products and bulk_remove_order_products endpoints in viewset; 3) Add BulkAddOrderProductsSerializer and BulkRemoveOrderProductsSerializer.
Fixes: 1) Update `remove_product` model method to handle zero quantity removal; 2) Correct permission check in order product removal.

Extra: 1) Add `autocomplete_fields` for products in admin; 2) Enhance docs with bulk add/remove schemas; 3) Various code refactorings and minor tweaks for improved maintainability.
2025-05-28 14:48:16 +03:00
d86a6ed3c8 RUFF 2025-05-26 16:12:59 +03:00
71cb0fc2db Features: 1) Add AutoSlugField "slug" to Category model with unique and auto-populating behavior; 2) Include "slug" field in CategoryFilter and relevant serializers (detail and simple); 3) Add "slug" to GraphQL object type for categories;
Fixes: None;

Extra: Add migration for new "slug" field in Category model.
2025-05-21 12:37:30 +03:00
495aacc818 Features: 1) Add UploadAvatar mutation to handle avatar uploads; 2) Integrate graphene-file-upload for file upload capability.
Fixes: None;

Extra: 1) Update `poetry.lock` and `pyproject.toml` to include `graphene-file-upload`; 2) Minor formatting adjustments in `poetry.lock`.
2025-05-20 11:52:07 +03:00
07d32de16b Features: 1) Add AddressType class above FeedbackType for organizational clarity;
Fixes: 1) Resolve duplicate declaration of AddressType by removing the redundant implementation;

Extra: Reorder and clean up code to improve structure and maintainability;
2025-05-20 08:18:35 +03:00
ed1796dbc4 Features: ;
Fixes: 1) Remove duplicate import of Address;

Extra: 1) Reformat import statements for better readability;
2025-05-20 08:00:59 +03:00
0ab8738520 Features: 1) None;
Fixes: 1) None;

Extra: 1) Removed the entire "geo" module, including migrations, model definitions, admin configurations, utilities, documentation, templates, translations, and related files. Moved functionality to "core".
2025-05-20 08:00:44 +03:00
564ce0706b Features: Full Geo rework.
Fixes: 1) Address redundant migration logic by dropping stale migrations; 2) Cleanup swapper-based dependencies in Geo models;

Extra: Streamlined database initialization by resetting all previous migrations.
2025-05-19 14:45:53 +03:00