feat: profile_photo en contratos activos, notificaciones bilingues en reportes y foto en panel usuarios

- API contratos activos (cliente y proveedor): agrega campo profile_photo (técnico asignado o supplier, null si no tiene)
- Notificaciones push bilingues en comentarios de reporte: "Nueva actividad en tu reporte" / "New activity on your report"
- Moderador en web panel notifica a cliente y proveedor al comentar, con prefijo Moderador/Moderator
- Panel usuarios: columna de foto de perfil entre ID y Nombre

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-23 17:17:14 -06:00
parent 38da1b56ce
commit 0ed98c96ee
40 changed files with 1390 additions and 651 deletions

View File

@@ -10,6 +10,7 @@ use App\Models\Status;
use App\Models\Report;
use App\Models\Payments;
use App\Models\NoHome;
use App\Models\Technician;
use Illuminate\Database\Eloquent\Model;
use TarfinLabs\LaravelSpatial\Casts\LocationCast;
use TarfinLabs\LaravelSpatial\Traits\HasSpatial;
@@ -34,6 +35,7 @@ class FinishedContracts extends Model
'transaction_id',
'score',
'status_id',
'technical_id',
];
protected $casts = [
@@ -80,4 +82,9 @@ class FinishedContracts extends Model
return $this->hasOne(NoHome::class);
}
public function technician()
{
return $this->belongsTo(Technician::class, 'technical_id');
}
}