mirror of https://github.com/jeecgboot/jeecg-boot
Update tube adding rule
parent
22aeb46426
commit
9fcc6a11e9
|
@ -37,18 +37,18 @@ public class AddPortraitTubeJob implements Job {
|
||||||
private static final List<String> DEFAULT_SHOPS = Arrays.asList("JCH3", "JCH4", "JCH5");
|
private static final List<String> DEFAULT_SHOPS = Arrays.asList("JCH3", "JCH4", "JCH5");
|
||||||
private static final Integer DEFAULT_NUMBER_OF_THREADS = 10;
|
private static final Integer DEFAULT_NUMBER_OF_THREADS = 10;
|
||||||
private static final String TUBE_30_SKU_SINGLE_DOUBLE = "PJ95310032-WIA";
|
private static final String TUBE_30_SKU_SINGLE_DOUBLE = "PJ95310032-WIA";
|
||||||
private static final String TUBE_50_SKU_SINGLE = "PJ95530032-WIA";
|
|
||||||
|
|
||||||
private static final String TUBE_NEW_40_SKU_SINGLE = "PJ349400032-JCH";
|
private static final String TUBE_NEW_40_SKU_SINGLE = "PJ349400032-JCH";
|
||||||
private static final String TUBE_NEW_40_SKU_MULTIPLE = "PJ349400045-JCH";
|
private static final String TUBE_NEW_40_SKU_MULTIPLE = "PJ349400045-JCH";
|
||||||
private static final String TUBE_NEW_50_SKU_SINGLE = "PJ349500032-JCH";
|
private static final String TUBE_NEW_50_SKU_SINGLE = "PJ349500032-JCH";
|
||||||
private static final String TUBE_NEW_50_SKU_MULTIPLE = "PJ349500045-JCH";
|
private static final String TUBE_NEW_50_SKU_MULTIPLE = "PJ349500045-JCH";
|
||||||
private static final String TUBE_NEW_60_SKU_SINGLE = "PJ349600032-JCH";
|
private static final String TUBE_NEW_60_SKU_SINGLE = "PJ349600032-JCH";
|
||||||
private static final String TUBE_NEW_60_SKU_MULTIPLE = "PJ349600045-JCH";
|
private static final String TUBE_NEW_60_SKU_DOUBLE = "PJ349600045-JCH";
|
||||||
|
private static final String TUBE_NEW_60_SKU_TREBLE = "PJ349600048-JCH";
|
||||||
|
|
||||||
private static final List<String> TUBE_SKUS = Arrays.asList(TUBE_30_SKU_SINGLE_DOUBLE, TUBE_50_SKU_SINGLE,
|
private static final List<String> TUBE_SKUS = Arrays.asList(TUBE_30_SKU_SINGLE_DOUBLE, TUBE_NEW_40_SKU_MULTIPLE,
|
||||||
TUBE_NEW_40_SKU_MULTIPLE, TUBE_NEW_50_SKU_MULTIPLE, TUBE_NEW_60_SKU_SINGLE, TUBE_NEW_50_SKU_SINGLE,
|
TUBE_NEW_50_SKU_MULTIPLE, TUBE_NEW_60_SKU_SINGLE, TUBE_NEW_50_SKU_SINGLE,
|
||||||
TUBE_NEW_60_SKU_MULTIPLE, TUBE_NEW_40_SKU_SINGLE);
|
TUBE_NEW_60_SKU_DOUBLE, TUBE_NEW_40_SKU_SINGLE, TUBE_NEW_60_SKU_TREBLE);
|
||||||
private static final String PREFIX_50_CANVAS = "JJ2501";
|
private static final String PREFIX_50_CANVAS = "JJ2501";
|
||||||
private static final String PREFIX_50_CANVAS_CHROME = "JJ2001";
|
private static final String PREFIX_50_CANVAS_CHROME = "JJ2001";
|
||||||
private static final String PREFIX_40_CANVAS = "JJ2500";
|
private static final String PREFIX_40_CANVAS = "JJ2500";
|
||||||
|
@ -205,15 +205,16 @@ public class AddPortraitTubeJob implements Job {
|
||||||
int canvasNew56RemainderCount = canvasNew56Count % MAXIMUM_CANVAS_IN_TUBE.intValue();
|
int canvasNew56RemainderCount = canvasNew56Count % MAXIMUM_CANVAS_IN_TUBE.intValue();
|
||||||
int totalRemainderCount = canvas30RemainderCount + canvas40RemainderCount + canvas50RemainderCount +
|
int totalRemainderCount = canvas30RemainderCount + canvas40RemainderCount + canvas50RemainderCount +
|
||||||
canvasNew36RemainderCount + canvasNew46RemainderCount + canvasNew56RemainderCount;
|
canvasNew36RemainderCount + canvasNew46RemainderCount + canvasNew56RemainderCount;
|
||||||
int tube50SingleCount = 0;
|
int tubeNew50SingleCount = 0;
|
||||||
int tubeNew60MultipleCount = (int) Math.floor(canvas50Count / MAXIMUM_CANVAS_IN_TUBE);
|
|
||||||
int tube40SingleCount = 0;
|
int tube40SingleCount = 0;
|
||||||
int tubeNew50MultipleCount = (int) Math.floor(canvas40Count / MAXIMUM_CANVAS_IN_TUBE);
|
|
||||||
int tube30SingleDoubleCount = 0;
|
int tube30SingleDoubleCount = 0;
|
||||||
|
int tubeNew60TrebleCount = (int) Math.floor(canvas50Count / MAXIMUM_CANVAS_IN_TUBE);
|
||||||
|
int tubeNew50MultipleCount = (int) Math.floor(canvas40Count / MAXIMUM_CANVAS_IN_TUBE);
|
||||||
int tubeNew40MultipleCount = (int) Math.floor(canvas30Count / MAXIMUM_CANVAS_IN_TUBE);
|
int tubeNew40MultipleCount = (int) Math.floor(canvas30Count / MAXIMUM_CANVAS_IN_TUBE);
|
||||||
|
|
||||||
int tubeNew60SingleCount = 0;
|
int tubeNew60SingleCount = 0;
|
||||||
tubeNew60MultipleCount += (int) Math.floor(canvasNew56Count / MAXIMUM_CANVAS_IN_TUBE);
|
int tubeNew60DoubleCount = 0;
|
||||||
|
tubeNew60TrebleCount += (int) Math.floor(canvasNew56Count / MAXIMUM_CANVAS_IN_TUBE);
|
||||||
tubeNew50MultipleCount += (int) Math.floor(canvasNew46Count / MAXIMUM_CANVAS_IN_TUBE);
|
tubeNew50MultipleCount += (int) Math.floor(canvasNew46Count / MAXIMUM_CANVAS_IN_TUBE);
|
||||||
tubeNew40MultipleCount += (int) Math.floor(canvasNew36Count / MAXIMUM_CANVAS_IN_TUBE);
|
tubeNew40MultipleCount += (int) Math.floor(canvasNew36Count / MAXIMUM_CANVAS_IN_TUBE);
|
||||||
|
|
||||||
|
@ -222,12 +223,17 @@ public class AddPortraitTubeJob implements Job {
|
||||||
if (canvas50RemainderCount > 0 || canvasNew56RemainderCount > 0) {
|
if (canvas50RemainderCount > 0 || canvasNew56RemainderCount > 0) {
|
||||||
// It only takes one 50cm/56cm canvas with any other canvas to impose the use of NEW 60cm multiple tube
|
// It only takes one 50cm/56cm canvas with any other canvas to impose the use of NEW 60cm multiple tube
|
||||||
if (totalRemainderCount > 1) {
|
if (totalRemainderCount > 1) {
|
||||||
tubeNew60MultipleCount++;
|
// Only if there are 3 56cm/46cm canvases, we need a 60cm TREBLE tube, otherwise 60cm DOUBLE tube suffice
|
||||||
|
if (canvasNew56RemainderCount + canvasNew46RemainderCount == 3) {
|
||||||
|
tubeNew60TrebleCount++;
|
||||||
|
} else {
|
||||||
|
tubeNew60DoubleCount++;
|
||||||
|
}
|
||||||
} else if (canvasNew56RemainderCount > 0) {
|
} else if (canvasNew56RemainderCount > 0) {
|
||||||
// Only NEW 60cm tubes can contain NEW 56cm canvases
|
// Only NEW 60cm tubes can contain NEW 56cm canvases
|
||||||
tubeNew60SingleCount++;
|
tubeNew60SingleCount++;
|
||||||
} else {
|
} else {
|
||||||
tube50SingleCount++;
|
tubeNew50SingleCount++;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// No 50/56cm canvases
|
// No 50/56cm canvases
|
||||||
|
@ -242,8 +248,7 @@ public class AddPortraitTubeJob implements Job {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (canvasNew46RemainderCount > 0) {
|
if (canvasNew46RemainderCount > 0) {
|
||||||
// TODO 2024-08-28 Temporarily use OLD 50cm tubes for NEW 46cm canvases
|
tubeNew50SingleCount++;
|
||||||
tube50SingleCount++;
|
|
||||||
} else if (canvas40RemainderCount > 0 || canvasNew36RemainderCount > 0) {
|
} else if (canvas40RemainderCount > 0 || canvasNew36RemainderCount > 0) {
|
||||||
tube40SingleCount++;
|
tube40SingleCount++;
|
||||||
} else if (canvas30RemainderCount > 0){
|
} else if (canvas30RemainderCount > 0){
|
||||||
|
@ -254,7 +259,12 @@ public class AddPortraitTubeJob implements Job {
|
||||||
} else if (totalRemainderCount >= 4) {
|
} else if (totalRemainderCount >= 4) {
|
||||||
// When remaining 4 to 6 canvases, one 50/56cm canvas imposes one NEW 60cm multiple tube
|
// When remaining 4 to 6 canvases, one 50/56cm canvas imposes one NEW 60cm multiple tube
|
||||||
if (canvas50RemainderCount > 0 || canvasNew56RemainderCount > 0) {
|
if (canvas50RemainderCount > 0 || canvasNew56RemainderCount > 0) {
|
||||||
tubeNew60MultipleCount++;
|
// If there are 3 or more 56cm/46cm canvases, we need a 60cm TREBLE tube, otherwise 60cm DOUBLE tube suffice
|
||||||
|
if (canvasNew56RemainderCount + canvasNew46RemainderCount >= 3) {
|
||||||
|
tubeNew60TrebleCount++;
|
||||||
|
} else {
|
||||||
|
tubeNew60DoubleCount++;
|
||||||
|
}
|
||||||
if (canvas50RemainderCount + canvasNew56RemainderCount > 1) {
|
if (canvas50RemainderCount + canvasNew56RemainderCount > 1) {
|
||||||
// If we have two 50/56cm canvases and a total of 5 of 6 canvases
|
// If we have two 50/56cm canvases and a total of 5 of 6 canvases
|
||||||
if (totalRemainderCount > 4) {
|
if (totalRemainderCount > 4) {
|
||||||
|
@ -265,8 +275,7 @@ public class AddPortraitTubeJob implements Job {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (canvasNew46RemainderCount > 1) {
|
if (canvasNew46RemainderCount > 1) {
|
||||||
// TODO 2024-08-28 Temporarily use OLD 50cm tubes for NEW 46cm canvases
|
tubeNew50SingleCount++;
|
||||||
tube50SingleCount++;
|
|
||||||
} else if (canvas40RemainderCount > 1) {
|
} else if (canvas40RemainderCount > 1) {
|
||||||
tube40SingleCount++;
|
tube40SingleCount++;
|
||||||
} else {
|
} else {
|
||||||
|
@ -305,27 +314,30 @@ public class AddPortraitTubeJob implements Job {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tube50SingleCount > 0) {
|
if (tube30SingleDoubleCount > 0) {
|
||||||
adequateTubes.add(Pair.of(TUBE_NEW_50_SKU_SINGLE, tube50SingleCount));
|
adequateTubes.add(Pair.of(TUBE_30_SKU_SINGLE_DOUBLE, tube30SingleDoubleCount));
|
||||||
}
|
|
||||||
if (tubeNew60MultipleCount > 0) {
|
|
||||||
adequateTubes.add(Pair.of(TUBE_NEW_60_SKU_MULTIPLE, tubeNew60MultipleCount));
|
|
||||||
}
|
}
|
||||||
if (tube40SingleCount > 0) {
|
if (tube40SingleCount > 0) {
|
||||||
adequateTubes.add(Pair.of(TUBE_NEW_40_SKU_SINGLE, tube40SingleCount));
|
adequateTubes.add(Pair.of(TUBE_NEW_40_SKU_SINGLE, tube40SingleCount));
|
||||||
}
|
}
|
||||||
if (tubeNew50MultipleCount > 0) {
|
|
||||||
adequateTubes.add(Pair.of(TUBE_NEW_50_SKU_MULTIPLE, tubeNew50MultipleCount));
|
|
||||||
}
|
|
||||||
if (tube30SingleDoubleCount > 0) {
|
|
||||||
adequateTubes.add(Pair.of(TUBE_30_SKU_SINGLE_DOUBLE, tube30SingleDoubleCount));
|
|
||||||
}
|
|
||||||
if (tubeNew40MultipleCount > 0) {
|
if (tubeNew40MultipleCount > 0) {
|
||||||
adequateTubes.add(Pair.of(TUBE_NEW_40_SKU_MULTIPLE, tubeNew40MultipleCount));
|
adequateTubes.add(Pair.of(TUBE_NEW_40_SKU_MULTIPLE, tubeNew40MultipleCount));
|
||||||
}
|
}
|
||||||
|
if (tubeNew50SingleCount > 0) {
|
||||||
|
adequateTubes.add(Pair.of(TUBE_NEW_50_SKU_SINGLE, tubeNew50SingleCount));
|
||||||
|
}
|
||||||
|
if (tubeNew50MultipleCount > 0) {
|
||||||
|
adequateTubes.add(Pair.of(TUBE_NEW_50_SKU_MULTIPLE, tubeNew50MultipleCount));
|
||||||
|
}
|
||||||
if (tubeNew60SingleCount > 0) {
|
if (tubeNew60SingleCount > 0) {
|
||||||
adequateTubes.add(Pair.of(TUBE_NEW_60_SKU_SINGLE, tubeNew60SingleCount));
|
adequateTubes.add(Pair.of(TUBE_NEW_60_SKU_SINGLE, tubeNew60SingleCount));
|
||||||
}
|
}
|
||||||
|
if (tubeNew60DoubleCount > 0) {
|
||||||
|
adequateTubes.add(Pair.of(TUBE_NEW_60_SKU_DOUBLE, tubeNew60DoubleCount));
|
||||||
|
}
|
||||||
|
if (tubeNew60TrebleCount > 0) {
|
||||||
|
adequateTubes.add(Pair.of(TUBE_NEW_60_SKU_TREBLE, tubeNew60TrebleCount));
|
||||||
|
}
|
||||||
return Pair.of(currentTubes, adequateTubes);
|
return Pair.of(currentTubes, adequateTubes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue