0
votes

Obtenir un numéro de facture à générer à Laravel

J'essaie de générer un numéro de facturation, mais je reçois une valeur non numérique rencontrée . Je pense que je manque quelque chose, mais je ne suis pas sûr de ce que c'est.

Voici le code de factiveur () dans mon helpers.php xxx

et ceci est où j'essaie de l'obtenir d'être pris xxx

J'aimerais vraiment garder le "bras" dans la base de données aussi bien


7 commentaires

Quel est le type de invoice_number dans votre base de données?


Je pense que votre type de base de données pour une colonne est un entier et que vous essayez de stocker une chaîne.


Mon invoice_number est une chaîne


C'est pourquoi il n'est pas capable d'ajouter 1 dans la chaîne dans cette ligne $ Facture = 'arm'. $ Dernière-> Invoice_Number + 1;


Essayez ceci, $ facture = 'bras'. ((int) $ Dernière-> Invoice_Number + 1);


Ça ne va pas d'autre que 1. Donc, dans la base de données, je continue à obtenir arm1


Vous pouvez faire comme ça pour incrémenter le nombre $ facture = 'arm'. ++ $ Dernière $-> Invoice_number;


4 Réponses :


0
votes

Essayez ceci:

$invoice = 'arm' . (str_pad((int)$latest->invoice_number + 1, 4, '0', STR_PAD_LEFT));


4 commentaires

Fait une mise à jour de ma suggestion de code. Pourriez-vous essayer cela à nouveau?


...et un autre. Avec des zéros de premier plan, vous obtiendrez donc Arm0001.


Ça ne va pas d'autre que 1. Donc, dans la base de données, je continue à obtenir arm1


Et le second?



0
votes

Ainsi, après avoir vu la réponse de tout le monde et de ma compréhension, il semblait que tout le monde séparait l'entier de la chaîne pour le faire fonctionner et il m'a fait penser à faire un Preg_replace () . Donc, j'ai ajusté mon code pour ressembler à ce xxx


0 commentaires

0
votes

La raison est parce que le PRECÉDENCE DE L'OPLOIRE de . code> et + code> est identique et donc ils sont donc évalués de gauche à droite à droite.

Donc, si vous le cassez, vous obtenez: P>

 'arm'.($latest->invoice_number+1)


0 commentaires

0
votes

Vous pouvez vous incrémenter votre numéro par simplement incrémental ++ et garder votre préfixe de numéro de facture. Comme, xxx

++ $ Dernière $-> Invoice_number Cela incrémentera votre numéro par 1. J'espère que cela vous aidera à réaliser ce que vous voulez.


0 commentaires