新增躺椅,修改天幕定制衫

This commit is contained in:
2026-05-04 15:09:03 +08:00
parent 44934a92c7
commit 03d7d8808e
4 changed files with 816 additions and 312 deletions
@@ -4368,12 +4368,29 @@ public class ProductService {
return getYaFenPrice(dto, width, length);
case "UV打印亚克力":
return getUVDayinYKLPrice(dto, width, length);
case "躺椅":
return getDeckCharitPrice(dto, width, length);
default:
break;
}
return null;
}
private List<Product> getDeckCharitPrice(Product dto, Double width, Double length) {
List<String> craft_lists = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft());
List<String> craft_list = new ArrayList<>(craft_lists);
List<Product> priceList = new ArrayList<>();
int count = dto.getCount();
int number = dto.getNumber();
Product product = new Product();
product.setPrice(Math.ceil(150 * count * number));
product.setCount(dto.getCount());
product.setNumber(dto.getNumber());
product.setWeight(df.format(3.3 * count * number));
priceList.add(product);
return priceList;
}
private List<Product> getUVDayinYKLPrice(Product dto, Double width, Double length) {
List<String> craft_lists = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft());
List<String> craft_list = new ArrayList<>(craft_lists);
@@ -5095,15 +5112,49 @@ public class ProductService {
int count = dto.getCount();
int number = dto.getNumber();
double area = length * width / 10000;
if (craft_list.contains("空白") && craft_list.contains("模切")) {
craft_list.add("定制");
}
priceList = CanopyUtil.getPrice(area, count, priceList, dto.getKindValue(), craft_list);
if (number > 1) {
for (Product product : priceList) {
product.setPrice(Math.floor(product.getPrice() * number));
Product pro = new Product();
pro.setCount(count);
pro.setNumber(number);
double price = 0;
if (width == 290 && length == 290) {
price = 250;
if ("黑胶涤纶布".equals(dto.getKindValue())) {
price = price + 10;
}
price = Math.ceil(price * count * number);
} else if ((width == 420 && length == 390) || (length == 420 && width == 390)) {
price = 440;
if ("黑胶涤纶布".equals(dto.getKindValue())) {
price = price + 10;
}
price = Math.ceil(price * count * number);
} else if ((width == 420 && length == 490) || (length == 420 && width == 490)) {
price = 550;
if ("黑胶涤纶布".equals(dto.getKindValue())) {
price = price + 10;
}
price = Math.ceil(price * count * number);
} else {
double basePrice = 0;
if (area <= 4) {
basePrice = 33;
} else if (area <= 6) {
basePrice = 32;
} else if (area <= 9) {
basePrice = 31;
} else {
basePrice = 29;
}
if ("黑胶涤纶布".equals(dto.getKindValue())) {
basePrice = basePrice + 1;
}
price = Math.ceil(basePrice * area * count * number);
}
pro.setPrice(Math.ceil(price));
priceList.add(pro);
for (Product product : priceList) {
if (craft_list.contains("安装包")) {
product.setPrice(Math.floor(product.getPrice() + dto.getShuliang() * 50));
@@ -5111,7 +5162,7 @@ public class ProductService {
if (craft_list.contains("防风绳")) {
product.setPrice(Math.floor(product.getPrice() + dto.getPcount() * 2));
}
product.setWeight(String.valueOf(Double.parseDouble(product.getWeight()) + dto.getShuliang() * 3.3));
product.setWeight(String.valueOf(area * 0.18 + dto.getShuliang() * 3.3));
}
return priceList;
@@ -5145,63 +5196,157 @@ public class ProductService {
int number = dto.getNumber();
double basePrice = 0;
double banfei = 0;
if ("YP".equals(dto.getKindValue())) {
basePrice = 19;
}
if ("XW".equals(dto.getKindValue())) {
basePrice = 31;
}
if ("EP".equals(dto.getKindValue())) {
basePrice = 31;
}
if ("ZT".equals(dto.getKindValue())) {
basePrice = 57;
}
if (!StringUtils.isEmpty(dto.getSize())) {
String[] size_list = dto.getSize().split(",");
for (int i = 0; i < size_list.length; i++) {
double sizePirce = 0;
if ("10*10".equals(size_list[i])) {
sizePirce = 4;
}
if ("15*15".equals(size_list[i])) {
sizePirce = 6;
}
if ("15*20".equals(size_list[i])) {
sizePirce = 8;
}
if ("20*20".equals(size_list[i])) {
sizePirce = 10;
}
if ("25*15".equals(size_list[i])) {
sizePirce = 10;
}
if ("25*25".equals(size_list[i])) {
sizePirce = 12;
}
if ("30*30".equals(size_list[i])) {
sizePirce = 14;
}
if ("30*40".equals(size_list[i])) {
sizePirce = 16;
}
basePrice += sizePirce;
List<String> kindList = Arrays.asList("T恤", "马甲", "工程服");
if (kindList.contains(dto.getKindValue())) {
String kind1value = dto.getKind1Value();
if ("1108T".equals(kind1value)) {
basePrice = 66;
} else if ("2604".equals(kind1value)) {
basePrice = 66;
} else if ("8089".equals(kind1value)) {
basePrice = 88;
} else if ("1101".equals(kind1value)) {
basePrice = 46;
} else if ("1102".equals(kind1value)) {
basePrice = 46;
} else if ("9128".equals(kind1value)) {
basePrice = 72;
} else if ("9129".equals(kind1value)) {
basePrice = 80;
} else if ("9022".equals(kind1value)) {
basePrice = 84;
} else if ("9020".equals(kind1value)) {
basePrice = 84;
} else if ("9008".equals(kind1value)) {
basePrice = 44;
} else if ("9023".equals(kind1value)) {
basePrice = 50;
} else if ("9002".equals(kind1value)) {
basePrice = 48;
} else if ("6010A".equals(kind1value)) {
basePrice = 122;
} else if ("6016".equals(kind1value)) {
basePrice = 106;
} else if ("5608XM".equals(kind1value)) {
basePrice = 140;
} else if ("5608K".equals(kind1value)) {
basePrice = 90;
} else if ("903".equals(kind1value)) {
basePrice = 58;
} else if ("901".equals(kind1value)) {
basePrice = 100;
}
double craftPrice = 0;
if (craft_list.contains("烫画")) {
if (craft_list.contains("前胸")) {
craftPrice += Math.max(5, 3 * dto.getCount() * number);
if (dto.getCount() * number > 5) {
craftPrice = 0;
}
}
if (craft_list.contains("后背")) {
craftPrice += Math.max(10, 5 * dto.getCount() * number);
if (dto.getCount() * number > 10) {
craftPrice = 0;
}
}
}
if (craft_list.contains("刺绣")) {
if (craft_list.contains("前胸")) {
craftPrice += Math.max(30, 3 * dto.getCount() * number);
if (dto.getCount() * number > 15) {
craftPrice = 0;
}
}
if (craft_list.contains("后背")) {
craftPrice += Math.max(50, 6 * dto.getCount() * number);
if (dto.getCount() * number > 20) {
craftPrice = 0;
}
}
}
if (craft_list.contains("丝印")) {
if (craft_list.contains("前胸")) {
craftPrice += Math.max(80, 2 * dto.getCount() * number);
if (dto.getCount() * number > 100) {
craftPrice = 0;
}
}
if (craft_list.contains("后背")) {
craftPrice += Math.max(100, 2 * dto.getCount() * number);
if (dto.getCount() * number > 100) {
craftPrice = 0;
}
}
}
}
if (dto.getPo_number() != null && dto.getCo_number() != null) {
if (dto.getPo_number() > 0 || dto.getCo_number() > 0) {
basePrice += dto.getPo_number() * 4 * dto.getCo_number();
banfei = dto.getPo_number() * 40 * dto.getCo_number();
}
}
count = dto.getCount();
Product pro = new Product();
pro.setCount(count);
pro.setPrice(Math.ceil(basePrice * count * number) + craftPrice);
priceList.add(pro);
} else {
if ("YP".equals(dto.getKindValue())) {
basePrice = 19;
}
if ("XW".equals(dto.getKindValue())) {
basePrice = 31;
}
if ("EP".equals(dto.getKindValue())) {
basePrice = 31;
}
if ("ZT".equals(dto.getKindValue())) {
basePrice = 57;
}
if (!StringUtils.isEmpty(dto.getSize())) {
String[] size_list = dto.getSize().split(",");
for (int i = 0; i < size_list.length; i++) {
double sizePirce = 0;
if ("10*10".equals(size_list[i])) {
sizePirce = 4;
}
if ("15*15".equals(size_list[i])) {
sizePirce = 6;
}
if ("15*20".equals(size_list[i])) {
sizePirce = 8;
}
if ("20*20".equals(size_list[i])) {
sizePirce = 10;
}
if ("25*15".equals(size_list[i])) {
sizePirce = 10;
}
if ("25*25".equals(size_list[i])) {
sizePirce = 12;
}
if ("30*30".equals(size_list[i])) {
sizePirce = 14;
}
if ("30*40".equals(size_list[i])) {
sizePirce = 16;
}
basePrice += sizePirce;
}
}
if (dto.getPo_number() != null && dto.getCo_number() != null) {
if (dto.getPo_number() > 0 || dto.getCo_number() > 0) {
basePrice += dto.getPo_number() * 4 * dto.getCo_number();
banfei = dto.getPo_number() * 40 * dto.getCo_number();
}
}
count = dto.getCount();
Product pro = new Product();
pro.setCount(count);
pro.setPrice(Math.max(basePrice * count * number, 30) + banfei);
priceList.add(pro);
}
Product pro = new Product();
pro.setCount(count);
pro.setPrice(Math.max(basePrice * count * number, 30) + banfei);
priceList.add(pro);
return priceList;
}