chore: update
This commit is contained in:
@@ -104,14 +104,8 @@ func (d *Database) AssignDeliveryPerson(commandID int, livreurUsername string) e
|
||||
// ÉTAPE 3: Vérifier que la commande est assignable
|
||||
// ============================================
|
||||
|
||||
// ✅ Vérifier si déjà assignée à un autre livreur
|
||||
if currentLivreur.Valid && currentLivreur.String != "" && currentLivreur.String != livreurUsername {
|
||||
log.Printf("❌ Commande déjà assignée à: %s", currentLivreur.String)
|
||||
return fmt.Errorf("commande déjà assignée au livreur '%s'", currentLivreur.String)
|
||||
}
|
||||
|
||||
// ✅ Vérifier le statut
|
||||
validStatusesForAssignment := []string{"pending"}
|
||||
// ✅ Vérifier le statut (pending ou assigned pour permettre la réassignation)
|
||||
validStatusesForAssignment := []string{"pending", "assigned"}
|
||||
isValidStatus := false
|
||||
for _, vs := range validStatusesForAssignment {
|
||||
if currentStatus == vs {
|
||||
@@ -135,8 +129,7 @@ func (d *Database) AssignDeliveryPerson(commandID int, livreurUsername string) e
|
||||
status = 'assigned',
|
||||
updated_at = CURRENT_TIMESTAMP
|
||||
WHERE id = $2
|
||||
AND status IN ('pending')
|
||||
AND (livreur_assign IS NULL OR livreur_assign = '' OR livreur_assign = $1)`
|
||||
AND status IN ('pending', 'assigned')`
|
||||
|
||||
result, err := tx.Exec(updateQuery, livreurUsername, commandID)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user