Merge branch 'main' into temp
This commit is contained in:
@@ -2543,19 +2543,20 @@ public class ProductService {
|
||||
}
|
||||
|
||||
//一张大纸能放几个
|
||||
double num = Math.min(Math.floor(paperLength / length) * Math.floor(paperWidth / width), Math.floor(paperLength / width) * Math.floor(paperWidth / length));
|
||||
double num = Math.max(Math.min(Math.floor(paperLength / length) * Math.floor(paperWidth / width), Math.floor(paperLength / width) * Math.floor(paperWidth / length)), 1);
|
||||
if (craft_list.contains("烫画")) {
|
||||
num = Math.max(Math.ceil(paperLength / length) * Math.ceil(paperWidth / width), Math.ceil(paperLength / width) * Math.ceil(paperWidth / length));
|
||||
|
||||
}
|
||||
|
||||
double baseCount = Math.max(Math.ceil(dto.getCount() * dto.getNumber() / num), 1);
|
||||
double countNum = Math.max(Math.ceil(dto.getNumber() / num), 1);
|
||||
int coNumber = dto.getCo_number();
|
||||
if (coNumber <= 0) {
|
||||
coNumber = 1;
|
||||
}
|
||||
|
||||
double price = new PriceUtils().CalculatePrice(craft_list, baseCount, coNumber);
|
||||
double price = new PriceUtils().CalculatePrice(craft_list, baseCount, coNumber, countNum);
|
||||
|
||||
Product pro = new Product();
|
||||
pro.setCount(dto.getCount());
|
||||
@@ -2569,7 +2570,8 @@ public class ProductService {
|
||||
break;
|
||||
}
|
||||
baseCount = Math.max(Math.ceil(quantitySteps[i] * dto.getNumber() / num), 1);
|
||||
double currentPrice = new PriceUtils().CalculatePrice(craft_list, baseCount, coNumber);
|
||||
countNum = Math.max(Math.ceil(dto.getNumber() / num), 1);
|
||||
double currentPrice = new PriceUtils().CalculatePrice(craft_list, baseCount, coNumber, countNum);
|
||||
|
||||
pro = new Product();
|
||||
|
||||
@@ -2578,9 +2580,9 @@ public class ProductService {
|
||||
priceList.add(pro);
|
||||
}
|
||||
|
||||
for (Product product : priceList) {
|
||||
product.setPrice(Math.ceil(product.getPrice() + (number - 1) * 0.5));
|
||||
}
|
||||
// for (Product product : priceList) {
|
||||
// product.setPrice(Math.ceil(product.getPrice() + (number - 1) * 0.5));
|
||||
// }
|
||||
|
||||
return priceList;
|
||||
}
|
||||
|
||||
@@ -3440,19 +3440,29 @@ public class PriceUtils {
|
||||
return price;
|
||||
}
|
||||
|
||||
public double CalculatePrice(List<String> craft_list, double count, int coNumber) {
|
||||
public double CalculatePrice(List<String> craft_list, double count, int coNumber, double countNum) {
|
||||
if (craft_list.contains("烫画")) {
|
||||
return (int) count * 120;
|
||||
}
|
||||
double price = 0;
|
||||
if (craft_list.contains("冷转印")) {
|
||||
if (count <= 5) {
|
||||
price = 260;
|
||||
} else if (count < 100) {
|
||||
price = 14 * count + 200;
|
||||
} else {
|
||||
price = 12 * count;
|
||||
double banfei = 200;
|
||||
if (countNum > 1) {
|
||||
price = 260 * countNum;
|
||||
banfei = 0;
|
||||
count = Math.abs(count - countNum);
|
||||
|
||||
}
|
||||
if (count > 0) {
|
||||
if (count <= 5) {
|
||||
price += 260;
|
||||
} else if (count < 100) {
|
||||
price += 14 * count + banfei;
|
||||
} else {
|
||||
price += 12 * count;
|
||||
}
|
||||
}
|
||||
|
||||
price = price + (coNumber - 1) * 100;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user