recherche

Maison  >  Questions et réponses  >  le corps du texte

ruby - Comment implémenter la sélection prioritaire de l'entrepôt de l'adresse de réception et de l'entrepôt d'expédition en PHP

Aujourd'hui, je vais poser une question technique sur la sélection prioritaire des produits, des adresses d'expédition et des entrepôts d'expédition.

Comme dans le titre :

  1. L'utilisateur a acheté trois produits : A, B et C (on peut considérer que l'utilisateur a acheté n produits SKU, et chaque SKU a une quantité correspondante. Nous utilisons des lettres majuscules pour le SKU du produit : A, B, C ;

  2. L'adresse de livraison est X ;

  3. Chaque produit dispose de plusieurs entrepôts, et la livraison entrepôt la plus récente et optimale est sélectionnée (la priorité est configurée en fonction de l'adresse de livraison), par exemple, les entrepôts sont : a, b, c, d (les entrepôts sont représentés par des minuscules lettres), etc.;

  4. Logique prioritaire :

Les marchandises achetées par l'utilisateur peuvent être expédiées depuis l'entrepôt. Plus le nombre de colis est petit, mieux c'est (primaire), et plus le colis est proche, mieux c'est (secondaire) ;

L'adresse de livraison est X, la liste prioritaire des entrepôts correspondant à l'adresse X :

X => a,b,c,d

Exemple :

Exemple 1. L'utilisateur a acheté 1 sku (la quantité est de 3) et l'a envoyé à l'adresse correspondante X :

A: 3

A L'inventaire et la quantité correspondant à ce produit : La commande correspondant à l'adresse X est : a, b, c, d

Une liste d'entrepôt et d'inventaire correspondante :

 a: 1
 b: 3
 c: 4
 d: 5

Selon le principe du colis minimum jusqu'à l'entrepôt le plus proche, le résultat sera déduit du stock de l'entrepôt B (3 articles du produit A) pour expédier 1 colis.

Exemple 2. L'utilisateur a acheté 2 skus et les a envoyés à l'adresse correspondante X :
A: 3
B: 2

L'inventaire et la quantité correspondant à ces produits A et B : (La commande correspondant à l'adresse X est : a, b, c, d)

Une liste d'entrepôt et d'inventaire correspondante :

 a: 1
 b: 3
 c: 4
 d: 5

B Liste d'entrepôt et d'inventaire correspondante :

 a: 1
 b: 2
 c: 1
 d: 5

Selon le principe du colis minimum dans l'entrepôt le plus proche, le résultat doit également être déduit de l'entrepôt b (3 produits A, 2 produits B) stockant et expédiant 1 colis.

Exemple 3. L'utilisateur a acheté 2 skus et les a envoyés à l'adresse correspondante X :
A: 3
B: 2

L'inventaire et la quantité correspondant à ces produits A et B : (La commande correspondant à l'adresse X est : a, b, c, d)

Une liste d'entrepôt et d'inventaire correspondante :

 a: 3
 b: 3
 c: 1
 d: 5

B Liste d'entrepôt et d'inventaire correspondante :

 a: 1
 b: 1
 c: 2
 d: 1

Selon le principe du colis minimum de l'entrepôt le plus proche, le résultat doit également déduire l'entrepôt a (3 articles du produit A, 1 article du produit B), ajouter l'entrepôt b (1 article du produit B) et expédier un total de 2 colis ( entrepôt a et entrepôt b) Un chacun) (Ici, nous adhérons également au principe d'avoir les meilleurs colis et l'entrepôt le plus proche).

Exemple 4, l'utilisateur a acheté 2 skus et les a envoyés à l'adresse correspondante X :
A: 3
B: 5

L'inventaire et la quantité correspondant à ces produits A et B : (La commande correspondant à l'adresse X est : a, b, c, d)

Une liste d'entrepôt et d'inventaire correspondante :

 a: 2
 b: 3
 c: 4
 d: 5

B Liste d'entrepôt et d'inventaire correspondante :

 a: 1
 b: 1
 c: 2
 d: 5

Selon le principe du nombre minimum de colis à l'entrepôt le plus proche, le résultat doit également être déduit de l'entrepôt d (3 articles pour le produit A, 5 articles pour l'article B), et un total de 1 colis (un pour l'entrepôt d ) doivent être expédiés. Le principe du nombre minimum de colis est ici respecté

.

J'ose demander, comment certains experts peuvent-ils casser cet algorithme ?
怪我咯怪我咯2712 Il y a quelques jours911

répondre à tous(1)je répondrai

  • 学习ing

    学习ing2017-06-27 09:20:02

    C'est ce que je pense, triez d'abord le tableau de références par ordre décroissant, par exemple, 3 pièces de références, tableau (8,4,1) ;
    Obtenez le plan d'emballage optimal de 8 pièces, 4 pièces et 3 pièces respectivement ,
    puis mettez En combinant les conditions d'entrepôt de ces trois plans et en supprimant les duplications, vous pouvez obtenir le plan optimal.

    répondre
    0
  • Annulerrépondre