This repository contains the complete implementation of Milestone 1 for the GYPEX Odoo project, fully aligned with the specifications.
Client: GYPEX (Plaster tiles & coatings manufacturer)
System: Odoo Community Edition v19
Status: Milestone 1 Complete β
Next: Milestone 2 (Deliveries, Transport, DMS, EDI)
cd /home/user/Documents/Odoo
./setup.sh./start_odoo.sh- Open:
http://localhost:8069 - Create database (with demo data)
- Apps β Update Apps List
- Install "GYPEX Customizations"
See RUN_MILESTONE1.md for detailed step-by-step instructions.
/home/user/Documents/Odoo/
βββ custom-addons/
β βββ gypex_custom/ # Main custom module
β βββ models/ # Business logic
β βββ views/ # User interface
β βββ security/ # Access control
β βββ data/ # Initial data
β βββ reports/ # Report templates
β βββ README.md # Module documentation
βββ odoo-19/ # Odoo source (after setup)
βββ config/
β βββ odoo.conf # Odoo configuration
βββ logs/ # Log files
βββ data/ # Odoo data directory
βββ backups/ # Database backups
βββ setup.sh # Setup script
βββ start_odoo.sh # Start script
βββ stop_odoo.sh # Stop script
βββ README.md # This file
βββ RUN_MILESTONE1.md # Step-by-step setup guide
βββ TEST_MILESTONE1.md # Complete testing guide
- N (Salesperson): See own team and assigned records
- N+1 (Manager): See own team and child teams
- N+2 (Director): See all teams
- Territory-based access control
- Record rules for hierarchical visibility
- Price List Types: Standard, Client-Specific, Contract
- Per-UoM Pricing: Different prices for mΒ², palette, wagon, sack, unit
- Volume Discount Tiers: Quantity-based discounts
- Priority System: Contract > Exception > Family > Standard
- Contract Management: Dates, indexation framework
- Price Computation: Fully functional per-UoM price calculation
- Client-specific product references
- Dual reference display (GYPEX + Client)
- Reference mapping on all sales documents
- One reference per client per product
- GYPEX reference auto-generation
- Client reference display
- Both references on order lines
- References in printed reports
- Unit conversion display
- Framework ready for IMAP/SMTP
- Configuration via Settings
- Auto-logging capability (requires IMAP/SMTP server configuration)
- Automatic invoice creation when delivery is confirmed
- Integrated with stock picking workflow
- Supports Proof of Delivery (POD) scenarios
- Credit limit per client
- Real-time credit usage calculation
- Automatic credit check on order confirmation
- Order blocking if credit exceeded
- Product families (Tiles, Coatings, Accessories)
- GYPEX reference auto-generation
- Tile attributes (thickness, type, finish)
- Validation rules for tile combinations
- Unit conversion matrix framework
- Odoo standard multi-language support
- User-selectable language
- All custom fields translatable
| Document | Purpose |
|---|---|
| README.md | Main project overview (this file) |
| RUN_MILESTONE1.md | Step-by-step setup and installation guide |
| TEST_MILESTONE1.md | Complete testing checklist and procedures |
| custom-addons/gypex_custom/README.md | Module features and usage guide |
- Odoo: v19 Community Edition
- Python: 3.10+
- PostgreSQL: 12+
- Framework: Odoo ORM, XML Views, Python Models
product.template- Extended with GYPEX fieldsproduct.product- Extended with client reference lookupres.partner- Extended with client category, territory, creditsale.order- Extended with credit checksale.order.line- Extended with reference displaycrm.team- Extended with hierarchyproduct.pricelist- Extended with contract managementproduct.pricelist.item- Extended with per-UoM pricingstock.picking- Extended with auto-invoicegypex.client.reference- Client reference mappinggypex.territory- Sales territoriesgypex.unit.conversion- Unit conversion matrixgypex.pricelist.uom.price- Per-UoM pricinggypex.volume.discount.tier- Volume discounts
- Product form/tree/search views
- Sale order form/tree views
- Partner form/tree views
- CRM team form view
- Pricelist item form view
- Settings view
- Model access rights
- Record rules for hierarchical visibility
- Territory-based access control
See TEST_SCENARIOS_MILESTONE1.md for detailed test scenarios covering:
- β All product variants and validations
- β All pricing scenarios (per-UoM, volume discounts)
- β All CRM hierarchy scenarios
- β All credit management cases
- β All sales order scenarios
- β Auto-invoice on delivery
- β Edge cases and error handling
- β 70+ detailed test cases with step-by-step instructions
See TEST_MILESTONE1.md for quick testing guide.
- Create tile product β Verify GYPEX reference
- Create client β Add client reference
- Create sales order β Verify both references
- Set credit limit β Test credit check
- Configure per-UoM pricing β Test price computation
- Confirm delivery β Verify auto-invoice
After Milestone 1 testing:
-
Deliveries & Transport
- FEFO/FIFO picking
- SSCC/GS1-128 barcodes
- Transport zone pricing
- Carrier comparison
-
Document Management
- PDF attachments
- Document versioning
- Full-text search
-
EDI Integration
- ORDERS message
- DESADV message
- INVOIC message
Module not appearing:
- Check
custom-addons/gypex_customexists - Update Apps List
- Check logs:
logs/odoo.log
Import errors:
- Check Python syntax
- Verify
__init__.pyincludes all models - Restart Odoo
Permission errors:
chmod -R 755 /home/user/Documents/OdooDatabase connection:
sudo systemctl start postgresql- Check documentation files
- Review module README:
custom-addons/gypex_custom/README.md - Check Odoo logs:
logs/odoo.log - Review error messages in Odoo interface
- β Proper Odoo module structure
- β Python coding standards
- β XML view inheritance
- β Security rules implemented
- β Documentation included
- β Error handling
- β Validation rules
- β Clean codebase (no temporary fix files)
- Sales order creation: β
- Order confirmation: β
- Credit check: β
- Reference display: β
- Auto-invoice on delivery: β
- Framework ready: β
- IMAP/SMTP config: β³ (requires server setup)
- Hierarchical visibility: β
- Territory-based access: β
- GYPEX reference: β
- Client reference: β
- Both on documents: β
- Per-UoM pricing: β
- Volume discounts: β
- Priority system: β
| Milestone | Status | Progress |
|---|---|---|
| Milestone 1: CRM, Sales & Invoicing | β Complete | 100% |
| Milestone 2: Deliveries, Transport, DMS, EDI | β³ Pending | 0% |
| Milestone 3: Inventory, Purchasing, Planning | β³ Pending | 0% |
| Milestone 4: Production Tiles (Phases 1-3) | β³ Pending | 0% |
| Milestone 5: Enduits, Reporting, Maintenance | β³ Pending | 0% |
- Odoo Documentation: https://www.odoo.com/documentation/19.0/
- Odoo Development: https://www.odoo.com/documentation/19.0/developer/
- Odoo Forum: https://www.odoo.com/forum
LGPL-3 (Odoo Community Edition)
- Read:
RUN_MILESTONE1.md - Install: Run
./setup.sh - Start: Run
./start_odoo.sh - Install Module: Follow installation steps
- Test: See
TEST_MILESTONE1.md
Happy Coding! π