From 2012ad0a80fa161db050080311fb016d7fa1f2d5 Mon Sep 17 00:00:00 2001 From: zhuyiyi <649091362@qq.com> Date: Fri, 10 Apr 2026 14:49:51 +0800 Subject: [PATCH] =?UTF-8?q?=E7=8E=B0=E5=9C=A8=E9=93=B6=E5=B9=B3=E5=85=89?= =?UTF-8?q?=E5=90=83=E5=90=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lingtao/net/service/ProductService.java | 252 ++++++++++-------- src/main/webapp/views/product/stickers.jsp | 7 + 2 files changed, 141 insertions(+), 118 deletions(-) diff --git a/src/main/java/lingtao/net/service/ProductService.java b/src/main/java/lingtao/net/service/ProductService.java index 72543c8..04d502c 100644 --- a/src/main/java/lingtao/net/service/ProductService.java +++ b/src/main/java/lingtao/net/service/ProductService.java @@ -1453,10 +1453,10 @@ public class ProductService { double addPrice = 5; List craft_list = dto.getCraft() != null ? new ArrayList<>(Arrays.asList(dto.getCraft())) : new ArrayList<>(); - if (craft_list.contains("压痕") && ((width <= 10 && length <= 7) || (width <= 7 && length <= 10))) { - craft_list.remove("压痕"); - craft_list.add("异形模切"); - } +// if (craft_list.contains("压痕") && ((width <= 10 && length <= 7) || (width <= 7 && length <= 10))) { +// craft_list.remove("压痕"); +// craft_list.add("异形模切"); +// } if (!craft_list.isEmpty()) { dto.setCraft(craft_list.toArray(new String[craft_list.size()])); } @@ -4729,121 +4729,9 @@ public class ProductService { return priceList; case "定制衫": - 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; - } - - } - 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(); - - pro = new Product(); - pro.setCount(count); - pro.setPrice(Math.max(basePrice * count * number, 30) + banfei); - priceList.add(pro); - return priceList; + return getClotherPrice(dto, width, length); case "手绘": - double price = 0; - if ("1".equals(dto.getKindValue())) { - if (number >= 1 && number <= 4) { - price = 80; - } else if (number >= 5 && number <= 10) { - price = 75; - } else if (number >= 11 && number <= 20) { - price = 70; - } else { - price = 65; - } - } else if ("2".equals(dto.getKindValue())) { - price = 70; - } else if ("3".equals(dto.getKindValue())) { - price = 200; - } else if ("4".equals(dto.getKindValue())) { - if ("1".equals(dto.getKind1Value())) { - price = 80; - } - if ("2".equals(dto.getKind1Value())) { - price = 160; - } - } else if ("5".equals(dto.getKindValue())) { - if ("1".equals(dto.getKind1Value())) { - price = 80; - } - if ("2".equals(dto.getKind1Value())) { - price = 160; - } - } else if ("6".equals(dto.getKindValue())) { - if ("1".equals(dto.getKind1Value())) { - price = 80; - } - if ("2".equals(dto.getKind1Value())) { - price = 98; - } - } else if ("7".equals(dto.getKindValue())) { - price = 150; - } else if ("8".equals(dto.getKindValue())) { - if ("1".equals(dto.getKind1Value())) { - price = 80; - } - if ("2".equals(dto.getKind1Value())) { - price = 198; - } - } else if ("9".equals(dto.getKindValue())) { - price = 150; - } - - pro = new Product(); - pro.setCount(count); - pro.setPrice(price * number); - priceList.add(pro); - return priceList; + return getShouhuiPrice(dto, width, length); case "奖牌": return getMedalPrice(dto, width, length); case "防伪标": @@ -4898,6 +4786,134 @@ public class ProductService { return null; } + private List getClotherPrice(Product dto, Double width, Double length) { + List craft_list = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft()); + List priceList = new ArrayList<>(); + int count = dto.getCount(); + 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; + } + + } + 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); + return priceList; + } + + private List getShouhuiPrice(Product dto, Double width, Double length) { + List craft_list = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft()); + List priceList = new ArrayList<>(); + int count = dto.getCount(); + int number = dto.getNumber(); + double price = 0; + if ("1".equals(dto.getKindValue())) { + if (number >= 1 && number <= 4) { + price = 80; + } else if (number >= 5 && number <= 10) { + price = 75; + } else if (number >= 11 && number <= 20) { + price = 70; + } else { + price = 65; + } + } else if ("2".equals(dto.getKindValue())) { + price = 70; + } else if ("3".equals(dto.getKindValue())) { + price = 200; + } else if ("4".equals(dto.getKindValue())) { + if ("1".equals(dto.getKind1Value())) { + price = 80; + } + if ("2".equals(dto.getKind1Value())) { + price = 160; + } + } else if ("5".equals(dto.getKindValue())) { + if ("1".equals(dto.getKind1Value())) { + price = 80; + } + if ("2".equals(dto.getKind1Value())) { + price = 160; + } + } else if ("6".equals(dto.getKindValue())) { + if ("1".equals(dto.getKind1Value())) { + price = 80; + } + if ("2".equals(dto.getKind1Value())) { + price = 98; + } + } else if ("7".equals(dto.getKindValue())) { + price = 150; + } else if ("8".equals(dto.getKindValue())) { + if ("1".equals(dto.getKind1Value())) { + price = 80; + } + if ("2".equals(dto.getKind1Value())) { + price = 198; + } + } else if ("9".equals(dto.getKindValue())) { + price = 150; + } + + Product pro = new Product(); + pro.setCount(count); + pro.setPrice(price * number); + priceList.add(pro); + return priceList; + } + private List getWarmStickerPrice(Product dto, Double width, Double length) { List craft_list = dto.getCraft() == null ? new ArrayList<>() : Arrays.asList(dto.getCraft()); List priceList = new ArrayList<>(); diff --git a/src/main/webapp/views/product/stickers.jsp b/src/main/webapp/views/product/stickers.jsp index 301ba21..67edb0f 100644 --- a/src/main/webapp/views/product/stickers.jsp +++ b/src/main/webapp/views/product/stickers.jsp @@ -1640,6 +1640,13 @@ }); return false; } + if (kindValue == "银平光" && stickerKind == '常用种类') { + if ((size.split("*")[0] > 30 || size.split("*")[1] > 30)) { + layer.msg("【银平光】尺寸不能超过30*30 cm", {offset: ['300px', '300px']}, function () { + }); + return false; + } + } if (stickerKind[0] != "插旗" && stickerKind[0] != "双面印刷不干胶") { if (!stickerKind[0]) { layer.msg('请选择品种!', {offset: ['300px', '300px']}, function () {