# Casa & Style — CRM

CRM complet și funcțional în PHP cu MySQL/phpMyAdmin, dezvoltat pe baza mockup-ului HTML. Sistema include gestiune comenzi, produse, stoc, reduceri și rapoarte.

## 🚀 Caracteristici

- ✅ Dashboard cu statistici în timp real
- ✅ Gestiune comenzi cu client și detalii
- ✅ Gestiune produse cu categorii
- ✅ Gestione stoc cu ajustări
- ✅ Gestiune reduceri (procentuale și fixe)
- ✅ Configurare statusuri (comenzi, clienți)
- ✅ Categorii produse personalizabile
- ✅ Autentificare securizată
- ✅ Interfață modernă și responsive

## 📋 Cerințe

- PHP 7.4 sau superior
- MySQL 5.7 sau superior
- phpMyAdmin (opțional, pentru management bază de date)
- Server web (Apache, Nginx, etc.)

## 🔧 Instalare

### 1. Importați baza de date

```bash
# În phpMyAdmin, selectați "Import" și încărcați fișierul:
database/schema.sql
```

Sau rulați în MySQL client:
```sql
source database/schema.sql
```

### 2. Configurați conexiunea la bază de date

Editați `includes/config.php`:

```php
define('DB_HOST', 'localhost');     // Host MySQL
define('DB_USER', 'root');          // Username MySQL
define('DB_PASS', '');              // Password MySQL
define('DB_NAME', 'crm_casa_style'); // Nume bază de date
define('APP_URL', 'http://localhost/Efim/crm-php'); // URL aplicație
```

### 3. Accesați aplicația

```
http://localhost/Efim/crm-php/login.php
```

## 👤 Cont Demo (Implicit)

Baza de date vine cu un cont de test pre-configurat:

- **Email**: `admin@example.com`
- **Parolă**: `admin123`

> ⚠️ **Schimbați parola** după prima conectare în producție!

## 📂 Structura Proiectului

```
crm-php/
├── login.php              # Pagina de conectare
├── logout.php             # Deconectare
├── admin/
│   ├── dashboard.php      # Dashboard principal
│   ├── orders.php         # Lista comenzi
│   ├── order-form.php     # Formular comandă (adaugă/editează)
│   ├── products.php       # Lista produse
│   ├── product-form.php   # Formular produs
│   ├── stock.php          # Gestiune stoc
│   ├── discounts.php      # Lista reduceri
│   ├── discount-form.php  # Formular reducere
│   ├── settings.php       # Setări (statusuri, categorii)
│   └── status-form.php    # Formular status/categorie
├── api/
│   ├── get-today-stats.php      # API - Statistici zilei
│   ├── save-product.php         # API - Salvează produs
│   ├── delete-product.php       # API - Șterge produs
│   ├── adjust-stock.php         # API - Ajustează stoc
│   ├── save-order.php           # API - Salvează comandă
│   ├── delete-order.php         # API - Șterge comandă
│   ├── save-discount.php        # API - Salvează reducere
│   ├── delete-discount.php      # API - Șterge reducere
│   ├── save-status.php          # API - Salvează status/categorie
│   └── delete-status.php        # API - Șterge status/categorie
├── includes/
│   ├── config.php         # Configurare și helper functions
│   ├── header.php         # Template header
│   └── footer.php         # Template footer
├── database/
│   └── schema.sql         # Schema bază de date
└── README.md              # Această fișier
```

## 🗄️ Schema Bază de Date

### Tabele principale

- **users** - Utilizatori și administratori
- **clients** - Clienți
- **products** - Produse
- **orders** - Comenzi
- **order_items** - Detalii comenzi
- **categories** - Categorii produse
- **discounts** - Reduceri
- **order_statuses** - Statusuri comenzi (Nouă, Procesare, Expediată, etc.)
- **client_statuses** - Statusuri clienți (Activ, Inactiv, Blocat)
- **stock_history** - Istoric modificări stoc

## 📖 Utilizare

### Dashboard
- Vizualizează venituri totale, lunare și zilelor
- Urmărește comenzi și statusurile acestora
- Monitorizează stocul și produsele cu stoc scăzut

### Comenzi
- **Adaugă comandă nouă** - Selectează client, produse și cantități
- **Editează comandă** - Modifică detalii existente
- **Șterge comandă** - Elimină și restaurează stocul automat
- Gestionează livrarea și reducerile
- Urmărește statusul fiecărei comenzi

### Produse
- **Adaugă produs** - Introdu nume, preț, categorie
- **Editează produs** - Modifică detalii
- **Șterge produs** - Elimină din catalog
- Indici de stoc și status

### Stoc
- **Ajustezi stoc** - Modify cantități manual
- Urmărești nivele de stoc
- Vizualizezi produse vândute
- Alertă automată pentru stoc scăzut

### Reduceri
- **Reduceri procentuale** - Ex: 10% reducere
- **Reduceri fixe** - Ex: 30 lei reducere
- Setează perioada de validitate
- Activează/dezactivează reduceri

### Setări
- **Categorii** - Adaugă/editează categorii produse
- **Statusuri comenzi** - Personalizează statusuri (Nouă, Procesare, etc.)
- **Statusuri clienți** - Manage client statuses (Activ, Inactiv, etc.)
- Setare culori pentru fiecare element

## 🔐 Securitate

- Parole stocate cu hashing bcrypt
- Input validation și escape SQL
- Session-based authentication
- Protecție CSRF (recomandare: adăugați tokens)

> ⚠️ **Recomandări pentru producție:**
> - Schimbați parola admin
> - Utilizați HTTPS
> - Instituiți rate limiting
> - Backup-urile regulate ale bazei de date
> - Actualizări PHP și librării

## 🎨 Personalizare

### Culori tema
Editați variabilele CSS în `includes/header.php`:

```css
:root {
  --accent: #D4694A;        /* Culoare principală */
  --green: #3DB87A;         /* Verde */
  --red: #E05252;           /* Roșu */
  /* ... alte culori */
}
```

### Logo/Branding
Editați în `header.php` și `login.php`:
```html
<div class="logo-text">Casa<span>&</span>Style</div>
```

## 🐛 Troubleshooting

### Eroare "Connection failed"
- Verifică credențialele MySQL în `config.php`
- Asigură-te că MySQL server-ul rulează
- Verifică dacă baza de date `crm_casa_style` există

### Eroare "Table doesn't exist"
- Re-importă `database/schema.sql`
- Verifică dumpul complet și fără erori

### Sesiune expiră prea repede
- Editați `SESSION_TIMEOUT` în `config.php` (implicit: 3600 sec)

### Probleme cu upload
- Creează folder `/uploads` cu permisiuni 755
- Verifică limita de upload în `php.ini`

## 📞 Suport

Pentru probleme sau sugestii, verifică:
1. Serverul PHP și MySQL funcționează
2. Configurația în `includes/config.php` este corectă
3. Baza de date a fost importată complet
4. Permisiunile de folder sunt corecte

## 📝 Licență

Utilizare liberă. Customizează după preferințe.

---

**Versiune**: 1.0  
**Data**: 2024  
**Dezvoltator**: PHP CRM Developer
