sale_partner_primeship
This module introduces a membership concept called "primeship" for partners, which activates automatically upon confirming a sale order containing a primeship activation product and expires after a configurable duration.
Key Features
- res.partner: Adds fields to track primeship memberships and their active status
- res.partner: Computes whether a partner has an active primeship based on current date and membership periods
- res.partner: Provides a method to check and update expired primeships
- product.template: Allows products to be marked as primeship activation products with configurable duration in months
- sale.order: Automatically creates or extends primeship memberships when confirming orders with activation products
- sale.order: Handles overlapping primeship periods by extending the end date
- sale.order: Deactivates primeship memberships when canceling orders
- sale.order.line: Links order lines to their corresponding primeship memberships
- sale.order.line: Sets invoice start and end dates based on primeship periods
- sale.primeship: Defines the primeship model with start and end dates linked to partners and order lines
- sale.primeship: Computes whether a primeship is currently active based on dates and active status
- sale.primeship: Prevents overlapping primeship periods for the same partner
- sale.primeship: Ensures each order line can have only one primeship
- sales: Provides user interface elements to view and manage primeship memberships on partners
- sales: Includes daily automated checks to update expired primeship statuses