zhuyiyi 8 months ago
parent
commit
ca9eda8c57
25 changed files with 10910 additions and 348 deletions
  1. 49 0
      src/main/java/lingtao/net/Factory/CanvasPricingStrategy.java
  2. 397 1
      src/main/java/lingtao/net/Factory/CardPricingStrategy.java
  3. 63 0
      src/main/java/lingtao/net/Factory/ClassFlagPricingStrategy.java
  4. 60 0
      src/main/java/lingtao/net/Factory/DossalPricingStrategy.java
  5. 61 0
      src/main/java/lingtao/net/Factory/HandFlagPricingStrategy.java
  6. 230 1
      src/main/java/lingtao/net/Factory/MetalTargetStrategy.java
  7. 200 0
      src/main/java/lingtao/net/Factory/PosterPricingStrategy.java
  8. 9 1
      src/main/java/lingtao/net/Factory/PricingStrategy.java
  9. 30 1
      src/main/java/lingtao/net/Factory/PricingStrategyFactory.java
  10. 246 0
      src/main/java/lingtao/net/Factory/StickerPricingStrategy.java
  11. 6 0
      src/main/java/lingtao/net/bean/Product.java
  12. 197 128
      src/main/java/lingtao/net/controller/ProductController.java
  13. 386 0
      src/main/java/lingtao/net/service/PriceService.java
  14. 219 216
      src/main/java/lingtao/net/service/QuoteLogService.java
  15. 27 0
      src/main/java/lingtao/net/vo/PricingListVo.java
  16. 24 0
      src/main/java/lingtao/net/vo/ProductVo.java
  17. 27 0
      src/main/java/lingtao/net/vo/ProvidePrice.java
  18. 292 0
      src/main/webapp/views/priceView/angingCloth.jsp
  19. 292 0
      src/main/webapp/views/priceView/banqi.jsp
  20. 357 0
      src/main/webapp/views/priceView/canvas.jsp
  21. 3347 0
      src/main/webapp/views/priceView/coupon.jsp
  22. 476 0
      src/main/webapp/views/priceView/metal.jsp
  23. 1821 0
      src/main/webapp/views/priceView/poster.jsp
  24. 259 0
      src/main/webapp/views/priceView/slq.jsp
  25. 1835 0
      src/main/webapp/views/priceView/stickers.jsp

+ 49 - 0
src/main/java/lingtao/net/Factory/CanvasPricingStrategy.java

@@ -0,0 +1,49 @@
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 提供画布产品的定价策略。
+ * 该类主要用于计算画布类产品的价格列表,根据产品信息和用户角色进行价格计算。
+ */
+public class CanvasPricingStrategy implements PricingStrategy {
+    /**
+     * 根据产品信息和用户角色计算画布产品的价格。
+     *
+     * @param dto  产品信息对象,包含产品详细信息。
+     * @param role 用户角色,用于确定价格策略。
+     * @return 返回计算后的价格列表对象,如果未实现或无法计算则返回null。
+     */
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        double price = 0.0;
+        double basePrice = 0.0;
+        List<ProductVo> resultList = new ArrayList<>();
+
+
+        if ("领鸿".equals(plantName)) {
+            double area = Math.max(count * number * width * length / 10000, 0.2);
+            price = new BigDecimal(basePrice * area).setScale(2, RoundingMode.HALF_UP).doubleValue();
+        }
+
+        ProductVo pro = new ProductVo();
+        pro.setCount(count);
+        pro.setPrice(price);
+        pro.setNumber(number);
+        pro.setWeight(BigDecimal.valueOf(width / 100 * length / 100 * count * 0.07).setScale(2, BigDecimal.ROUND_HALF_UP).toString());
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+}

+ 397 - 1
src/main/java/lingtao/net/Factory/CardPricingStrategy.java

@@ -1,2 +1,398 @@
-package lingtao.net.Factory;public class CardPricingStrategy {
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+import org.springframework.util.StringUtils;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.*;
+
+public class CardPricingStrategy implements PricingStrategy {
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        String kindValue = dto.getProTypeLabel();
+
+        if ("菜单".equals(kindValue)) {
+            //return new PricingListVo(100, "暂无报价"); // 返回空列表表示不适用
+//            String size = dto.getUi_menu_size();
+//            dto.setLength(Double.valueOf(size.substring(0, size.indexOf("*"))));
+//            if (size.contains(",")) {
+//                size = size.split(",")[0];
+//            }
+//            if (size.indexOf(("*"), size.indexOf("*") + 1) == -1) {
+//                dto.setWidth(Double.valueOf(size.substring(size.indexOf("*") + 1)));
+//            } else {
+//                dto.setWidth(Double.valueOf(size.substring(size.indexOf("*") + 1, size.indexOf(("*"), size.indexOf("*") + 1))));
+//                dto.setLength(Math.abs(Double.parseDouble(size.substring(size.indexOf(("*"), size.indexOf("*") + 1) + 1))));
+//            }
+        }
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        // 定义纸张尺寸(单位:毫米)
+        double paperLength = 280; // 纸张长度
+        double paperWidth = 420;  // 纸张宽度
+        String basePrice = "0"; // 基础价格
+        BigDecimal price = new BigDecimal(0); // 最终价格
+        BigDecimal weight = BigDecimal.ZERO;
+
+        length = convertToMillimetersWithMargin(length);
+        width = convertToMillimetersWithMargin(width);
+        String material = "1";
+        if ("婚礼报纸".equals(kindValue)) {
+            material = "2";//157g铜版纸
+        } else if ("特种纸名片".equals(kindValue)) {
+            material = dto.getKindValue6();
+        } else if ("菜单".equals(kindValue) && "2".equals(dto.getKindValue5())) {
+            material = "pvc";
+        }
+        String ggSize = dto.getSize1();//刮刮膜
+        List<ProductVo> resultList = new ArrayList<>();
+        List<String> craft_list = dto.getCraft() != null ? Arrays.asList(dto.getCraft()) : new ArrayList<>();
+        if ("艾印".equals(plantName) && !"种子纸".equals(kindValue) && !"菜单".equals(kindValue)) {
+            if (craft_list.contains("烫金") || craft_list.contains("彩色印刷+烫金")) {
+                return new PricingListVo(100, "车间无烫金工艺"); // 返回空列表表示不适用
+            }
+
+
+            Map<String, Map<String, String>> kindValuePrice = new HashMap<>();
+
+            // 统一键的类型为字符串
+            kindValuePrice.put("1", createPriceMap("1", "3", "2", "3.3"));//300g铜版纸
+            kindValuePrice.put("2", createPriceMap("1", "1.8", "2", "2.4"));//157g铜版纸
+            kindValuePrice.put("皙贝", createPriceMap("1", "2.1", "2", "3.1"));//白卡
+            kindValuePrice.put("琮纹", createPriceMap("1", "2.5", "2", "3.7"));//刚古
+            kindValuePrice.put("玉蕊", createPriceMap("1", "2.7", "2", "3.8"));//蛋壳
+            kindValuePrice.put("睿狐", createPriceMap("1", "2.7", "2", "3.8"));//莱尼
+            kindValuePrice.put("溪雪", createPriceMap("1", "3.2", "2", "3.2"));//珠光
+            if (!kindValuePrice.containsKey(material)) {
+                return new PricingListVo(100, "暂无报价"); // 返回空列表表示不适用
+            }
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            int requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            //单双面单价不一致
+            Map<String, String> prices = kindValuePrice.get(material);
+            if ("双面印刷".equals(dto.getCraftShua())) {
+                basePrice = prices.get("2");
+            } else {
+                basePrice = prices.get("1");
+            }
+            price = new BigDecimal(basePrice).multiply(new BigDecimal(requiredSheets)).setScale(2, RoundingMode.HALF_UP);
+
+            if ("刮刮卡".equals(kindValue)) {
+                Map<String, Map<String, String>> ggmPrices = new HashMap<String, Map<String, String>>();
+                ggmPrices.put("60*25", createPriceMap("50", "3", "100", "5"));
+                ggmPrices.put("48*15", createPriceMap("50", "2", "100", "3"));
+                ggmPrices.put("8*30", createPriceMap("50", "1", "100", "2"));
+                ggmPrices.put("6*22", createPriceMap("50", "0.8", "100", "1.6"));
+                if (!ggmPrices.containsKey(ggSize)) {
+                    return new PricingListVo(100, "无该尺寸刮刮膜"); // 返回空列表表示不适用
+                }
+                Map<String, String> ggmPrice = ggmPrices.get(ggSize);
+                if (count <= 50) {
+                    price = price.add(new BigDecimal(ggmPrice.get("50"))).setScale(2, RoundingMode.HALF_UP);
+                } else {
+                    price = price.add(new BigDecimal(ggmPrice.get("100"))).setScale(2, RoundingMode.HALF_UP);
+                }
+            }
+        }
+        if ("即客".equals(plantName) && !"种子纸".equals(kindValue) && !"菜单".equals(kindValue)) {
+            if (craft_list.contains("烫金") || craft_list.contains("彩色印刷+烫金")) {
+                return new PricingListVo(100, "车间无烫金工艺"); // 返回空列表表示不适用
+            }
+
+            Map<String, Map<String, String>> kindValuePrice = new HashMap<>();
+
+            // 统一键的类型为字符串
+            kindValuePrice.put("1", createPriceMap("1", "3", "2", "3.3"));//300g铜版纸
+            kindValuePrice.put("2", createPriceMap("1", "1.8", "2", "2.4"));//157g铜版纸
+            kindValuePrice.put("萱姿", createPriceMap("1", "3", "2", "3"));//雅柔
+            kindValuePrice.put("芳怡", createPriceMap("1", "3", "2", "3"));//草香
+            if (!kindValuePrice.containsKey(material)) {
+                return new PricingListVo(100, "暂无报价"); // 返回空列表表示不适用
+            }
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            int requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            //单双面单价不一致
+            Map<String, String> prices = kindValuePrice.get(material);
+            if ("双面印刷".equals(dto.getCraftShua())) {
+                basePrice = prices.get("2");
+            } else {
+                basePrice = prices.get("1");
+            }
+            price = new BigDecimal(basePrice).multiply(new BigDecimal(requiredSheets)).setScale(2, RoundingMode.HALF_UP);
+
+            if ("刮刮卡".equals(kindValue)) {
+                Map<String, Map<String, String>> ggmPrices = new HashMap<String, Map<String, String>>();
+                ggmPrices.put("60*25", createPriceMap("50", "3", "100", "6"));
+                ggmPrices.put("48*15", createPriceMap("50", "2", "100", "4"));
+                ggmPrices.put("8*30", createPriceMap("50", "1", "100", "2"));
+                ggmPrices.put("6*22", createPriceMap("50", "0.8", "100", "1.6"));
+                if (!ggmPrices.containsKey(ggSize)) {
+                    return new PricingListVo(100, "无该尺寸刮刮膜"); // 返回空列表表示不适用
+                }
+                Map<String, String> ggmPrice = ggmPrices.get(ggSize);
+                if (count <= 50) {
+                    price = price.add(new BigDecimal(ggmPrice.get("50"))).setScale(2, RoundingMode.HALF_UP);
+                } else {
+                    price = price.add(new BigDecimal(ggmPrice.get("100"))).setScale(2, RoundingMode.HALF_UP);
+                }
+            }
+        }
+        if ("欣海信".equals(plantName) && !"种子纸".equals(kindValue)) {
+            paperLength = 272; // 纸张长度
+            paperWidth = 390;  // 纸张宽度
+            Map<String, Map<String, String>> kindValuePrice = new HashMap<>();
+
+            // 统一键的类型为字符串
+            kindValuePrice.put("1", createPriceMap("1", "3", "2", "3.3"));//300g铜版纸
+            kindValuePrice.put("pvc", createPriceMap("1", "3", "2", "3.3"));//300g铜版纸
+            kindValuePrice.put("2", createPriceMap("1", "1.8", "2", "2.4"));//157g铜版纸
+            kindValuePrice.put("溪雪", createPriceMap("1", "4", "2", "6"));//珠光
+            kindValuePrice.put("琮纹", createPriceMap("1", "4", "2", "6"));//刚古
+            kindValuePrice.put("睿狐", createPriceMap("1", "4", "2", "6"));//莱尼
+            kindValuePrice.put("玉蕊", createPriceMap("1", "4", "2", "6"));//蛋壳
+            if (!kindValuePrice.containsKey(material)) {
+                return new PricingListVo(100, "暂无报价"); // 返回空列表表示不适用
+            }
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            int requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            //单双面单价不一致
+            Map<String, String> prices = kindValuePrice.get(material);
+            if ("双面印刷".equals(dto.getCraftShua())) {
+                basePrice = prices.get("2");
+                if (craft_list.contains("烫金") || craft_list.contains("彩色印刷+烫金")) {
+                    basePrice = new BigDecimal(basePrice).add(new BigDecimal(prices.get("18"))).setScale(2, RoundingMode.HALF_UP).toString();
+                }
+            } else {
+                basePrice = prices.get("1");
+                if (craft_list.contains("烫金") || craft_list.contains("彩色印刷+烫金")) {
+                    basePrice = new BigDecimal(basePrice).add(new BigDecimal(prices.get("9"))).setScale(2, RoundingMode.HALF_UP).toString();
+                }
+            }
+            price = new BigDecimal(basePrice).multiply(new BigDecimal(requiredSheets)).setScale(2, RoundingMode.HALF_UP);
+
+            if ("刮刮卡".equals(kindValue)) {
+                price = price.add(new BigDecimal(0.3).multiply(new BigDecimal(count))).setScale(2, RoundingMode.HALF_UP);
+            }
+        }
+        if ("彩印通".equals(plantName) && !"种子纸".equals(kindValue) && !"菜单".equals(kindValue)) {
+            paperLength = 297;
+            paperWidth = 420;
+            if (craft_list.contains("烫金") || craft_list.contains("彩色印刷+烫金")) {
+                return new PricingListVo(100, "车间无烫金工艺"); // 返回空列表表示不适用
+            }
+            Map<String, Map<String, String>> kindValuePrice = new HashMap<>();
+
+            // 统一键的类型为字符串
+            kindValuePrice.put("1", createPriceMap("1", "2.5", "2", "3"));//300g铜版纸
+            kindValuePrice.put("芳怡", createPriceMap("1", "5.5", "2", "5.5"));//草香
+            kindValuePrice.put("溪雪", createPriceMap("1", "3.5", "2", "3.5"));//珠光
+            kindValuePrice.put("萱姿", createPriceMap("1", "5", "2", "5"));//雅柔
+            if (!kindValuePrice.containsKey(material)) {
+                return new PricingListVo(100, "暂无报价"); // 返回空列表表示不适用
+            }
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            int requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            //单双面单价不一致
+            Map<String, String> prices = kindValuePrice.get(material);
+            if ("双面印刷".equals(dto.getCraftShua())) {
+                basePrice = prices.get("2");
+            } else {
+                basePrice = prices.get("1");
+            }
+            if (craft_list.contains("异形")) {
+                basePrice = new BigDecimal(basePrice).add(new BigDecimal("0.5")).setScale(2, RoundingMode.HALF_UP).toString();
+            }
+            price = new BigDecimal(basePrice).multiply(new BigDecimal(requiredSheets)).setScale(2, RoundingMode.HALF_UP);
+
+            if ("刮刮卡".equals(kindValue)) {
+                BigDecimal ggPrice = new BigDecimal("0.02").multiply(new BigDecimal(count));
+                price = price.add(ggPrice.compareTo(new BigDecimal("30")) > 0 ? ggPrice : new BigDecimal("30")).setScale(2, RoundingMode.HALF_UP);
+            }
+        }
+        if ("种子纸".equals(kindValue) && "鸿晟".equals(plantName)) {
+            if (!StringUtils.isEmpty(dto.getSwitchz3Size()) || "2".equals(dto.getZ3type())) {
+                count = Math.max(count, 300);
+            }
+            price = BigDecimal.valueOf((length * width * count * 70) / 1000000).setScale(2, RoundingMode.HALF_UP);//价格计算尺寸*数量*200/10000
+
+            if (craft_list.contains("编码")) {//起步价10
+                price = price.add(max(new BigDecimal(count * 0.4), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.contains("打孔")) {
+                price = price.add(max(new BigDecimal(count * 0.1), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.contains("手撕线")) {
+                price = price.add(max(new BigDecimal(count * 0.2), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.contains("压痕")) {
+                price = price.add(max(new BigDecimal(count * 0.2), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            price = price.multiply(new BigDecimal(number));//款数翻倍
+            price = max(price, new BigDecimal(80)).setScale(2, RoundingMode.HALF_UP);
+
+            if (!StringUtils.isEmpty(dto.getSwitchz3Size())) {
+                price = price.add(new BigDecimal(100)).add(new BigDecimal(count * 0.1)).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.size() > 0 && craft_list.contains("绳子")) {
+                price = price.add(max(new BigDecimal(0.1 * number * count), new BigDecimal(5))).setScale(2, RoundingMode.HALF_UP);
+            }
+        }
+        if ("种子纸".equals(kindValue) && "驰远".equals(plantName)) {
+            if (!StringUtils.isEmpty(dto.getSwitchz3Size()) || "2".equals(dto.getZ3type())) {
+                count = Math.max(count, 300);
+            }
+            basePrice = "45";
+            if (!StringUtils.isEmpty(dto.getSwitchz3Size())) {
+                basePrice = "65";
+                if (length > 12 || width > 12) {
+                    return new PricingListVo(100, "纸张尺寸超出");
+                }
+            }
+            price = BigDecimal.valueOf((length * width * count) / 1000000).multiply(new BigDecimal(basePrice)).setScale(2, RoundingMode.HALF_UP);//价格计算尺寸*数量*200/10000
+
+            if (craft_list.contains("编码")) {//起步价10
+                price = price.add(max(new BigDecimal(count * 0.4), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.contains("打孔")) {
+                price = price.add(max(new BigDecimal(count * 0.1), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.contains("手撕线")) {
+                price = price.add(max(new BigDecimal(count * 0.2), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            if (craft_list.contains("压痕")) {
+                price = price.add(max(new BigDecimal(count * 0.2), new BigDecimal(10))).setScale(2, RoundingMode.HALF_UP);
+            }
+            price = price.multiply(new BigDecimal(number));//款数翻倍
+            price = max(price, new BigDecimal(80)).setScale(2, RoundingMode.HALF_UP);
+
+
+            if (craft_list.size() > 0 && craft_list.contains("绳子")) {
+                price = price.add(max(new BigDecimal(0.1 * number * count), new BigDecimal(5))).setScale(2, RoundingMode.HALF_UP);
+            }
+        }
+        weight = BigDecimal.valueOf(number * (length) / 1000 * (width) / 1000 * count * 0.25 * 1.15);
+        // 创建产品对象并添加到结果列表
+        ProductVo pro = new ProductVo();
+        pro.setPrice(price.doubleValue());
+        pro.setCount(count);
+        pro.setWeight(weight.toString());
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+
+    public static BigDecimal max(BigDecimal a, BigDecimal b) {
+        if (a == null) {
+            return b;
+        }
+        if (b == null) {
+            return a;
+        }
+        return a.compareTo(b) >= 0 ? a : b;
+    }
+
+    /**
+     * 创建价格映射
+     *
+     * @param keysAndValues 键值对数组
+     * @return 初始化后的价格映射
+     */
+    private Map<String, String> createPriceMap(String... keysAndValues) {
+        if (keysAndValues.length % 2 != 0) {
+            throw new IllegalArgumentException("键值对数量必须为偶数");
+        }
+        Map<String, String> priceMap = new HashMap<>();
+        for (int i = 0; i < keysAndValues.length; i += 2) {
+            priceMap.put(keysAndValues[i], keysAndValues[i + 1]);
+        }
+        return priceMap;
+    }
+
+    /**
+     * 将给定的尺寸转换为毫米,并在每边增加3毫米的边距
+     *
+     * @param size 需要转换的原始尺寸
+     * @return 转换后的尺寸,单位为毫米,包括边距
+     */
+    private double convertToMillimetersWithMargin(double size) {
+        return size * 10 + 2 * 2; // 换成毫米,每边+2
+    }
+
+    /**
+     * 检查给定的长度和宽度是否在纸张尺寸范围内
+     *
+     * @param length      需要检查的长度
+     * @param width       需要检查的宽度
+     * @param paperLength 纸张的长度
+     * @param paperWidth  纸张的宽度
+     * @return 如果给定尺寸在纸张尺寸范围内,则返回true;否则返回false
+     */
+    private boolean isWithinPaperSize(double length, double width, double paperLength, double paperWidth) {
+        return (length <= paperLength && width <= paperWidth) || (length <= paperWidth && width <= paperLength);
+    }
+
+    /**
+     * 计算每张纸最多可以容纳的物品数量
+     *
+     * @param length      物品的长度
+     * @param width       物品的宽度
+     * @param paperLength 纸张的长度
+     * @param paperWidth  纸张的宽度
+     * @return 每张纸最多可以容纳的物品数量
+     */
+    private double calculateMaxItemsPerSheet(double length, double width, double paperLength, double paperWidth) {
+        return Math.max(
+                Math.floor(paperLength / length) * Math.floor(paperWidth / width),
+                Math.floor(paperLength / width) * Math.floor(paperWidth / length)
+        );
+    }
+
+    /**
+     * 计算完成指定数量的物品所需的纸张数量
+     *
+     * @param count            物品的总数量
+     * @param number           每个物品需要的数量
+     * @param maxItemsPerSheet 每张纸最多可以容纳的物品数量
+     * @return 完成指定数量的物品所需的纸张数量
+     */
+    private int calculateRequiredSheets(int count, int number, double maxItemsPerSheet) {
+        return (int) Math.ceil((count * number) / maxItemsPerSheet);
+    }
 }

+ 63 - 0
src/main/java/lingtao/net/Factory/ClassFlagPricingStrategy.java

@@ -0,0 +1,63 @@
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * 班级标志定价策略类
+ * 实现了PricingStrategy接口,用于根据用户角色计算产品价格
+ * 此策略专注于处理与班级标志相关的产品价格计算
+ */
+public class ClassFlagPricingStrategy implements PricingStrategy {
+    /**
+     * 根据用户角色计算产品价格
+     * 此方法旨在根据不同用户角色计算产品的价格,但具体实现尚未完成
+     *
+     * @param dto  产品信息对象,包含产品详细信息
+     * @param role 用户角色,用于确定价格策略
+     * @return 返回计算后的价格信息对象,当前实现返回null
+     */
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        double price = 0.0;
+        double basePrice = 0.0;
+        List<ProductVo> resultList = new ArrayList<>();
+        List<String> craft_list = Optional.ofNullable(dto)
+                .map(Product::getCraft) // 假设 dto 是 Dto 类型
+                .map(Arrays::asList)
+                .orElseGet(ArrayList::new);
+
+        // 确保 craftList 是可变的
+        craft_list = new ArrayList<>(craft_list);
+        if ("领鸿".equals(plantName)) {
+            //旗帜布
+            basePrice = 6.5;
+            double area = Math.max(count * number * width * length / 10000, 0.3);
+            price = new BigDecimal(basePrice * area).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            if (craft_list.contains("旗杆")) {
+                price = BigDecimal.valueOf(price).add(BigDecimal.valueOf(count * number * 15.0)).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            }
+        }
+
+        ProductVo pro = new ProductVo();
+        pro.setCount(count);
+        pro.setPrice(price);
+        pro.setNumber(number);
+        pro.setWeight(BigDecimal.valueOf(width / 100 * length / 100 * count * 0.07).setScale(2, BigDecimal.ROUND_HALF_UP).toString());
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+}

+ 60 - 0
src/main/java/lingtao/net/Factory/DossalPricingStrategy.java

@@ -0,0 +1,60 @@
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * 提供了一种特定的定价策略。
+ * 该策略专门用于处理挂布产品的定价计算,根据产品信息和用户角色来确定最终价格。
+ */
+public class DossalPricingStrategy implements PricingStrategy {
+    /**
+     * 根据产品信息和用户角色计算价格。
+     * 此方法旨在根据不同类型的用户(如普通用户、会员等)对Dossal产品提供定制化的定价。
+     *
+     * @param dto  产品信息对象,包含了需要计算价格的产品的所有必要信息。
+     * @param role 用户角色,用于确定用户类型,进而影响最终的定价结果。
+     * @return 返回计算后的价格列表视图对象,若不适用或未实现则返回null。
+     */
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        double price = 0.0;
+        double basePrice = 0.0;
+        List<ProductVo> resultList = new ArrayList<>();
+        List<String> craft_list = Optional.ofNullable(dto)
+                .map(Product::getCraft) // 假设 dto 是 Dto 类型
+                .map(Arrays::asList)
+                .orElseGet(ArrayList::new);
+        // 确保 craftList 是可变的
+        craft_list = new ArrayList<>(craft_list);
+        if ("领鸿".equals(plantName)) {
+            if ("半透纱幔".equals(dto.getKindValue())) {
+                basePrice = 15.0;
+                double area = Math.max(count * number * width * length / 10000, 0.3);
+
+                price = new BigDecimal(basePrice * area).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            }
+        }
+
+        ProductVo pro = new ProductVo();
+        pro.setCount(count);
+        pro.setPrice(price);
+        pro.setNumber(number);
+        pro.setWeight(BigDecimal.valueOf(width / 100 * length / 100 * count * 0.07).setScale(2, BigDecimal.ROUND_HALF_UP).toString());
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+}

+ 61 - 0
src/main/java/lingtao/net/Factory/HandFlagPricingStrategy.java

@@ -0,0 +1,61 @@
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.ArrayList;
+import java.util.List;
+
+public class HandFlagPricingStrategy implements PricingStrategy {
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        double price = 0.0;
+        double basePrice = 0.0;
+        List<ProductVo> resultList = new ArrayList<>();
+        if ("领鸿".equals(plantName)) {
+            //春亚布
+            if ("1".equals(dto.getKindValue())) {
+
+                // 合并逻辑,减少嵌套层级
+                if (width == 17 && length <= 20) {
+                    basePrice = 2.5;
+                } else if (width == 24 && length <= 70) {
+                    basePrice = 3;
+                } else if (length > 70) {
+                    basePrice = 4;
+                }
+
+            }
+            //贡缎布
+            if ("2".equals(dto.getKindValue())) {
+                if (width == 17 && length <= 20) {
+                    basePrice = 4;
+                } else if (width == 24 && length <= 70) {
+                    basePrice = 5;
+                } else if (length > 70) {
+                    basePrice = 6;
+                }
+            }
+            if (basePrice == 0) {
+                return new PricingListVo(100, "暂无报价。");
+            }
+
+            price = new BigDecimal(basePrice * count * number / 10000).setScale(2, RoundingMode.HALF_UP).doubleValue();
+        }
+        ProductVo pro = new ProductVo();
+        pro.setCount(count);
+        pro.setPrice(price);
+        pro.setNumber(number);
+        pro.setWeight(BigDecimal.valueOf(width / 100 * length / 100 * count * 0.07).setScale(2, BigDecimal.ROUND_HALF_UP).toString());
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+}

+ 230 - 1
src/main/java/lingtao/net/Factory/MetalTargetStrategy.java

@@ -1,2 +1,231 @@
-package lingtao.net.Factory;public class MetalTargetStrategy {
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.util.PriceUtils;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+
+public class MetalTargetStrategy implements PricingStrategy {
+
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+
+        List<ProductVo> resultList = new ArrayList<>();
+
+        // 定义纸张尺寸(单位:毫米)
+        double paperLength = 295; // 纸张长度
+        double paperWidth = 195;  // 纸张宽度
+        double basePrice = 0; // 基础价格
+        double minPrice = 0; // 起步价
+        double price = 0; // 最终价格
+        double colorPrice = 0; // 颜色附加费
+        double moreColorPrice = 0; // 多颜色附加费
+        int requiredSheets = 0;
+        BigDecimal weight = BigDecimal.ZERO;
+        // 转换尺寸为毫米并增加边距
+        length = convertToMillimetersWithMargin(length);
+        width = convertToMillimetersWithMargin(width);
+
+        if ("金大".equals(plantName) || "鑫灿".equals(plantName)) {
+
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+
+            // 计算颜色附加费
+            if (!"金色".equals(dto.getTcolor()) && !"银色".equals(dto.getTcolor()) && !"玫瑰金色".equals(dto.getTcolor())) {
+                colorPrice = 1;
+            }
+
+            if ("金大".equals(plantName)) {
+                // 设置起步价
+                minPrice = 45;
+                if ("双色".equals(dto.getCraftMo())) {
+                    minPrice = 70;
+                    moreColorPrice = 10;
+                }
+                if ("彩色(三色)".equals(dto.getCraftMo())) {
+                    minPrice = 105;
+                    moreColorPrice = 20;
+
+                }
+                colorPrice += moreColorPrice;
+                // 根据数量计算基础价格
+                if (requiredSheets <= 2) {
+                    price = minPrice + colorPrice;
+                } else if (requiredSheets <= 9) {
+                    price = minPrice + (requiredSheets - 2) * (12 + colorPrice);
+                } else if (requiredSheets <= 19) {
+                    price = Math.ceil((13 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 29) {
+                    price = Math.ceil((12 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 39) {
+                    price = Math.ceil((11 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 49) {
+                    price = Math.ceil((10 + colorPrice) * requiredSheets);
+                } else {
+                    price = Math.ceil((9 + colorPrice) * requiredSheets);
+                }
+            }
+            if ("鑫灿".equals(plantName)) {
+                // 设置起步价
+                minPrice = 45;
+                if ("双色".equals(dto.getCraftMo())) {
+                    minPrice = 55;
+                    moreColorPrice = 10;
+                }
+                if ("彩色(三色)".equals(dto.getCraftMo())) {
+                    minPrice = 105;
+                    moreColorPrice = 20;
+
+                }
+                colorPrice += moreColorPrice;
+                // 根据数量计算基础价格
+                if (requiredSheets <= 2) {
+                    price = minPrice + colorPrice;
+                } else if (requiredSheets <= 9) {
+                    price = minPrice + (requiredSheets - 2) * (10 + colorPrice);
+                } else if (requiredSheets <= 19) {
+                    price = Math.ceil((13 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 29) {
+                    price = Math.ceil((12 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 39) {
+                    price = Math.ceil((11 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 49) {
+                    price = Math.ceil((10 + colorPrice) * requiredSheets);
+                } else if (requiredSheets <= 100) {
+                    price = Math.ceil((9 + colorPrice) * requiredSheets);
+                } else {
+                    price = Math.ceil((8 + colorPrice) * requiredSheets);
+                }
+
+            }
+
+        }
+        if ("紫瑶".equals(plantName)) {
+            paperLength = 170;
+            paperWidth = 300;
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            // 计算颜色附加费
+            if (!"银色".equals(dto.getTcolor())) {
+                colorPrice = 1;
+            }
+            // 设置起步价
+            minPrice = 40;
+            if ("单色".equals(dto.getCraftMo())) {
+                if (requiredSheets == 1) {
+                    price = colorPrice == 1 ? 45 : 40;
+                } else if (requiredSheets == 2) {
+                    price = colorPrice == 1 ? 55 : 50;
+                } else if (requiredSheets == 3) {
+                    price = colorPrice == 1 ? 65 : 55;
+                } else if (requiredSheets == 4) {
+                    price = colorPrice == 1 ? 70 : 60;
+                } else if (requiredSheets == 5) {
+                    price = colorPrice == 1 ? 75 : 65;
+                } else if (requiredSheets == 6) {
+                    price = colorPrice == 1 ? 80 : 70;
+                } else {
+                    price = colorPrice == 1 ? 80 + (requiredSheets - 6) * 9 : 70 + (requiredSheets - 6) * 8;
+                }
+            }
+            if ("双色".equals(dto.getCraftMo())) {
+                minPrice = 60;
+                moreColorPrice = 30;
+
+            }
+            if ("彩色(三色)".equals(dto.getCraftMo())) {
+                minPrice = 70;
+                moreColorPrice = 40;
+
+            }
+            if (price == 0) {
+                price = Math.ceil(minPrice + moreColorPrice * (requiredSheets - 1));
+            }
+        }
+        // 创建产品对象并添加到结果列表
+        ProductVo pro = new ProductVo();
+        pro.setPrice(price);
+        pro.setCount(count);
+        pro.setWeight(BigDecimal.valueOf(requiredSheets / 30).setScale(2, BigDecimal.ROUND_HALF_UP).toString());
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+
+    /**
+     * 将给定的尺寸转换为毫米,并在每边增加3毫米的边距
+     *
+     * @param size 需要转换的原始尺寸
+     * @return 转换后的尺寸,单位为毫米,包括边距
+     */
+    private double convertToMillimetersWithMargin(double size) {
+        return size * 10 + 2 * 1.5; // 换成毫米,每边+3
+    }
+
+    /**
+     * 检查给定的长度和宽度是否在纸张尺寸范围内
+     *
+     * @param length      需要检查的长度
+     * @param width       需要检查的宽度
+     * @param paperLength 纸张的长度
+     * @param paperWidth  纸张的宽度
+     * @return 如果给定尺寸在纸张尺寸范围内,则返回true;否则返回false
+     */
+    private boolean isWithinPaperSize(double length, double width, double paperLength, double paperWidth) {
+        return (length <= paperLength && width <= paperWidth) || (length <= paperWidth && width <= paperLength);
+    }
+
+    /**
+     * 计算每张纸最多可以容纳的物品数量
+     *
+     * @param length      物品的长度
+     * @param width       物品的宽度
+     * @param paperLength 纸张的长度
+     * @param paperWidth  纸张的宽度
+     * @return 每张纸最多可以容纳的物品数量
+     */
+    private double calculateMaxItemsPerSheet(double length, double width, double paperLength, double paperWidth) {
+        return Math.max(
+                Math.floor(paperLength / length) * Math.floor(paperWidth / width),
+                Math.floor(paperLength / width) * Math.floor(paperWidth / length)
+        );
+    }
+
+    /**
+     * 计算完成指定数量的物品所需的纸张数量
+     *
+     * @param count            物品的总数量
+     * @param number           每个物品需要的数量
+     * @param maxItemsPerSheet 每张纸最多可以容纳的物品数量
+     * @return 完成指定数量的物品所需的纸张数量
+     */
+    private int calculateRequiredSheets(int count, int number, double maxItemsPerSheet) {
+        return (int) Math.ceil((count * number) / maxItemsPerSheet);
+    }
 }

+ 200 - 0
src/main/java/lingtao/net/Factory/PosterPricingStrategy.java

@@ -0,0 +1,200 @@
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.ArrayList;
+import java.util.List;
+
+public class PosterPricingStrategy implements PricingStrategy {
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        String kindValue = dto.getKindValue();
+        String kinde2Value = dto.getKind2Value();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        List<ProductVo> resultList = new ArrayList<>();
+
+        double price = 0;
+        double basePrice = 0;
+
+        if ("佳达".equals(plantName)) {
+            //制度牌
+            if ("0".equals(kindValue)) {
+                //室内写真裱冷板
+                if ("0".equals(kinde2Value)) {
+                    basePrice = 20;
+                }
+                //室内写真裱冷板装小C边(小金边/银边)
+                if ("3".equals(kinde2Value)) {
+                    basePrice = 11;
+                }
+                //户外写真裱冷板装小C边(小金边/银边)
+                if ("8".equals(kinde2Value)) {
+                    basePrice = 11;
+                }
+            }
+            //室内写真
+            if ("1".equals(kindValue)) {
+                //pp纸(室内)
+                if ("3".equals(kinde2Value)) {
+                    basePrice = 12;
+                }
+                //直喷PVC
+                if ("5".equals(kinde2Value)) {
+                    basePrice = 11;
+                }
+                //软膜
+                if ("14".equals(kinde2Value)) {
+                    basePrice = 15;
+                }
+                //地贴(复防滑膜)
+                if ("15".equals(kinde2Value)) {
+                    basePrice = 25;
+                }
+            }
+            //户外写真
+            if ("2".equals(kindValue)) {
+                //户外写真白胶(国产)
+                if ("0".equals(kinde2Value)) {
+                    basePrice = 11;
+                }
+                //户外写真黑胶(国产)
+                if ("1".equals(kinde2Value)) {
+                    basePrice = 11;
+                }
+                //户外写真可移白胶、黑胶
+                if ("2".equals(kinde2Value)) {
+                    basePrice = 12;
+                }
+                //车贴(白胶)
+                if ("6".equals(kinde2Value)) {
+                    basePrice = 22;
+                }
+                //摆摊软膜灯箱
+                if ("24".equals(kinde2Value)) {
+                    basePrice = 190;
+                }
+            }
+            //布
+            if ("3".equals(kindValue)) {
+                //黑底布
+                if ("2".equals(kinde2Value)) {
+                    basePrice = 8;
+                }
+                //写真布
+                if ("6".equals(kinde2Value)) {
+                    basePrice = 0;
+                }
+                //油画布
+                if ("8".equals(kinde2Value)) {
+                    basePrice = 22;
+                }
+                //550灯布
+                if ("11".equals(kinde2Value)) {
+                    basePrice = 6.5;
+                }
+                //550黑底灯布
+                if ("13".equals(kinde2Value)) {
+                    basePrice = 8;
+                }
+            }
+            //展架
+            if ("4".equals(kindValue)) {
+                //直喷PVC装美式展架180*80cm
+                if ("0".equals(kinde2Value)) {
+                    basePrice = 28;
+                }
+                //直喷PVC装美式展架160*60cm
+                if ("1".equals(kinde2Value)) {
+                    basePrice = 21;
+                }
+                //PP纸装美式展架180*80cm
+                if ("2".equals(kinde2Value)) {
+                    basePrice = 28;
+                }
+                //PP纸装美式展架160*60cm
+                if ("3".equals(kinde2Value)) {
+                    basePrice = 21;
+                }
+                //直喷PVC装门型展架180*80cm
+                if ("4".equals(kinde2Value)) {
+                    basePrice = 40.5;
+                }
+
+                //PP纸装门型展架180*80cm
+                if ("6".equals(kinde2Value)) {
+                    basePrice = 40.5;
+                }
+                //PP纸装门型展架160*60cm
+                if ("7".equals(kinde2Value)) {
+                    basePrice = 37;
+                }
+                //X展架180*80cm(不含画面)
+                if ("8".equals(kinde2Value)) {
+                    basePrice = 12;
+                }
+                //X展架160*60cm(不含画面)
+                if ("9".equals(kinde2Value)) {
+                    basePrice = 10;
+                }
+                //门型展架180*80cm(不含画面)
+                if ("10".equals(kinde2Value)) {
+                    basePrice = 30;
+                }
+                //门型展架160*60cm(不含画面)
+                if ("11".equals(kinde2Value)) {
+                    basePrice = 27;
+                }
+                //直喷pvc铝合金易拉宝202*78cm
+                if ("12".equals(kinde2Value)) {
+                    basePrice = 40;
+                }
+                //直喷pvc塑钢易拉宝200*80cm
+                if ("13".equals(kinde2Value)) {
+                    basePrice = 47;
+                }
+            }
+            if (basePrice == 0) {
+                return new PricingListVo(100, "暂无报价。");
+            }
+
+            if (!"4".equals(kindValue)) {
+                price = new BigDecimal(basePrice * count * number * width * length / 10000).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            } else {
+                price = new BigDecimal(basePrice * count * number).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            }
+        }
+        if ("领鸿".equals(plantName)) {
+            //旗帜布
+            if ("6".equals(dto.getKindValue())) {
+                basePrice = 6.5;
+            }
+            //贡缎布
+            if ("7".equals(dto.getKindValue())) {
+                basePrice = 15;
+            }
+            if (basePrice == 0) {
+                return new PricingListVo(100, "暂无报价。");
+            }
+            double area = Math.max(count * number * width * length / 10000, 0.3);
+            price = new BigDecimal(basePrice * area).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            //旗杆
+            if (dto.getYaheng() != null && dto.getYaheng() > 0) {
+                price = BigDecimal.valueOf(price).add(BigDecimal.valueOf(dto.getYaheng() * 15.0)).setScale(2, RoundingMode.HALF_UP).doubleValue();
+            }
+        }
+        ProductVo pro = new ProductVo();
+        pro.setCount(count);
+        pro.setPrice(price);
+        pro.setNumber(number);
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+}

+ 9 - 1
src/main/java/lingtao/net/Factory/PricingStrategy.java

@@ -1,2 +1,10 @@
-package lingtao.net.Factory;public interface PricingStrategy {
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+
+import java.util.List;
+
+public interface PricingStrategy {
+    PricingListVo calculatePrice(Product dto, String role);
 }

+ 30 - 1
src/main/java/lingtao/net/Factory/PricingStrategyFactory.java

@@ -1,2 +1,31 @@
-package lingtao.net.Factory;public class PricingStrategyFactory {
+package lingtao.net.Factory;
+
+public class PricingStrategyFactory {
+    public static PricingStrategy getStrategy(String proType) {
+        switch (proType) {
+            case "0":
+                return new StickerPricingStrategy();
+            // 其他产品类型对应的策略
+            case "金属标":
+                return new MetalTargetStrategy();
+            // 其他产品类型对应的策略
+            case "卡片少数量":
+                return new CardPricingStrategy();
+            case "17":
+                return new PosterPricingStrategy();
+            case "帆布":
+                return new CanvasPricingStrategy();
+            case "班旗":
+                return new ClassFlagPricingStrategy();
+            case "挂布":
+                return new DossalPricingStrategy();
+            case "手拉旗":
+                return new HandFlagPricingStrategy();
+            // 其他产品类型对应的策略
+            default:
+                return null;
+        }
+    }
+
+
 }

+ 246 - 0
src/main/java/lingtao/net/Factory/StickerPricingStrategy.java

@@ -0,0 +1,246 @@
+package lingtao.net.Factory;
+
+import lingtao.net.bean.Product;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 提供不干胶产品的定价策略。
+ * 该类主要用于处理贴纸产品价格的计算,根据不同的用户角色提供相应的价格策略。
+ */
+public class StickerPricingStrategy implements PricingStrategy {
+
+    /**
+     * 根据用户角色计算产品价格。
+     * 此方法旨在根据不同用户的角色对产品进行定价,但当前实现尚未完成。
+     *
+     * @param dto  产品信息的传输对象,包含需要计算价格的产品数据。
+     * @param role 用户角色,用于确定适用的定价策略。
+     * @return 返回经过计算价格更新后的产品列表,当前实现返回null。
+     */
+    @Override
+    public PricingListVo calculatePrice(Product dto, String role) {
+        String plantName = dto.getPlantName();
+        double width = dto.getWidth();
+        double length = dto.getLength();
+        int count = dto.getCount();
+        int number = dto.getNumber();
+        // 定义纸张尺寸(单位:毫米)
+        double paperLength = 280; // 纸张长度
+        double paperWidth = 420;  // 纸张宽度
+        String basePrice = "0"; // 基础价格
+        BigDecimal price = new BigDecimal(0); // 最终价格
+        length = convertToMillimetersWithMargin(length);
+        width = convertToMillimetersWithMargin(width);
+        int requiredSheets = 0;
+        List<ProductVo> resultList = new ArrayList<>();
+
+        if ("艾印".equals(plantName) || "即客".equals(plantName)) {
+            Map<String, String> kindValuePrice = new HashMap<String, String>() {{
+                put("0", "2.3"); //铜版纸不干胶
+                put("1", "2.9"); //pvc不干胶
+                put("2", "2.9"); //透明不干胶
+                put("3", "2.3"); //牛皮纸
+                put("5", "3.2"); //哑金不干胶
+                put("6", "3.2"); //哑银不干胶
+                put("7", "2.7"); //书写纸不干胶
+                put("亮金", "3.2"); //
+                put("亮银", "3.2"); //
+                put("珠光冰白纸", "3.2"); //
+                put("美纹纸", "2.8"); //
+                put("拉丝金", "3.3"); //
+                put("拉丝银", "3.3"); //
+                put("易碎纸不干胶", "3.7"); //
+                put("PP合成纸", "2.9"); //
+                put("刚古水纹超白", "2.8"); //
+            }};
+            if ("即客".equals(plantName)) {
+                kindValuePrice.put("树纹纸", "3.3");
+                kindValuePrice.put("银平光", "3.6");
+                kindValuePrice.put("白散金", "2.8");
+                kindValuePrice.put("红洒金", "2.8");
+                kindValuePrice.put("布纹纸超白", "5");
+                kindValuePrice.put("草香纸", "3");
+            }
+            if (!kindValuePrice.containsKey(dto.getKindValue())) {
+                return new PricingListVo(100, "暂不支持该产品");
+
+            }
+            basePrice = kindValuePrice.get(dto.getKindValue());
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "超出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+
+            price = new BigDecimal(basePrice).multiply(new BigDecimal(requiredSheets)).setScale(2, RoundingMode.HALF_UP);
+
+
+        }
+        if ("欣海信".equals(dto.getPlantName())) {
+            paperLength = 390; // 纸张长度
+            paperWidth = 272;  // 纸张宽度
+
+            // 检查是否超出纸张尺寸限制
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "超出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            BigDecimal paperCount = new BigDecimal(requiredSheets);
+            BigDecimal yinbai = new BigDecimal("0");
+            //铜版纸
+            if ("0".equals(dto.getKindValue())) {
+                basePrice = "2.5";
+
+            } else {
+                basePrice = "4";
+            }
+            if ("印白墨".equals(dto.getYinbai())) {
+                yinbai = "0".equals(dto.getKindValue()) ? new BigDecimal("20") : new BigDecimal("22");
+            }
+            price = new BigDecimal(basePrice).multiply(paperCount).setScale(2, RoundingMode.HALF_UP);
+            price = price.add(yinbai.multiply(paperCount)).setScale(2, RoundingMode.HALF_UP);
+            if (dto.getN_mq_num() > 0) {
+                price = price.add(paperCount).setScale(2, RoundingMode.HALF_UP);
+            }
+
+        }
+        if ("彩印通".equals(dto.getPlantName())) {
+            Map<String, String> kindValuePrice = new HashMap<String, String>() {{
+                put("0", "2"); //铜版纸不干胶
+                put("1", "3.2"); //pvc不干胶
+                put("2", "3.2"); //透明不干胶
+                put("3", "2.5"); //牛皮纸
+                put("5", "3.5"); //哑金不干胶
+                put("6", "3.5"); //哑银不干胶
+                put("7", "3"); //书写纸不干胶
+                put("亮金", "3.5"); //
+                put("亮银", "4"); //
+                put("珠光冰白纸", "3.5"); //
+                put("美纹纸", "2.5"); //
+                put("红洒金", "3.5"); //
+                put("布纹纸超白", "3.5"); //
+                put("刚古水纹超白", "3.5"); //
+                put("银平光", "4"); //
+                put("拉丝金", "3.5"); //
+                put("拉丝银", "3.5"); //
+                put("易碎纸不干胶", "4"); //
+                put("PP合成纸", "3.2"); //
+                put("草香纸", "3.5"); //
+                put("树纹纸", "3.5"); //
+                put("白散金", "3.5"); //
+                put("飘金超白不干胶", "3.5"); //
+                put("美纹纸散金", "3.5"); //
+            }};
+            if ("0".equals(dto.getKindValue())) {
+                paperLength = 450; // 纸张长度
+                paperWidth = 320;  // 纸张宽度
+            } else {
+                paperLength = 420; // 纸张长度
+                paperWidth = 297;  // 纸张宽度
+            }
+            if (!kindValuePrice.containsKey(dto.getKindValue())) {
+                return new PricingListVo(100, "暂无报价"); // 返回空列表表示不适用
+            }
+            if (!isWithinPaperSize(length, width, paperLength, paperWidth)) {
+                return new PricingListVo(100, "出纸张尺寸限制"); // 返回空列表表示不适用
+            }
+            basePrice = kindValuePrice.get(dto.getKindValue());
+            // 计算一张纸能容纳的最大金属标数量
+            double maxItemsPerSheet = calculateMaxItemsPerSheet(length, width, paperLength, paperWidth);
+
+            // 计算所需纸张数量
+            requiredSheets = calculateRequiredSheets(count, number, maxItemsPerSheet);
+            BigDecimal yinbai = new BigDecimal("0");
+            if ("印白墨".equals(dto.getYinbai())) {
+                yinbai = "2".equals(dto.getKindValue()) ? new BigDecimal("6.2") : new BigDecimal("3");
+            }
+            BigDecimal paperCount = new BigDecimal(requiredSheets);
+            price = new BigDecimal(basePrice).multiply(paperCount).setScale(2, RoundingMode.HALF_UP);
+            price = price.add(yinbai.multiply(paperCount)).setScale(2, RoundingMode.HALF_UP);
+        }
+        ProductVo pro = new ProductVo();
+        pro.setPrice(price.doubleValue());
+        pro.setCount(count);
+
+//        if ("1".equals(dto.getKindValue())) {
+//            pro.setWeight(BigDecimal.valueOf(number * length / 100 * width / 100 * requiredSheets * 0.3).setScale(2, RoundingMode.HALF_UP).toString());
+//        } else {
+//            pro.setWeight(BigDecimal.valueOf(number * length / 100 * width / 100 * requiredSheets * 0.24).setScale(2, RoundingMode.HALF_UP).toString());
+//        }
+
+        pro.setWeight(BigDecimal.valueOf(number * length / 1000 * width / 1000 * count * 0.21 * 1.16).setScale(2, RoundingMode.HALF_UP).toString());
+        // 创建产品对象并添加到结果列表
+        resultList.add(pro);
+        return new PricingListVo(resultList);
+    }
+
+    /**
+     * 将给定的尺寸转换为毫米,并在每边增加3毫米的边距
+     *
+     * @param size 需要转换的原始尺寸
+     * @return 转换后的尺寸,单位为毫米,包括边距
+     */
+    private double convertToMillimetersWithMargin(double size) {
+        return size * 10 + 2 * 2; // 换成毫米,每边+2
+    }
+
+    /**
+     * 检查给定的长度和宽度是否在纸张尺寸范围内
+     *
+     * @param length      需要检查的长度
+     * @param width       需要检查的宽度
+     * @param paperLength 纸张的长度
+     * @param paperWidth  纸张的宽度
+     * @return 如果给定尺寸在纸张尺寸范围内,则返回true;否则返回false
+     */
+    private boolean isWithinPaperSize(double length, double width, double paperLength, double paperWidth) {
+        return (length <= paperLength && width <= paperWidth) || (length <= paperWidth && width <= paperLength);
+    }
+
+    /**
+     * 计算每张纸最多可以容纳的物品数量
+     *
+     * @param length      物品的长度
+     * @param width       物品的宽度
+     * @param paperLength 纸张的长度
+     * @param paperWidth  纸张的宽度
+     * @return 每张纸最多可以容纳的物品数量
+     */
+    private double calculateMaxItemsPerSheet(double length, double width, double paperLength, double paperWidth) {
+        return Math.max(
+                Math.floor(paperLength / length) * Math.floor(paperWidth / width),
+                Math.floor(paperLength / width) * Math.floor(paperWidth / length)
+        );
+    }
+
+    /**
+     * 计算完成指定数量的物品所需的纸张数量
+     *
+     * @param count            物品的总数量
+     * @param number           每个物品需要的数量
+     * @param maxItemsPerSheet 每张纸最多可以容纳的物品数量
+     * @return 完成指定数量的物品所需的纸张数量
+     */
+    private int calculateRequiredSheets(int count, int number, double maxItemsPerSheet) {
+        return (int) Math.ceil((count * number) / maxItemsPerSheet);
+    }
+}

+ 6 - 0
src/main/java/lingtao/net/bean/Product.java

@@ -54,6 +54,8 @@ public class Product {
 
     private String kind2Value;
     private String kindValue2;
+    private String kindValue6;
+    private String kindValue5;
 
     private String kind2Label;
 
@@ -170,4 +172,8 @@ public class Product {
     private String shen_color;
     private String[] jtcolor;//击凸颜色
     private String tcolor;//烫金颜色
+
+    private String plantName;
+    private String ui_menu_size;
+    private String address;
 }

+ 197 - 128
src/main/java/lingtao/net/controller/ProductController.java

@@ -2,12 +2,17 @@ package lingtao.net.controller;
 
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import lingtao.net.Factory.PricingStrategy;
+import lingtao.net.Factory.PricingStrategyFactory;
 import lingtao.net.bean.Msg;
 import lingtao.net.bean.Product;
 import lingtao.net.bean.SysDictSearchPro;
 import lingtao.net.bean.SysUser;
+import lingtao.net.service.PriceService;
 import lingtao.net.service.ProductService;
 import lingtao.net.service.QuoteLogService;
+import lingtao.net.vo.PricingListVo;
+import lingtao.net.vo.ProductVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -18,9 +23,12 @@ import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 @RestController
 public class ProductController {
@@ -31,6 +39,9 @@ public class ProductController {
     @Autowired
     private QuoteLogService quoteLogService;
 
+    @Autowired
+    private PriceService priceService;
+
     // 价格跳转页面
     @RequestMapping("/product/index")
     public void index(HttpServletRequest request, HttpServletResponse response) throws Exception {
@@ -52,8 +63,6 @@ public class ProductController {
 
     /**
      * 修改价格
-     *
-     * @param customerData
      */
     @RequestMapping("/updatePriceById")
     public Msg updatePriceById(@RequestParam(value = "proId") int proId, @RequestParam(value = "field") String field,
@@ -70,10 +79,10 @@ public class ProductController {
     @RequestMapping("/getThanSum")
     public Msg thanPrice(Product product, HttpServletRequest request) {
         SysUser user = (SysUser) request.getSession().getAttribute("USER_SESSION");
-		/*if (StringUtils.isEmpty(product.getWangwang().trim()) && user.getRole().contains("999")
-				&& !user.getRole().contains("1049")) {
-			return Msg.fail("请填写客户旺旺!");
-		}*/
+    /*if (StringUtils.isEmpty(product.getWangwang().trim()) && user.getRole().contains("999")
+        && !user.getRole().contains("1049")) {
+      return Msg.fail("请填写客户旺旺!");
+    }*/
         if ("帆布".equals(product.getProTypeValue())) {
             if ("套餐".equals(product.getStickerKind())) {
                 product.setCount(1);
@@ -113,9 +122,9 @@ public class ProductController {
         } else {
             if (product.getNumber() != null && product.getNumber() > 1) {
 //                if ("专版打印".equals(product.getStickerKind()) || "少数量".equals(product.getCouponKind())) {
-                    if (request.getParameter("desType") != null && !"".equals(request.getParameter("desType"))) {
-                        product.setP(Integer.valueOf(request.getParameter("desType")));
-                    }
+                if (request.getParameter("desType") != null && !"".equals(request.getParameter("desType"))) {
+                    product.setP(Integer.valueOf(request.getParameter("desType")));
+                }
 //                }
             }
         }
@@ -127,19 +136,19 @@ public class ProductController {
         //银瑾单独报价
         if (user.getRole().indexOf("1010") > -1) {
             double otherPrice = 0;
-			/*if("5".equals(product.getKind())) {
-				for (Product list : proList) {
-					list.setPrice(list.getPrice() + 30);
-				}
-			}else if("帆布".equals(product.getProTypeValue())) {
-				for (Product list : proList) {
-					otherPrice = Math.floor(list.getPrice() + 5);
-					list.setPrice(otherPrice > 40 ? otherPrice : 40);
-					if(product.getNumber() > 1) {
-						list.setPrice(Math.floor(list.getPrice() + 2 * (product.getNumber()-1)));
-					}
-				}
-			}else */
+      /*if("5".equals(product.getKind())) {
+        for (Product list : proList) {
+          list.setPrice(list.getPrice() + 30);
+        }
+      }else if("帆布".equals(product.getProTypeValue())) {
+        for (Product list : proList) {
+          otherPrice = Math.floor(list.getPrice() + 5);
+          list.setPrice(otherPrice > 40 ? otherPrice : 40);
+          if(product.getNumber() > 1) {
+            list.setPrice(Math.floor(list.getPrice() + 2 * (product.getNumber()-1)));
+          }
+        }
+      }else */
             if ("22".equals(product.getProTypeValue())) {
                 for (Product list : proList) {
                     list.setPrice(list.getPrice() + 50);
@@ -208,8 +217,8 @@ public class ProductController {
                 if (StringUtils.isEmpty(product.getAotu())) {
                     return Msg.fail("哑金不干胶该尺寸无法制作,最大做到 39*27 cm");
                 } /*else {
-					return Msg.fail("哑金不干胶带凹凸工艺该尺寸无法制作         (1*1CM至11*11CM;10*6至12*8CM;20*4以内)");
-				}*/
+          return Msg.fail("哑金不干胶带凹凸工艺该尺寸无法制作         (1*1CM至11*11CM;10*6至12*8CM;20*4以内)");
+        }*/
             } else if ("易碎纸不干胶".equals(product.getKindValue()) && proList == null) {
                 return Msg.fail("易碎纸不干胶该尺寸无法制作,最大做到 42*38 cm");
             } else if (("拉丝金".equals(product.getKindValue()) || "拉丝银".equals(product.getKindValue()))
@@ -248,115 +257,175 @@ public class ProductController {
         }
 
         if (product.getKindValue() != null) {//判断是否大店报不干胶价格
-			/*if(product.getKindValue().equals("0")) {
-				double width = 0, length = 0;
-				if(product.getWidth() != null) {
-					width = product.getWidth(); 
-				}
-				if(product.getLength() != null) {
-					length = product.getLength();
-				}
-				String role = user.getRole();
-				if(length < width) {
-					length = product.getWidth();
-					width = product.getLength();
-				}
-				if(width == 0 && length == 0) {
-				}else if((length <= 5 && width <= 4)) {
-					String tang = product.getCraftTang();
-					if(AStickersPrice.f_getRole(role) == 1 && tang == null) {
-						List<Product> price = new ArrayList<Product>();
-						if(length == 1 && width == 1) {
-							int priceArr[] = {30, 35, 50, 55, 65, 90, 135, 185, 235, 285};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 2 && width == 1) {
-							int priceArr[] = {35, 40, 55, 60, 70, 95, 140, 190, 240, 290};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 3 && width == 1) {
-							int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 4 && width == 1) {
-							int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 5 && width == 1) {
-							int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 2 && width == 2) {
-							int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 3 && width == 2) {
-							int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 4 && width == 2) {
-							int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 5 && width == 2) {
-							int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 3 && width == 3) {
-							int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 4 && width == 3) {
-							int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 5 && width == 3) {
-							int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 4 && width == 4) {
-							int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}else if(length == 5 && width == 4) {
-							int priceArr[] = {35, 40, 55, 70, 150, 240, 420, 600, 790, 980};
-							price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
-						}
-						
-						if (proList.size() >= 4) {
-							proList = proList.subList(0, 4);
-						}
-						
-						for(int i = 0; i < price.size(); i ++){
-							if(product.getNumber() > 1) {
-								proList.get(i).setPrice(price.get(i).getPrice() * product.getNumber());
-							}else {
-								proList.get(i).setPrice(price.get(i).getPrice());
-							}
-						}
-					}
-				}
-			}elseif(user.getRole().indexOf("1033") > 0 && product.getProTypeValue().equals("17")) {
-				if(product.getKindValue().equals("6")) {
-					for (Product products : proList) {
-						products.setPrice(Math.floor(products.getPrice() * 0.88));
-					}
-				}
-			} */
+      /*if(product.getKindValue().equals("0")) {
+        double width = 0, length = 0;
+        if(product.getWidth() != null) {
+          width = product.getWidth();
+        }
+        if(product.getLength() != null) {
+          length = product.getLength();
+        }
+        String role = user.getRole();
+        if(length < width) {
+          length = product.getWidth();
+          width = product.getLength();
+        }
+        if(width == 0 && length == 0) {
+        }else if((length <= 5 && width <= 4)) {
+          String tang = product.getCraftTang();
+          if(AStickersPrice.f_getRole(role) == 1 && tang == null) {
+            List<Product> price = new ArrayList<Product>();
+            if(length == 1 && width == 1) {
+              int priceArr[] = {30, 35, 50, 55, 65, 90, 135, 185, 235, 285};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 2 && width == 1) {
+              int priceArr[] = {35, 40, 55, 60, 70, 95, 140, 190, 240, 290};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 3 && width == 1) {
+              int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 4 && width == 1) {
+              int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 5 && width == 1) {
+              int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 2 && width == 2) {
+              int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 3 && width == 2) {
+              int priceArr[] = {35, 40, 55, 70, 80, 125, 205, 290, 370, 455};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 4 && width == 2) {
+              int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 5 && width == 2) {
+              int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 3 && width == 3) {
+              int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 4 && width == 3) {
+              int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 5 && width == 3) {
+              int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 4 && width == 4) {
+              int priceArr[] = {35, 40, 55, 70, 110, 170, 290, 410, 535, 665};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }else if(length == 5 && width == 4) {
+              int priceArr[] = {35, 40, 55, 70, 150, 240, 420, 600, 790, 980};
+              price = f_getPrice( priceArr, product.getCount(), product.getCraftMo());
+            }
+
+            if (proList.size() >= 4) {
+              proList = proList.subList(0, 4);
+            }
+
+            for(int i = 0; i < price.size(); i ++){
+              if(product.getNumber() > 1) {
+                proList.get(i).setPrice(price.get(i).getPrice() * product.getNumber());
+              }else {
+                proList.get(i).setPrice(price.get(i).getPrice());
+              }
+            }
+          }
+        }
+      }elseif(user.getRole().indexOf("1033") > 0 && product.getProTypeValue().equals("17")) {
+        if(product.getKindValue().equals("6")) {
+          for (Product products : proList) {
+            products.setPrice(Math.floor(products.getPrice() * 0.88));
+          }
+        }
+      } */
         }
 
 
         return Msg.success().add("proList", proList);
     }
-	
-	/*public List<Product> f_getPrice( int priceArr[], int count, String craftMo) {
-		List<Product> list = new ArrayList<Product>();
-		Product p = new Product();
-		int countArr[] = { 500, 1000, 2000, 3000, 5000, 10000, 20000, 30000, 40000, 50000 };
-		for(int i = 0; i < countArr.length; i++) {
-			if(countArr[i] < count || list.size() > 3) {
-				continue;
-			}
-			p = new Product();
-			p.setCount(countArr[i]);
-			if(craftMo.equals("覆哑膜")) {
-				p.setPrice(Math.ceil(Double.valueOf(priceArr[i]) * 1.2));
-			}else {
-				p.setPrice(Double.valueOf(priceArr[i]));
-			}
-			
-			list.add(p);
-		}
-		
-		return list;
-	}*/
+
+    @RequestMapping("/getProductPrice")
+    public Msg getProductPrice(Product product, HttpServletRequest request) {
+        SysUser user = (SysUser) request.getSession().getAttribute("USER_SESSION");
+
+
+        if (StringUtils.isEmpty(product.getCount()) || product.getCount() <= 0) {
+            return Msg.fail("数量必须大于0");
+        }
+        String size = product.getSize();
+
+        if (("17".equals(product.getProTypeValue()) && "6".equals(product.getKindValue())) || "手拉旗".equals(product.getProTypeValue())) {
+            if (!StringUtils.isEmpty(size)) {
+                String sizeList[] = size.split(",");
+                size = sizeList[0];
+            }
+            product.setLength(Double.valueOf(size));
+        } else if (!StringUtils.isEmpty(size)) {
+            product.setLength(Double.valueOf(size.substring(0, size.indexOf("*"))));
+            String other_size = size;
+            if (size.contains(",")) {
+                size = size.split(",")[0];
+            }
+            if (size.indexOf(("*"), size.indexOf("*") + 1) == -1) {
+                product.setWidth(Double.valueOf(size.substring(size.indexOf("*") + 1)));
+            } else {
+                product.setWidth(Double.valueOf(size.substring(size.indexOf("*") + 1, size.indexOf(("*"), size.indexOf("*") + 1))));
+                product.setLength(Math.abs(Double.parseDouble(size.substring(size.indexOf(("*"), size.indexOf("*") + 1) + 1))));
+            }
+        }
+        product.setRole(user.getRole());
+        PricingStrategy pricingStrategy = PricingStrategyFactory.getStrategy(product.getProTypeValue());
+        PricingListVo listvo = pricingStrategy.calculatePrice(product, user.getRole());
+        if (listvo.getCode() != 0) {
+            return Msg.fail(listvo.getMsg());
+        }
+        List<ProductVo> proList = listvo.getProList();
+        if (proList == null || proList.size() == 0 || proList.get(0).getPrice() == 0) {
+            return Msg.fail("暂无报价");
+        }
+        PricingListVo result = priceService.getAddressPrice(product, proList);
+
+        if (result.getCode() != 0) {
+            return Msg.fail(result.getMsg());
+        }
+        proList = result.getProList();
+
+        String log = quoteLogService.log(product, request, new ArrayList<>());
+
+        if ("登陆失效".equals(log)) {
+            return Msg.fail("登录信息失效~请刷新页面!");
+        }
+
+        // 把角色存入,前台判断,区分不同价格
+        for (ProductVo p : proList) {
+            p.setRole(user.getRole());
+        }
+
+        return Msg.success().add("proList", proList);
+    }
+
+  /*public List<Product> f_getPrice( int priceArr[], int count, String craftMo) {
+    List<Product> list = new ArrayList<Product>();
+    Product p = new Product();
+    int countArr[] = { 500, 1000, 2000, 3000, 5000, 10000, 20000, 30000, 40000, 50000 };
+    for(int i = 0; i < countArr.length; i++) {
+      if(countArr[i] < count || list.size() > 3) {
+        continue;
+      }
+      p = new Product();
+      p.setCount(countArr[i]);
+      if(craftMo.equals("覆哑膜")) {
+        p.setPrice(Math.ceil(Double.valueOf(priceArr[i]) * 1.2));
+      }else {
+        p.setPrice(Double.valueOf(priceArr[i]));
+      }
+
+      list.add(p);
+    }
+
+    return list;
+  }*/
 
     /**
      * 根据产品种类获取材质

File diff suppressed because it is too large
+ 386 - 0
src/main/java/lingtao/net/service/PriceService.java


+ 219 - 216
src/main/java/lingtao/net/service/QuoteLogService.java

@@ -25,223 +25,226 @@ import lingtao.net.util.IPUtils;
 @Service
 public class QuoteLogService {
 
-	@Autowired
-	private QuoteLogMapper quoteLogMapper;
-
-	@Autowired
-	private QuoteDataMapper quoteDataMapper;
-
-	@Autowired
-	ProductImgMapper productImgMapper;
-
-	@Autowired
-	private SysRoleService sysRoleService;
-
-	// 列表
-	public List<QuoteLog> quoteLogs(QuoteLog quoteLog) {
-		quoteLog.setQuoteTimeEnd(new DateFormatUtils().formatEndTime(quoteLog.getQuoteTimeBegin()));
-		quoteLog.setQuoteTimeBegin(new DateFormatUtils().formatBeginTime(quoteLog.getQuoteTimeBegin()));
-		return quoteLogMapper.quoteLogs(quoteLog);
-	}
-
-	// 操作日志
-	public String log(Product product, HttpServletRequest request, List<Product> proList) {
-		long startTime, endTime = 0;
-		startTime = System.currentTimeMillis();
-		SysUser user = (SysUser) request.getSession().getAttribute("USER_SESSION");
-		if (user == null) {
-			return "登陆失效";
-		}
-		QuoteLog log = new QuoteLog();
-		ProductImg productImg = new ProductImg();
-
-		// product转productImg
-		BeanUtils.copyProperties(product, productImg);
-		// 根据value查询label
-		if ("13".equals(productImg.getProTypeValue()) || "15".equals(productImg.getProTypeValue())
-				|| "4".equals(productImg.getProTypeValue())) {
-			productImg.setKind2Value(null);
-		}
-		// 优惠券
-		if ("4".equals(productImg.getProTypeValue())) {
-			productImg.setKindValue("0");
-			productImg.setKind2Value(product.getKind());
-		}
-		// 合版封套
-		if ("6".equals(productImg.getProTypeValue())) {
-			if (product.getLengthSize() > 0) {
-				productImg.setKind2Value("0");
-			}
-		}
-		// 根据value获取label
-		SysDictProduct label = productImgMapper.getLabel(productImg);
-
-		if (StringUtils.isEmpty(label)) {
-			return null;
-		}
-		String s = "";
-		String remark_judge = "";
-		String proTypeLabel = "";
-		if ("常用种类".equals(product.getStickerKind())) {
-			s += "常用种类- ";
-		}
-		if ("少数量".equals(product.getStickerKind())) {
-			s += "少数量- ";
-		}
-		if ("专版打印".equals(product.getStickerKind())) {
-			s += "专版打印- ";
-		}
-		if (!StringUtils.isEmpty(label.getProTypeLabel())) {
-			if ("金属标".equals(label.getProTypeLabel()) && StringUtils.isEmpty(product.getCraftMo())) {
-				s += "UV转印贴 - ";
-				proTypeLabel = "UV转印贴";
-			} else {
-				s += label.getProTypeLabel() + " - ";
-				proTypeLabel = label.getProTypeLabel();
-			}
-		}
-		if ("少数量".equals(product.getCouponKind())) {
-			s += product.getProTypeLabel() + " - ";
-		}
-		if (!StringUtils.isEmpty(label.getKindLabel())) {
-			s += label.getKindLabel() + " - ";
-		}
-		if (!StringUtils.isEmpty(label.getKind2Label())) {
-			s += label.getKind2Label() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getKind3Value())) {
-			if ("0".equals(product.getKind3Value())) {
-				s += "骑马钉 - ";
-			}
-		}
-		String new_s = s;
-		new_s += "客户旺旺:" + product.getWangwang() + " - ";
-		// 产品 - 种类
-		remark_judge = new_s;
-		// 不区分专版打印或者常用,3分钟内都不要
-		if (remark_judge.contains("常用种类- ") || remark_judge.contains("专版打印- ")) {
-			remark_judge = remark_judge.substring(6);
-		}
-		// 画册P数
-		if (!StringUtils.isEmpty(product.getPcount())) {
-			s += product.getPcount() + "P - ";
-		}
-		if (!StringUtils.isEmpty(product.getSize())) {
-			s += product.getSize() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getCraftMo())) {
-			s += product.getCraftMo() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getCraftTang())) {
-			s += product.getCraftTang() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getAotu())) {
-			s += product.getAotu() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getYinbai())) {
-			s += product.getYinbai() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getCraftSheng())) {
-			s += product.getCraftSheng() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getCraftShua())) {
-			s += product.getCraftShua() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getCraftBu())) {
-			s += product.getCraftBu() + " - ";
-		}
-		if (!StringUtils.isEmpty(product.getCraftJiao())) {
-			s += product.getCraftJiao() + " - ";
-		}
-
-		if (!StringUtils.isEmpty(product.getCraft())) {
-			String[] craft = product.getCraft();
-			for (int i = 0; i < craft.length; i++) {
-				if (StringUtils.isEmpty(craft[i]))
-					continue;
-				s += craft[i] + " - ";
-			}
-		}
-		if (!StringUtils.isEmpty(product.getNumber())) {
-			s += product.getNumber() + "款 - ";
-		}
-
-		if ("16".equals(product.getProTypeValue())) {
-			s += product.getCount() + "本 " + proList.get(0).getPrice() + "元 ";
-		} else {
-			s += product.getCount() + "个 " + proList.get(0).getPrice() + "元 ";
-		}
-
-		log.setRemark(s);
-		log.setRealname(user.getRealname());
-		log.setUsername(user.getUsername());
-		log.setQuoteIp(IPUtils.getIpAddr(request));// 获取ip
-		log.setBrower(IPUtils.getBrowserName(request));// 获取浏览器名称
-		log.setOs(IPUtils.getOsName(request)); // 获取操作系统名称
-		log.setPrice(proList.get(0).getPrice());
-		List<SysRole> allRoleNames = sysRoleService.getAllRoleName(null);
-		String roleName = "";
-		String[] split = user.getRole().split(",");
-		for (SysRole sysRole : allRoleNames) {
-			for (int i = 0; i < split.length; i++) {
-				if (split[i].equals(String.valueOf(sysRole.getRoleId()))) {
-					roleName += sysRole.getRoleName() + "、";
-				}
-			}
-		}
-		log.setShopname(roleName);
-		quoteLogMapper.insertSelective(log);
-
-		endTime = System.currentTimeMillis();
-		System.out.println("【insertSelective】使用的时间:" + (endTime - startTime));
-
-		long startTime2, endTime2 = 0;
-		startTime2 = System.currentTimeMillis();
-		boolean flag = false;
-		// 查询3分钟内自己报的数据
-		List<String> remarkJudgeData = quoteDataMapper.getQuoteDataByMinutes(user.getUsername());
-		endTime2 = System.currentTimeMillis();
-		System.out.println("【getQuoteDataByMinutes】使用的时间:" + (endTime2 - startTime2));
-		for (String remarkJudge : remarkJudgeData) {
-			if (remarkJudge.equals(remark_judge)) {
-				// 如果3分钟内报过相同数据
-				flag = true;
-				break;
-			}
-		}
-		// 插入数据(给客服数据新增用的)
-		String role = user.getRole();
-		// 客服报的且3分钟内没有同一个客户报的数据才插入
-		if (role.contains("999,") && !flag) {
-			QuoteData quoteData = new QuoteData();
-			quoteData.setUsername(user.getUsername());
-			quoteData.setRealname(user.getRealname());
-			quoteData.setPrice(proList.get(0).getPrice());
-			quoteData.setRole(user.getRole());
-			// 默认都是没选择店铺
-			quoteData.setIsSelect("0");
+    @Autowired
+    private QuoteLogMapper quoteLogMapper;
+
+    @Autowired
+    private QuoteDataMapper quoteDataMapper;
+
+    @Autowired
+    ProductImgMapper productImgMapper;
+
+    @Autowired
+    private SysRoleService sysRoleService;
+
+    // 列表
+    public List<QuoteLog> quoteLogs(QuoteLog quoteLog) {
+        quoteLog.setQuoteTimeEnd(new DateFormatUtils().formatEndTime(quoteLog.getQuoteTimeBegin()));
+        quoteLog.setQuoteTimeBegin(new DateFormatUtils().formatBeginTime(quoteLog.getQuoteTimeBegin()));
+        return quoteLogMapper.quoteLogs(quoteLog);
+    }
+
+    // 操作日志
+    public String log(Product product, HttpServletRequest request, List<Product> proList) {
+        long startTime, endTime = 0;
+        startTime = System.currentTimeMillis();
+        SysUser user = (SysUser) request.getSession().getAttribute("USER_SESSION");
+        if (user == null) {
+            return "登陆失效";
+        }
+        QuoteLog log = new QuoteLog();
+        ProductImg productImg = new ProductImg();
+
+        // product转productImg
+        BeanUtils.copyProperties(product, productImg);
+        // 根据value查询label
+        if ("13".equals(productImg.getProTypeValue()) || "15".equals(productImg.getProTypeValue())
+                || "4".equals(productImg.getProTypeValue())) {
+            productImg.setKind2Value(null);
+        }
+        // 优惠券
+        if ("4".equals(productImg.getProTypeValue())) {
+            productImg.setKindValue("0");
+            productImg.setKind2Value(product.getKind());
+        }
+        // 合版封套
+        if ("6".equals(productImg.getProTypeValue())) {
+            if (product.getLengthSize() > 0) {
+                productImg.setKind2Value("0");
+            }
+        }
+        // 根据value获取label
+        SysDictProduct label = productImgMapper.getLabel(productImg);
+
+        if (StringUtils.isEmpty(label)) {
+            return null;
+        }
+        if (proList.size() == 0) {
+            return null;
+        }
+        String s = "";
+        String remark_judge = "";
+        String proTypeLabel = "";
+        if ("常用种类".equals(product.getStickerKind())) {
+            s += "常用种类- ";
+        }
+        if ("少数量".equals(product.getStickerKind())) {
+            s += "少数量- ";
+        }
+        if ("专版打印".equals(product.getStickerKind())) {
+            s += "专版打印- ";
+        }
+        if (!StringUtils.isEmpty(label.getProTypeLabel())) {
+            if ("金属标".equals(label.getProTypeLabel()) && StringUtils.isEmpty(product.getCraftMo())) {
+                s += "UV转印贴 - ";
+                proTypeLabel = "UV转印贴";
+            } else {
+                s += label.getProTypeLabel() + " - ";
+                proTypeLabel = label.getProTypeLabel();
+            }
+        }
+        if ("少数量".equals(product.getCouponKind())) {
+            s += product.getProTypeLabel() + " - ";
+        }
+        if (!StringUtils.isEmpty(label.getKindLabel())) {
+            s += label.getKindLabel() + " - ";
+        }
+        if (!StringUtils.isEmpty(label.getKind2Label())) {
+            s += label.getKind2Label() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getKind3Value())) {
+            if ("0".equals(product.getKind3Value())) {
+                s += "骑马钉 - ";
+            }
+        }
+        String new_s = s;
+        new_s += "客户旺旺:" + product.getWangwang() + " - ";
+        // 产品 - 种类
+        remark_judge = new_s;
+        // 不区分专版打印或者常用,3分钟内都不要
+        if (remark_judge.contains("常用种类- ") || remark_judge.contains("专版打印- ")) {
+            remark_judge = remark_judge.substring(6);
+        }
+        // 画册P数
+        if (!StringUtils.isEmpty(product.getPcount())) {
+            s += product.getPcount() + "P - ";
+        }
+        if (!StringUtils.isEmpty(product.getSize())) {
+            s += product.getSize() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getCraftMo())) {
+            s += product.getCraftMo() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getCraftTang())) {
+            s += product.getCraftTang() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getAotu())) {
+            s += product.getAotu() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getYinbai())) {
+            s += product.getYinbai() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getCraftSheng())) {
+            s += product.getCraftSheng() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getCraftShua())) {
+            s += product.getCraftShua() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getCraftBu())) {
+            s += product.getCraftBu() + " - ";
+        }
+        if (!StringUtils.isEmpty(product.getCraftJiao())) {
+            s += product.getCraftJiao() + " - ";
+        }
+
+        if (!StringUtils.isEmpty(product.getCraft())) {
+            String[] craft = product.getCraft();
+            for (int i = 0; i < craft.length; i++) {
+                if (StringUtils.isEmpty(craft[i]))
+                    continue;
+                s += craft[i] + " - ";
+            }
+        }
+        if (!StringUtils.isEmpty(product.getNumber())) {
+            s += product.getNumber() + "款 - ";
+        }
+
+        if ("16".equals(product.getProTypeValue())) {
+            s += product.getCount() + "本 " + proList.get(0).getPrice() + "元 ";
+        } else {
+            s += product.getCount() + "个 " + proList.get(0).getPrice() + "元 ";
+        }
+
+        log.setRemark(s);
+        log.setRealname(user.getRealname());
+        log.setUsername(user.getUsername());
+        log.setQuoteIp(IPUtils.getIpAddr(request));// 获取ip
+        log.setBrower(IPUtils.getBrowserName(request));// 获取浏览器名称
+        log.setOs(IPUtils.getOsName(request)); // 获取操作系统名称
+        log.setPrice(proList.get(0).getPrice());
+        List<SysRole> allRoleNames = sysRoleService.getAllRoleName(null);
+        String roleName = "";
+        String[] split = user.getRole().split(",");
+        for (SysRole sysRole : allRoleNames) {
+            for (int i = 0; i < split.length; i++) {
+                if (split[i].equals(String.valueOf(sysRole.getRoleId()))) {
+                    roleName += sysRole.getRoleName() + "、";
+                }
+            }
+        }
+        log.setShopname(roleName);
+        quoteLogMapper.insertSelective(log);
+
+        endTime = System.currentTimeMillis();
+        System.out.println("【insertSelective】使用的时间:" + (endTime - startTime));
+
+        long startTime2, endTime2 = 0;
+        startTime2 = System.currentTimeMillis();
+        boolean flag = false;
+        // 查询3分钟内自己报的数据
+        List<String> remarkJudgeData = quoteDataMapper.getQuoteDataByMinutes(user.getUsername());
+        endTime2 = System.currentTimeMillis();
+        System.out.println("【getQuoteDataByMinutes】使用的时间:" + (endTime2 - startTime2));
+        for (String remarkJudge : remarkJudgeData) {
+            if (remarkJudge.equals(remark_judge)) {
+                // 如果3分钟内报过相同数据
+                flag = true;
+                break;
+            }
+        }
+        // 插入数据(给客服数据新增用的)
+        String role = user.getRole();
+        // 客服报的且3分钟内没有同一个客户报的数据才插入
+        if (role.contains("999,") && !flag) {
+            QuoteData quoteData = new QuoteData();
+            quoteData.setUsername(user.getUsername());
+            quoteData.setRealname(user.getRealname());
+            quoteData.setPrice(proList.get(0).getPrice());
+            quoteData.setRole(user.getRole());
+            // 默认都是没选择店铺
+            quoteData.setIsSelect("0");
 //			role = role.replace("999,", "").replace(",1049", "").replace(",1011", "");
-			// 规则:第一位客服,第二位主店铺
-			String shopname = role.substring(role.indexOf(",") + 1);
-			if (shopname.indexOf(",") != -1) {
-				shopname = shopname.substring(0, shopname.indexOf(","));
-			}
-			System.out.println(shopname);
-			quoteData.setShopname(shopname);
-			quoteData.setIsSelect("1");
-			// 除去【客服】只有一个店铺,所属店铺就是剩下这个店铺 切 选择状态改为已选择
+            // 规则:第一位客服,第二位主店铺
+            String shopname = role.substring(role.indexOf(",") + 1);
+            if (shopname.indexOf(",") != -1) {
+                shopname = shopname.substring(0, shopname.indexOf(","));
+            }
+            System.out.println(shopname);
+            quoteData.setShopname(shopname);
+            quoteData.setIsSelect("1");
+            // 除去【客服】只有一个店铺,所属店铺就是剩下这个店铺 切 选择状态改为已选择
 //			if (!role.contains(",")) {
 //			}
-			quoteData.setIsBuy("0");
-			quoteData.setIsBuyToDay("0");
-			quoteData.setRemark(s);
-			quoteData.setRemarkJudge(remark_judge);
-			// 默认都是填写旺旺号
-			quoteData.setIsFillIn("1");
-			quoteData.setWangwang(product.getWangwang().trim());
-			quoteData.setProTypeLabel(proTypeLabel);
-			quoteDataMapper.addQuoteData(quoteData);
-		}
-		return null;
-	}
+            quoteData.setIsBuy("0");
+            quoteData.setIsBuyToDay("0");
+            quoteData.setRemark(s);
+            quoteData.setRemarkJudge(remark_judge);
+            // 默认都是填写旺旺号
+            quoteData.setIsFillIn("1");
+            quoteData.setWangwang(product.getWangwang().trim());
+            quoteData.setProTypeLabel(proTypeLabel);
+            quoteDataMapper.addQuoteData(quoteData);
+        }
+        return null;
+    }
 }

+ 27 - 0
src/main/java/lingtao/net/vo/PricingListVo.java

@@ -0,0 +1,27 @@
+package lingtao.net.vo;
+
+import lingtao.net.bean.Product;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class PricingListVo {
+    int code = 0;
+
+    List<ProductVo> proList = null;
+
+    String msg = "";
+
+    public PricingListVo() {
+    }
+
+    public PricingListVo(int code, String msg) {
+        this.code = code;
+        this.msg = msg;
+    }
+
+    public PricingListVo(List<ProductVo> proList) {
+        this.proList = proList;
+    }
+}

+ 24 - 0
src/main/java/lingtao/net/vo/ProductVo.java

@@ -0,0 +1,24 @@
+package lingtao.net.vo;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Data
+public class ProductVo {
+    // 价格
+    private Double price;
+    // 重量
+    private String weight;
+    // 款数
+    private Integer number;
+    // 数量
+    private Integer count;
+
+    private String role;
+
+    private List<ProvidePrice> providePrices = new ArrayList<>();
+
+
+}

+ 27 - 0
src/main/java/lingtao/net/vo/ProvidePrice.java

@@ -0,0 +1,27 @@
+package lingtao.net.vo;
+
+public class ProvidePrice {
+    private String name;
+    private double price;
+
+    public ProvidePrice(String name, double price) {
+        this.name = name;
+        this.price = price;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public double getPrice() {
+        return price;
+    }
+
+    public void setPrice(double price) {
+        this.price = price;
+    }
+}

+ 292 - 0
src/main/webapp/views/priceView/angingCloth.jsp

@@ -0,0 +1,292 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<!-- 挂布 -->
+<style>
+
+</style>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h2">挂布</h1> <span style="color:red;font-weight:700;"></span>
+        <hr>
+        <form class="layui-form">
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="领鸿">领鸿</option>
+                    </select>
+                </div>
+            </div>
+            <p>
+                材质
+            </p>
+            <div class="layui-form-item">
+                <select name="kindValue" id="kindValue" lay-filter="kindValue" class="select">
+                    <option value="半透纱幔">半透纱幔</option>
+                </select>
+            </div>
+            <input type="hidden" name="proTypeValue" class="layui-input" value="挂布">
+            <input type="hidden" id="proTypeValue" value="挂布">
+            <p>
+                尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽  </span>
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="格式:长*宽" name="size" id="size" class="layui-input"
+                       autocomplete="off">
+            </div>
+            <p>
+                数量(个)
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="count" id="count" class="layui-input"
+                       lay-verify="number">
+            </div>
+            <p>
+                款数
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                       class="layui-input" lay-verify="number">
+            </div>
+            <p>
+                配件:<span
+                    style="font-size:14px;color:red"></span>
+            </p>
+            <div class="layui-input-block">
+                <input type="checkbox" name="craftys" lay-filter="switch" value="木棍(长度50厘米)" title="木棍(长度50厘米)">
+            </div>
+            <p>
+                工艺
+            </p>
+            <div class="layui-input-block">
+                <input type="checkbox" name="craft" lay-filter="switch" value="净裁" title="净裁">
+                <input type="checkbox" name="craft" lay-filter="switch" value="打孔" title="打孔">
+                <input type="checkbox" name="craft" lay-filter="switch" value="缝筒" title="缝筒">
+            </div>
+            <hr>
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div" style="margin-left:50px;">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<script src="../../js/carousel.js" charset="utf-8"></script>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+
+        //建造实例
+        ins = carousel.render({});
+
+        function getProductImage(craft) {
+
+            $("#carousel").empty();
+            $("#remark").empty();
+            let data = {proTypeValue: "挂布"}
+            let remark = "";
+            let html = "";
+            if (craft != '' && craft == '定制') {
+                data.craftValue = craft;
+            }
+            $.ajax({
+                url: "${pageContext.request.contextPath}/getImgs",
+                type: "GET",
+                data,
+                //dataType : "json",
+                success: function (result) {
+                    for (let i = 0; i < result.length; i++) {
+                        // 只留一个remark
+                        remark = "";
+                        html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                        remark += '<div><span>' + result[0].remark + '<span/></div>';
+                    }
+                    $("#carousel").append(html);
+                    // 如果没有说明,就不显示null
+                    if (remark.indexOf("null") < 0) {
+                        $("#remark").append(remark);
+                    }
+                    // 如果没有轮播图就隐藏
+                    if (result.length == 0) {
+                        document.getElementById("test1").style.display = "none";   //隐藏
+                    } else {
+                        document.getElementById("test1").style.display = "block";   //显示
+                        ins.reload({
+                            elem: '#test1',
+                            width: result[0].imgWidth,  //设置容器宽度
+                            height: result[0].imgHeight
+                        });
+                    }
+                }
+            });
+        }
+
+        form.on("radio(switch)", (data) => {
+            getProductImage(data.elem.checked ? data.value : '');
+        })
+        form.on("checkbox(switch)", (data) => {
+            let arr = []
+
+            if ($("input[name='craft']:checked").length > 1) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('工艺不能同时选择!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            getProductImage(data.elem.checked ? data.value : '');
+        })
+
+        // 点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+
+            let size = $("#size").val();
+            let count = $("#count").val();
+            let craftys = $("input[name='craftys']:checked").val();
+            if (!size) {
+                layer.msg('请输入尺寸!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (!count) {
+                layer.msg('请输入数量!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (size.split("*")[0] < 20 || size.split("*")[1] < 20) {
+                layer.msg('挂布最小尺寸20*20cm!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (size.split("*")[0] > 150 || size.split("*")[1] > 150) {
+                layer.msg('挂布宽度超过150cm需要拼接!', {offset: ['300px', '300px']}, function () {
+                });
+            }
+            $.ajax({
+                url: "${path}/getProductPrice",
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    let arr = [];
+                    let data = result.data.proList;
+                    let kind = $("select[name='kindValue'] option:selected").val();
+                    let number = $("#number").val();
+                    let craftys = $("input[name='craftys']:checked").val();
+                    $("input[name='craft']:checked").each(function () {
+                        if (!$(this).is("disabled")) {
+                            arr.push($(this).val())
+                        }
+                    })
+
+                    let span_result = kind + ' - ' + size + ' 厘米 -(同款内容)\n' + "工艺 :" + arr.join(",") + "\n";
+                    if (craftys) {
+                        span_result += "配件:" + craftys
+                        span_result += "\n"
+                    }
+
+                    for (let i = 0; i < data.length; i++) {
+                        span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元" + '\n'
+                        data[i].number = number;
+                        let providePrices = data[i].providePrices;
+                        if (providePrices && providePrices.length > 0) {
+                            for (let item in providePrices) {
+                                span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                            }
+                        }
+                    }
+
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+
+                    getRemark($("#proTypeValue").val(), size, count, kind, number, arr, "");
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            }, {
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+
+</script>
+</html>

+ 292 - 0
src/main/webapp/views/priceView/banqi.jsp

@@ -0,0 +1,292 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h1">班旗</h1> <span style="color:red;font-weight:700;"></span>
+        <hr>
+        <form class="layui-form">
+            <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="班旗"/>
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="领鸿">领鸿</option>
+                    </select>
+                </div>
+            </div>
+            <p>
+                材质
+            </p>
+            <div class="layui-form-item">
+                <select name="ui_bq_name" id="ui_bq_name" lay-filter="ui_fb_name" class="select" lay-search>
+                    <option value="1">旗帜布</option>
+                </select>
+            </div>
+            <p>
+                尺寸(CM/厘米)
+            </p>
+            <div class="layui-form-item ui_size">
+                <select name="size" id="ui_size" class="select">
+                    <option value="96*64">96*64</option>
+                    <option value="192*128">192*128</option>
+                    <option value="144*96">144*96</option>
+                    <option value="240*160">240*160</option>
+                    <option value="288*192">288*192</option>
+                    <option value="120*80">120*80</option>
+                </select>
+            </div>
+
+            <p>
+                数量(个)
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input" id="count">
+            </div>
+            <p>
+                款数
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                       class="layui-input" lay-verify="number">
+            </div>
+            <p>
+                客户旺旺
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                       class="layui-input">
+            </div>
+            <p>
+                工艺 <span style="font-size:14px;color:red">旗杆长度是2.5米</span>
+            </p>
+            <div class="layui-form-item">
+                <input type="radio" name="craftShua" value="单面印刷" title="单面印刷" lay-filter="craftShua" checked="checked">
+                <input type="radio" name="craftShua" value="双喷" title="双喷" lay-filter="craftShua">
+                <br/>
+                <input type="checkbox" name="craft" value="旗杆" title="旗杆" lay-filter="craft" checked="checked">
+                <input type="checkbox" name="craft" value="缝筒" title="缝筒" lay-filter="craft" checked="checked">
+                <div class="layui-inline ui_feb" style="display:none">
+                    <select name="fb" class="select fb" lay-filter="fb">
+                        <option value="1" selected>左缝筒</option>
+                        <option value="2">右缝筒</option>
+                    </select>
+                </div>
+                <%--					<input type="checkbox" name="craft" value="手绘" title="手绘" lay-filter="craft">--%>
+            </div>
+            <hr>
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div" style="margin-left:50px;">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+
+        //建造实例
+        ins = carousel.render({});
+        var html = " ";
+        var remark = " ";
+        // 清空轮播图
+        $("#carousel").empty();
+        $("#remark").empty();
+        $(".ui_feb").show();
+        $(".ui_feb select").attr("disabled", false);
+        $.ajax({
+            url: "${pageContext.request.contextPath}/getImgs",
+            type: "GET",
+            data: {
+                proTypeValue: $("#proTypeValue").val(),
+                kindValue: $('input[name="kindValue"]').val()
+            },
+            success: function (result) {
+                for (let i = 0; i < result.length; i++) {
+                    // 只留一个remark
+                    remark = "";
+                    html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                    remark += '<div><span>' + result[i].remark + '<span/></div>';
+                }
+                $("#carousel").append(html);
+                // 如果没有说明,就不显示null
+                if (remark.indexOf("null") < 0) {
+                    $("#remark").append(remark);
+                }
+                // 如果没有轮播图就隐藏
+                if (result.length == 0) {
+                    document.getElementById("test1").style.display = "none";   //隐藏
+                } else {
+                    document.getElementById("test1").style.display = "block";   //显示
+                    ins.reload({
+                        elem: '#test1',
+                        width: result[0].imgWidth,  //设置容器宽度
+                        height: result[0].imgHeight
+                    });
+                }
+            }
+        });
+
+        form.on('checkbox(craft)', function (data) {
+            var craft = [];
+            $("input:checkbox[name='craft']:checked").each(function (i) {
+                // 没有被禁用的工艺加到arr中
+                if (!$(this).is(':disabled')) {
+                    craft.push($(this).val());
+                }
+            });
+            if (craft.indexOf("缝筒") > -1) {
+                $(".ui_feb").show();
+                $(".ui_feb select").attr("disabled", false);
+            } else {
+                $(".ui_feb").hide();
+                $(".ui_feb select").attr("disabled", true);
+            }
+            form.render();
+        });
+
+        // 点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+            var number = $("#number").val();
+            var size = $("#size").val();
+            var count = $("#count").val();
+            var kind = $("#kindValue option:selected").text();
+            var craftShua = $("input[name='craftShua']:checked").val();
+            var craft = [];
+            $("input:checkbox[name='craft']:checked").each(function (i) {
+                // 没有被禁用的工艺加到arr中
+                if (!$(this).is(':disabled')) {
+                    craft.push($(this).val());
+                }
+            });
+            $.ajax({
+                url: "${path}/getProductPrice",
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    var data = result.data.proList;
+                    if ($("input[name='switchSize']:checked").val() == "on") {
+                        size = $("#ui_zdy_size").val();
+                    } else {
+                        size = $("#ui_size option:selected").val();
+                    }
+                    var bq_name = $("#ui_bq_name option:selected").text();
+                    if (craft != "") {
+                        craftShua += ',' + craft;
+                    }
+                    var span_result = '班旗 - ' + bq_name + '-' + craftShua + '-' + size + ' CM (同款内容)\n';
+
+                    for (let i = 0; i < data.length; i++) {
+                        span_result += number + '款 各' + data[i].count + "条,共" + data[i].price + "元" + '\n'
+                        data[i].number = number;
+                        let providePrices = data[i].providePrices;
+                        if (providePrices && providePrices.length > 0) {
+                            for (let item in providePrices) {
+                                span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                            }
+                        }
+                    }
+
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '16%',
+                                title: '折扣价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '19%',
+                                title: '跳楼价'
+                            }, {
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+</script>
+</html>

+ 357 - 0
src/main/webapp/views/priceView/canvas.jsp

@@ -0,0 +1,357 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h1">帆布</h1> <span style="color:red;font-weight:700;"></span>
+        <hr>
+        <form class="layui-form">
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="领鸿">领鸿</option>
+                    </select>
+                </div>
+            </div>
+            <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="帆布"/>
+            <div class="layui-form-item">
+                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="常规" title="常规" checked="checked">
+                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="套餐" title="套餐">
+            </div>
+            <p>
+                材质
+            </p>
+            <div class="layui-form-item">
+                <select name="ui_fb_name" id="ui_fb_name" lay-filter="ui_fb_name" class="select" lay-search>
+                    <option value="1">露营布</option>
+                    <option value="2">摆摊布</option>
+                </select>
+            </div>
+            <div class="ui_normal">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽 </span>
+                    <input type="checkbox" name="switchSize" class="switchSizeCoupon" lay-filter="switchSizeCoupon"
+                           title="自定义尺寸" lay-skin="primary">
+                </p>
+                <div class="layui-form-item ui_size">
+                    <select name="size" id="ui_size" class="select">
+                        <option value="100*45">100*45</option>
+                        <option value="45*45">45*45</option>
+                    </select>
+                </div>
+                <span class="ui_zdy_size" style="display:none">
+						<input type="text" id="ui_zdy_size" placeholder="格式:长*宽" class="layui-input" autocomplete="off">
+					</span>
+                <p>
+                    数量(个)
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input"
+                           id="count">
+                </div>
+                <p>
+                    款数
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                           class="layui-input" lay-verify="number">
+                </div>
+            </div>
+            <p>
+                客户旺旺
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                       class="layui-input">
+            </div>
+            <p>
+                工艺<span style="font-size:14px;color:red">木棍长度50cm</span>
+            </p>
+            <div class="layui-form-item">
+                <input type="checkbox" name="craft" value="封边" title="封边" lay-filter="craft">
+                <div class="layui-inline ui_feb" style="width:100px;display:none">
+                    <select name="fb" class="select fb" lay-filter="fb">
+                        <option value="1" selected>上封边</option>
+                        <option value="2">下封边</option>
+                        <option value="3">左封边</option>
+                        <option value="4">右封边</option>
+                        <option value="5">上下封边</option>
+                        <option value="6">左右封边</option>
+                    </select>
+                </div>
+                <input type="checkbox" name="craft" value="四角打孔" title="四角打孔" lay-filter="craft">
+                <input type="checkbox" name="craft" value="净裁" title="净裁" lay-filter="craft">
+                <input type="checkbox" name="craft" value="吊耳" title="吊耳" lay-filter="craft">
+                <span class="ui_normal">
+			      		<input type="checkbox" name="craft" value="缝兜" title="缝兜" lay-filter="craft">
+			      	</span>
+                <input type="checkbox" name="craft" value="木棍" title="木棍" lay-filter="craft">
+            </div>
+            <hr>
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div" style="margin-left:50px;">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+
+        //建造实例
+        ins = carousel.render({});
+        var html = " ";
+        var remark = " ";
+        // 清空轮播图
+        $("#carousel").empty();
+        $("#remark").empty();
+        $.ajax({
+            url: "${pageContext.request.contextPath}/getImgs",
+            type: "GET",
+            data: {
+                proTypeValue: $("#proTypeValue").val(),
+                kindValue: $('input[name="kindValue"]').val()
+            },
+            success: function (result) {
+                for (let i = 0; i < result.length; i++) {
+                    // 只留一个remark
+                    remark = "";
+                    html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                    remark += '<div><span>' + result[i].remark + '<span/></div>';
+                }
+                $("#carousel").append(html);
+                // 如果没有说明,就不显示null
+                if (remark.indexOf("null") < 0) {
+                    $("#remark").append(remark);
+                }
+                // 如果没有轮播图就隐藏
+                if (result.length == 0) {
+                    document.getElementById("test1").style.display = "none";   //隐藏
+                } else {
+                    document.getElementById("test1").style.display = "block";   //显示
+                    ins.reload({
+                        elem: '#test1',
+                        width: result[0].imgWidth,  //设置容器宽度
+                        height: result[0].imgHeight
+                    });
+                }
+            }
+        });
+
+        // 自定义尺寸
+        form.on('checkbox(switchSizeCoupon)', function (data) {
+            if (data.elem.checked) {
+                $('.switchSizeCoupon').val("on")
+                $(".ui_zdy_size").show();
+                $("#ui_zdy_size").attr("name", "size");
+                $(".ui_size").hide();
+                $("#ui_size").attr("name", "");
+                $(".ui_zdy_size").find(":input").attr("disabled", false);
+                $(".ui_size").find(":input").attr("disabled", true);
+            } else {
+                $('.switchSizeCoupon').val("off")
+                $(".ui_size").show();
+                $("#ui_size").attr("name", "size");
+                $(".ui_zdy_size").hide();
+                $("#ui_zdy_size").attr("name", "");
+                $(".ui_size").find(":input").attr("disabled", false);
+                $(".ui_zdy_size").find(":input").attr("disabled", true);
+                // 恢复标准数量的时候会被禁用,加这个解决
+                form.render();
+            }
+        });
+
+        form.on('checkbox(craft)', function (data) {
+            if ($("input[name='craft']:checked").val() == "封边") {
+                $(".ui_feb").show();
+                $(".ui_feb select").attr("disabled", false);
+            } else {
+                $(".ui_feb").hide();
+                $(".ui_feb select").attr("disabled", true);
+            }
+            form.render();
+        });
+
+        form.on('radio(stickerKind)', function (data) {
+            if (data.value == "常规") {
+                $(".ui_normal").show();
+                $(".ui_normal").find(":input").attr("disabled", false);
+            } else {
+                $(".ui_normal").hide();
+                $(".ui_normal").find(":input").attr("disabled", true);
+            }
+            form.render('radio');
+        });
+
+        // 点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+            var number = $("#number").val();
+            var size = $("#size").val();
+            var count = $("#count").val();
+            var kind = $("#kindValue option:selected").text();
+            var craft = $("input[name='craft']:checked").val();
+            var stickerKind = $("input[name='stickerKind']:checked").val();
+            if ($("input[name='switchSize']:checked").val() == "on") {
+                if ($("#ui_zdy_size").val().split("*")[0] < 25 || $("#ui_zdy_size").val().split("*")[1] < 25) {
+                    layer.msg('帆布最小尺寸25*25cm!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if ($("#ui_zdy_size").val().split("*")[0] > 140 && $("#ui_zdy_size").val().split("*")[1] > 140) {
+                    layer.msg('帆布尺寸超过140cm需要拼接!', {offset: ['300px', '300px']}, function () {
+                    });
+                }
+            }
+            var craft = [];
+            $("input:checkbox[name='craft']:checked").each(function (i) {
+                // 没有被禁用的工艺加到arr中
+                if (!$(this).is(':disabled')) {
+                    craft.push($(this).val());
+                }
+            });
+            if (stickerKind == "常规") {
+                if (!count) {
+                    layer.msg('请填写数量!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            $.ajax({
+                url: "${path}/getProductPrice",
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    var data = result.data.proList;
+                    if ($("input[name='switchSize']:checked").val() == "on") {
+                        size = $("#ui_zdy_size").val();
+                    } else {
+                        size = $("#ui_size option:selected").val();
+                    }
+                    var fb_name = $("#ui_fb_name option:selected").text();
+
+                    if (craft == "封边" || craft == "打孔") {
+                        craft = craft + "绳子";
+                    }
+
+                    var span_result = '帆布 - ' + fb_name + '-' + craft + '-';
+
+                    if (stickerKind == "套餐") {
+                        span_result += "套餐" + data[0].price + "元\n150*60cm 2条\n130*60cm 2条\n";
+                    } else {
+                        span_result += size + ' CM (同款内容)\n';
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + "条,共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                    }
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '16%',
+                                title: '折扣价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '19%',
+                                title: '跳楼价'
+                            }, {
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+</script>
+</html>

+ 3347 - 0
src/main/webapp/views/priceView/coupon.jsp

@@ -0,0 +1,3347 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<style>
+    .edge .layui-edge {
+        right: 10px;
+    }
+
+    .layui-form-checkbox[lay-skin=primary] i {
+        /* border-radius: 50px; */
+        width: 18px;
+        height: 18px;
+        line-height: 18px;
+        margin-top: 3px;
+    }
+
+    .layui-form-checkbox[lay-skin=primary] span {
+        color: black;
+        margin-top: 3px;
+        font-size: 14px;
+    }
+
+    #awards::-webkit-outer-spin-button, #awards::-webkit-inner-spin-button {
+        -webkit-appearance: none !important;
+    }
+
+    #awards {
+        -moz-appearance: textfield;
+    }
+
+    #z4_craft .layui-form-select .layui-edge {
+        right: 40px;
+    }
+
+</style>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h1">卡片</h1>
+        <hr>
+        <form class="layui-form">
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="艾印">艾印</option>
+                        <option value="艾印">即客</option>
+                        <option value="欣海信">欣海信</option>
+                        <option value="彩印通">彩印通</option>
+                        <option value="鸿晟">鸿晟</option>
+                        <option value="驰远">驰远</option>
+                    </select>
+                </div>
+            </div>
+            <div class="layui-form-item">
+                <%--                <input type="radio" lay-filter="couponKind" name="couponKind" value="常用种类" title="常规" checked="checked">--%>
+                <input type="radio" lay-filter="couponKind" name="couponKind" value="少数量" title="少数量">
+            </div>
+        </form>
+        <form class="layui-form" id="kindForm">
+            <p>品种</p>
+            <div>
+					<span class="normal">
+						<!-- <input type="radio" lay-filter="kind" name="kind" value="0" title="吊旗"> -->
+						<input type="radio" lay-filter="kind" name="kind" value="1" title="腰封">
+                        <!-- <input type="radio" lay-filter="kind" name="kind" value="2" title="吊牌"> -->
+						<input type="radio" lay-filter="kind" name="kind" value="3" title="贺卡">
+						<input type="radio" lay-filter="kind" name="kind" value="4" title="优惠券">
+						<input type="radio" lay-filter="kind" name="kind" value="5" title="抽奖券">
+                        <!--<input type="radio" lay-filter="kind" name="kind" value="6" title="特价名片">-->
+						<input type="radio" lay-filter="kind" name="kind" value="7" title="存酒卡">
+						<input type="radio" lay-filter="kind" name="kind" value="13" title="刮刮卡">
+						<input type="radio" lay-filter="kind" name="kind" value="8" title="门挂牌">
+                        <!--<input type="radio" lay-filter="kind" name="kind" value="9" title="售后卡">-->
+						<input type="radio" lay-filter="kind" name="kind" value="10" title="吸管套">
+						<input type="radio" lay-filter="kind" name="kind" value="11" title="圣诞卡">
+					</span>
+                <span class="lessCount" style="display:none">
+						<input type="radio" lay-filter="kind" name="kind" value="直角卡片" title="直角卡片">
+						<input type="radio" lay-filter="kind" name="kind" value="异形卡片" title="异形卡片">
+						<input type="radio" lay-filter="kind" name="kind" value="腰封" title="腰封">
+						<input type="radio" lay-filter="kind" name="kind" value="贺卡" title="贺卡">
+						<input type="radio" lay-filter="kind" name="kind" value="积分卡" title="积分卡">
+						<input type="radio" lay-filter="kind" name="kind" value="抽奖卡" title="抽奖卡">
+						<input type="radio" lay-filter="kind" name="kind" value="刮刮卡" title="刮刮卡">
+						<input type="radio" lay-filter="kind" name="kind" value="菜单" title="菜单">
+						<input type="radio" lay-filter="kind" name="kind" value="婚礼报纸" title="婚礼报纸">
+						<input type="radio" lay-filter="kind" name="kind" value="特种纸名片" title="特种纸名片">
+						<input type="radio" lay-filter="kind" name="kind" value="婚礼卡" title="婚礼卡">
+						<input type="radio" lay-filter="kind" name="kind" value="种子纸" title="种子纸">
+					</span>
+            </div>
+            <div id="doorList" style="display: none">
+                <%@include file="../product/doorList.jsp" %>
+            </div>
+        </form>
+        <div id="other">
+            <form class="layui-form" id="kindValueForm">
+                <p>材质</p>
+                <div class="kindValue">
+                    <input type="radio" lay-filter="kindValue" name="kindValue" value="2" title="300克铜版纸">
+                    <input type="radio" lay-filter="kindValue" name="kindValue" value="1" title="200克铜版纸">
+                    <input type="radio" class="157" lay-filter="kindValue" name="kindValue" value="0" title="157克铜版纸">
+                </div>
+                <div class="kindValue2" style="display:none">
+                    <input type="radio" name="kindValue2" lay-filter="kindValue2" value="2" title="300克铜版纸"
+                           checked="checked">
+                    <input type="radio" name="kindValue2" lay-filter="kindValue2" value="10" title="400克铜版纸">
+                </div>
+                <div class="kindValue3" style="display:none">
+                    <input type="radio" name="kind3Value" lay-filter="kindValue3" value="3" title="300克铜版纸">
+                    <input type="radio" name="kind3Value" lay-filter="kindValue3" value="4" title="600克铜版纸">
+                    <!-- <input type="radio" name="kind3Value" lay-filter="kindValue3" value="5" title="800克铜版纸"> -->
+                </div>
+                <div class="kindValue4" style="display:none">
+                    <input type="radio" name="kind4Value" lay-filter="kindValue4" value="3" title="300克铜版纸">
+                    <input type="radio" name="kind4Value" lay-filter="kindValue4" value="6" title="特种纸名片(不配绳子)">
+                </div>
+                <div class="kindValue5" style="display:none">
+                    <input type="radio" name="kindValue5" lay-filter="kindValue5" value="1" title="300克铜版纸" checked>
+                    <input type="radio" name="kindValue5" lay-filter="kindValue5" value="2" title="pvc">
+                </div>
+                <div class="kindValue6" style="display:none">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="皙贝" title="皙贝"
+                           checked>
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="玉蕊" title="玉蕊">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="睿狐" title="睿狐">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="溪雪" title="溪雪">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="珠光" title="珠光">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="琮纹" title="琮纹">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="雅柔" title="雅柔">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="萱姿" title="萱姿">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="草香" title="草香">
+                    <input type="radio" name="kindValue6" lay-filter="kindValue6" value="芳怡" title="芳怡">
+                </div>
+                <div class="kindValue7" style="display:none">
+                    <input type="radio" name="kindValue7" lay-filter="kindValue7" value="2" title="300克铜版纸"
+                           checked="checked">
+                    <input type="radio" name="kindValue7" lay-filter="kindValue7" value="8" title="250克牛皮纸">
+                </div>
+                <div class="ui_sdk" style="display:none">
+                    <input type="radio" name="ui_sdk_cz" value="1" title="700克白卡纸" checked>
+                </div>
+                <div class="ui_hlbz" style="display:none">
+                    <input type="radio" name="ui_hlbz_cz" value="1" title="157克铜版纸" checked>
+                </div>
+                <div id="tag" style="display: none">
+                    <%@include file="../product/tag.jsp" %>
+                </div>
+                <div id="specialCard" style="display: none">
+                    <%@include file="../product/specialCard.jsp" %>
+                </div>
+            </form>
+            <form class="layui-form" id="3zValueForm">
+                <p>类型</p>
+                <div class="z3type">
+                    <input type="radio" lay-filter="z3type" name="z3type" value="0" title="门票入场" checked>
+                    <input type="radio" lay-filter="z3type" name="z3type" value="1" title="卡片">
+                    <input type="radio" lay-filter="z3type" name="z3type" value="2" title="圆形">
+                </div>
+            </form>
+            <div class="tagOther">
+                <form class="layui-form">
+                    <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="4">
+                    <input type="hidden" name="proTypeLabel" id="proTypeLabel" class="layui-input">
+                    <input type="hidden" name="d" id="d" class="layui-input">
+                    <p class="size-tip-other">
+                        尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                        &nbsp;<span class="ui_yf" style="font-size:14px;color:red">200克、300克腰封模切最大尺寸100cm,200克腰封裁切最大尺寸118cm</span>
+                        <span class="ui_yh" style="font-size:14px;color: red;">压1痕最小尺寸10.8*5.4cm,压2痕最小尺寸13.5*5.4CM,低于最小尺寸按异形模切报价</span>
+                        <span class="ui_tz_yh" style="font-size:14px;color: red;display:none">压1痕最小尺寸10.8*6cm,压2痕最小尺寸13.5*5.4CM</span>
+                    </p>
+                    <p class="size-tip-z3" style="display:none;">
+                        尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                        &nbsp;<span style="font-size:14px;color:red">最小尺寸5*8cm,最大尺寸20*30cm</span>
+                    </p>
+                    <span class="switchz3Size" style="display: none"><input type="checkbox" name="switchz3Size"
+                                                                            lay-filter="switchz3Size"
+                                                                            title="自定义尺寸"></span>
+                    <div class="qt">
+                        <input type="text" name="size" placeholder="格式:长*宽" id="size" class="layui-input"
+                               autocomplete="off">
+                    </div>
+                    <div class="ui_menu_size" style="display: none;">
+                        <select name="ui_menu_size" id="ui_menu_size" class="select">
+                            <option value="21*14">21*14 cm</option>
+                            <option value="21*28.5">21*28.5 cm</option>
+                            <option value="42*28.5">42*28.5 cm</option>
+                        </select>
+                    </div>
+                    <div class="ui_shk_size" style="display: none;">
+                        <select name="ui_shk_size" id="ui_shk_size" class="select">
+                            <option value="9*5.4">9*5.4 cm</option>
+                            <option value="9*11">9*11 cm</option>
+                            <option value="8*11">8*11 cm</option>
+                            <option value="7*14">7*14 cm</option>
+                            <option value="8*14">8*14 cm</option>
+                            <option value="10*15">10*15 cm</option>
+                            <option value="11*18">11*18 cm</option>
+                            <option value="9*9">9*9 cm</option>
+                            <option value="9*14">9*14 cm</option>
+                        </select>
+                    </div>
+                    <div class="3z_size" id="3z_size" style="display: none;">
+                        <div id="3z_menpiao_size" style="display: none">
+                            <select name="z3size1" lay-filter="z3size1" class="select">
+                                <option value="16*7">16*7 cm</option>
+                                <option value="19*7">19*7 cm</option>
+                                <option value="15*5">15*5 cm</option>
+                                <option value="13*5">13*5 cm</option>
+                            </select>
+                        </div>
+                        <div id="3z_kapian_size" style="display: none">
+                            <select name="z3size1" lay-filter="z3size1" class="select">
+                                <option value="10*15">10*15 cm</option>
+                                <option value="16*7">16*7 cm</option>
+                                <option value="6*9">6*9 cm</option>
+                                <option value="7*10">7*10 cm</option>
+                                <option value="9*9">9*9 cm</option>
+                                <option value="8*11">8*11 cm</option>
+                                <option value="15*5">15*5 cm</option>
+                            </select>
+                        </div>
+                        <div id="3z_yuan_size" style="display: none">
+                            <select name="z3size1" lay-filter="z3size1" class="select">
+                                <option value="8.5*8.5">8.5*8.5 cm</option>
+                                <option value="10*10">10*10 cm</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="z3_vice" style="display: none;">
+                        <div class="z_16">
+                            <input type="radio" name="3z_vice" value="圆角+手撕线+缺口(副券6cm)"
+                                   title="圆角+手撕线+缺口(副券6cm)">
+                            <input type="radio" name="3z_vice" value="圆角+手撕线+缺口(副券4cm)"
+                                   title="圆角+手撕线+缺口(副券4cm)">
+                            <%--                            <input type="radio" name="3z_vice" value="直角+手撕线+无缺口(副券3.5cm)"--%>
+                            <%--                                   title="直角+手撕线+无缺口(副券3.5cm)">--%>
+                        </div>
+                        <div class="z_19">
+                            <input type="radio" name="3z_vice" value="圆角+手撕线+缺口(副券5.6cm)"
+                                   title="圆角+手撕线+缺口(副券5.6cm)">
+                        </div>
+                        <div class="z_15">
+                            <input type="radio" name="3z_vice" value="圆角+手撕线+缺口(副券5cm)"
+                                   title="圆角+手撕线+缺口(副券5cm)">
+                        </div>
+                        <div class="z_13">
+                            <input type="radio" name="3z_vice" value="圆角+手撕线+缺口(副券4.5cm)"
+                                   title="圆角+手撕线+缺口(副券4.5cm)">
+                        </div>
+
+
+                    </div>
+                    <div class="ui_sdk" style="display: none;">
+                        <select name="ui_sdk_size" id="ui_sdk_size" class="select">
+                            <option value="31*18">31*18 cm</option>
+                        </select>
+                    </div>
+                    <div class="ui_xgt" style="display: none;">
+                        <select name="size" id="ui_sdk_size" class="select">
+                            <option value="6.5*5.4">6.5*5.4 cm</option>
+                        </select>
+                    </div>
+                    <span class="layui-form-item guaguaSize1">
+							<p>
+								<span style="font-size:14px;color:red">刮刮卡最小尺寸75*50mm,最大尺寸170*170mm</span>
+							</p>
+							<p>
+								刮刮膜尺寸(MM/毫米)
+							</p>
+							<select name="size1" id="size1" class="select">
+								<option value="6*18">6*18 mm</option>
+								<option value="6*22">6*22 mm</option>
+								<option value="6*26">6*26 mm</option>
+								<option value="8*26">8*26 mm</option>
+								<option value="8*30">8*30 mm</option>
+								<option value="15*15">15*15mm</option>
+								<option value="18*18">18*18mm</option>
+								<option value="20*20">20*20mm</option>
+								<option value="18*32">18*32 mm</option>
+								<option value="15*48">15*48 mm</option>
+								<option value="8*36">8*36 mm</option>
+                                <option value="70*50">70*50 mm</option>
+                                <option value="60*25" selected>60*25 mm</option>
+                                <option value="35*58">35*58 mm</option>
+                                <option value="41*72">41*72 mm</option>
+							</select>
+                            <div id="otherSize"></div>
+							<p>
+                              <span style="font-size:14px;color:red">组合价:卡片内容尺寸一样  奖项 数量可以不一样</span>
+                            </p>
+						</span>
+                    <div class="layui-input-block guaguaSize1" style="display:inline-block;">
+                        <input type="checkbox" name="fmType" lay-filter="fmType" value="0" title="贴膜">
+                        <div class="layui-inline edge stickNum" style="width:60px; ">
+                            <select name="stickNum" class="select stickNum" lay-filter="stickNum">
+                                <option value="1" selected>1处</option>
+                                <option value="2">2处</option>
+                                <option value="3">3处</option>
+                                <option value="4">4处</option>
+                                <option value="5">5处</option>
+                                <option value="6">6处</option>
+                            </select>
+                        </div>
+                        <input type="checkbox" name="fmType" lay-filter="fmType" value="1" title="配膜">
+                    </div>
+                    <span class="layui-form-item guaguaSize1">
+                        <p>
+                            输入奖项个数
+                        </p>
+                        <div class="layui-form-item">
+                            <input type="number" max="30" value="1" name="awards" id="awards" placeholder="请输入整数"
+                                   class="layui-input"
+                                   autocomplete="off" onkeyup="clearNoNum(this)">
+                        </div>
+                        <p>
+                          <span style="font-size:14px;color:red">奖项最高30个,最低1个</span>
+                        </p>
+                    </span>
+                    <span class=" layui-form-item guaguaSize">
+                        <p>
+                            <span style="font-size:14px;color:red">尺寸超过4个名片位请单独报价</span>
+                        </p>
+                        <p>
+                            刮刮膜尺寸(MM/毫米)
+                        </p>
+                        <select name="size1" id="size2" class="select">
+                            <option value="6*18">6*18 mm</option>
+                            <option value="6*22">6*22 mm</option>
+                            <option value="6*26">6*26 mm</option>
+<%--                            <option value="8*26">8*26 mm</option>--%>
+                            <option value="8*30">8*30 mm</option>
+                            <option value="48*15">48*15 mm</option>
+                            <option value="60*25">60*25 mm</option>
+                        </select>
+                        <p>
+                            <span style="font-size:14px;color:red">同个客户下单多款,其中一款数量在200张以上请全部按照印刷报价<br/>200张以上车间贴,200张以下客户自己贴</span>
+                        </p>
+                    </span>
+                    <p>
+                        数量(张) <span class="switchCount"><input type="checkbox" name="switchCount" class="Count"
+                                                               lay-filter="switchCount" title="自定义数量"></span>
+                    </p>
+                    <div class="count">
+                        <div class="layui-form-item">
+                            <select name="count" id="selectCount" class="select">
+                                <option value="200">200</option>
+                                <option value="500">500</option>
+                                <option value="1000">1000</option>
+                                <option value="2000">2000</option>
+                                <option value="3000">3000</option>
+                                <option value="5000">5000</option>
+                                <option value="10000">10000</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="ui_sdk">
+                        <div class="layui-form-item">
+                            <select name="count" id="selectCount1" class="select">
+                                <option value="50">50</option>
+                                <option value="100">100</option>
+                                <option value="500">500</option>
+                                <option value="1000">1000</option>
+                                <option value="2000">2000</option>
+                                <option value="5000">5000</option>
+                                <option value="10000">10000</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="ui_xgt" style="display: none;">
+                        <div class="layui-form-item">
+                            <select name="count" id="selectCount2" class="select">
+                                <option value="500">500</option>
+                                <option value="1000">1000</option>
+                                <option value="2000">2000</option>
+                                <option value="3000">3000</option>
+                                <option value="5000">5000</option>
+                                <option value="10000">10000</option>
+                                <option value="20000">20000</option>
+                                <option value="30000">30000</option>
+                                <option value="50000">50000</option>
+                                <option value="100000">100000</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="diyCount" style="display: none">
+                        <div class="layui-form-item">
+                            <input type="text" name="count" id="count" placeholder="请输入整数" class="layui-input"
+                                   autocomplete="off">
+                        </div>
+                    </div>
+                    <p>款数</p>
+                    <div class="layui-form-item">
+                        <input type="text" name="number" id="number" autocomplete="off"
+                               class="layui-input" value="1" lay-verify="number">
+                    </div>
+                    <div class="layui-form-item" id="ui_des" style="display:none;">
+                        <p>
+                            设计内容
+                        </p>
+                        <select name="desType" lay-filter="desType" id="desType" class="select" lay-search>
+                            <option value=""></option>
+                            <option value="1">改序号</option>
+                            <option value="2">改名字</option>
+                            <option value="3">改二维码</option>
+                            <option value="4">改图片</option>
+                            <option value="5">改内容模板相同</option>
+                            <option value="6" selected>改内容模板完全不同</option>
+                        </select>
+                    </div>
+                    <p>
+                        客户旺旺
+                    </p>
+                    <div class="layui-form-item">
+                        <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                               class="layui-input">
+                    </div>
+                </form>
+            </div>
+            <div class="tagOther normalCountHideCraft">
+                <form class="layui-form" id="craftForm">
+                    <div id="craft">
+                        <p>
+                            工艺&nbsp;<span style="font-size:12px;color:red">优惠券异形模切+打码限于简单刀版(无法做圆形  椭圆机)最小9*5.4</span>
+                        </p>
+                        <div class="layui-input-block doublefumo" style="display:inline-block;">
+                            <input type="checkbox" class="ui_double_fm" name="craft" lay-filter="ui_fm" value="双面覆哑膜"
+                                   title="双面覆哑膜">
+                        </div>
+
+                        <div class="layui-input-block craft tj" style="display:inline-block;">
+                            <input type="checkbox" name="craft" class="tangjin" lay-filter="switch" value="单面烫金"
+                                   title="单面烫金">
+                            <input type="checkbox" name="craft" class="tangjin" lay-filter="switch" value="双面烫金"
+                                   title="双面烫金">
+                            <span class="sizeTang">
+							      	<div class="layui-inline">
+							      		<input type="text" placeholder="长边" autocomplete="off" name="lengthTang"
+                                               id="lengthTang" class="layui-input" style="width:50px;height:35px;">
+									</div>x
+							      	<div class="layui-inline">
+							      		<input type="text" placeholder="短边" autocomplete="off" name="widthTang"
+                                               id="widthTang" class="layui-input" style="width:50px;height:35px;">
+									</div>
+						      	</span>
+                        </div>
+                        <div class="layui-input-block craft">
+                            <input type="checkbox" name="craft" class="yh disab max ya cjkDisab" lay-filter="switch"
+                                   value="压痕" title="压痕">
+                            <div class="layui-inline edge yahenHide" style="width:60px; display:none">
+                                <select name="yahen" class="select yahen" lay-filter="yahen">
+                                    <option value="1" selected>1</option>
+                                    <option value="2">2</option>
+                                </select>
+                            </div>
+                            <span class="value5">
+							      	<input type="checkbox" name="craft" class="ydx disab max ya cjkDisab"
+                                           lay-filter="switch" value="压点线" title="压点线">
+							      </span>
+                            <div class="layui-inline edge yadianxianHide" style="width:60px;display:none">
+                                <select name="yadianxian" class="select yadianxian" lay-filter="yadianxian">
+                                    <option value="1" selected>1</option>
+                                    <option value="2">2</option>
+                                </select>
+                            </div>
+                            <span class="value2">
+							      	<input type="checkbox" name="craft" class="dk disab max cjkDisab"
+                                           lay-filter="switch" value="打孔" title="打孔">
+								</span>
+                            <div class="layui-inline edge dakongHide" style="width:60px;display:none">
+                                <select name="dakong" class="select dakong" lay-filter="dakong">
+                                    <option value="1" selected>1</option>
+                                    <option value="2">2</option>
+                                </select>
+                            </div>
+                            <input type="checkbox" name="craft" class="yj disab max cjkDisab" lay-filter="switch"
+                                   value="圆角" title="圆角">
+                            <div class="layui-input-block craft value5 value7 dm" style="display:inline-block;">
+                                <input type="checkbox" name="craft" lay-filter="switch" value="打码"
+                                       title="打码">
+                                <div class="layui-inline edge damaHide" style="width:60px;display:none">
+                                    <select name="dama" class="select dama" lay-filter="dama">
+                                        <option value="1" selected>1</option>
+                                        <option value="2">2</option>
+                                    </select>
+                                </div>
+                                <div class="layui-inline edge bianma" style="width:120px;display:none">
+                                    <select name="bianma" class="select bianmaSelect" lay-filter="bianma">
+                                        <option value="水平编码" selected>水平编码</option>
+                                        <%--                                        <option value="上下编码">上下编码</option>--%>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="bmType" style="display:none"><span style="font-size:14px;color:red">打码数量为‘2’时,需要选择打码类型:[水平编码] 或 [上下编码]
+                                </br>水平编码:价格相同; 上下编码:价格不同</span>
+                            </div>
+                        </div>
+                        <div class="layui-input-block value7">
+                            <input type="checkbox" name="craft" class="mq" lay-filter="switchMQ" value="模切"
+                                   title="异形模切">
+                            <%--                            <input type="checkbox" name="craft" class="fm" lay-filter="ui_yf_fm" value="单面覆膜"--%>
+                            <%--                                   title="单面覆膜">--%>
+                            <span class="ui_fm_l">
+                                <input type="checkbox" name="craft" class="ui_fm" lay-filter="ui_yf_fm" value="双面覆膜"
+                                       title="双面覆膜">
+                            </span>
+                            <div id="craftHu" style="display:none;margin-top: 5px;">
+                                <input type="checkbox" name="craft" class="ui_hu" lay-filter="switch" value="糊成品"
+                                       title="糊成品">
+                                <input type="checkbox" name="craft" class="ui_hu" lay-filter="switch" value="糊半成品"
+                                       title="糊半成品">
+
+                            </div>
+                        </div>
+                        <div class="carft_lius">
+                            <input type="checkbox" name="craft" class="lius" value="流苏" lay-filter="ui_lius"
+                                   title="流苏">
+                        </div>
+                    </div>
+                </form>
+            </div>
+            <div class="lessCountHideCraft" style="display:none">
+                <form class="layui-form">
+                    <p>
+                        工艺
+                    </p>
+                    <div class="layui-input-block">
+                        <input type="radio" name="craftShua" value="单面印刷" title="单面印刷" checked>
+                        <input type="radio" name="craftShua" value="双面印刷" title="双面印刷">
+                        <span class="zhijiaoCard">
+                            <input type="checkbox" name="craft" lay-filter="switchCraft" value="直角" title="直角"
+                                   lay-skin="primary" class="zhijiaoCraft">
+                        </span>
+                        <input type="checkbox" name="craft" lay-filter="switchCraft" value="异形" title="异形"
+                               lay-skin="primary" class="specialCraft">
+                        <span class="tj">
+                            <input type="checkbox" name="craft" lay-filter="switchCraft" value="烫金" title="烫金"
+                                   lay-skin="primary" class="tjCraft">
+                            <input type="checkbox" name="craft" lay-filter="switchCraft" value="彩色印刷+烫金"
+                                   title="彩色印刷+烫金" lay-skin="primary" class="tjCraft">
+                        </span>
+                    </div>
+                </form>
+            </div>
+            <div class="ui_menu_craft" style="display: none;">
+                <form class="layui-form">
+                    <p>
+                        工艺
+                    </p>
+                    <div class="layui-input-block">
+                        <input type="radio" name="craft" class="ui_cd_craft" value="单面过塑" title="单面过塑"
+                               checked="checked">
+                        <input type="radio" name="craft" class="ui_cd_craft" value="双面过塑" title="双面过塑">
+                    </div>
+                </form>
+            </div>
+            <div class="z3_craft" style="display: none;">
+                <form class="layui-form">
+                    <p>
+                        工艺
+                    </p>
+
+                    <div class="layui-input-block">
+                        <span class="z3_craft_yj">
+                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="圆角" title="圆角"/>
+                        </span>
+                        <span class="z3_craft_zj">
+                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="直角" title="直角"/>
+                        </span>
+                        <span class="z3_craft_dk">
+                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="打孔" title="打孔"/>
+                        </span>
+                        <%--                        <span class="z3_craft_ssx">--%>
+                        <%--                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="手撕线" title="手撕线"/>--%>
+                        <%--                        </span>--%>
+                        <%--                        <span class="z3_craft_yh">--%>
+                        <%--                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="压痕" title="压痕"/>--%>
+                        <%--                        </span>--%>
+                        <span class="z3_craft_bm">
+                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="编码" title="编码"/>
+                        </span>
+                        <span class="z3_craft_mq">
+                            <input type="checkbox" name="craft" lay-filter="z3Crafts" value="模切" title="模切"/>
+                        </span>
+                        <input type="checkbox" class="shengz" name="craft" lay-filter="z3Crafts" value="绳子"
+                               title="绳子">
+                        <div class="shengz scolor" style="width: 150px;display: none">
+                            <select class="select">
+                                <option value="白色绳子">白色绳子</option>
+                                <option value="黑色绳子">黑色绳子</option>
+                                <option value="红色绳子">红色绳子</option>
+                            </select>
+                        </div>
+                        <input type="radio" name="fm" value="不覆膜" title="不覆膜" checked="checked"/>
+
+                    </div>
+                </form>
+            </div>
+            <div class="z4_craft" id="z4_craft" style="display: none;">
+                <form class="layui-form">
+                    <p>
+                        工艺
+                    </p>
+                    <div class="layui-input-block" style="display:inline-block;">
+                        覆膜工艺:
+                        <input type="checkbox" class="ui_double_fm" name="craft" lay-filter="ui_fm" value="双面覆哑膜"
+                               title="双面覆哑膜">
+                    </div>
+                    <div class="layui-input-block" style="display:inline-block;">
+                        烫金类型:
+                        <input type="checkbox" name="craft" class="tangjin" lay-filter="switch" value="单面烫金"
+                               title="单面烫金">
+                        <input type="checkbox" name="craft" class="tangjin" lay-filter="switch" value="双面烫金"
+                               title="双面烫金">
+                    </div>
+                    <div class="layui-input-block">
+                        裁切工艺:
+                        <input type="checkbox" name="craft" class="mq caiqie" lay-filter="switchMQ" value="裁切"
+                               title="直角裁切">
+                        <input type="checkbox" name="craft" class="mq" lay-filter="switchMQ" value="模切"
+                               title="异形模切">
+                        <input type="checkbox" name="craft" class="mq" lay-filter="switchMQ" value="圆角"
+                               title="圆角">
+                    </div>
+                    <div class="layui-input-block">
+                        常见工艺:
+                        <input type="checkbox" name="craft" class="nomq" lay-filter="switchCrafts" value="压痕"
+                               title="压痕"/>
+                        <div class="layui-inline yahenghide" style="width:60px;display:none">
+                            <select name="yaheng" class="select yadianxian">
+                                <option value="1" selected>1</option>
+                                <option value="2">2</option>
+                                <option value="3">3</option>
+                            </select>
+                        </div>
+                        <input type="checkbox" name="craft" class="nomq" lay-filter="switchCrafts" value="打点线"
+                               title="打点线"/>
+                        <div class="layui-inline dadianxianhide" style="width:60px;display:none">
+                            <select name="dadianxian" class="select dadianxian">
+                                <option value="1" selected>1</option>
+                                <option value="2">2</option>
+                                <option value="3">3</option>
+                            </select>
+                        </div>
+
+                        <input type="checkbox" name="craft" class="nomq" lay-filter="switchCrafts" value="打孔"
+                               title="打孔"/>
+                        <input type="checkbox" name="craft" value="打码" lay-filter="switchCrafts" title="打码"/>
+                        <div class="layui-inline maxianhide" style="width:60px;display:none">
+                            <select name="maxian" class="select maxian">
+                                <option value="1" selected>1</option>
+                                <option value="2">2</option>
+                                <option value="3">3</option>
+                            </select>
+                        </div>
+
+                    </div>
+                    <div class="layui-input-block">
+                        配件:
+                        <input type="checkbox" class="peijian" name="craft" lay-filter="z4PeiJian" value="配葫芦针"
+                               title="配葫芦针">
+                        <input type="checkbox" class="peijian" name="craft" lay-filter="z4PeiJian" value="配流苏"
+                               title="配流苏">
+                        <input type="checkbox" class="peijian" name="craft" lay-filter="z4PeiJian" value="穿流苏"
+                               title="穿流苏">
+                        <input type="checkbox" class="peijian" name="craft" lay-filter="z4PeiJian" value="配尼龙绳"
+                               title="配尼龙绳">
+                        <input type="checkbox" class="peijian" name="craft" lay-filter="z4PeiJian" value="穿尼龙绳"
+                               title="穿尼龙绳">
+                        <div class="layui-inline shengz scolor" style="width: 110px;display: none">
+                            <select class="select" name="shen_color">
+                                <option value="白色绳子">白色绳子</option>
+                                <option value="黑色绳子">黑色绳子</option>
+                                <option value="红色绳子">红色绳子</option>
+                            </select>
+                        </div>
+                    </div>
+                </form>
+            </div>
+            <div class="ui_sdk" style="display: none;">
+                <form class="layui-form">
+                    <p>
+                        工艺
+                    </p>
+                    <div class="layui-input-block">
+                        <input type="radio" name="ui_sdk_craft" value="无" title="无" checked="checked"
+                               lay-filter="ui_sdk_craft">
+                        <input type="radio" name="ui_sdk_craft" value="opp袋" title="opp袋" lay-filter="ui_sdk_craft">
+                        <input type="radio" name="ui_sdk_craft" value="丝带" title="丝带" lay-filter="ui_sdk_craft">
+                        <br/>
+                        <span class="ui_sd" style="display: none;margin-left:180px;">
+								<input type="radio" name="sd" value="蓝色" title="蓝色" checked="checked">
+								<input type="radio" name="sd" value="红色" title="红色">
+							</span>
+                    </div>
+                </form>
+            </div>
+            <div class="ui_tzmp" style="display: none;">
+                <form class="layui-form">
+                    <p>
+                        工艺
+                    </p>
+                    <div class="layui-input-block">
+                        <input type="checkbox" name="craft" class="dk disab max cjkDisab" lay-filter="switch"
+                               value="打孔" title="打孔">
+                        <div class="layui-inline edge dakongHide" style="width:60px;display:none">
+                            <select name="ui_dk" class="select dakong" lay-filter="ui_dk">
+                                <option value="1" selected>1</option>
+                                <option value="2">2</option>
+                            </select>
+                        </div>
+                        <input type="checkbox" name="craft" class="yh disab max ya cjkDisab" lay-filter="switch"
+                               value="压痕" title="压痕">
+                        <div class="layui-inline edge yahenHide" style="width:60px; display:none">
+                            <select name="ui_yh" class="select yahen" lay-filter="ui_yh">
+                                <option value="1" selected>1</option>
+                                <option value="2">2</option>
+                            </select>
+                        </div>
+                        <input type="checkbox" name="craft" class="mq disab max ya cjkDisab" lay-filter="switch"
+                               value="模切" title="模切">
+                    </div>
+                </form>
+            </div>
+            <hr>
+        </div>
+        <form class="layui-form">
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn" id="queryCondBtn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="13" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <!--<h2>下单备注<button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult" onclick="copyBz()">点击复制</button></h2>
+				<div>
+					<textarea rows="11" cols="75" id="bz_result" readonly="readonly" style="height: 60px;resize: none;"></textarea>
+				</div>-->
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    function clearNoNum(obj) {
+        if (obj.value > 30) {
+            obj.value = 30;
+        }
+        if (obj.value <= 0) {
+            obj.value = 1
+        }
+    }
+
+    layui.use(['table', 'form', 'carousel'], function () {
+            var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+            var carousel = layui.carousel;
+            var table = layui.table;
+            let remark_html = ''
+
+            function setRemark() {
+                let kv = $("input[name='kindValue']:checked").val();
+                $("#remark").empty();
+                let html = '';
+                if (kv == 2) {
+                    html = remark_html
+                }
+                if (kv == 1) {
+                    html = '预计发货时间:<br>江苏:直角裁切 (2-3天发货) 韵达 顺丰<br> 河南:直角裁切 (2-3天发货 ) 中通 顺丰<br> 江苏:异形模切 (3-4天发货) 圆通 顺丰<br> 河南:异形模切 (3-4天发货) 中通 顺丰'
+                }
+                if (kv == 0) {
+                    html = '预计发货时间:<br>福建:直角裁切 (2-3天发货) 圆通 顺丰<br>福建:异形模切 (3-4天发货) 圆通 顺丰'
+                }
+
+                $("#remark").append('<div><span>' + html + '<span/></div>');
+
+            }
+
+            function getProductImage(craftValue) {
+                let kind = $('input[name="kind"]:checked').val()
+                if (kind != 5 && kind != 7 && kind != 3 && kind != 4) {
+                    craftValue = "";
+                }
+                if (kind == 7 && (craftValue != '单面烫金' && craftValue != '双面烫金' && craftValue != '模切')) {
+                    craftValue = "";
+                }
+                let proTypeValue = kind == 8 ? 25 : 4
+                let kindValue2 = $("input[name='kindValue2']:checked").val();
+                // 轮播图
+                let html = " ";
+                // 清空轮播图
+                let data = {
+                    proTypeValue: proTypeValue,
+                    kindValue: kind
+                }
+                if (kind == "3") {
+                    data.kind2Value = kindValue2
+                }
+                if (craftValue != '') {
+                    data.craftValue = craftValue;
+                }
+                $("#carousel").empty();
+                $("#remark").empty();
+                $.ajax({
+                    url: "${pageContext.request.contextPath}/getImgs",
+                    type: "GET",
+                    data,
+                    //dataType : "json",
+                    success: function (result) {
+                        for (let i = 0; i < result.length; i++) {
+                            // 只留一个remark
+                            remark = "";
+                            html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                            remark += '<div><span>' + result[i].remark + '<span/></div>';
+                        }
+                        $("#carousel").append(html);
+                        if (remark.indexOf("null") < 0) {
+                            remark_html = remark;
+                            $("#remark").append(remark);
+                        }
+                        // 如果没有轮播图就隐藏
+                        if (result.length == 0) {
+                            document.getElementById("test1").style.display = "none";   //隐藏
+                        } else {
+                            document.getElementById("test1").style.display = "block";  //显示
+                            ins.reload({
+                                elem: '#test1',
+                                width: result[0].imgWidth,  //设置容器宽度
+                                height: result[0].imgHeight
+                            });
+                        }
+                    }
+                });
+            }
+
+            function z3Craft(val) {
+
+            }
+
+            function z3Vice(val) {
+                $(".z3_vice input").prop("checked", false);
+                if (val == "16*7") {
+                    $(".z3_vice .z_16").show();
+                    $(".z3_vice .z_19").hide();
+                    $(".z3_vice .z_15").hide();
+                    $(".z3_vice .z_13").hide();
+                    $(".z3_vice .z_16 input:first").prop("checked", true);
+
+                }
+                if (val == "19*7") {
+                    $(".z3_vice .z_16").hide();
+                    $(".z3_vice .z_19").show();
+                    $(".z3_vice .z_15").hide();
+                    $(".z3_vice .z_13").hide();
+                    $(".z3_vice .z_19 input:first").prop("checked", true);
+                }
+                if (val == "15*5") {
+                    $(".z3_vice .z_16").hide();
+                    $(".z3_vice .z_19").hide();
+                    $(".z3_vice .z_15").show();
+                    $(".z3_vice .z_13").hide();
+                    $(".z3_vice .z_15 input:first").prop("checked", true);
+                }
+                if (val == "13*5") {
+                    $(".z3_vice .z_16").hide();
+                    $(".z3_vice .z_19").hide();
+                    $(".z3_vice .z_15").hide();
+                    $(".z3_vice .z_13").show();
+                    $(".z3_vice .z_13 input:first").prop("checked", true);
+                }
+                form.render();
+            }
+
+            function z3Select(val) {
+                $(".z3_vice").hide();
+                $(".z3_craft input[name='craft']").prop("checked", false);
+                $(".z3_craft input[name='craft']").prop("disabled", false);
+                $(".z3_craft_yj").show();
+                $(".z3_craft_zj").show();
+                $(".z3_craft_dk").show();
+                $(".z3_craft_ssx").show();
+                $(".z3_craft_yh").show();
+                $(".z3_craft_bm").show();
+                $(".z3_craft_mq").hide();
+                if (val == 0) {
+                    let menpiao_size = $("#3z_menpiao_size select option:selected").val();
+                    $("#3z_menpiao_size").show();
+                    $("#3z_kapian_size").hide();
+                    $("#3z_yuan_size").hide();
+                    $("#3z_menpiao_size select").attr("disabled", false)
+                    $("#3z_kapian_size select").attr("disabled", true)
+                    $("#3z_yuan_size select").attr("disabled", true)
+                    if (!$('input[name="switchz3Size"]:checked').val()) {
+                        $("#size").val(menpiao_size);
+                    }
+                    $(".z3_vice").show();
+                    $(".z3_craft_yj").hide();
+                    $(".z3_craft_zj").hide();
+                    $(".z3_craft_dk").hide();
+                    $(".z3_craft_ssx").hide();
+                    $(".z3_craft_yh").hide();
+                    z3Vice(menpiao_size)
+                }
+                if (val == 1) {
+                    $("#3z_menpiao_size").hide();
+                    $("#3z_kapian_size").show();
+                    $("#3z_yuan_size").hide();
+                    $("#3z_menpiao_size select").attr("disabled", true)
+                    $("#3z_kapian_size select").attr("disabled", false)
+                    $("#3z_yuan_size select").attr("disabled", true)
+                    if (!$('input[name="switchz3Size"]:checked').val()) {
+                        $("#size").val($("#3z_kapian_size select option:selected").val());
+                    }
+                    z3Craft($("#size").val())
+                }
+                if (val == 2) {
+                    $(".z3_craft_yj").hide();
+                    $(".z3_craft_zj").hide();
+                    $(".z3_craft_bm").hide();
+                    $("#3z_menpiao_size").hide();
+                    $("#3z_kapian_size").hide();
+                    $("#3z_yuan_size").show();
+                    $("#3z_menpiao_size select").attr("disabled", true)
+                    $("#3z_kapian_size select").attr("disabled", true)
+                    $("#3z_yuan_size select").attr("disabled", false)
+                    if (!$('input[name="switchz3Size"]:checked').val()) {
+                        $("#size").val($("#3z_yuan_size select option:selected").val());
+                    }
+                }
+                if ($('input[name="switchz3Size"]:checked').val()) {
+                    $(".z3_vice").hide();
+                }
+                form.render();
+            }
+
+            // 监听回车键,如果敲了回车,调用点击‘计算’
+            $(document).keydown(function (e) {
+                if (e.keyCode === 13) {
+                    $("#queryCondBtn").trigger("click");
+                }
+            });
+
+            //建造实例
+            ins = carousel.render({});
+            if ((${ sessionScope.USER_SESSION.role.contains('1010')})) {
+                $("input[name='kind']").each(function (index, value) {
+                    if ($(value).val() == "4" || $(value).val() == "3") {
+                        $(value).hide();
+                        $(value).attr("disabled", true);
+                    }
+                })
+            }
+
+            $("#number").on("input", function (e) {
+                var number = e.delegateTarget.value;
+                var kind = $("input[name='kind']:checked").val();
+                if ($("input[name='couponKind']:checked").val() == "少数量" && number > 1 && kind != "婚礼报纸" && kind != "菜单") {
+                    $("#ui_des").show();
+                } else {
+                    $("#ui_des").hide();
+                }
+            });
+
+            // 监听count输入框
+            $(function () {
+                //输入框的值改变时触发(一边尺寸小于4自动选中模切)
+                $("#size").on("input", function (e) {
+                    var s = e.delegateTarget.value
+                    //获取input输入的值
+                    // 选中模切、禁用其他
+                    let type = $("input[name='couponKind']:checked").val()
+                    let type1 = $("input[name='kind']:checked").val()
+                    if (type1 == "特种纸名片" && type == "少数量") {
+                        if ((s.split("*")[0] < 4 || s.split("*")[1] < 4)) {
+                            $(".disab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        } else if ((s.split("*")[0] >= 4 || s.split("*")[1] >= 4) && kind != 1 && kindValue != 2) { // 腰封 - 300克铜版纸不取消模切
+                            $(".disab").attr("disabled", false);
+                            $('input[class = mq]').prop('checked', false);
+                        }
+                        form.render('checkbox');
+                    }
+                });
+            });
+            form.on("checkbox(z4PeiJian)", function (data) {
+                let peijiansize = $(".peijian:checked").length;
+                if (peijiansize > 1) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('配件只能选择一种!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                if (data.value == "配尼龙绳" || data.value == "穿尼龙绳") {
+                    if ($(data.elem).is(":checked")) {
+                        $("#z4_craft .shengz").show();
+                        $("#z4_craft .shengz").prop("disabled", false);
+                    } else {
+                        $("#z4_craft .shengz").hide();
+                        $("#z4_craft .shengz").prop("disabled", true);
+                    }
+                }
+            });
+            form.on("radio(kindValue2)", function (data) {
+                if (data.value == 10) {
+                    $("#craftForm").hide();
+                    $("#craftForm").find(":input").attr("disabled", true);
+                    $("#z4_craft form")[0].reset();
+                    $("#z4_craft").show();
+                    $("#z4_craft").find(":input").attr("disabled", false);
+                    $("#z4_craft .ui_double_fm").prop("checked", true);
+                    $("#z4_craft .scolor").hide();
+                    $("#z4_craft .dadianxianhide").hide();
+                    $("#z4_craft .yahenghide").hide();
+                    $("#z4_craft .maxianhide").hide();
+                    $("#z4_craft .caiqie").prop("checked", true);
+                    form.on('checkbox(switchMQ)', function (data) {
+                        let mqLength = $("#z4_craft .mq:checked").length;
+
+                        if (mqLength > 1) {
+                            $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                            $(data.elem).prop("checked", false);
+                            layer.msg('[裁切- 模切 - 圆角]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                            return false;
+                        }
+                        if (data.value == "模切") {
+                            if ($(data.elem).is(":checked")) {
+                                $("#z4_craft .nomq").prop("checked", false).prop("disabled", true);
+                            } else {
+                                $("#z4_craft .nomq").prop("disabled", false);
+                            }
+
+                        }
+                        form.render('checkbox');
+                    });
+                    form.on("checkbox(switchCrafts)", function (data) {
+                        if (data.value == "压痕") {
+                            if ($(data.elem).is(":checked")) {
+                                $("#z4_craft .yahenghide").show();
+                            } else {
+                                $("#z4_craft .yahenghide").hide();
+                            }
+                        }
+                        if (data.value == "打点线") {
+                            if ($(data.elem).is(":checked")) {
+                                $("#z4_craft .dadianxianhide").show();
+                            } else {
+                                $("#z4_craft .dadianxianhide").hide();
+                            }
+                        }
+                        if (data.value == "打码") {
+                            if ($(data.elem).is(":checked")) {
+                                $("#z4_craft .maxianhide").show();
+                            } else {
+                                $("#z4_craft .maxianhide").hide();
+                            }
+                        }
+                        form.render('checkbox');
+                    });
+                } else {
+                    $("#craftForm").show();
+                    $("#craftForm").find(":input").attr("disabled", false);
+                    $("#z4_craft").hide();
+                    $("#z4_craft").find(":input").attr("disabled", true);
+                }
+                getProductImage();
+                form.render();
+            })
+            form.on("select(stickNum)", function (data) {
+                let html = ``;
+                let num = data.value;
+                $("#otherSize").empty()
+                if (num > 1) {
+                    for (let i = 0; i < num - 1; i++) {
+                        html += `<select name="size1" class="select">
+								<option value="6*18">6*18 mm</option>
+								<option value="6*22">6*22 mm</option>
+								<option value="6*26">6*26 mm</option>
+								<option value="8*26">8*26 mm</option>
+								<option value="8*30">8*30 mm</option>
+								<option value="15*15">15*15mm</option>
+								<option value="18*18">18*18mm</option>
+								<option value="20*20">20*20mm</option>
+								<option value="18*32">18*32 mm</option>
+								<option value="15*48">15*48 mm</option>
+								<option value="8*36">8*36 mm</option>
+                                <option value="70*50">70*50 mm</option>
+                                <option value="60*25" selected>60*25 mm</option>
+                                <option value="35*58">35*58 mm</option>
+                                <option value="41*72">41*72 mm</option>
+							</select>`;
+                    }
+                }
+                $("#otherSize").append(html)
+                form.render();
+            })
+            var couponKind = ""
+            // 选择卡片种类
+            form.on('radio(couponKind)', function (couponKindData) {
+                // 切换按钮的时候,重置kind品种
+                $("#kindForm")[0].reset();
+                // 产品种类的值
+                couponKind = couponKindData.value;
+                if (couponKind == '少数量') {
+                    $('input[class = Count]').prop('checked', false);
+                    $(".switchCount").hide();
+                    $(".diyCount").show();
+                    $(".count").hide();
+                    $(".diyCount").find(":input").attr("disabled", false);
+                    $(".count").find(":input").attr("disabled", true);
+                    $("#selectCount").attr("disabled", true);
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    // 选择少数量的时候,展示‘少数量’的品种
+                    $(".lessCount").show();
+                    $(".lessCount").find(":input").attr("disabled", false);
+                    $(".normal").hide();
+                    $(".normal").find(":input").attr("disabled", true);
+                    if (kind != "婚礼报纸" || kind != "菜单") {
+                        $("#ui_des").hide();
+                    } else {
+                        $("#ui_des").show();
+                    }
+                    form.render();
+                } else {
+                    $("#ui_des").hide();
+                    $(".switchCount").show();
+                    $(".count").show();
+                    $(".diyCount").hide();
+                    $(".count").find(":input").attr("disabled", false);
+                    $(".diyCount").find(":input").attr("disabled", true);
+                    $("#selectCount").attr("disabled", false);
+
+                    // 选择常规的时候,隐藏‘少数量’的品种
+                    $(".normal").show();
+                    $(".normal").find(":input").attr("disabled", false);
+                    $(".lessCount").hide();
+                    $(".lessCount").find(":input").attr("disabled", true);
+                    // 恢复标准数量的时候会被禁用,加这个解决
+                    form.render();
+                }
+            });
+
+            $(".guaguaSize").hide();
+            $(".guaguaSize1").hide();
+            var kind;
+            var kindValue;
+            form.on('radio(kind)', function (data) {
+                kind = data.value;
+                if (data.value == 1) {
+                    $(".ui_yf").show();
+                    $(".ui_yh").hide();
+                } else {
+                    $(".ui_yh").show();
+                    $(".ui_yf").hide();
+                }
+                $("#craftForm").show();
+                $("#craftForm").find(":input").attr("disabled", false);
+                $("#z4_craft").hide();
+                $("#z4_craft").find(":input").attr("disabled", true);
+                if (data.value == 8) {
+                    $("#doorList").show();
+                    $("#doorList").find(":input").attr("disabled", false);
+                    $("#other").hide();
+                    $("#other").find(":input").attr("disabled", true);
+                    $("#specialCard").hide();
+                    $("#specialCard").find(":input").attr("disabled", true);
+                } else {
+                    $("#other").show();
+                    $("#other").find(":input").attr("disabled", false);
+                    $("#doorList").hide();
+                    $("#doorList").find(":input").attr("disabled", true);
+                    $("#specialCard").hide();
+                    $("#specialCard").find(":input").attr("disabled", true);
+                    $(".doublefumo").find(":input").prop("checked", false);
+                }
+
+                if (data.value == 10 && $("input[name='kindValue7']:checked").val() == 8) {
+                    $(".ui_xgt").show();
+                    $(".ui_xgt").attr("disabled", false);
+                } else {
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").attr("disabled", true);
+                }
+
+
+                // !吊牌
+                if (data.value != 2) {
+                    // 隐藏吊牌600克/800克;显示原本的
+                    $("#tag").hide();
+                    $("#tag").find(":input").attr("disabled", true);
+                    if (data.value != 8) {
+                        $(".tagOther").show();
+                        $(".tagOther").find(":input").attr("disabled", false);
+                    }
+                } else {
+                    // 切换吊牌的时候,重置材质单选框
+                    $("#kindValueForm")[0].reset();
+                }
+                $("#craftForm")[0].reset();
+                if (data.value == 0 || data.value == 1) {
+                    $("#kindValueForm")[0].reset();
+                    $(".kindValue").show();
+                    $(".kindValue").attr("disabled", false);
+                    $(".kindValue2").hide();
+                    $(".kindValue2").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".kindValue4").hide();
+                    $(".kindValue4").attr("disabled", true);
+                    $(".kindValue5").hide();
+                    $(".kindValue5").attr("disabled", true);
+                    $(".kindValue7").hide();
+                    $(".kindValue7").attr("disabled", true);
+                    form.render();
+                    /*=====选择腰封的时候将工艺隐藏=====*/
+                    $("#craft").show();
+                    $(".craft").hide();
+                    $(".craft").find(":input").attr("disabled", true);
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").find(":input").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".qt").show();
+                    $(".qt").attr("disabled", false);
+                    $(".switchCount").show();
+                    $(".switchCount").find(":input").attr("disabled", false);
+                    $(".ui_fm_l").show();
+                    $('.ui_fm_l').find(":input").attr("disabled", false);
+                    form.on('radio(kindValue)', function (kindValueData) {
+                        kindValue = kindValueData.value
+                        $(".ui_fm_l").show();
+                        $('.ui_fm_l').find(":input").attr("disabled", false);
+                        // 腰封的时候,157克没有【覆膜】工艺
+                        if (data.value == 1) {
+                            // 腰封的时候,默认选择【单面覆膜】
+                            $('.fm').prop('checked', true);
+
+                            form.render('checkbox');
+                            if (kindValueData.value == 2) {
+                                $("#craftHu").show();
+                                $('.ui_fm_l').find(":input").prop('checked', true);
+                                $(".ui_fm").prop('disabled', false);
+                            } else if (kindValueData.value == 0) {
+                                $("#craftHu").show();
+                                // $(".ui_fm").prop('disabled', true);
+                                $(".ui_fm_l").hide();
+                                $('.ui_fm_l').find(":input").prop('checked', false);
+                                $('.ui_fm_l').find(":input").attr("disabled", true);
+                            } else {
+                                $("#craftHu").hide();
+                            }
+                            $('.fm').prop('disabled', false);
+                            if (kindValueData.value == 0) {
+                                $('.fm').prop('checked', false);
+                                $('.fm').prop('disabled', true);
+                            }
+                        } else {
+                            $('.fm').hide();
+                            $('.fm').prop('checked', false);
+                        }
+                        // 吊旗、腰封--300克铜版纸的时候勾选模切,且不能取消
+                        if (data.value == 0) {
+
+                            $('input[class = mq]').prop('checked', true);
+                            form.on('checkbox(switchMQ)', function (switchData) {
+                                // 吊旗/吊牌的模切
+                                if (!switchData.elem.checked) {
+                                    layer.msg('吊旗不能取消 [ 模切 ] 工艺!', {offset: ['300px', '300px']}, function () {
+                                    });
+                                    $('input[class = mq]').prop('checked', true);
+                                    form.render('checkbox');
+                                } else {
+                                    kindValueData.value = 1;
+                                }
+                                if (switchData.elem.checked) {
+                                    $(".disab").attr("disabled", true);
+                                    $('input[class = disab]').prop('checked', false);
+                                } else if (!switchData.elem.checked) {//放开模切的时候数量变成1
+                                    $(".disab").attr("disabled", false);
+                                    $('input[class = disab]').prop('checked');
+                                    $(".yahen").val(1)
+                                    $(".yadianxian").val(1)
+                                    $(".dakong").val(1)
+                                    form.render('select');
+                                }
+                                form.render('checkbox');
+                            })
+                        }
+                        if (data.value == 1) {
+                            if (kindValueData.value == 2) {
+                                $('input[class = mq]').prop('checked', true);
+                                form.on('checkbox(switchMQ)', function (switchData) {
+                                    if (kindValueData.value == 2) {
+                                        // 吊旗/吊牌的模切
+                                        if (!switchData.elem.checked) {
+                                            layer.msg('[ 腰封 - 300克铜版纸 ] 不能取消 [ 模切 ] 工艺!', {offset: ['300px', '300px']}, function () {
+                                            });
+                                            $('input[class = mq]').prop('checked', true);
+                                            form.render('checkbox');
+                                        } else {
+                                            kindValueData.value = 1;
+                                        }
+                                    }
+                                })
+                            } else {
+                                $('input[class = mq]').prop('checked', false);
+                            }
+                        }
+                        form.render('checkbox');
+                        setRemark()
+                    })
+                }/* else if (data.value == 2) {
+				if(couponKind != '少数量'){
+					$(".kindValue3").show();
+					$(".kindValue3").attr("disabled", false);
+					$(".kindValue2").hide();
+					$(".kindValue2").attr("disabled", true);
+				}else{
+					$(".kindValue2").show();
+					$(".kindValue2").attr("disabled", false);
+					$(".kindValue3").hide();
+					$(".kindValue3").attr("disabled", true);
+					// 少数量吊牌没有600/800克铜版纸
+					$(".tagOther").show();
+					$(".tagOther").find(":input").attr("disabled", false);
+					$("#tag").hide();
+					$("#tag").find(":input").attr("disabled", true);
+				}
+				$(".kindValue").hide();
+				$(".kindValue").attr("disabled", true);
+				$(".kindValue4").hide();
+				$(".kindValue4").attr("disabled", true);
+				$("#craft").show();
+				$(".craft").show();
+				$(".craft").find(":input").attr("disabled", false);
+				$('input[class = mq]').prop('checked', false);
+				$(".ui_shk_size").hide();
+				$(".ui_shk_size").attr("disabled", true);
+				$(".ui_sdk").hide();
+				$(".ui_sdk").find(":input").attr("disabled", true);
+				$(".qt").show();
+				$(".qt").attr("disabled", false);
+				$(".switchCount").show();
+				$(".switchCount").find(":input").attr("disabled", false);
+			// 特种纸名片
+			} */ else if (couponKind != "少数量" && data.value == 6) {
+                    $("#kindValueForm")[0].reset();
+                    $(".kindValue4").show();
+                    $(".kindValue4").attr("disabled", false);
+                    $(".kindValue").hide();
+                    $(".kindValue").attr("disabled", true);
+                    $(".kindValue2").hide();
+                    $(".kindValue2").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".kindValue7").hide();
+                    $(".kindValue7").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").find(":input").attr("disabled", true);
+                    $(".qt").show();
+                    $(".qt").attr("disabled", false);
+                    form.render();
+                } else if (couponKind != "少数量" && data.value == 9) {//售后卡
+                    $("#kindValueForm")[0].reset();
+                    $(".kindValue2").show();
+                    $(".kindValue2").attr("disabled", false);
+                    $(".ui_shk_size").show();
+                    $(".ui_shk_size").attr("disabled", false);
+                    $(".count").show();
+                    $(".count").find(":input").attr("disabled", false);
+                    $(".kindValue4").hide();
+                    $(".kindValue4").attr("disabled", true);
+                    $(".kindValue").hide();
+                    $(".kindValue").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".kindValue7").hide();
+                    $(".kindValue7").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".qt").hide();
+                    $(".qt").attr("disabled", true);
+                    $(".craft").hide();
+                    $(".craft").find(":input").attr("disabled", true);
+                    $("#craft").hide();
+                    $(".switchCount").hide();
+                    $(".switchCount").find(":input").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").find(":input").attr("disabled", true);
+                    $(".ui_yh").hide();
+                    form.render();
+                } else if (couponKind != "少数量" && data.value == 10) {//吸管套
+                    $(".craft").hide();
+                    $(".craft").find(":input").attr("disabled", true);
+                    $(".kindValue7").show();
+                    $(".kindValue7").attr("disabled", false);
+                    $(".qt").show();
+                    $(".qt").attr("disabled", false);
+                    $(".count").show();
+                    $(".count").find(":input").attr("disabled", false);
+                    $(".kindValue2").hide();
+                    $(".kindValue2").attr("disabled", true);
+                    $(".kindValue4").hide();
+                    $(".kindValue4").attr("disabled", true);
+                    $(".kindValue").hide();
+                    $(".kindValue").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").find(":input").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").find(":input").attr("disabled", true);
+                    $("#craft").hide();
+                    $(".ui_yh").hide();
+                } else if (data.value == 11) {//圣诞卡
+                    $(".ui_sdk").show();
+                    $(".ui_sdk").find(":input").attr("disabled", false);
+                    $(".craft").hide();
+                    $(".craft").find(":input").attr("disabled", true);
+                    $(".kindValue2").hide();
+                    $(".kindValue2").attr("disabled", true);
+                    $(".kindValue4").hide();
+                    $(".kindValue4").attr("disabled", true);
+                    $(".kindValue").hide();
+                    $(".kindValue").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".kindValue7").hide();
+                    $(".kindValue7").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".qt").hide();
+                    $(".qt").attr("disabled", true);
+                    $(".switchCount").hide();
+                    $(".switchCount").find(":input").attr("disabled", true);
+                    $(".count").hide();
+                    $(".count").find(":input").attr("disabled", true);
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").attr("disabled", true);
+                    $("#craft").hide();
+                    $(".ui_yh").hide();
+                } else if (couponKind != "少数量") {
+                    $(".kindValue").hide();
+                    $(".kindValue").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".kindValue4").hide();
+                    $(".kindValue4").attr("disabled", true);
+                    $(".kindValue7").hide();
+                    $(".kindValue7").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".kindValue2").show();
+                    $("#craft").show();
+                    $(".craft").show();
+                    $(".craft").find(":input").attr("disabled", false);
+                    $('input[class = mq]').prop('checked', false);
+                    $(".kindValue5").hide();
+                    $(".kindValue5").attr("disabled", true);
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").find(":input").attr("disabled", true);
+                    $(".qt").show();
+                    $(".qt").attr("disabled", false);
+                    $(".switchCount").show();
+                    $(".switchCount").find(":input").attr("disabled", false);
+                    $(".count").show();
+                    $(".count").find(":input").attr("disabled", false);
+                    $("#craftHu").hide();
+                    form.render('checkbox');
+                }
+
+                //卡片默认覆膜
+                if (couponKind != "少数量" && data.value != 1 && data.value != 8 && data.value != 9 && data.value != 10 && data.value != 11) {
+                    $('.ui_double_fm').prop('checked', true);
+                    form.on('checkbox(ui_fm)', function (switchData) {
+                        if (!switchData.elem.checked) {
+                            layer.msg('卡片不能取消 [覆膜] 工艺!', {offset: ['300px', '300px']}, function () {
+                            });
+                            $('.ui_double_fm').prop('checked', true);
+                            form.render('checkbox');
+                        }
+                        getProductImage(switchData.elem.checked ? switchData.value : '')
+                    })
+                } else if (data.value == 8) {
+                    $('.ui_door_fm').prop('checked', true);
+                    form.on('checkbox(switch)', function (switchData) {
+                        if (!switchData.elem.checked) {
+                            layer.msg('门挂牌不能取消 [覆膜] 工艺!', {offset: ['300px', '300px']}, function () {
+                            });
+                            $('.ui_door_fm').prop('checked', true);
+                            form.render('checkbox');
+                        }
+                    })
+                }
+                if (data.value == 13) {
+                    $("input[name='fmType']").prop('checked', false);
+                    $("input[name='fmType']")[0].checked = true;
+                    form.render('checkbox');
+                }
+                // 腰封的时候有覆膜
+                if (data.value == 1) {
+                    $(".fumo").show();
+                    $(".fumo").find(":input").attr("disabled", false);
+                    $(".doublefumo").hide();
+                    $(".doublefumo").find(":input").attr("disabled", true);
+                } else {
+                    $(".doublefumo").show();
+                    $(".doublefumo").find(":input").attr("disabled", false);
+                    $(".fumo").hide();
+                    $(".fumo").find(":input").attr("disabled", true);
+                    $(".fm").hide();
+                    $(".fm").attr("disabled", true);
+                }
+
+                // 选中吊牌的时候勾选打孔--下拉框也显示
+                if (data.value == 2) {
+                    $(".dakongHide").show();
+                    $(".value2").find(":input").attr("checked", true);
+                } else {
+                    $(".dakongHide").hide();
+                    $(".value2").find(":input").attr("checked", false);
+                }
+                // 抽奖券的时候勾选压点线、打码
+                if (data.value == 5) {
+                    $(".yadianxianHide").show();
+                    $(".value5").find(":input").attr("checked", true);
+                } else {
+                    $(".value5").find(":input").attr("checked", false);
+                    $(".yadianxianHide").hide();
+                }
+                // 存酒卡的时候勾选打码(下拉框显示)、模切,禁用第一排工艺
+                if (data.value == 7) {
+                    $(".value7").find(":input").attr("checked", false);
+                    $(".damaHide").hide();
+                    $('input[class = mq]').prop('checked', true);
+                    $('input[class = cjkDisab]').prop('checked', false);
+                    $(".cjkDisab").attr("disabled", true);
+                    // 打码勾选--编码类型说明显示
+                    $(".bmType").hide();
+                    // 切换到存酒卡的时候,把编码隐藏(4/28)
+                    $(".bianma").hide();
+                    $(".bianma").find(":input").attr("disabled", true);
+                    $('input[class = ui_hu]').prop('checked', false);
+                    $(".ui_hu").attr("disabled", true);
+                } else {
+                    // 打码,模切取消选中
+                    $(".value7").find(":input").attr("checked", false);
+                    $(".damaHide").hide();
+                    // 除‘存酒卡’外,编码类型、类型说明都隐藏
+                    $(".bianma").hide();
+                    $(".bianma").find(":input").attr("disabled", true);
+                    $(".bmType").hide();
+                }
+
+                // 腰封、吊牌、贺卡隐藏【打码】工艺
+                if (data.value == 1 || data.value == 2 || data.value == 3 || data.value == 7) {
+                    $(".dm").hide();
+                    $(".dm").find(":input").attr("disabled", true);
+                }
+
+                // 5.11:选中少数量的时候隐藏所有的【烫金】工艺
+                // 12.31恢复少数量 【烫金】工艺
+                if (couponKind == '少数量' && (data.value == '积分卡' || data.value == '抽奖卡' || data.value == '刮刮卡')) {
+                    $(".tj").hide();
+                    // 禁用没用,下面有放开
+                    //$(".tj").find(":input").attr("disabled", true);
+                    $('input[class = tjCraft]').prop('checked', false);
+                } else {
+                    $(".tj").show();
+                    $(".tj").find(":input").attr("disabled", false);
+                }
+
+                // 腰封,隐藏【烫金】工艺
+                if (data.value == 1) {
+                    $(".tj").hide();
+                    $(".tj").find(":input").attr("disabled", true);
+                }
+
+                form.render('checkbox');
+
+
+                var kind = $('input[name="kind"]:checked').val()
+                var proTypeValue = $("#proTypeValue").val()
+                // 用于轮播图的proTypeValue
+                if (kind == 8) {
+                    proTypeValue = 25
+                } else {
+                    proTypeValue = 4
+                }
+                //kind != 1 && kind != 2 && kind != 3 &&
+                if (true) {
+                    // 轮播图
+                    var html = " ";
+                    var remark = " ";
+                    // 清空轮播图
+                    $("#carousel").empty();
+                    $("#remark").empty();
+                    let kindValue2 = $("input[name='kindValue2']:checked").val();
+                    // 轮播图
+
+                    let params = {
+                        proTypeValue: proTypeValue,
+                        kindValue: kind
+                    }
+                    if (kind == "3") {
+                        params.kind2Value = kindValue2
+                    }
+                    $.ajax({
+                        url: "${pageContext.request.contextPath}/getImgs",
+                        type: "GET",
+                        data: params,
+                        //dataType : "json",
+                        success: function (result) {
+                            for (let i = 0; i < result.length; i++) {
+                                // 只留一个remark
+                                remark = "";
+                                html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                                remark += '<div><span>' + result[i].remark + '<span/></div>';
+                            }
+                            $("#carousel").append(html);
+                            // 如果没有说明,就不显示null
+                            if (remark.indexOf("null") < 0) {
+                                remark_html = remark;
+                                $("#remark").append(remark);
+                            }
+                            // 如果没有轮播图就隐藏
+                            if (result.length == 0) {
+                                document.getElementById("test1").style.display = "none";   //隐藏
+                            } else {
+                                document.getElementById("test1").style.display = "block";  //显示
+                                ins.reload({
+                                    elem: '#test1',
+                                    width: result[0].imgWidth,  //设置容器宽度
+                                    height: result[0].imgHeight
+                                });
+                            }
+                        }
+                    });
+                } else {
+                    document.getElementById("test1").style.display = "none";   //隐藏
+                }
+                // 少数量展示kindValue2,隐藏kindValue、kindValue3、kindValue4
+                // 上面的else 已经有这个效果了
+                $(".scolor").hide()
+                $("#kindValueForm").show();
+                if (couponKind == "少数量") {
+                    $(".ui_shk_size").hide();
+                    $(".ui_shk_size").attr("disabled", true);
+                    $(".ui_sdk").hide();
+                    $(".ui_sdk").attr("disabled", true);
+                    $("#selectCount1").hide();
+                    $("#selectCount1").attr("disabled", true);
+                    $(".kindValue2").show();
+                    $(".kindValue2").attr("disabled", false);
+                    $(".kindValue").hide();
+                    $(".kindValue").attr("disabled", true);
+                    $(".kindValue3").hide();
+                    $(".kindValue3").attr("disabled", true);
+                    $(".kindValue4").hide();
+                    $(".kindValue4").attr("disabled", true);
+                    $(".kindValue7").hide();
+                    $(".kindValue7").attr("disabled", true);
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    // 少数量隐藏常规的工艺
+                    $(".lessCountHideCraft").show();
+                    $(".lessCountHideCraft").find(":input").attr("disabled", false);
+                    $(".normalCountHideCraft").hide();
+                    $(".normalCountHideCraft").find(":input").attr("disabled", true);
+
+                    $(".lessCountHideCraft").show();
+                    $(".lessCountHideCraft").find(":input").attr("disabled", false);
+                    $(".ui_menu_craft").hide();
+                    $(".ui_menu_craft").find(":input").attr("disabled", true);
+                    $(".z3_craft").hide()
+                    $(".z3_craft input[name='craft']").prop("disabled", true);
+                    $(".z4_craft").hide();
+                    $(".z4_craft").find(":input").attr("disabled", true);
+                    $(".kindValue5").hide();
+                    $(".kindValue5").find(":input").attr("disabled", true);
+                    $(".ui_hlbz").hide();
+                    $(".ui_hlbz").find(":input").attr("disabled", true);
+                    $(".kindValue2").show();
+                    $(".kindValue2").find(":input").attr("disabled", false);
+                    $(".qt").show();
+                    $(".qt").find(":input").attr("disabled", false);
+                    $("#size").show();
+                    $(".ui_menu_size").hide();
+                    $(".ui_menu_size").find(":input").attr("disabled", true);
+                    $(".ui_tzmp").hide();
+                    $(".ui_tzmp").find(":input").attr("disabled", true);
+                    $(".kindValue6").hide();
+                    $(".kindValue6").find(":input").attr("disabled", true);
+                    if ($("#number").val() > 1) {
+                        $("#ui_des").show();
+                    }
+                    $("#kindValueForm").show();
+
+                    $("#3zValueForm").hide();
+                    $("#3z_size").hide()
+                    $(".z3_vice").hide()
+                    $(".switchz3Size").hide();
+                    $(".size-tip-z3").hide();
+                    $(".size-tip-other").show();
+
+                    $('input[class = specialCraft]').prop('checked', false);
+                    if (data.value == '异形卡片' && data.value == "直角卡片") {
+                        $(".specialCraft").attr("disabled", true);
+                        $('input[class = specialCraft]').prop('checked', false);
+                    }
+                    if (data.value == '异形卡片') {
+                        $('input[class = specialCraft]').prop('checked', true);
+                    }
+                    if (data.value == "婚礼卡") {
+                        $(".zhijiaoCard").show();
+                        $('input[class = zhijiaoCraft]').prop('checked', true);
+                    } else {
+                        $(".zhijiaoCard").hide();
+                        $('input[class = zhijiaoCraft]').prop('checked', false);
+                    }
+
+                    if (data.value == "菜单") {
+                        $(".lessCountHideCraft").hide();
+                        $(".lessCountHideCraft").find(":input").attr("disabled", true);
+                        $(".ui_menu_craft").show();
+                        $(".ui_menu_craft").find(":input").attr("disabled", false);
+                        $(".kindValue2").hide();
+                        $(".kindValue2").find(":input").attr("disabled", true);
+                        $(".kindValue5").show();
+                        $(".kindValue5").find(":input").attr("disabled", false);
+                        $(".kindValue6").hide();
+                        $(".kindValue6").find(":input").attr("disabled", true);
+                        $(".qt").hide();
+                        $(".qt").find(":input").attr("disabled", true);
+                        $("#size").hide();
+                        $(".ui_menu_size").show();
+                        $(".ui_menu_size").find(":input").attr("disabled", false);
+                        $("input[name='craftShua']").removeAttr("checked");
+                        $(".ui_hlbz").hide();
+                        $(".ui_hlbz").find(":input").attr("disabled", true);
+                        $("#ui_des").hide();
+
+                    } else if (data.value == "婚礼报纸") {
+                        $(".ui_hlbz").show();
+                        $(".ui_hlbz").find(":input").attr("disabled", false);
+                        $(".kindValue2").hide();
+                        $(".kindValue2").find(":input").attr("disabled", true);
+                        $(".kindValue5").hide();
+                        $(".kindValue5").find(":input").attr("disabled", true);
+                        $(".kindValue6").hide();
+                        $(".kindValue6").find(":input").attr("disabled", true);
+                        $(".ui_menu_craft").hide();
+                        $(".ui_menu_craft").find(":input").attr("disabled", true);
+                        $(".lessCountHideCraft").hide();
+                        $(".lessCountHideCraft").find(":input").attr("disabled", true);
+                        $("#ui_des").hide();
+
+
+                    } else if (data.value == "特种纸名片") {
+                        $(".ui_tzmp").show();
+                        $(".ui_tzmp").find(":input").attr("disabled", false);
+                        $(".kindValue6").show();
+                        $(".kindValue6").find(":input").attr("disabled", false);
+                        $(".ui_hlbz").hide();
+                        $(".ui_hlbz").find(":input").attr("disabled", true);
+                        $(".kindValue2").hide();
+                        $(".kindValue2").find(":input").attr("disabled", true);
+                        $(".kindValue5").hide();
+                        $(".kindValue5").find(":input").attr("disabled", true);
+                        $(".ui_menu_craft").hide();
+                        $(".ui_menu_craft").find(":input").attr("disabled", true);
+                        $(".lessCountHideCraft").hide();
+                        $(".lessCountHideCraft").find(":input").attr("disabled", true);
+                        $(".ui_yh").hide();
+                        $(".ui_tz_yh").show();
+                        if ($("#number").val() > 1) {
+                            $("#ui_des").show();
+                        }
+
+                    } else if (data.value == '种子纸') {
+                        $('input[class = tjCraft]').prop('checked', false);
+                        $("#3zValueForm").show();
+                        $("#3z_size").show();
+                        $(".z3_craft").show()
+                        $(".z3_craft").find(":input").attr("disabled", false);
+                        $(".z4_craft").hide();
+                        $(".z4_craft").find(":input").attr("disabled", true);
+                        z3Select($('input[name="z3type"]:checked').val());
+                        $(".switchz3Size").show();
+                        $("#kindValueForm").hide()
+                        $(".lessCountHideCraft").hide();
+                        $(".lessCountHideCraft").find(":input").attr("disabled", true);
+                        $(".qt").hide();
+                        $('input[name="switchz3Size"]').prop('checked', false);
+                        $(".size-tip-z3").show();
+                        $(".size-tip-other").hide();
+                    } else {
+
+                    }
+                    $(".guaguaSize1").hide();
+                    $(".guaguaSize").hide();
+                    if (kind == 13 || kind == "刮刮卡") {
+                        $(".guaguaSize").show();
+                        $(".guaguaSize1 select[name='size1']").attr("disabled", true);
+                    } else {
+                        $(".guaguaSize").hide();
+                    }
+                    form.render('checkbox');
+                } else {
+                    $(".lessCountHideCraft").hide();
+                    $(".lessCountHideCraft").find(":input").attr("disabled", true);
+                    $(".ui_hlbz").hide();
+                    $(".ui_hlbz").find(":input").attr("disabled", true);
+                    $(".ui_menu_craft").hide();
+                    $(".ui_menu_craft").find(":input").attr("disabled", true);
+                    $(".ui_menu_size").hide();
+                    $(".ui_menu_size").find(":input").attr("disabled", true);
+                    $(".ui_tzmp").hide();
+                    $(".ui_tzmp").find(":input").attr("disabled", true);
+                    $(".kindValue6").hide();
+                    $(".kindValue6").find(":input").attr("disabled", true);
+                    $("#3zValueForm").hide();
+                    $("#3z_size").hide()
+                    $(".z3_vice").hide()
+                    $(".switchz3Size").hide();
+                    $(".size-tip-z3").hide();
+                    $(".z3_craft").hide();
+                    $(".z3_craft input[name='craft']").prop("disabled", true);
+                    $(".z4_craft").hide();
+                    $(".z4_craft").find(":input").attr("disabled", true);
+                    $(".size-tip-other").show();
+                    $('input[class = specialCraft]').prop('checked', false);
+
+                    $(".lessCountHideCraft").find(".specialCraft").prop('checked', false);
+                    $("#size").show();
+                    $(".guaguaSize1").hide();
+                    $(".guaguaSize").hide();
+                    if (kind == 13 || kind == "刮刮卡") {
+                        $(".guaguaSize1").show();
+                        $(".guaguaSize select[name='size1']").attr("disabled", true);
+                    } else {
+                        $(".guaguaSize1").hide();
+                    }
+                }
+                $(".kindValue2 input[value='10']").prop("disabled", true).prop("checked", false);
+                $(".kindValue2 input[value='2']").prop("disabled", false).prop("checked", true);
+
+                if (data.value == 3) {
+                    $(".kindValue2 input[value='10']").prop("disabled", false);
+                }
+                $(".carft_lius").hide();
+                $(".carft_lius checkbox[name='craft']").attr("disabled", true);
+                if (data.value == 3 && couponKind != "少数量") {
+                    $(".carft_lius").show();
+                    $(".carft_lius checkbox[name='craft']").attr("disabled", false);
+                }
+                form.render();
+            });
+            form.on('checkbox(z3Crafts)', (data) => {
+                let value = data.value;
+                let checked = $(data.elem).is(":checked");
+
+                if (value == '直角' && $(".z3_craft_yj input[name='craft']").is(":checked")) {
+                    $(data.elem).prop("checked", false);
+                    layer.msg('直角-圆角不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                }
+                if (value == '圆角' && $(".z3_craft_zj input[name='craft']").is(":checked")) {
+                    $(data.elem).prop("checked", false);
+                    layer.msg('直角-圆角不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                }
+                if (value == '模切') {
+                    $(".z3_craft_yj input[name='craft']").prop("disabled", checked);
+                    $(".z3_craft_zj input[name='craft']").prop("disabled", checked);
+                    $(".z3_craft_dk input[name='craft']").prop("disabled", checked);
+                    $(".z3_craft_ssx input[name='craft']").prop("disabled", checked);
+                    $(".z3_craft_yh input[name='craft']").prop("disabled", checked);
+                    $(".z3_craft_bm input[name='craft']").prop("disabled", checked);
+                } else {
+                    if ($(".z3_craft input[name='craft']:checked").length == 0 || checked) {
+                        $(".z3_craft_mq input[name='craft']").prop("disabled", checked);
+                    }
+                }
+                let shengz = $(".shengz:checked").length;
+                if (shengz == 1) {
+                    $(".scolor").css("display", "inline-block")
+                } else {
+                    $(".scolor").hide()
+                }
+                form.render();
+            })
+            form.on('radio(z3type)', (data) => {
+                z3Select(data.value);
+            })
+            form.on('select(z3size1)', (data) => {
+                if ($('input[name="z3type"]:checked').val() == 0) {
+                    z3Vice(data.value);
+                }
+                if ($('input[name="z3type"]:checked').val() == 1) {
+                    z3Craft(data.value)
+                }
+                $("#size").val(data.value);
+            })
+            form.on('checkbox(switchz3Size)', (data) => {
+                $(".z3_craft input[name='craft']").prop("checked", false);
+                $(".z3_craft input[name='craft']").prop("disabled", false);
+                if (data.elem.checked) {
+                    $("#3z_size").hide();
+                    $(".qt").show();
+                    $(".z3_vice").hide();
+                    $("#size").val('');
+                    $("#3zValueForm").hide();
+                    $(".z3_craft_yj").show();
+                    $(".z3_craft_zj").show();
+                    $(".z3_craft_dk").show();
+                    $(".z3_craft_ssx").show();
+                    $(".z3_craft_yh").show();
+                    $(".z3_craft_bm").show();
+                    $(".z3_craft_mq").show();
+                } else {
+                    $("#3z_size").show();
+                    $("#size").val($('select[name="z3size1"]:not(:disabled) option:checked').val());//尺寸重新赋值
+                    $(".qt").hide()
+                    z3Select($('input[name="z3type"]:checked').val());
+                    $("#3zValueForm").show();
+                }
+                form.render();
+            })
+            form.on('radio(kindValue7)', function (xgtData) {
+                if (xgtData.value == 2) {
+                    $(".ui_xgt").hide();
+                    $(".ui_xgt").find(":input").attr("disabled", true);
+                    $(".qt").show();
+                    $(".qt").find(":input").attr("disabled", false);
+                    $(".count").show();
+                    $(".count").find(":input").attr("disabled", false);
+                } else {
+                    $(".ui_xgt").show();
+                    $(".ui_xgt").find(":input").attr("disabled", false);
+                    $(".qt").hide();
+                    $(".qt").find(":input").attr("disabled", true);
+                    $(".count").hide();
+                    $(".count").find(":input").attr("disabled", true);
+                }
+
+                form.render();
+            });
+
+
+            // 监听吊牌材质
+            form.on('radio(kindValue3)', function (tagData) {
+                // !300克铜版纸
+                if (tagData.value != 3) {
+                    $(".tagOther").hide();
+                    $(".tagOther").find(":input").attr("disabled", true);
+                    $("#tag").show();
+                    $("#tag").find(":input").attr("disabled", false);
+                } else {
+                    $(".tagOther").show();
+                    $(".tagOther").find(":input").attr("disabled", false);
+                    $("#tag").hide();
+                    $("#tag").find(":input").attr("disabled", true);
+                }
+                form.render();
+            })
+            // 监听名片材质
+            form.on('radio(kindValue4)', function (specialCardData) {
+                // !300克铜版纸
+                if (specialCardData.value != 3) {
+                    $(".tagOther").hide();
+                    $(".tagOther").find(":input").attr("disabled", true);
+                    $("#specialCard").show();
+                    $("#specialCard").find(":input").attr("disabled", false);
+                    form.on('select(kindValueSelect)', function (data) {
+                        // 轮播图
+                        var html = " ";
+                        var remark = " ";
+                        // 清空轮播图
+                        $("#carousel").empty();
+                        $("#remark").empty();
+                        $.ajax({
+                            url: "${pageContext.request.contextPath}/getImgs",
+                            type: "GET",
+                            data: {
+                                proTypeValue: "4",
+                                kindValue: "6",
+                                kind2Value: data.value
+                            },
+                            //dataType : "json",
+                            success: function (result) {
+                                for (let i = 0; i < result.length; i++) {
+                                    // 只留一个remark
+                                    remark = "";
+                                    html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                                    remark += '<div><span>' + result[i].remark + '<span/></div>';
+                                }
+                                $("#carousel").append(html);
+                                // 如果没有说明,就不显示null
+                                if (remark.indexOf("null") < 0) {
+                                    remark_html = remark;
+                                    $("#remark").append(remark);
+                                }
+                                // 如果没有轮播图就隐藏
+                                if (result.length == 0) {
+                                    document.getElementById("test1").style.display = "none";   //隐藏
+                                } else {
+                                    document.getElementById("test1").style.display = "block";  //显示
+                                    ins.reload({
+                                        elem: '#test1',
+                                        width: result[0].imgWidth,  //设置容器宽度
+                                        height: result[0].imgHeight
+                                    });
+                                }
+                            }
+                        });
+
+
+                        if (data.value.length <= 4) {
+                            $("#noCraft").show();
+                            $("#hasCraft").hide();
+                            $("#noCraft").find(":input").attr("disabled", false);
+                            $("#hasCraft").find(":input").attr("disabled", true);
+                            $('.noCraft').removeAttr('disabled');
+                            $('.hasCraft').prop('disabled', 'disabled');
+
+
+                            if (data.value == '珠光纸') {
+                                $('input[class = switchCardCount]').prop('checked', false);
+                                // 默认禁用自定义的数量
+                                $(".diyCardCount").find(":input").attr("disabled", true);
+                                //【自定义数量】复选框
+                                $(".cardCount").show();
+                                // 自定义少数量
+                                form.on('checkbox(switchCardCount)', function (data) {
+                                    if (data.elem.checked) {
+                                        $(".diyCardCount").show();
+                                        $(".notDiyCardCount").hide();
+                                        $(".diyCardCount").find(":input").attr("disabled", false);
+                                        $(".notDiyCardCount").find(":input").attr("disabled", true);
+                                    } else {
+                                        $(".notDiyCardCount").show();
+                                        $(".diyCardCount").hide();
+                                        $(".notDiyCardCount").find(":input").attr("disabled", false);
+                                        $(".diyCardCount").find(":input").attr("disabled", true);
+                                    }
+                                    form.render();
+                                })
+                            } else {
+                                //【自定义数量】复选框
+                                $(".cardCount").hide();
+
+                                $(".notDiyCardCount").show();
+                                $(".diyCardCount").hide();
+                                $(".notDiyCardCount").find(":input").attr("disabled", false);
+                                $(".diyCardCount").find(":input").attr("disabled", true);
+                            }
+                            form.render();
+                        } else {
+                            $("#hasCraft").show();
+                            $("#noCraft").hide();
+                            $("#hasCraft").find(":input").attr("disabled", false);
+                            $("#noCraft").find(":input").attr("disabled", true);
+                            $('.hasCraft').removeAttr('disabled');
+                            $('.noCraft').prop('disabled', 'disabled');
+                        }
+                        form.render();
+                    })
+                } else {
+                    $(".tagOther").show();
+                    $(".tagOther").find(":input").attr("disabled", false);
+                    $("#specialCard").hide();
+                    $("#specialCard").find(":input").attr("disabled", true);
+                }
+                form.render();
+            })
+
+            // 自定义少数量
+            form.on('checkbox(switchCount)', function (data) {
+                if (data.elem.checked) {
+                    $(".diyCount").show();
+                    $(".count").hide();
+                    $(".diyCount").find(":input").attr("disabled", false);
+                    $(".count").find(":input").attr("disabled", true);
+                } else {
+                    $(".count").show();
+                    $(".diyCount").hide();
+                    $(".count").find(":input").attr("disabled", false);
+                    $(".diyCount").find(":input").attr("disabled", true);
+                    // 恢复标准数量的时候会被禁用,加这个解决
+                    form.render();
+                }
+            })
+
+            form.on('checkbox(ui_yf_fm)', function (data) {
+                var fm = $(".fm:checked").val();
+                var ui_fm = $(".ui_fm:checked").val();
+                if (fm == "单面覆膜" && ui_fm == "双面覆膜") {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('单面覆膜和双面覆膜只能选一种!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                form.render();
+            })
+
+            // 吊牌600克/800克自定义尺寸
+            form.on('checkbox(switchSize)', function (data) {
+                if (data.elem.checked) {
+                    $(".diySize").show();
+                    $(".fixedSize").hide();
+                    $(".diySize").find(":input").attr("disabled", false);
+                    $(".fixedSize").find(":input").attr("disabled", true);
+                } else {
+                    $(".fixedSize").show();
+                    $(".diySize").hide();
+                    $(".fixedSize").find(":input").attr("disabled", false);
+                    $(".diySize").find(":input").attr("disabled", true);
+                    // 恢复标准数量的时候会被禁用,加这个解决
+                    form.render();
+                }
+            })
+
+            // 监听工艺多选框
+            form.on('checkbox(switchMQ)', function (data) {
+                var kind = $('input[name="kind"]:checked').val();
+                //判断当前多选框是选中还是取消选中
+                if (kind != 7) {
+                    // 除存酒卡
+                    if (data.elem.checked && data.value == '模切') {
+                        // 选中模切时取消除烫金外的选中并禁用工艺
+                        $('input.disab').prop('checked', false);
+                        $(".disab").attr("disabled", true);
+                    } else if (!data.elem.checked && data.value == '模切') {//放开模切的时候数量变成1
+                        $(".disab").attr("disabled", false);
+                        $('input.disab').prop('checked');
+                        $(".yahen").val(1)
+                        $(".yadianxian").val(1)
+                        $(".dakong").val(1)
+                    }
+                } else {
+                    // 存酒卡
+                    if (data.elem.checked && data.value == '模切') {
+                        // 选中模切后取消除烫金、打码外的选中并禁用工艺
+                        $('input[class = cjkDisab]').prop('checked', false);
+                        $(".cjkDisab").attr("disabled", true);
+                    } else if (!data.elem.checked && data.value == '模切') {//放开模切的时候数量变成1
+                        $(".cjkDisab").attr("disabled", false);
+                        $('input[class = cjkDisab]').prop('checked');
+                        $(".yahen").val(1)
+                        $(".yadianxian").val(1)
+                        $(".dakong").val(1)
+                    }
+                }
+                form.render();
+                getProductImage(data.elem.checked ? data.value : '')
+            });
+            form.on('checkbox(ui_lius)', function (data) {
+                getProductImage(data.elem.checked ? data.value : '')
+            })
+            form.on('checkbox(fmType)', function (data) {
+                if (data.elem.checked) {
+                    $(data.elem).siblings().prop("checked", false);
+                } else {
+                    $(data.elem).prop("checked", true);
+                    layer.msg('贴膜-配膜必须选择!', {offset: ['300px', '300px']}, {icon: 5});
+                }
+
+                form.render('checkbox');
+            })
+
+
+            // 选中工艺的时候,才显示出对应下拉框
+            form.on('checkbox(switch)', function (data) {
+                // 四个只能选俩个
+                var len = $(".max:checked").length;
+                if (len > 2) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('【压痕、压点线、打孔、圆角】最多只能选2项!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                // 压痕压点线只能选一个
+                var yaLen = $(".ya:checked").length;
+                if (yaLen > 1) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('[压痕 - 压点线]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                // 单面/双面烫金只能选一个
+                var tangjin = $(".tangjin:checked").length;
+                if (tangjin > 1) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('[单面烫金 - 双面烫金]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                var hu = $(".ui_hu:checked").length;
+                if (hu > 1) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('[糊成品 - 糊半成品]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                } else if (hu == 1) {
+                    var size = $("#size").val();
+                    if ((size.split("*")[0] < 20 || size.split("*")[1] < 4) && (size.split("*")[0] < 4 || size.split("*")[1] < 20)) {
+                        $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                        $(data.elem).prop("checked", false);
+                        layer.msg('糊成品/糊半成品最小尺寸20*4cm!', {offset: ['300px', '300px']}, {icon: 5});
+                        return false;
+                    }
+                }
+
+                // 产品品种
+                var kind = $('input[name="kind"]:checked').val();
+
+                // 腰封4*4cm内无法选择【单面覆膜】工艺
+                /* if (data.value == '单面覆膜') {
+                    if(data.elem.checked){
+                        if (($("#size").val().split("*")[0] < 4 || $("#size").val().split("*")[1] < 4)) {
+                            layer.msg("[ 腰封 ] 尺寸小于4 cm无法 [ 单面覆膜 ]",{offset:['300px','300px']},function(){});
+                            $('input[class = fm]').prop('checked', false);
+                            form.render('checkbox');
+                            return false;
+                        }
+                    }
+                } */
+
+                // 打码选中的时候,显示数量下拉框、编码类型、并把数量置为1(4/28改,原来只有存酒卡才显示)
+                if (data.value == '打码') {
+                    if (data.elem.checked) {
+                        $(".bmType").show();
+                        $(".damaHide").show();
+                        $(".dama").val(1);
+                        //$('input[class = mq]').prop('disabled', true);
+                        form.render('select');
+                    } else {
+                        // 打码取消选中的时候,隐藏下拉框、编码类型
+                        $(".bianma").hide();
+                        $(".bmType").hide();
+                        $(".damaHide").hide();
+                        //$('input[class = mq]').prop('disabled', false);
+                    }
+                }
+                // 除存酒卡
+                if (kind != 7) {
+                    // 压痕数量是2的时候,切换成模切,禁用其它
+                    if (data.value == '压痕') {
+                        if (data.elem.checked) {
+                            $(".yahenHide").show();
+                            var size = $("#size").val();
+                            var length = size.split("*")[0];
+                            var width = size.split("*")[1];
+                            if ($(".yahen").val() == 1) {
+                                if ((length < 10.8 || width < 6) && (length < 6 || width < 10.8)) {
+                                    $('input[class = disab]').prop('checked', false);
+                                    $(".disab").attr("disabled", true);
+                                    $('input[class = mq]').prop('checked', true);
+                                }
+                            } else {
+                                if ((length < 13.5 || width < 5.4) && (length < 5.4 || width < 13.5)) {
+                                    $('input[class = disab]').prop('checked', false);
+                                    $(".disab").attr("disabled", true);
+                                    $('input[class = mq]').prop('checked', true);
+                                }
+                            }
+                        } else {
+                            $(".yahenHide").hide();
+                        }
+                    }
+                    // 压点线数量是2的时候,切换成模切,禁用其它
+                    if (data.value == '压点线') {
+                        if (data.elem.checked) {
+                            $(".yadianxianHide").show();
+                            if ($(".yadianxian").val() == 2) {
+                                $('input[class = disab]').prop('checked', false);
+                                $(".disab").attr("disabled", true);
+                                $('input[class = mq]').prop('checked', true);
+                            }
+                        } else {
+                            $(".yadianxianHide").hide();
+                        }
+                    }
+                    // 打孔数量是2的时候,切换成模切,禁用其它
+                    if (data.value == '打孔') {
+                        if (data.elem.checked) {
+                            $(".dakongHide").show();
+                            if ($(".dakong").val() == 2) {
+                                $('input[class = disab]').prop('checked', false);
+                                $(".disab").attr("disabled", true);
+                                $('input[class = mq]').prop('checked', true);
+                            }
+                        } else {
+                            $(".dakongHide").hide();
+                        }
+                    }
+                    // 打码选中的时候,显示下拉框(4/28注释)
+                    /* if (data.value == '打码') {
+                        if(data.elem.checked){
+                            $(".damaHide").show();
+                        }else{
+                            $(".damaHide").hide();
+                        }
+                    } */
+                } else {
+                    // 存酒卡
+                    // 压痕数量是2的时候,切换成模切,禁用第一排
+                    if (data.value == '压痕') {
+                        if (data.elem.checked) {
+                            $(".yahenHide").show();
+                            if ($(".yahen").val() == 2) {
+                                $('input[class = cjkDisab]').prop('checked', false);
+                                $(".cjkDisab").attr("disabled", true);
+                                $('input[class = mq]').prop('checked', true);
+                            }
+                        } else {
+                            $(".yahenHide").hide();
+                        }
+                    }
+                    // 压点线数量是2的时候,切换成模切,禁用其它
+                    if (data.value == '压点线') {
+                        if (data.elem.checked) {
+                            $(".yadianxianHide").show();
+                            if ($(".yadianxian").val() == 2) {
+                                $('input[class = cjkDisab]').prop('checked', false);
+                                $(".cjkDisab").attr("disabled", true);
+                                $('input[class = mq]').prop('checked', true);
+                            }
+                        } else {
+                            $(".yadianxianHide").hide();
+                        }
+
+                    }
+                    // 打孔数量是2的时候,切换成模切,禁用其它
+                    if (data.value == '打孔') {
+                        if (data.elem.checked) {
+                            $(".dakongHide").show();
+                            if ($(".dakong").val() == 2) {
+                                $('input[class = cjkDisab]').prop('checked', false);
+                                $(".cjkDisab").attr("disabled", true);
+                                $('input[class = mq]').prop('checked', true);
+                            }
+                        } else {
+                            $(".dakongHide").hide();
+                        }
+                    }
+
+                    // 存酒卡打码(4/28注释)
+                    /* if (data.value == '打码') {
+                        // 打码选中的时候,显示数量下拉框、编码类型、并把数量置为1
+                        if(data.elem.checked){
+                            $(".bmType").show();
+                            $(".damaHide").show();
+                            $(".dama").val(1);
+                            form.render('select');
+                        }else{
+                            // 打码取消选中的时候,隐藏下拉框、编码类型
+                            $(".bianma").hide();
+                            $(".bmType").hide();
+                            $(".damaHide").hide();
+                        }
+                    } */
+                }
+
+                if (kind == '特种纸名片') {
+                    $(data.elem).prop('disabled', false);
+                    if (data.elem.checked) {
+                        $(data.elem).siblings('input').prop('disabled', true);
+                    } else {
+                        $(data.elem).siblings('input').prop('disabled', false);
+                    }
+                }
+                form.render('checkbox');
+                getProductImage(data.elem.checked ? data.value : '')
+            });
+
+            // 婚礼卡选中工艺的时候,不能同时选
+            form.on('checkbox(switchCraft)', function (data) {
+                // 婚礼卡 直角/异形只能选一个
+                var zhijiaoCraft = $(".zhijiaoCraft:checked").length;
+                var specialCraft = $(".specialCraft:checked").length;
+                if (zhijiaoCraft + specialCraft > 1) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('[直角 - 异形]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                // 少数量烫金只能选一个
+                var tjCraft = $(".tjCraft:checked").length;
+                if (tjCraft > 1) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('[烫金 - 彩色印刷+烫金]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+                let kingv = $("input[name='kind']:checked").val()
+                if (kingv == "异形卡片") {
+                    if (data.value == "异形" && !$(data.elem).is(":checked")) {
+                        layer.msg('[异形卡片 - 异形]不能取消!', {offset: ['300px', '300px']}, {icon: 5});
+                        $(data.elem).prop("checked", true);
+                        form.render('checkbox');
+                        return false;
+                    }
+                }
+            })
+
+            // 监听下拉框,数量是2的时候,切换成模切,禁用其它
+            form.on('select(yahen)', function (data) {
+                var kind = $('input[name="kind"]:checked').val();
+                // 除存酒卡
+                if (kind != 7) {
+                    if (data.value == 2) {
+                        if ($(".yh").is(':checked')) {
+                            $('input[class = disab]').prop('checked', false);
+                            $(".disab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        }
+                    }
+                } else {
+                    // 存酒卡
+                    // 数量是2的时候,切换成模切,禁用第一排
+                    if (data.value == 2) {
+                        if ($(".yh").is(':checked')) {
+                            $('input[class = cjkDisab]').prop('checked', false);
+                            $(".cjkDisab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        }
+                    }
+                }
+                form.render('checkbox');
+            });
+            form.on('select(yadianxian)', function (data) {
+                var kind = $('input[name="kind"]:checked').val();
+                // 除存酒卡
+                if (kind != 7) {
+                    if (data.value == 2) {
+                        if ($(".ydx").is(':checked')) {
+                            $('input[class = disab]').prop('checked', false);
+                            $(".disab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        }
+                    }
+                } else {
+                    // 存酒卡
+                    // 数量是2的时候,切换成模切,禁用第一排
+                    if (data.value == 2) {
+                        if ($(".ydx").is(':checked')) {
+                            $('input[class = cjkDisab]').prop('checked', false);
+                            $(".cjkDisab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        }
+                    }
+                }
+                form.render('checkbox');
+            });
+            form.on('select(dakong)', function (data) {
+                var kind = $('input[name="kind"]:checked').val();
+                // 除存酒卡
+                if (kind != 7) {
+                    if (data.value == 2) {
+                        if ($(".dk").is(':checked')) {
+                            $('input[class = disab]').prop('checked', false);
+                            $(".disab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        }
+                    }
+                } else {
+                    // 存酒卡
+                    // 数量是2的时候,切换成模切,禁用第一排
+                    if (data.value == 2) {
+                        if ($(".dk").is(':checked')) {
+                            $('input[class = cjkDisab]').prop('checked', false);
+                            $(".cjkDisab").attr("disabled", true);
+                            $('input[class = mq]').prop('checked', true);
+                        }
+                    }
+                }
+                form.render('checkbox');
+            });
+            // 监听打码下拉框,当选择存酒卡-打码-数量2的时候,显示编码下拉框
+            form.on('select(dama)', function (data) {
+                var kind = $('input[name="kind"]:checked').val();
+                // 存酒卡选择打码数量2的时候,显示编码种类(4/28改为所有产品)
+                // 选择打码数量2的时候,显示编码种类,并取消禁用(上面有禁用操作)(4/28)
+                if (data.value == 2) {
+                    $(".bianma").show();
+                    $(".bianma").find(":input").attr("disabled", false);
+                } else {
+                    $(".bianma").hide();
+                    $(".bianma").find(":input").attr("disabled", true);
+                }
+                form.render('select');
+            });
+
+            form.on('radio(ui_sdk_craft)', function (data) {
+                if (data.value == "丝带") {
+                    $(".ui_sd").show();
+                    $(".ui_sd").find(":input").attr("disabled", false);
+                } else {
+                    $(".ui_sd").hide();
+                    $(".ui_sd").find(":input").attr("disabled", true);
+                }
+                form.render();
+            });
+
+            //点击计算,计算价格
+            form.on('submit(acount_btn)', function (data) {
+                /* var wangwang = $("#wangwang").val();
+                if(wangwang == ""){
+                    layer.msg("请填写客户旺旺号!",{offset:['300px','300px']},function(){});
+                    return false;
+                } */
+                // 选中‘自定义数量’
+                if ($('input[name="switchCount"]:checked').length != 0) {
+                    if ($("#count").val() < 10000 || $("#count").val() % 1000 != 0) {
+                        layer.msg("自定义数量需要大于10000 且是1000的整数倍", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                if ($('input[name="switchCardCount"]:checked').length != 0) {
+                    if ($("#cardCount").val() > 200) {
+                        layer.msg("特种纸名片 - 珠光纸自定义数量最大不超过200", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+
+                var kind = $('input[name="kind"]:checked').val()
+                var kindValue = $('input[name="kindValue"]:checked').val()
+                // 如果是吊牌,用kind3Value
+                if (kind == 2 && couponKind != '少数量') {
+                    kindValue = $('input[name="kind3Value"]:checked').val()
+                    if (!kindValue) {
+                        layer.msg("请选择材质", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                // 如果是名片,用kind4Value
+                if (kind == 6 && couponKind != '少数量') {
+                    kindValue = $('input[name="kind4Value"]:checked').val()
+                    if (!kindValue) {
+                        layer.msg("请选择材质", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                var kindValue2 = $('input[name="kindValue2"]:checked').val()
+                var kindValue3 = $('input[name="kindValue3"]:checked').val()
+                var kindValue4 = $('input[name="kind4Value"]:checked').val()
+                var number = $("#number").val();
+                var size = $("#size").val();
+                var guaguaSize = $("#size1").val();
+                var couponKind = $("input[name='couponKind']:checked").val();
+
+                if ((size.split("*")[0] > 140 || size.split("*")[1] > 100) && (size.split("*")[0] > 100 || size.split("*")[1] > 140)) {
+                    layer.msg("卡片尺寸不能超过140*100 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                /* if ((size.split("*")[0] < 4 || size.split("*")[1] < 4)) {
+                    layer.msg("[ 卡片 ]尺寸小于4*4 cm请以 [ 插卡 - 异形插牌 ] 报价!",{offset:['300px','300px']},function(){});
+                    return false;
+                } */
+                var kindData = {
+                    0: "吊旗",
+                    1: "腰封",
+                    2: "吊牌",
+                    3: "贺卡",
+                    4: "优惠券",
+                    5: "抽奖券",
+                    6: "特价名片",
+                    7: "存酒卡",
+                    8: "门挂牌",
+                    9: "售后卡",
+                    10: "吸管套",
+                    11: "圣诞卡",
+                    13: "刮刮卡",
+                    "直角卡片": "直角卡片",
+                    "异形卡片": "异形卡片",
+                    "腰封": "腰封",
+                    "贺卡": "贺卡",
+                    "积分卡": "积分卡",
+                    "抽奖卡": "抽奖卡",
+                    "婚礼卡": "婚礼卡",
+                    "刮刮卡": "刮刮卡",
+                    "菜单": "菜单",
+                    "婚礼报纸": "婚礼报纸",
+                    "特种纸名片": "特种纸名片",
+                    "种子纸": "种子纸"
+                }, kindValueData = {
+                    0: "157克铜版纸",
+                    1: "200克铜版纸",
+                    2: "300克铜版纸",
+                    3: "300克铜版纸",
+                    4: "600克铜版纸",
+                    5: "800克铜版纸",
+                    6: "特种纸名片(不配绳子)",
+                    7: "700克白卡纸",
+                    8: "250克牛皮纸",
+                    10: "400克铜版纸"
+                };
+                var arr = [];
+                $(".sizeTang").find(":input").attr("disabled", true);
+                $("input:checkbox[name='craft']:checked").each(function (i) {
+                    // 没有被禁用的工艺加到arr中
+                    if (!$(this).is(':disabled')) {
+                        // 选中编码工艺的时候,展示打码数
+
+                        if (kindValue2 != 10) {
+                            if ($(this).val() === '打码') {
+                                if ($(".dama").val() == 2) {
+                                    arr.push($(this).val() + '(' + $(".dama").val() + '组,' + $(".bianmaSelect").val() + ')');
+                                } else {
+                                    arr.push($(this).val() + '(' + $(".dama").val() + '组)');
+                                }
+                            }
+                            if ($(this).val() === '单面烫金' || $(this).val() === '双面烫金') {
+                                $(".sizeTang").find(":input").attr("disabled", false);
+                                if ($("#lengthTang").val() == '' || $("#widthTang").val() == '') {
+                                    layer.msg('请填写烫金版尺寸!', {offset: ['300px', '300px']}, function () {
+                                    });
+                                    return false;
+                                }
+                                if (Number(size.split("*")[0]) < Number($("#lengthTang").val()) || Number(size.split("*")[1]) < Number($("#widthTang").val())) {
+                                    layer.msg('烫金版尺寸不能大于输入尺寸!', {offset: ['300px', '300px']}, function () {
+                                    });
+                                    return false;
+                                }
+                            }
+                        } else {
+                            if ($(this).val() === '打码') {
+                                arr.push("打码" + $(".maxian option:selected").val() + "组")
+                                return;
+                            }
+                            if ($(this).val() === '打点线') {
+                                arr.push("打点线" + $(".dadianxian option:selected").val() + "组")
+                                return;
+                            }
+                            if ($(this).val() === '压痕') {
+                                arr.push("压痕" + $(".yadianxian option:selected").val() + "组")
+                                return;
+                            }
+                            if ($(this).val() === '配尼龙绳' || $(this).val() === '穿尼龙绳') {
+                                arr.push($(this).val() + "-" + $("select[name='shen_color'] option:selected").val())
+                                return;
+                            }
+                        }
+
+                        arr.push($(this).val());
+                    }
+                });
+
+                // 未满足条件,禁止提交
+                if (kind == null) {
+                    layer.msg('请选择品种!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if (kind == 0 || kind == 1) {
+                    if (kindValue == null) {
+                        layer.msg('请选择材质!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                if (kind == 10) {
+                    kindValue = $("input[name='kindValue7']:checked").val();
+                    if (kindValue == 8) {
+                        size = "6.5*5.4 cm";
+                    }
+
+                    if ((size.split("*")[0] > 9 || size.split("*")[1] > 10.8) && (size.split("*")[1] > 9 || size.split("*")[0] > 10.8)) {
+                        layer.msg('吸管套最大尺寸9*10.8cm!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                if (kind != 8 && kind != 2 && kind != 6 && kind != 13 && kind != "菜单" && kind != 9 && kind != 11) {
+                    if (size == "") {
+                        layer.msg('请填写尺寸!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                if (kind == 13) {
+                    if (size.split("*")[0] > 17 || size.split("*")[1] > 17) {
+                        layer.msg("尺寸z最大不能超过17cm!");
+                        return false;
+                    }
+
+                }
+                if (kind == 1) {
+                    if (kindValue == 1) {
+                        if (arr.length > 0) {
+                            if (arr[0].indexOf("模切") >= 0) {
+                                if (size.split("*")[0] > 100 || size.split("*")[1] > 100) {
+                                    layer.msg("200克铜版纸腰封[模切]尺寸最大为100cm");
+                                    return false;
+                                }
+                            } else {
+                                if (size.split("*")[0] > 118 || size.split("*")[1] > 118) {
+                                    layer.msg("200克铜版纸腰封[裁切]尺寸最大为118cm");
+                                    return false;
+                                }
+                            }
+                        } else {
+                            if (size.split("*")[0] > 118 || size.split("*")[1] > 118) {
+                                layer.msg("200克铜版纸腰封[裁切]尺寸最大为118cm");
+                                return false;
+                            }
+                        }
+                    }
+                }
+                // 腰封尺寸小于 4 cm无法 单面覆膜
+                /* if(kind == 1){
+                    if ((size.split("*")[0] < 4 || size.split("*")[1] < 4)) {
+                        for (let i = 0; i < arr.length; i++) {
+                            if(arr[i] === '单面覆膜'){
+                                layer.msg("[ 腰封 ] 尺寸小于 4 cm无法 [ 单面覆膜 ]",{offset:['300px','300px']},function(){});
+                                return false;
+                            }
+                        }
+                    }
+                } */
+
+                // 选中[打码]工艺,判断尺寸:4.5cm以内不能打码;打2组码不能超过26*11;
+                if (arr.length > 0) {
+                    for (let i = 0; i < arr.length; i++) {
+                        if (arr[i].indexOf('打码') != -1) {
+                            if ((size.split("*")[0] < 4.5 || size.split("*")[1] < 4.5) && (size.split("*")[0] < 4.5 || size.split("*")[1] < 4.5)) {
+                                layer.msg("尺寸小于4.5cm 无法【打码】", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            } else if (((size.split("*")[0] < 13 || size.split("*")[1] < 4.5) && (size.split("*")[0] < 4.5 || size.split("*")[1] < 13))
+                                && $(".dama").val() == 2) {
+                                layer.msg("尺寸小于13*5.4cm 无法【打码】 2 组", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            } else if ((size.split("*")[0] > 26 || size.split("*")[1] > 11) && (size.split("*")[0] > 11 || size.split("*")[1] > 26)) {
+                                layer.msg("尺寸大于26 * 11cm 无法【打码】", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                    }
+                }
+                if (couponKind == '少数量' && arr.length > 0) {
+                    for (let i = 0; i < arr.length; i++) {
+                        if (arr[i].indexOf("烫金") > -1) {
+                            if ((size.split("*")[0] > 42 || size.split("*")[1] > 28.5) && (size.split("*")[0] > 28.5 || size.split("*")[1] > 42)) {
+                                layer.msg("尺寸超过 42.0*28.5cm 无法【烫金】", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                    }
+                }
+                // 吊旗
+                if (kind == 0) {
+                    // 吊旗  && 300克铜版纸
+                    if (kindValue == 2) {
+                        $("#proTypeValue").val(4)
+                    } else {
+                        $("#proTypeValue").val(13)
+                    }
+                } else if (kind == 1) { // 腰封
+                    // 腰封&&300克铜版纸
+                    if (kindValue == 2) {
+                        $("#proTypeValue").val(4)
+                    } else {
+                        $("#proTypeValue").val(15)
+                    }
+                    if ((size.split("*")[0] < 4 || size.split("*")[1] < 4) && arr[0] !== '模切') {
+                        if (kindValue == 0) {
+                            layer.msg("[ 157克铜版纸 ] 尺寸小于 4cm 无法制作", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                        /* else if (kindValue == 1) {
+                            layer.msg("尺寸小于 4cm 请勾选 [ 模切 ]", {offset : [ '300px', '300px' ]}, function() {});
+                            return false;
+                        }  */
+                    }
+                    // if ($(".fm:checked").val() == null && $(".ui_fm:checked").val() == null) {
+                    //     layer.msg("腰封不能选择不覆膜", {offset: ['300px', '300px']}, function () {
+                    //     });
+                    //     return false;
+                    // }
+                } else if (kind == 6) {
+                    $("#proTypeValue").val("特价名片")
+                } /* else if (kind == 13) {
+				$("#proTypeValue").val("刮刮卡")
+			}  */ else if (kind != 0 && kind != 1) {
+                    $("#proTypeValue").val(4)
+                }
+
+                // 判断是否选中模切标识
+                var flag = false;
+                if ((size.split("*")[0] < 4 || size.split("*")[1] < 4)) {
+                    if (arr.length > 0) {
+                        for (let i = 0; i < arr.length; i++) {
+                            if (arr[i] === '模切') {
+                                flag = true
+                            }
+                        }
+                    } else {
+                        flag = false
+                    }
+                    // 判断存酒卡是否选中模切标识
+                    if (kind == 7) {
+                        if (!flag) {
+                            layer.msg("[ 卡片 - 存酒卡 ]尺寸小于 4cm 请勾选 [ 模切 ]", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                    }
+                }
+                // 判断是否选中[异形]标识
+                var yxFlag = false;
+                if ((size.split("*")[0] > 70 || size.split("*")[1] > 53) && (size.split("*")[0] > 53 || size.split("*")[1] > 70)) {
+                    if (arr.length > 0) {
+                        for (let i = 0; i < arr.length; i++) {
+                            if (arr[i] === '异形') {
+                                yxFlag = true
+                            }
+                        }
+                    } else {
+                        yxFlag = false
+                    }
+                    // 选中异形、尺寸大于70*53厘米,return
+                    if (yxFlag) {
+                        layer.msg("选择[ 异形 ]时 尺寸应小于70*53cm", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                var l1 = Math.ceil(size.split("*")[0] / 9);
+                var w1 = Math.ceil(size.split("*")[1] / 5.4);
+                var l2 = Math.ceil(size.split("*")[1] / 9);
+                var w2 = Math.ceil(size.split("*")[0] / 5.4);
+                var min = Math.min(l1 * w1, l2 * w2);
+                if (couponKind == '常用种类') {
+                    if (kind != 7 && kind != 8) {
+                        if ((size.split("*")[0] <= 9 && size.split("*")[1] <= 5.4) || (size.split("*")[0] <= 5.4 && size.split("*")[1] <= 9)) {
+                            if ((size.split("*")[0] < 4 || size.split("*")[1] < 4)) {
+                                layer.msg("[ 卡片 ]9*5.4 cm以内,尺寸小于4 cm请以 [ 插卡 - 异形插牌 ] 报价!", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        } else if (kind == 3 || kind == 4 || kind == 5 || kind == 7) {
+                            if (min >= 6) {
+                                if ($('input[class = mq]:checked').val() == "模切") {
+                                    layer.msg("超过6位异形模切卡片请以[ 腰封 - 异形模切]报价!", {offset: ['300px', '300px']}, function () {
+                                    });
+                                    return false;
+                                }
+                            }
+                        } else {
+                            //吊牌300克
+                            if (kindValue3 == 2) {
+                                if ((size.split("*")[0] < 4 || size.split("*")[1] < 4)) {// && arr[0] !== '模切'
+                                    if (!flag) {
+                                        layer.msg("尺寸小于 4cm 请勾选 [ 模切 ]", {offset: ['300px', '300px']}, function () {
+                                        });
+                                        return false;
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+                if (kind == 1 && kindValue == 0) {
+                    if ((size.split("*")[0] > 115 || size.split("*")[1] > 84.8) && (size.split("*")[0] > 84.8 || size.split("*")[1] > 115)) {
+                        layer.msg("157克腰封尺寸不能超过 115*84.8 cm", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                if (kind == 13 || kind == "刮刮卡") {
+                    let awards = $("input[name='awards']").val();
+
+                    if (awards > 1) {
+                        if ($('input[class = mq]:checked').val() == "模切") {
+                            layer.msg("异形刮刮卡2个奖项以上无法报价!", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                    }
+                }
+                // 选择了少数量
+                if (couponKind == '少数量') {
+                    guaguaSize = $("#size2").val();
+                    $("#proTypeValue").val("卡片少数量")
+                    $("#proTypeLabel").val(kindData[kind])
+                    if ((size.split("*")[0] > 42 || size.split("*")[1] > 28.5) && (size.split("*")[0] > 28.5 || size.split("*")[1] > 42)) {
+                        layer.msg("尺寸超过 42.0*28.5cm 无法报价", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if (kind == "种子纸") {
+                        let type = $('input[name="z3type"]:checked').val();
+                        let switchz3Size = $('input[name="switchz3Size"]:checked').val()
+                        if ((size.split("*")[0] < 8 || size.split("*")[1] < 5) && (size.split("*")[0] < 5 || size.split("*")[1] < 8)) {
+                            layer.msg("尺寸小于 8*5cm 无法报价", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                        if ((size.split("*")[0] > 20 || size.split("*")[1] > 30) && (size.split("*")[0] > 30 || size.split("*")[1] > 20)) {
+                            layer.msg("尺寸超过 20.0*30.cm 无法报价", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                        if (type == 1 || switchz3Size) {
+                            if (arr.indexOf("圆角") == -1 && arr.indexOf("直角") == -1 && arr.indexOf("模切") == -1) {
+                                layer.msg("圆角,直角,模切必选 无法报价", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+
+                    } else if (kind != "异形卡片") {
+                        if ((size.split("*")[0] > 70 || size.split("*")[1] > 70)) {
+                            if ($("#count").val() != 1 && $("#count").val() != 5 && $("#count").val() % 10 != 0) {
+                                layer.msg("该尺寸数量必须为1;5;或 10的倍数", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                        if ((size.split("*")[0] > 72.6 || size.split("*")[1] > 52.6) && (size.split("*")[0] > 52.6 || size.split("*")[1] > 72.6)) {
+                            layer.msg("少数量尺寸不能超过 72.6*52.6 cm", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                    } else {
+                        if ((size.split("*")[0] > 70 || size.split("*")[1] > 53) && (size.split("*")[0] > 53 || size.split("*")[1] > 70)) {
+                            layer.msg("【异形卡片】尺寸不能超过 70*53 cm", {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                    }
+                    if (number > 1) {
+                        if ($("#desType option:selected").val() == "" || $("#desType option:selected").val() == null) {
+                            if (kind != "婚礼报纸" && kind != "菜单") {
+                                layer.msg('请选择设计内容!', {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                    }
+                    // 选择少数量时,取消常规数量提交
+                    $("#selectCount").val("")
+                }
+
+                // 门挂牌
+                if (kind == 8) {
+                    $("#proTypeValueDoorList").val(25)
+                }
+                // 吊旗&&300克铜版纸
+                if (kind == 0 && kindValue == 2) {
+                    $("#d").val("13")
+                } else if (kind == 1 && kindValue == 2) {
+                    $("#d").val("15")
+                } else {
+                    $("#d").val("")
+                }
+                form.render();
+
+                // 300克铜版纸
+                if (kind != 0 && kind != 1 && kind != 2 && kind != 6 && kind != 10) {
+                    kindValue = 2
+                }
+                if (kind == 2 && couponKind == '少数量') {
+                    kindValue = 2
+                }
+                if (couponKind != "少数量" && kindValue2 == 10) {
+                    kindValue = 10;
+                }
+                //少数量没有工艺
+                //没选中[模切],设置工艺为“直角裁切”
+                if (couponKind != '少数量') {
+                    var mqFlag = false;
+                    if (arr.length > 0) {
+                        for (let i = 0; i < arr.length; i++) {
+                            if (arr[i] === '模切' || arr[i] === '圆角') {
+                                mqFlag = true
+                            }
+                        }
+                        if (!mqFlag) {
+                            //门挂牌
+                            if (kind == 8) {
+                                arr.push("模切")
+                            } else {
+                                arr.push("直角裁切")
+                            }
+                        }
+                    } else {
+                        //门挂牌
+                        if (kind == 8) {
+                            arr.push("模切")
+                        } else {
+                            arr.push("直角裁切")
+                        }
+                    }
+
+                    // 没选中[覆膜]工艺,设置工艺为“不覆膜”
+                    var fmFlag = false;
+                    if (arr.length > 0) {
+                        for (let i = 0; i < arr.length; i++) {
+                            if (arr[i].indexOf('覆') != -1) {
+                                fmFlag = true
+                            }
+                        }
+                        if (!fmFlag) {
+                            arr.push("双面不覆膜")
+                        }
+                    } else {
+                        arr.push("双面不覆膜")
+                    }
+                } else {
+                    if (kind != "种子纸") {
+                        arr.push($('input[name="craftShua"]:checked').val())
+                    }
+                    let shengz = $(".shengz:checked").length;
+                    if (shengz == 1) {
+                        let select = $(".scolor select option:selected").val();
+                        let index = arr.findIndex((e) => {
+                            return e == "绳子"
+                        });
+                        if (index >= 0) {
+                            arr[index] = select;
+                        }
+                    }
+                }
+                if ($("#countTag").val() > 10000) {
+                    layer.msg("[ 吊牌600克 ] 数量大于1万 请单独报价", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if (kindValue == 10) {
+                    if ($("#z4_craft .mq:checked").length == 0) {
+                        layer.msg("400克铜版纸裁切工艺必选", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                $.ajax({
+                    url: "${pageContext.request.contextPath}/getProductPrice",
+                    type: "GET",
+                    data: $(".big_box form").serialize(),
+                    success: function (result) {
+                        if (result.code == 100) {
+                            layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+
+                        // 特种纸名片材料
+                        var kindValueSelect;
+                        // 吊牌 && !少数量
+                        if (kind == 2 && couponKind != '少数量') {
+                            // 600/800克
+                            if ($('input[name="kind3Value"]:checked').val() != 3) {
+                                // 自定义尺寸和常规尺寸
+                                if ($('input[name="switchSize"]:checked').length == 0) {
+                                    var size1 = $(".size1").val();
+                                    size = $("#diySize").val();
+                                    if (size1) {
+                                        size = size + '厘米,' + size1
+                                    }
+                                    if ((size.split("*")[0] < 4 || size.split("*")[1] < 4)) {
+                                        layer.msg("[ 吊牌600克 ] 尺寸小于 4cm 请单独报价", {offset: ['300px', '300px']}, function () {
+                                        });
+                                        return false;
+                                    }
+                                } else {
+                                    size = $("#sizeTag option:checked").text();
+                                }
+                                number = $("#numberTag").val();
+                                arr = []
+                                arr = $('input[name="kind2Value"]:checked').val();
+                            }
+                        } else if (kind == 6 && kindValue4 == "6") {
+                            size = $(".sizeSpecialCard").val();
+                            if ((size.split("*")[0] < 5 || size.split("*")[1] < 4) && (size.split("*")[0] < 4 || size.split("*")[1] < 5)) {
+                                layer.msg("【特种纸名片】尺寸不能小于5*4 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                            number = $(".numberSpecialCard").val();
+                            arr = []
+                            $("input:checkbox[name='craft']:checked").each(function (i) {
+                                if (!$(this).is(':disabled')) {
+                                    if ($(this).val() != "双面覆哑膜") {
+                                        arr.push($(this).val());
+                                    }
+                                }
+                            });
+                            kindValueSelect = $(".kindValueSelect option:checked").text();
+                        } else if (kind == 8) {
+                            size = $("#sizeDoorList").val();
+                            number = $("#numberDoorList").val();
+                        } else if (kind == "婚礼报纸") {
+                            if ((size.split("*")[0] < 10 || size.split("*")[1] < 14) && (size.split("*")[0] < 14 || size.split("*")[1] < 10)) {
+                                layer.msg("婚礼报纸尺寸不能小于10*14 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            } else if ((size.split("*")[0] > 42 || size.split("*")[1] > 28.5) && (size.split("*")[0] > 28.5 || size.split("*")[1] > 42)) {
+                                layer.msg("婚礼报纸尺寸不能超过42*28.5 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                        if (!kindValueSelect) {
+                            kindValueSelect = ""
+                        }
+                        if (kindValueData[kindValue] == "300克铜版纸") {
+                            if ((size.split("*")[0] > 100 || size.split("*")[1] > 65) && (size.split("*")[0] > 65 || size.split("*")[1] > 100)) {
+                                layer.msg("[300克铜版纸]尺寸不能超过100*65 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                        if (kindData[kind] == "特价名片" && kindValueData[kindValue] == "300克铜版纸") {
+                            if ((size.split("*")[0] < 3 || size.split("*")[1] < 3)) {
+                                layer.msg("[特价名片]尺寸不能小于3 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                            if ((size.split("*")[0] > 9 || size.split("*")[1] > 5.4) && (size.split("*")[0] > 5.4 || size.split("*")[1] > 9)) {
+                                layer.msg("[特价名片]尺寸不能超过9*5.4 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                        let awards = $("input[name='awards']").val();
+                        if (couponKind == '少数量') {
+                            awards = 1;
+                        }
+                        let same = '同款内容';
+                        if (couponKind == '少数量' && number > 1) {
+                            same = "不同内容"
+                        }
+                        var data = result.data.proList;
+                        if (kind == 13 || kind == "刮刮卡") {
+                            var span_result = kindData[kind] + " -" + kindValueData[kindValue] + "-" + kindValueSelect + "-" + size
+                                + "厘米;刮刮膜: " + guaguaSize + "毫米- " + awards + "个奖项(" + same + ") \n" + "工艺 :" + arr + "\n";
+                        } else if (kindData[kind] == "菜单") {//菜单
+                            var cd_kind = "";
+                            if ($("input[name='kindValue5']:checked").val() == 1) {
+                                cd_kind = "300克铜版纸"
+                            } else {
+                                cd_kind = "pvc"
+                            }
+                            var span_result = kindData[kind] + "-" + cd_kind + "-" + $("#ui_menu_size").val() + "厘米\n"
+                                + "工艺:" + $(".ui_cd_craft").val() + "\n";
+                        } else if (kind == 10) {
+                            var span_result = kindData[kind] + "-" + kindValueData[kindValue] + "-" + size + "厘米\n";
+                            +"工艺:双面覆哑膜,裁切\n";
+                        } else if (kind == 9) {
+                            var span_result = kindData[kind] + "-" + kindValueData[kindValue] + "-" + $("#ui_shk_size").val() + "厘米\n";
+                            +"工艺:不覆膜裁切\n";
+                        } else if (kind == 11) {
+                            var span_result = kindData[kind] + "-700克白卡纸-" + $("#ui_sdk_size").val() + "厘米\n";
+                            var ui_gy = "工艺:双面覆哑膜,模切";
+                            var gy = $("input[name='ui_sdk_craft']:checked").val();
+                            if (gy != "无") {
+                                if (gy == "丝带") {
+                                    gy = $("input[name='sd']:checked").val() + gy;
+                                }
+                                ui_gy += "," + gy;
+                            }
+                            span_result += ui_gy + "\n";
+                        } else if (kindData[kind] == "婚礼报纸") {
+                            var span_result = kindData[kind] + "-157克铜版纸-" + size + "厘米\n";
+                        } else if (kindData[kind] == "特种纸名片") {
+                            var tzCraft = $(".ui_tzmp input[name='craft']:checked").val();
+                            var span_result = kindData[kind] + "-" + $("input[name='kindValue6']:checked").val() + "-" + size + "厘米\n";
+                            span_result += "工艺:不覆膜";
+                            if (tzCraft != null) {
+                                span_result += "," + tzCraft;
+                            }
+                            span_result += "\n";
+                        } else if (kindData[kind] == "种子纸") {
+                            let switchz3Size = $('input[name="switchz3Size"]:checked').val()
+                            var span_result = kindData[kind] + " -" + size + "厘米-(" + same + ")"
+                            if ($('input[name="z3type"]:checked').val() == 0 && !switchz3Size) {
+                                span_result = span_result + " - " + $('input[name="3z_vice"]:checked').val()
+                            }
+                            span_result = span_result + " \n" + "工艺 :" + arr + ",不覆膜" + "\n";
+                        } else {
+                            if (couponKind == "少数量") {
+
+                                arr += ",覆膜"
+                            }
+                            var span_result = kindData[kind] + " -" + kindValueData[kindValue] + "-" + kindValueSelect + "-" + size
+                                + "厘米-(" + same + ") \n" + "工艺 :" + arr + "\n";
+                        }
+
+                        if (couponKind == "少数量") {
+                            let numberType = $("#desType option:selected").text();
+                            span_result += "款数:" + number + "-" + numberType + "\n";
+                        }
+
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                        if (kind == "2") {
+                            span_result += '配送吊绳\n'
+                        }
+                        span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                        $("#span_result").val(span_result);
+
+                        var switchCount = [];
+                        $("input:checkbox[name='switchCount']:checked").each(function (i) {
+                            if (!$(this).is(':disabled')) {
+                                switchCount.push($(this).val());
+                            }
+                        });
+                        var display = $("#noCraft").css("display");
+                        if (kind == 8) {
+                            count = $("#doorCount option:selected").val();
+                        } else if (display != "none") {
+                            if (switchCount[0] == "on") {
+                                count = $("#count").val();
+                            } else {
+                                count = $("#selectCount option:selected").val();
+                            }
+                        }
+
+                        var craft = "";
+                        for (var i = 0; i < arr.length; i++) {
+                            craft += arr[i];
+                        }
+
+                        getRemark(kindData[kind], size, count + "张", kindValueData[kindValue], number, craft, "");
+                        //计算完自动复制文本
+                        var e = document.getElementById("span_result");//对象是content
+                        if (e.value != "") {
+                            e.select();//选择对象
+                            document.execCommand("Copy");//执行浏览器复制命令
+                        }
+
+                        //生成表格
+                        table.render({
+                            elem: '#priceTable',
+                            even: true, //隔行变色
+                            data: data, // 赋值已知数据
+                            width: 500,
+                            cols: [[
+                                {
+                                    field: 'number',
+                                    width: '12%',
+                                    align: "center",
+                                    title: '款数'
+                                }, {
+                                    field: 'count',
+                                    width: '16%',
+                                    align: "center",
+                                    title: '数量'
+                                }, {
+                                    field: 'price',
+                                    width: '16%',
+                                    align: "center",
+                                    title: '报价'
+                                }, {
+                                    field: 'wangwang',
+                                    align: "center",
+                                    width: '16%',
+                                    title: '折扣价'
+                                }, {
+                                    field: 'wangwang',
+                                    align: "center",
+                                    width: '19%',
+                                    title: '跳楼价'
+                                }, {
+                                    field: 'weight',
+                                    width: '21%',
+                                    align: "center",
+                                    title: '重量(kg)'
+                                }
+                            ]],
+                            done: function () {
+                            }
+                        });
+                    }
+                });
+                return false;
+            });
+        }
+    )
+    ;
+</script>
+</html>

+ 476 - 0
src/main/webapp/views/priceView/metal.jsp

@@ -0,0 +1,476 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <%@include file="/views/common.jsp" %>
+</head>
+<!-- 金属标 -->
+<style>
+</style>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h1">金属标</h1> <span style="color:red;font-weight:700;"></span>
+        <hr>
+        <form class="layui-form">
+            <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="金属标">
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="金大">金大</option>
+                        <option value="鑫灿">鑫灿</option>
+                        <option value="紫瑶">紫瑶</option>
+                    </select>
+                </div>
+            </div>
+            <p>
+                产品种类
+            </p>
+            <div class="layui-form-item">
+                <input type="radio" lay-filter="kind" name="kind" value="金属标" title="金属标">
+                <%--                <input type="radio" lay-filter="kind" name="kind" value="UV转印贴" title="UV转印贴">--%>
+            </div>
+            <div class="metal">
+                <p>
+                    颜色
+                </p>
+                <div class="layui-form-item">
+                    <select id="color" lay-filter="color" class="select" name="tcolor">
+                        <option value="金色">金色</option>
+                        <option value="银色">银色</option>
+                        <option value="蓝色">蓝色</option>
+                        <option value="绿色">绿色</option>
+                        <option value="红色">红色</option>
+                        <option value="黑色">黑色</option>
+                        <option value="橙色">橙色</option>
+                        <option value="紫色">紫色</option>
+                        <option value="玫红色">玫红色</option>
+                        <option value="玫瑰金色">玫瑰金色</option>
+                    </select>
+                </div>
+                <p>
+                    印色
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftMo" lay-filter="craftMo" value="单色" title="单色" checked="checked">
+                    <input type="radio" name="craftMo" lay-filter="craftMo" value="双色" title="双色">
+                    <input type="radio" name="craftMo" lay-filter="craftMo" value="彩色(三色)" title="彩色(三色)">
+                    <input type="radio" name="craftMo" lay-filter="craftMo" value="彩色(四色)" title="彩色(四色)">
+                </div>
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="格式:长*宽" name="size" id="size" class="layui-input"
+                           autocomplete="off">
+                </div>
+                <span style="color:red;font-weight:700;">金属标尺寸不能超过29*19 cm</span>
+                <p>
+                    数量(个)
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input"
+                           id="count1">
+                </div>
+            </div>
+            <div class="UVSticker" style="display:none" id="UVSticker">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="格式:长*宽" name="size" id="UVSize" class="layui-input"
+                           autocomplete="off">
+                </div>
+                <%--                <span style="color:red;font-weight:700;">UV转印贴尺寸不能超过500*58cm,加工艺不能超过42*28.5cm</span>--%>
+                <span style="color:red;font-weight:700;">UV转印贴尺寸不能超过500*58cm</span>
+                <p>
+                    数量(个)
+                </p>
+                <!-- <div class="count">
+                    <div class="layui-form-item">
+                        <select name="count" class="select">
+                            <option value="10">10</option>
+                            <option value="20">20</option>
+                            <option value="30">30</option>
+                            <option value="50">50</option>
+                            <option value="100">100</option>
+                            <option value="200">200</option>
+                            <option value="500">500</option>
+                            <option value="1000">1000</option>
+                            <option value="2000">2000</option>
+                            <option value="5000">5000</option>
+                            <option value="10000">10000</option>
+                        </select>
+                    </div>
+                </div> -->
+                <div class="layui-form-item">
+                    <input type="text" name="count" id="count" placeholder="请输入整数" class="layui-input"
+                           autocomplete="off">
+                </div>
+            </div>
+            <p>
+                款数
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                       class="layui-input" lay-verify="number">
+            </div>
+            <p>
+                客户旺旺
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                       class="layui-input">
+            </div>
+            <div class="UVSticker" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="专金" title="专金"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="专银" title="专银"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="烫金" title="烫金"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="烫银" title="烫银"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="烫蓝" title="烫蓝"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="烫红" title="烫红"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="烫黑" title="烫黑"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="镭射银" title="镭射银"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="镭射金" title="镭射金"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="玫瑰金" title="玫瑰金"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="印刷+烫金" title="印刷+烫金"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="印刷+烫银" title="印刷+烫银"
+                           class="craftZhuan">
+                    <input type="checkbox" name="craft" lay-filter="craftZhuan" value="双面贴" title="双面贴"
+                           class="craftZhuan">
+                </div>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftQie" calss="moqie" value="模切" lay-skin="primary" title="模切"
+                           checked="checked">
+                </div>
+            </div>
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <!--<h2>下单备注-<button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult" onclick="copyBz()">点击复制</button></h2>
+            <div>
+                <textarea rows="5" cols="75" id="bz_result" readonly="readonly"></textarea>
+            </div>-->
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div" style="margin-left:50px;">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+
+        function getProductImage() {
+            var html = " ";
+            var remark = " ";
+            let craft = $("input[name='craft']:checked").val();
+            let craftMo = $("input[name='craftMo']:checked").val();
+            let data = {
+                proTypeValue: $('input[name="kind"]:checked').val()
+            }
+            if (data.proTypeValue == '金属标' && (craftMo == '双色' || craftMo == '彩色(三色)')) {
+                data.craftValue = craftMo;
+            }
+            if (data.proTypeValue == 'UV转印贴') {
+                data.craftValue = craft;
+            }
+            // 清空轮播图
+            $("#carousel").empty();
+            $("#remark").empty();
+            $.ajax({
+                url: "${pageContext.request.contextPath}/getImgs",
+                type: "GET",
+                data,
+                success: function (result) {
+                    for (let i = 0; i < result.length; i++) {
+                        // 只留一个remark
+                        remark = "";
+                        html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                        remark += '<div><span>' + result[i].remark + '<span/></div>';
+                    }
+                    $("#carousel").append(html);
+                    // 如果没有说明,就不显示null
+                    if (remark.indexOf("null") < 0) {
+                        $("#remark").append(remark);
+                    }
+                    // 如果没有轮播图就隐藏
+                    if (result.length == 0) {
+                        document.getElementById("test1").style.display = "none";   //隐藏
+                    } else {
+                        document.getElementById("test1").style.display = "block";   //显示
+                        ins.reload({
+                            elem: '#test1',
+                            width: result[0].imgWidth,  //设置容器宽度
+                            height: result[0].imgHeight
+                        });
+                    }
+                }
+            });
+        }
+
+        //建造实例
+        ins = carousel.render({});
+
+        form.on("radio(craftMo)", function (data) {
+            getProductImage()
+        })
+        form.on('radio(kind)', function (kindData) {
+            getProductImage()
+            if (kindData.value == "金属标") {
+                // 切换为品种单选框
+                $(".metal").show();
+                $(".metal").find(":input").attr("disabled", false);
+                $(".UVSticker").hide();
+                $(".UVSticker").find(":input").attr("disabled", true);
+                $(".diyCount").hide();
+                $(".count").hide();
+                $(".diyCount").find(":input").attr("disabled", true);
+                $(".count").find(":input").attr("disabled", true);
+            } else {
+                // 少数量、专版打印的时候,切换为品种下拉框
+                $(".UVSticker").show();
+                $(".UVSticker").find(":input").attr("disabled", false);
+                $(".count").show();
+                $(".count").find(":input").attr("disabled", false);
+                $(".metal").hide();
+                $(".metal").find(":input").attr("disabled", true);
+            }
+            form.render();//必须写
+        })
+
+        // 自定义数量
+        /* 	form.on('checkbox(switchCount)', function(data) {
+                if(data.elem.checked){
+                    $(".diyCount").show();
+                    $(".count").hide();
+                    $(".diyCount").find(":input").attr("disabled", false);
+                    $(".count").find(":input").attr("disabled", true);
+                } else {
+                    $(".count").show();
+                    $(".diyCount").hide();
+                    $(".count").find(":input").attr("disabled", false);
+                    $(".diyCount").find(":input").attr("disabled", true);
+                    // 恢复标准数量的时候会被禁用,加这个解决
+                    form.render();
+                }
+            }) */
+
+        form.on('checkbox(craftZhuan)', function (data) {
+            // 专金专银只能选一个
+            var craftZhuan = $(".craftZhuan:checked").length;
+            if (craftZhuan > 1) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('[专金 - 专银]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                return false;
+            }
+            getProductImage()
+        })
+
+        // 点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+            var kind = $('input[name="kind"]:checked').val()
+            var number = $("#number").val();
+            var craftMo = $("input[name='craftMo']:checked").val();
+            if (kind == '金属标') {
+                var size = $("#size").val();
+                var color = $("#color").val();
+            } else {
+                var size = $("#UVSize").val();
+                var craftMo = $('input[name="craftMo"]:checked').val();
+                var craftShua = [$('input[name="craft"]:checked').val()];
+            }
+            if (!kind) {
+                layer.msg("请选择产品种类!", {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (!size) {
+                layer.msg("请填写尺寸!", {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            // 选中‘自定义数量’
+            /* if($('input[name="switchCount"]:checked').length != 0){
+                if ($("#count").val() > 10) {
+                    layer.msg("自定义数量只能填写十以内的整数",{offset:['300px','300px']},function(){});
+                    return false;
+                }
+            } */
+            if (kind == '金属标') {
+                if ((size.split("*")[0] > 29 || size.split("*")[1] > 19) && (size.split("*")[0] > 19 || size.split("*")[1] > 29)) {
+                    layer.msg("【金属标】尺寸不能超过29*19 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            } else {
+                if ((size.split("*")[0] > 500 || size.split("*")[1] > 58) && (size.split("*")[0] > 58 || size.split("*")[1] > 500)) {
+                    layer.msg("【UV转印贴】尺寸不能超过500*58 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if (craftShua != "" && craftShua != "双面贴" && (size.split("*")[0] > 42 || size.split("*")[1] > 28.5) && (size.split("*")[0] > 28.5 || size.split("*")[1] > 42)) {
+                    layer.msg("【UV转印贴】带工艺尺寸不能超过42*28.5 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            $.ajax({
+                url: "${path}/getProductPrice",
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    var data = result.data.proList;
+                    if (kind == '金属标') {
+                        var span_result = '金属标 - ' + color + ' - ' + size + '厘米 -' + craftMo + '-(同款内容)\n';
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                    } else {
+                        var span_result = 'UV转印贴 - ' + craftShua + ' - ' + size + '厘米 -(同款内容) - ' + [data[0].msg] + '\n';
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            data[i].kindLabel = 'UV转印贴'
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                    }
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+
+                    var craft = "";
+                    var count = "";
+                    var kindValue = "";
+                    if ($("#UVSticker").css("display") == "none") {
+                        count = $("#count1").val();
+                        kindValue = color;
+                    } else {
+                        count = $("#count").val();
+                        craft = "模切";
+                        craft += craftShua;
+                    }
+
+                    getRemark(kind, size, count + "张", kindValue, number, craft, "");
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '16%',
+                                title: '折扣价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '19%',
+                                title: '跳楼价'
+                            }, {
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+
+</script>
+</html>

+ 1821 - 0
src/main/webapp/views/priceView/poster.jsp

@@ -0,0 +1,1821 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<!-- 海报 -->
+<style>
+    .ui_feb .layui-edge {
+        right: 20px;
+    }
+</style>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h1">海报</h1> <span style="color:red;font-weight:700;"></span>
+        <hr>
+        <form class="layui-form">
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="佳达">佳达</option>
+                        <option value="领鸿">领鸿</option>
+                    </select>
+                </div>
+            </div>
+            <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="17">
+            <p>
+                类目
+            </p>
+            <div class="kindValue">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="0" title="制度牌">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="1" title="室内写真">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="2" title="户外写真">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="3" title="布">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="4" title="展架">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="5" title="刻字">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="6" title="条幅">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="7" title="贡缎布">
+                <input type="radio" lay-filter="kindValue" name="kindValue" value="8" title="锦旗">
+                <!-- <input type="radio" lay-filter="kindValue" name="kindValue" value="9" title="彩旗"> -->
+                <!--<input type="radio" lay-filter="kindValue" name="kindValue" value="9" title="号牌布">-->
+                <!--<input type="radio" lay-filter="kindValue" name="kindValue" value="10" title="帆布"> -->
+            </div>
+            <div class="qita productName">
+                <p>
+                    产品名称
+                </p>
+                <div class="layui-form-item">
+                    <select name="kind2Value" id="kind2Value" lay-filter="kind2Value" class="select" lay-search>
+                    </select>
+                </div>
+            </div>
+            <div class="dengx-type" style="display: none">
+                <p>
+                    类型
+                </p>
+                <div class="kindValue">
+                    <input type="radio" lay-filter="dengxType" name="dengxType" value="0" title="常规" checked>
+                    <input type="radio" lay-filter="dengxType" name="dengxType" value="1" title="套餐">
+                </div>
+            </div>
+            <div class="ui_jq_name" style="display:none;">
+                <p>
+                    产品名称
+                </p>
+                <div class="layui-form-item">
+                    <select name="ui_qz_name" id="ui_qz_name" lay-filter="ui_qz_name" class="select" lay-search
+                            onchange="showCq()">
+                        <option value=""></option>
+                        <option value="0">锦旗</option>
+                        <option value="1">彩旗</option>
+                    </select>
+                </div>
+            </div>
+            <div class="size qita">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                    <span class="switchSizeCoupon" style="display: none">
+                        <input type="checkbox" name="switchSize" lay-filter="switchSize" title="自定义尺寸"
+                               lay-skin="primary">
+                    </span>
+                </p>
+                <div class="layui-form-item diy-size" style="display: none">
+                    <input type="text" placeholder="格式:长*宽" name="size" id="size" class="layui-input"
+                           autocomplete="off">
+                </div>
+                <div class="layui-form-item normol-size">
+                    <select name="select_size" lay-filter="select_size" class="select">
+                        <option value="100*30">100*30</option>
+                        <option value="100*45">100*45</option>
+                        <option value="120*30">120*30</option>
+                        <option value="120*65">120*65</option>
+                        <option value="150*30">150*30</option>
+                        <option value="150*65">150*65</option>
+                        <option value="180*30">180*30</option>
+                        <option value="180*65">180*65</option>
+                    </select>
+                </div>
+            </div>
+            <div class="qita">
+                <p>
+                    数量(个)<span style="font-size:14px;color:red">一张起做</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input">
+                </div>
+            </div>
+
+            <!-- 刻字 -->
+            <div class="kezi" style="display:none">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入单个字较宽的一边尺寸</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="输入单个字较宽的一边尺寸(厘米)" name="size" id="keziSize" class="layui-input"
+                           autocomplete="off">
+                </div>
+                <p>
+                    数量(个)<span style="font-size:14px;color:red">总数量(有几个字输入几)</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="总数量(有几个字输入几)" autocomplete="off" name="count" id="count2"
+                           class="layui-input">
+                </div>
+            </div>
+
+            <!-- 布 -->
+            <div class="ui_zb" style="display:none">
+                <p>
+                    材质
+                </p>
+                <div class="layui-form-item">
+                    <select name="zbKind" id="zbKind" class="select">
+                        <option value=""></option>
+                        <option value="蓝底">蓝底</option>
+                        <option value="白底">白底</option>
+                        <option value="红底">红底</option>
+                    </select>
+                </div>
+            </div>
+            <!-- 条幅 -->
+            <div class="banner" style="display:none">
+                <p>
+                    材质
+                </p>
+                <div class="layui-form-item">
+                    <select name="kind2Value" lay-filter="kind2Value" id="bannerKind" class="select">
+                        <option value=""></option>
+                        <option value="旗帜布" selected>旗帜布</option>
+                        <%--                        <option value="10">旗帜布</option>--%>
+                        <!-- <option value="红底条幅">红底条幅</option> -->
+                    </select>
+                </div>
+                <p>
+                    宽幅
+                </p>
+                <div class="layui-form-item fixedSizeCoupon">
+                    <select name="width" id="width" class="select">
+                        <option value="50">50cm宽幅</option>
+                        <option value="60">60cm宽幅</option>
+                        <option value="70">70cm宽幅</option>
+                        <option value="80" class="redNo">80cm宽幅</option>
+                        <option value="90">90cm宽幅</option>
+                    </select>
+                </div>
+                <span class="diySizeCoupon" style="display:none">
+						<input type="text" name="width" id="diySizeCoupon" placeholder="请输入宽幅" class="layui-input"
+                               autocomplete="off">
+					</span>
+                <input type="checkbox" name="ui_tf_size" class="ui_tf_size" lay-filter="ui_tf_size" title="自定义尺寸"
+                       lay-skin="primary">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">条幅长度(输入长度)</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入条幅长度(厘米)" name="size" id="bannerSize" class="layui-input"
+                           autocomplete="off">
+                </div>
+                <p>
+                    数量(条)
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input"
+                           id="count3">
+                </div>
+            </div>
+
+            <!-- 贡缎布 -->
+            <div class="satinCloth" style="display:none">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="格式:长*宽" name="size" id="stinClothSize" class="layui-input"
+                           autocomplete="off">
+                </div>
+                <p>
+                    数量(张)
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input"
+                           id="count4">
+                </div>
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <select name="kind2Value" lay-filter="kind2Value" id="satinClothKind" class="select" lay-search>
+                        <option value="0">左缝筒</option>
+                        <option value="1">右缝筒</option>
+                        <option value="2">上缝筒</option>
+                        <option value="3">左右缝筒</option>
+                        <option value="4">上下缝筒</option>
+                        <option value="5">上缝筒左缝吊耳</option>
+                        <option value="6">四角吊耳</option>
+                    </select>
+                </div>
+            </div>
+            <p>
+                款数
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                       class="layui-input" lay-verify="number">
+            </div>
+            <p>
+                客户旺旺
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                       class="layui-input">
+            </div>
+            <div class="layui-form-item" id="ui_des" style="display:none;">
+                <p>
+                    设计内容
+                </p>
+                <select name="desType" lay-filter="desType" id="desType" class="select" lay-search>
+                    <option value=""></option>
+                    <option value="1">改序号</option>
+                    <option value="2">改名字</option>
+                    <option value="3">改二维码</option>
+                    <option value="4">改图片</option>
+                    <option value="5">改内容模板相同</option>
+                    <option value="6" selected>改内容模板完全不同</option>
+                </select>
+            </div>
+            <!-- 制度牌 -->
+            <div class="zhiDuPai" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="checkbox" name="craft" lay-filter="switch" class="pvcHide tang" value="模切" title="模切">
+                    <input type="checkbox" name="craft" lay-filter="switch" class="pvcHide tang" value="打孔" title="打孔">
+                </div>
+            </div>
+            <!-- 条幅 -->
+            <div class="banner" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftTiao" value="缝筒" title="缝筒" checked="checked">
+                    <input type="radio" name="craftTiao" value="打扣" title="打扣">
+                    <input type="radio" name="craftTiao" value="四角吊耳" title="四角吊耳">
+                    <input type="radio" name="craftTiao" value="净裁" title="净裁">
+                    <input type="radio" name="craftTiao" value="双喷" title="双喷">
+                    <!-- <input type="checkbox" name="ui_tf_qg" value="旗杆" title="旗杆" lay-filter="ui_tf_qg"> -->
+                    <div class="layui-inline edge ui_tf_count" style="width:60px;display:none">
+                        <input type="number" placeholder="请输入旗杆数" name="zheye"/>
+                    </div>
+
+                </div>
+            </div>
+            <!-- 旗帜布 -->
+            <div class="qiZhiBu" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftqz" value="缝筒" title="缝筒" checked="checked">
+                    <input type="radio" name="craftqz" value="打扣" title="打扣">
+                    <input type="radio" name="craftqz" value="四角吊耳" title="四角吊耳">
+                    <input type="radio" name="craftqz" value="净裁" title="净裁">
+                    <input type="checkbox" name="craftBu" value="双喷" title="双喷">
+                    <input type="checkbox" name="ui_qzb_qg" value="旗杆" title="旗杆" lay-filter="ui_qzb_qg">
+                    <div class="layui-inline edge ui_qzb_count" style="width:60px;display:none">
+                        <input type="number" placeholder="请输入旗杆数" name="zheye"/>
+                    </div>
+
+                </div>
+            </div>
+            <!-- 双喷布 -->
+            <div class="doubleBu" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftBu" value="车边" title="车边" checked="checked">
+                    <input type="radio" name="craftBu" value="打扣" title="打扣">
+                    <input type="radio" name="craftBu" value="留白" title="留白">
+                    <input type="radio" name="craftBu" value="净裁" title="净裁">
+                    <input type="radio" name="craftBu" value="挂轴" title="挂轴">
+                </div>
+            </div>
+            <!-- 桌布 -->
+            <div class="ui_zb" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftZb" value="" title="无" checked>
+                    <input type="radio" name="craftZb" value="花边" title="花边">
+                    <input type="radio" name="craftZb" value="直角" title="直角">
+                </div>
+            </div>
+            <!-- 喷绘布 -->
+            <div class="penHuiBu" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftPenHuiBu" value="留白内打孔" title="留白内打孔" checked>
+                    <input type="radio" name="craftPenHuiBu" value="留白外打孔" title="留白外打孔">
+                    <input type="radio" name="craftPenHuiBu" value="不留白打孔" title="不留白打孔">
+                    <input type="radio" name="craftPenHuiBu" value="留白净裁" title="留白净裁">
+                    <input type="radio" name="craftPenHuiBu" value="净裁" title="净裁">
+                </div>
+            </div>
+            <!-- 写真布/油画布/灯片 -->
+            <div class="xieZhenBu youHuaBu dengPian" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftJingcai" value="净裁" title="净裁" checked>
+                </div>
+            </div>
+            <!-- PP纸/直喷PVC -->
+            <div class="PPZhi zhiPenPVC" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftPPZhi" value="净裁" title="净裁" checked>
+                    <input type="radio" name="craftPPZhi" value="打孔" title="打孔">
+                </div>
+            </div>
+            <!-- 静电贴 -->
+            <div class="zdt_xiezhen" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    裁切工艺:
+                    <input type="radio" value="模切" title="模切" checked>
+                </div>
+                <div class="layui-form-item zdt_yin">
+                    印面:
+                    <input type="radio" name="yinmian" value="单面印刷" title="单面印刷" checked>
+                    <input type="radio" name="yinmian" value="双面印刷" title="双面印刷">
+                </div>
+            </div>
+            <!-- 软膜 -->
+            <div class="ruanMo" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftRuanMo" value="净裁" title="净裁" checked>
+                    <input type="radio" name="craftRuanMo" value="车胶边" title="车胶边">
+                </div>
+            </div>
+            <div class="craftGtt" style="display:none;">
+                <p>材质</p>
+                <div class="layui-form-item">
+                    <input type="radio" name="craftGtt" value="透明" title="透明" checked>
+                    <input type="radio" name="craftGtt" value="打白" title="打白">
+                </div>
+            </div>
+            <!-- 贡缎布 -->
+            <div class="ui_gdb" style="display:none">
+                <p>
+                    工艺
+                </p>
+                <input type="checkbox" name="ui_gdb_qg" value="旗杆" title="旗杆" lay-filter="ui_gdb_qg">
+                <div class="layui-inline edge ui_gdb_count" style="width:60px;display:none">
+                    <input type="number" placeholder="请输入旗杆数" name="yaheng"/>
+                </div>
+            </div>
+            <!-- 锦旗 -->
+            <div class="ui_jq" style="display:none">
+                <p>
+                    尺寸(cm/厘米)
+                </p>
+                <div class="layui-form-item">
+                    <select name="size" id="ui_jq_size" class="select" lay-search>
+                        <option value="60*90">60*90</option>
+                        <option value="70*110">70*110</option>
+                        <option value="80*120">80*120</option>
+                    </select>
+                </div>
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <select name="kind3Value" id="ui_jq_gy" lay-filter="kind3Value" class="select" lay-search>
+                        <option value="小龙须黄字">小龙须黄字</option>
+                        <option value="小龙须3d镀金">小龙须3d镀金</option>
+                        <option value="大龙须黄字">大龙须黄字</option>
+                        <option value="大龙须3d镀金">大龙须3d镀金</option>
+                    </select>
+                </div>
+            </div>
+            <!-- 彩旗  -->
+            <div class="ui_cq" style="display:none">
+                <p>
+                    尺寸(cm/毫米)
+                </p>
+                <div class="layui-form-item">
+                    <select name="size" id="ui_cq_size" class="select" lay-search>
+                        <option value="40*80">40*80</option>
+                        <option value="60*90">60*90</option>
+                        <option value="70*120">70*120</option>
+                        <option value="80*150">80*150</option>
+                    </select>
+                </div>
+            </div>
+            <!-- 号码布 -->
+            <div class="ui_hmp" style="display:none">
+                <p>
+                    尺寸(mm/毫米)
+                </p>
+                <div class="layui-form-item">
+                    <select name="size" id="ui_hmb_size" class="select" lay-search>
+                        <option value="240*200">240*200</option>
+                        <option value="200*140">200*140</option>
+                        <option value="120*80">120*80</option>
+                    </select>
+                </div>
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <select name="kind3Value" id="ui_hmb_gy" lay-filter="kind3Value" class="select" lay-search>
+                        <option value="春亚布">春亚布</option>
+                        <option value="贡缎布">贡缎布</option>
+                    </select>
+                </div>
+            </div>
+            <!-- 帆布 -->
+            <div class="ui_fb" style="display:none">
+                <p>
+                    材质
+                </p>
+                <div class="layui-form-item">
+                    <select name="ui_fb_name" id="ui_fb_name" lay-filter="ui_fb_name" class="select" lay-search>
+                        <option value="1">露营布</option>
+                        <option value="2">摆摊布</option>
+                    </select>
+                </div>
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽 </span>
+                    <input type="checkbox" name="switchSize" class="switchSizeCoupon" lay-filter="switchSizeCoupon"
+                           title="自定义尺寸" lay-skin="primary">
+                </p>
+                <div class="layui-form-item ui_size">
+                    <select name="size" id="ui_size" class="select">
+                        <option value="100*45">100*45</option>
+                    </select>
+                </div>
+                <span class="ui_zdy_size" style="display:none">
+						<input type="text" id="ui_zdy_size" placeholder="格式:长*宽" class="layui-input" autocomplete="off">
+					</span>
+                <p>
+                    工艺<span style="font-size:14px;color:red">木棍长度40cm</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="checkbox" name="craft" value="封边" title="封边" lay-filter="craft">
+                    <div class="layui-inline ui_feb" style="width:100px;display:none">
+                        <select name="fb" class="select fb" lay-filter="fb">
+                            <option value="1" selected>上封边</option>
+                            <option value="2">下封边</option>
+                            <option value="3">左封边</option>
+                            <option value="4">右封边</option>
+                            <option value="5">上下封边</option>
+                            <option value="6">左右封边</option>
+                        </select>
+                    </div>
+                    <input type="checkbox" name="craft" value="四角打孔" title="四角打孔" lay-filter="craft">
+                    <input type="checkbox" name="craft" value="净裁" title="净裁" lay-filter="craft">
+                    <input type="checkbox" name="craft" value="吊耳" title="吊耳" lay-filter="craft">
+                    <input type="checkbox" name="craft" value="缝兜" title="缝兜" lay-filter="craft">
+                    <input type="checkbox" name="craft" value="木棍" title="木棍" lay-filter="craft">
+                </div>
+            </div>
+            <div class="dengxiang">
+                <p>
+                    工艺
+                </p>
+                <div class="layui-form-item">
+                    <input type="checkbox" name="craft" lay-filter="switch" value="裁切" title="裁切" checked>
+                </div>
+            </div>
+            <hr>
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <!--<h2>下单备注-<button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult" onclick="copyBz()">点击复制</button></h2>
+            <div>
+                <textarea rows="5" cols="75" id="bz_result" readonly="readonly"></textarea>
+            </div>-->
+            <!-- <div>
+                <p style="color:red;font-weight:normal;font-size:23px;">UV高透贴:<br>郑州:2天发货;<br>龙岩:2-3天发货;</p>
+                <p style="color:red;font-weight:normal;font-size:23px;">其他产品:<br>17点前上传系统正常隔天发货;</p>
+            </div> -->
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div" style="margin-left:50px;">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+
+        //建造实例
+        ins = carousel.render({});
+
+        var kind;
+        $("#number").on("input", function (e) {
+            showDes()
+        });
+
+        function showDes() {
+            var number = $("#number").val();
+            let number_kindValue = $("input[name='kindValue']:checked").val();
+            let number_kind2Value = $("select[name='kind2Value'] option:selected").val();
+            if (number > 1 && ((number_kindValue == 1 && (number_kind2Value == 3 || number_kind2Value == 8 || number_kind2Value == 15)) || number_kindValue == 2)) {
+                $("#ui_des").show();
+            } else {
+                $("#ui_des").hide();
+            }
+        }
+
+        // 根据类目获取产品名称
+        form.on('radio(kindValue)', function (data) {
+            kind = data.value;
+            $(".zdt_xiezhen").hide();
+            showDes()
+            // 制度牌
+            $(".zhiDuPai").hide();
+            $(".zhiDuPai").find(":input").attr("disabled", true);
+
+            //室内写真
+            $(".PPZhi").hide();
+            $(".PPZhi").find(":input").attr("disabled", true);
+            $(".zhiPenPVC").hide();
+            $(".zhiPenPVC").find(":input").attr("disabled", true);
+            $(".ruanMo").hide();
+            $(".ruanMo").find(":input").attr("disabled", true);
+
+            //布
+            $(".penHuiBu").hide();
+            $(".penHuiBu").find(":input").attr("disabled", true);
+            $(".xieZhenBu").hide();
+            $(".xieZhenBu").find(":input").attr("disabled", true);
+            $(".doubleBu").hide();
+            $(".doubleBu").find(":input").attr("disabled", true);
+            $(".youHuaBu").hide();
+            $(".youHuaBu").find(":input").attr("disabled", true);
+            $(".qiZhiBu").hide();
+            $(".qiZhiBu").find(":input").attr("disabled", true);
+            $(".ui_zb").hide();
+            $(".ui_zb").find(":input").attr("disabled", true);
+            $(".dengxiang").hide();
+            $(".dengxiang").find(":input").attr("disabled", true);
+            // 制度牌
+            if (kind == 0) {
+                // !背胶单裱3mmPVC(户内高清)
+                if (kind2 != 12) {
+                    $(".zhiDuPai").show();
+                    $(".zhiDuPai").find(":input").attr("disabled", false);
+                }
+            }
+            // 室内写真
+            if (kind == 1) {
+                // PP纸
+                if (kind2 == 3) {
+                    $(".PPZhi").show();
+                    $(".PPZhi").find(":input").attr("disabled", false);
+                } else if (kind2 == 5) { // 直喷PVC
+                    $(".PPZhi").show();
+                    $(".PPZhi").find(":input").attr("disabled", false);
+                } else if (kind2 == 14) { // 软膜
+                    $(".ruanMo").show();
+                    $(".ruanMo").find(":input").attr("disabled", false);
+                }
+            }
+            // 户外写真
+            if (kind == 2) {
+                // 灯片
+                if (kind2 == 5) {
+                    $(".dengPian").show();
+                    $(".dengPian").find(":input").attr("disabled", false);
+                }
+            }
+            // 布
+            if (kind == 3) {
+                // 喷绘布
+                if (kind2 == 1) {
+                    $(".penHuiBu").show();
+                    $(".penHuiBu").find(":input").attr("disabled", false);
+                } else if (kind2 == 6) { // 写真布
+                    $(".xieZhenBu").show();
+                    $(".xieZhenBu").find(":input").attr("disabled", false);
+                } else if (kind2 == 7) { // 双喷布
+                    $(".doubleBu").show();
+                    $(".doubleBu").find(":input").attr("disabled", false);
+                } else if (kind2 == 8) { // 油画布
+                    $(".youHuaBu").show();
+                    $(".youHuaBu").find(":input").attr("disabled", false);
+                } else if (kind2 == 10) { // 旗帜布
+                    $(".qiZhiBu").show();
+                    $(".qiZhiBu").find(":input").attr("disabled", false);
+                } else if (kind2 == 13) {//桌布
+                    $(".ui_zb").show();
+                    $(".ui_zb").find(":input").attr("disabled", false);
+                }
+            }
+
+            // 切换类目的时候清空轮播图
+            if (data.value == 5 || data.value == 6 || data.value == 7 || data.value == 8 || data.value == 9 || data.value == 10) {
+                // 轮播图
+                var html = " ";
+                var remark = " ";
+                // 清空轮播图
+                $("#carousel").empty();
+                $("#remark").empty();
+                var proTypeValue = "";
+                if (data.value != 5 || data.value != 7) {
+                    proTypeValue = '17';
+                } else {
+                    proTypeValue = $("#proTypeValue").val();
+                }
+                $.ajax({
+                    url: "${pageContext.request.contextPath}/getImgs",
+                    type: "GET",
+                    data: {
+                        proTypeValue: proTypeValue,
+                        kindValue: $('input[name="kindValue"]:checked').val()
+                    },
+                    //dataType : "json",
+                    success: function (result) {
+                        for (let i = 0; i < result.length; i++) {
+                            // 只留一个remark
+                            remark = "";
+                            html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '" class="imgUrl"></div>';
+                            remark += '<div><span>' + result[i].remark + '<span/></div>';
+                        }
+                        $("#carousel").append(html);
+                        // 如果没有说明,就不显示null
+                        if (remark.indexOf("null") < 0) {
+                            $("#remark").append(remark);
+                        }
+
+                        // 如果没有轮播图就隐藏
+                        if (result.length == 0) {
+                            document.getElementById("test1").style.display = "none";   //隐藏
+                        } else {
+                            document.getElementById("test1").style.display = "block";   //显示
+                            ins.reload({
+                                elem: '#test1',
+                                width: result[0].imgWidth,  //设置容器宽度
+                                height: result[0].imgHeight
+                            });
+                        }
+                    }
+                });
+                if (data.value == 5) {
+                    $(".kezi").show();
+                    $(".kezi").find(":input").attr("disabled", false);
+                    $(".qita").hide();
+                    $(".qita").find(":input").attr("disabled", true);
+                }
+            } else {
+                $(".qita").show();
+                $(".qita").find(":input").attr("disabled", false);
+                $(".kezi").hide();
+                $(".kezi").find(":input").attr("disabled", true);
+            }
+            // 展架、刻字的时候隐藏尺寸
+            if (data.value != 4 && data.value != 5 && data.value != 8 && data.value != 9) {
+                $(".size").show();
+                $(".size").find(":input").attr("disabled", false);
+            } else {
+                $(".size").hide();
+                $(".size").find(":input").attr("disabled", true);
+            }
+            $(".banner").hide();
+            $(".banner").find(":input").attr("disabled", true);
+            $(".ui_jq").hide();
+            $(".ui_jq").find(":input").attr("disabled", true);
+            if (data.value == 6) {//条幅
+                $(".productName").show();
+                $(".banner").show();
+                $(".banner").find(":input").attr("disabled", false);
+                $(".qita").hide();
+                $(".qita").find(":input").attr("disabled", true);
+                $(".kezi").hide();
+                $(".kezi").find(":input").attr("disabled", true);
+                $(".satinCloth").hide();
+                $(".satinCloth").find(":input").attr("disabled", true);
+                $(".ui_jq").hide();
+                $(".ui_jq").find(":input").attr("disabled", true);
+                $(".ui_hmp").hide();
+                $(".ui_hmp").find(":input").attr("disabled", true);
+                $(".ui_jq_name").hide();
+                $(".ui_fb").hide();
+                $(".ui_fb").find(":input").attr("disabled", true);
+                $("#proTypeValue").val("17");
+                $(".ui_gdb").hide();
+                $(".ui_gdb").find(":input").attr("disabled", true);
+                $('.ui_tf_size').val("off");
+                $('.ui_tf_size').prop("checked", false);
+                $(".diySizeCoupon").hide();
+                $(".diySizeCoupon").find(":input").attr("disabled", true);
+                $(".fixedSizeCoupon").show();
+                $(".fixedSizeCoupon").find(":input").attr("disabled", false);
+            } else if (data.value == 7) {//贡缎布
+                $(".satinCloth").show();
+                $(".satinCloth").find(":input").attr("disabled", false);
+                $(".ui_gdb").show();
+                $(".ui_gdb").find(":input").attr("disabled", false);
+                $(".qita").hide();
+                $(".qita").find(":input").attr("disabled", true);
+                $(".kezi").hide();
+                $(".kezi").find(":input").attr("disabled", true);
+                $(".banner").hide();
+                $(".banner").find(":input").attr("disabled", true);
+                $(".ui_jq").hide();
+                $(".ui_jq").find(":input").attr("disabled", true);
+                $(".ui_hmp").hide();
+                $(".ui_hmp").find(":input").attr("disabled", true);
+                $(".ui_jq_name").hide();
+                $(".ui_fb").hide();
+                $(".ui_fb").find(":input").attr("disabled", true);
+                $("#proTypeValue").val("17");
+                $(".productName").show();
+            } else if (data.value == 8) {//锦旗
+                $(".qita").show();
+                $("input[name='size']").val("");
+                $(".size").hide();
+                $("input[name='count']").attr("disabled", false);
+                $(".kezi").hide();
+                $(".kezi").find(":input").attr("disabled", true);
+                $(".ui_gdb").hide();
+                $(".ui_gdb").find(":input").attr("disabled", true);
+                $(".productName").hide();
+                $(".banner").hide();
+                $(".banner").find(":input").attr("disabled", true);
+                $(".satinCloth").hide();
+                $(".satinCloth").find(":input").attr("disabled", true);
+                $(".ui_hmp").hide();
+                $(".ui_hmp").find(":input").attr("disabled", true);
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".ui_fb").hide();
+                $(".ui_fb").find(":input").attr("disabled", true);
+                $(".ui_jq_name").show();
+                $(".ui_jq").show();
+                $(".ui_jq").find(":input").attr("disabled", false);
+                $("#proTypeValue").val("锦旗");
+            } else if (data.value == 9) {//号码布
+                $(".productName").hide();
+                $(".banner").hide();
+                $("input[name='size']").val("");
+                $(".size").hide();
+                $("input[name='count']").attr("disabled", false);
+                $(".kezi").hide();
+                $(".kezi").find(":input").attr("disabled", true);
+                $(".banner").find(":input").attr("disabled", true);
+                $(".satinCloth").hide();
+                $(".satinCloth").find(":input").attr("disabled", true);
+                $(".productName").hide();
+                $(".ui_jq").hide();
+                $(".ui_jq").find(":input").attr("disabled", true);
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".ui_jq_name").hide();
+                $(".ui_fb").hide();
+                $(".ui_fb").find(":input").attr("disabled", true);
+                $(".ui_hmp").show();
+                $(".ui_hmp").find(":input").attr("disabled", false);
+                $(".ui_gdb").hide();
+                $(".ui_gdb").find(":input").attr("disabled", true);
+                $("#proTypeValue").val("号码布");
+            } else if (data.value == 10) {//帆布
+                $(".qita").show();
+                $(".qita").find(":input").attr("disabled", false);
+                $(".kezi").hide();
+                $(".kezi").find(":input").attr("disabled", true);
+                $(".productName").hide();
+                $(".banner").hide();
+                $(".banner").find(":input").attr("disabled", true);
+                $(".satinCloth").hide();
+                $(".satinCloth").find(":input").attr("disabled", true);
+                $(".ui_jq").hide();
+                $(".ui_jq").find(":input").attr("disabled", true);
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".ui_jq_name").hide();
+                $(".ui_hmp").hide();
+                $(".ui_hmp").find(":input").attr("disabled", true);
+                $(".ui_gdb").hide();
+                $(".ui_gdb").find(":input").attr("disabled", true);
+                $("input[name='size']").val("");
+                $(".size").hide();
+                $("input[name='size']").val("");
+                $(".ui_zdy_size").find(":input").attr("disabled", false);
+                /* $(".size").show();
+                $(".size").find(":input").attr("disabled", false); */
+                $(".ui_fb").show();
+                $(".ui_fb").find(":input").attr("disabled", false);
+                $("#proTypeValue").val("帆布");
+            } else {
+                $(".productName").show();
+                $(".banner").hide();
+                $(".banner").find(":input").attr("disabled", true);
+                $(".satinCloth").hide();
+                $(".satinCloth").find(":input").attr("disabled", true);
+                $(".ui_jq").hide();
+                $(".ui_jq").find(":input").attr("disabled", true);
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".ui_jq_name").hide();
+                $(".ui_hmp").hide();
+                $(".ui_hmp").find(":input").attr("disabled", true);
+                $(".ui_gdb").hide();
+                $(".ui_gdb").find(":input").attr("disabled", true);
+                $(".ui_fb").hide();
+                $(".ui_fb").find(":input").attr("disabled", true);
+                $("#proTypeValue").val("17");
+            }
+            $(".dengx-type").hide()
+            $(".switchSizeCoupon").hide()
+            $("input[name='size']").val('');
+            $(".diy-size").show();
+            $(".normol-size").hide();
+
+            form.render();
+
+            if (data.value != 5 && data.value != 6 && data.value != 8 && data.value != 9 && data.value != 10 && data.value != 11) {
+                // 切换按钮清空下拉框(防止一直重复加)
+                $("#kind2Value").empty();
+                // 下拉框第一列添加空的option
+                $('#kind2Value').append(new Option("", ""));
+                form.render("select");
+                $.ajax({
+                    url: "${pageContext.request.contextPath}/getKind2sByKind",
+                    type: "GET",
+                    dataType: "json",
+                    data: {
+                        proTypeValue: 17,
+                        kindValue: data.value
+                    },
+                    success: function (result) {
+                        $.each(result, function (index, item) {
+                            if (data.value == 1) {
+                                if (index == '16' || index == '17' || index == '18') {
+                                    if ((${ sessionScope.USER_SESSION.role.contains('1010')})) {
+                                        $('#kind2Value').append(new Option(item, index));
+                                    }
+                                } else {
+                                    $('#kind2Value').append(new Option(item, index));
+                                }
+                            } else {
+                                $('#kind2Value').append(new Option(item, index));//往下拉菜单里添加元素
+                            }
+                        });
+                        layui.form.render("select");
+                    }
+                });
+            }
+        });
+
+        form.on('radio(dengxType)', function (data) {
+            $(".switchSizeCoupon").hide();
+            $(".normol-size").show();
+            $(".diy-size").hide();
+            if (data.value == 0) {
+                $(".switchSizeCoupon").show();
+            }
+            $("input[name='switchSize']").prop("checked", false);
+            setSelectOption()
+            form.render();
+        });
+        form.on('checkbox(switchSize)', function (data) {
+            if (data.elem.checked) {
+                $(".diy-size").show();
+                $(".normol-size").hide();
+            } else {
+                $(".normol-size").show();
+                $(".diy-size").hide();
+            }
+            form.render();
+        });
+        form.on('select(select_size)', function (data) {
+            $("input[name='size']").val(data.value);
+            form.render();
+        });
+
+        function setSelectOption() {
+            let value = $("input[name='dengxType']:checked").val();
+            let kindValue = $("input[name='kindValue']:checked").val();
+            let html = `<option value="100*30" selected>100*30</option>
+                        <option value="100*45">100*45</option>
+                        <option value="120*30">120*30</option>
+                        <option value="120*65">120*65</option>
+                        <option value="150*30">150*30</option>
+                        <option value="150*65">150*65</option>
+                        <option value="180*30">180*30</option>
+                        <option value="180*65">180*65</option>`;
+            if (kindValue != 3) {
+                $("input[name='size']").val('100*30');
+            }
+            if (value == 1) {
+                html = `<option value="100*30,100*45" selected>100*30,100*45</option>
+                        <option value="120*30,120*65">120*30,120*65</option>
+                        <option value="150*30,150*65">150*30,150*65</option>
+                        <option value="180*30,180*65">180*30,180*65</option>`;
+                $("input[name='size']").val('100*30,100*45');
+            }
+            $("select[name='select_size']").empty().append(html);
+            form.render();
+        }
+
+        $('.ui_tf_size').val("off");
+        // 自定义条幅尺寸
+        form.on('checkbox(ui_tf_size)', function (data) {
+            if (data.elem.checked) {
+                $('.ui_tf_size').val("on")
+                $(".diySizeCoupon").show();
+                $(".fixedSizeCoupon").hide();
+                $(".diySizeCoupon").find(":input").attr("disabled", false);
+                $(".fixedSizeCoupon").find(":input").attr("disabled", true);
+            } else {
+                $('.ui_tf_size').val("off")
+                $(".fixedSizeCoupon").show();
+                $(".diySizeCoupon").hide();
+                $(".fixedSizeCoupon").find(":input").attr("disabled", false);
+                $(".diySizeCoupon").find(":input").attr("disabled", true);
+                // 恢复标准数量的时候会被禁用,加这个解决
+                form.render();
+            }
+        });
+
+        form.on('checkbox(craft)', function (data) {
+            if ($("input[name='craft']:checked").val() == "封边") {
+                $(".ui_feb").show();
+                $(".ui_feb select").attr("disabled", false);
+            } else {
+                $(".ui_feb").hide();
+                $(".ui_feb select").attr("disabled", true);
+            }
+            form.render();
+        });
+
+        form.on('checkbox(ui_tf_qg)', function (data) {
+            if ($("input[name='ui_tf_qg']:checked").val() == "旗杆") {
+                $(".ui_tf_count").show();
+                $(".ui_tf_count input").attr("disabled", false);
+            } else {
+                $(".ui_tf_count").hide();
+                $(".ui_tf_count input").attr("disabled", true);
+            }
+            form.render();
+        });
+
+        form.on('checkbox(ui_qzb_qg)', function (data) {
+            if ($("input[name='ui_qzb_qg']:checked").val() == "旗杆") {
+                $(".ui_qzb_count").show();
+                $(".ui_qzb_count input").attr("disabled", false);
+            } else {
+                $(".ui_qzb_count").hide();
+                $(".ui_qzb_count input").attr("disabled", true);
+            }
+            form.render();
+        });
+
+        form.on('checkbox(ui_gdb_qg)', function (data) {
+            if ($("input[name='ui_gdb_qg']:checked").val() == "旗杆") {
+                $(".ui_gdb_count").show();
+                $(".ui_gdb_count input").attr("disabled", false);
+            } else {
+                $(".ui_gdb_count").hide();
+                $(".ui_gdb_count input").attr("disabled", true);
+            }
+            form.render();
+        });
+
+        var kind2;
+        // 根据产品名称展示工艺
+        form.on('select(kind2Value)', function (data) {
+            showDes()
+            if (data.value == '红底条幅') {
+                $("#width").find("option[value = 50]").attr("selected", true);
+                $(".redNo").attr("disabled", true);
+            } else if (data.value == '彩色条幅') {
+                $(".redNo").attr("disabled", false);
+                $("#width").find("option[value = 50]").attr("selected", false);
+            }
+            let kindValue = $("input[name='kindValue']:checked").val();
+            $(".dengx-type").hide()
+            $(".switchSizeCoupon").hide()
+            $("input[name='size']").val('');
+            $(".diy-size").show();
+            $(".normol-size").hide();
+            $(".dengxiang").hide();
+            $(".dengxiang").find(":input").attr("disabled", true);
+            if (kindValue == 2 && data.value == 24) {
+                // 下拉框第一列添加空的option
+                $(".dengx-type").show()
+                $(".dengx-type input[name='dengxType']:first").click()
+                $(".switchSizeCoupon").show();
+                $(".diy-size").hide();
+                $(".normol-size").show();
+                $(".dengxiang").show();
+                $(".dengxiang").find(":input").attr("disabled", false);
+            }
+            $(".zdt_xiezhen").hide();
+            if (data.value == 8) {
+                $(".zdt_xiezhen").show();
+            }
+            form.render();
+            setSelectOption()
+
+            // 根据选择的产品出轮播图
+            // 轮播图
+            var html = " ";
+            var remark = " ";
+            // 清空轮播图
+            $("#carousel").empty();
+            $("#remark").empty();
+            $.ajax({
+                url: "${pageContext.request.contextPath}/getImgs",
+                type: "GET",
+                data: {
+                    proTypeValue: $("#proTypeValue").val(),
+                    kindValue: $('input[name="kindValue"]:checked').val(),
+                    kind2Value: $("#kind2Value option:checked").val()
+                },
+                //dataType : "json",
+                success: function (result) {
+                    for (let i = 0; i < result.length; i++) {
+                        // 只留一个remark
+                        remark = "";
+                        html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '" class="imgUrl"></div>';
+                        remark += '<div><span>' + result[i].remark + '<span/></div>';
+                    }
+                    $("#carousel").append(html);
+                    // 如果没有说明,就不显示null
+                    if (remark.indexOf("null") < 0) {
+                        $("#remark").append(remark);
+                    }
+                    //console.log(remark);
+                    // 如果没有轮播图就隐藏
+                    if (result.length == 0) {
+                        document.getElementById("test1").style.display = "none";   //隐藏
+                    } else {
+                        document.getElementById("test1").style.display = "block";   //显示
+                        ins.reload({
+                            elem: '#test1',
+                            width: result[0].imgWidth,  //设置容器宽度
+                            height: result[0].imgHeight
+                        });
+                    }
+                }
+            });
+            /*
+
+
+            kind2 = data.value;
+            // 制度牌
+            $(".zhiDuPai").hide();
+            $(".zhiDuPai").find(":input").attr("disabled", true);
+
+            //室内写真
+            $(".PPZhi").hide();
+            $(".PPZhi").find(":input").attr("disabled", true);
+            $(".zhiPenPVC").hide();
+            $(".zhiPenPVC").find(":input").attr("disabled", true);
+            $(".ruanMo").hide();
+            $(".ruanMo").find(":input").attr("disabled", true);
+
+            //布
+            $(".penHuiBu").hide();
+            $(".penHuiBu").find(":input").attr("disabled", true);
+            $(".xieZhenBu").hide();
+            $(".xieZhenBu").find(":input").attr("disabled", true);
+            $(".doubleBu").hide();
+            $(".doubleBu").find(":input").attr("disabled", true);
+            $(".youHuaBu").hide();
+            $(".youHuaBu").find(":input").attr("disabled", true);
+            $(".qiZhiBu").hide();
+            $(".qiZhiBu").find(":input").attr("disabled", true);
+            $(".ui_zb").hide();
+            $(".ui_zb").find(":input").attr("disabled", true);
+
+            // 制度牌
+            if(kind == 0){
+                // !背胶单裱3mmPVC(户内高清)
+                if(kind2 != 12){
+                    $(".zhiDuPai").show();
+                    $(".zhiDuPai").find(":input").attr("disabled", false);
+                }
+            }
+            // 室内写真
+            if(kind == 1){
+                // PP纸
+                if(kind2 == 3){
+                    $(".PPZhi").show();
+                    $(".PPZhi").find(":input").attr("disabled", false);
+                    $(".craftGtt").hide();
+                    $(".craftGtt").find(":input").attr("disabled", true);
+                }else if(kind2 == 5){ // 直喷PVC
+                    $(".PPZhi").show();
+                    $(".PPZhi").find(":input").attr("disabled", false);
+                    $(".craftGtt").hide();
+                    $(".craftGtt").find(":input").attr("disabled", true);
+                }else if(kind2 == 14){ // 软膜
+                    $(".ruanMo").show();
+                    $(".ruanMo").find(":input").attr("disabled", false);
+                    $(".craftGtt").hide();
+                    $(".craftGtt").find(":input").attr("disabled", true);
+                }else if(kind2 == 18){
+                    $(".craftGtt").show();
+                    $(".craftGtt").find(":input").attr("disabled", false);
+                }else{
+                    $(".craftGtt").hide();
+                    $(".craftGtt").find(":input").attr("disabled", true);
+                }
+            }
+            // 户外写真
+            if(kind == 2){
+                // 灯片
+                if(kind2 == 5){
+                    $(".dengPian").show();
+                    $(".dengPian").find(":input").attr("disabled", false);
+                }
+            }
+            // 布
+            if(kind == 3){
+                // 喷绘布
+                if(kind2 == 1){
+                    $(".penHuiBu").show();
+                    $(".penHuiBu").find(":input").attr("disabled", false);
+                }else if(kind2 == 6){ // 写真布
+                    $(".xieZhenBu").show();
+                    $(".xieZhenBu").find(":input").attr("disabled", false);
+                }else if(kind2 == 7){ // 双喷布
+                    $(".doubleBu").show();
+                    $(".doubleBu").find(":input").attr("disabled", false);
+                }else if(kind2 == 8){ // 油画布
+                    $(".youHuaBu").show();
+                    $(".youHuaBu").find(":input").attr("disabled", false);
+                }else if(kind2 == 10){ // 旗帜布
+                    $(".qiZhiBu").show();
+                    $(".qiZhiBu").find(":input").attr("disabled", false);
+                }else if(kind2 == 13){//桌布
+                    $(".ui_zb").show();
+                    $(".ui_zb").find(":input").attr("disabled", false);
+                }
+            }
+            // 条幅
+            if(kind == 6){
+                $(".banner").show();
+                $(".banner").find(":input").attr("disabled", false);
+            }
+
+            form.render();*/
+        });
+        // 自定义尺寸
+        form.on('checkbox(switchSizeCoupon)', function (data) {
+            if (data.elem.checked) {
+                $('.switchSizeCoupon').val("on")
+                $(".ui_zdy_size").show();
+                $("#ui_zdy_size").attr("name", "size");
+                $(".ui_size").hide();
+                $("#ui_size").attr("name", "");
+                $(".ui_zdy_size").find(":input").attr("disabled", false);
+                $(".ui_size").find(":input").attr("disabled", true);
+            } else {
+                $('.switchSizeCoupon').val("off")
+                $(".ui_size").show();
+                $("#ui_size").attr("name", "size");
+                $(".ui_zdy_size").hide();
+                $("#ui_zdy_size").attr("name", "");
+                $(".ui_size").find(":input").attr("disabled", false);
+                $(".ui_zdy_size").find(":input").attr("disabled", true);
+                // 恢复标准数量的时候会被禁用,加这个解决
+                form.render();
+            }
+        })
+
+        form.on('select(ui_qz_name)', function (data) {
+
+            var isJq = $("#ui_qz_name option:checked").val();
+            if (isJq == "0") {
+                $(".ui_jq").show();
+                $(".ui_cq").hide();
+                $("#proTypeValue").val("锦旗")
+            } else {
+                $(".ui_cq").show();
+                $(".ui_jq").hide();
+                $("#proTypeValue").val("彩旗");
+            }
+            form.render();
+        })
+
+        // 点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+            var value = $('input[name="kindValue"]:checked').val();
+            if (!value) {
+                layer.msg('请选择产品类目!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (value != 4 && value != 5 && value != 6 && value != 8 && value != 9 && value != 10) {
+                // 贡缎布
+                if (value == 7) {
+                    var size = $("#stinClothSize").val();
+                    if (size.split("*")[0] < 14 || size.split("*")[1] < 14) {
+                        layer.msg("贡缎布尺寸不能小于14 cm", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    } else if (size.split("*")[0] > 150 && size.split("*")[1] > 150) {
+                        layer.msg("贡缎布超过150cm需要拼接", {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                    if ($("input[name='ui_gdb_qg']:checked").val() == "旗杆") {
+                        var count = $("#count4").val();
+                        var number = $("#number").val();
+                        var qg_count = $("input[name='yaheng']").val();
+                        if (qg_count <= 0) {
+                            layer.msg('请输入旗杆数量!', {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        } else {
+                            if (parseFloat(qg_count) > parseFloat(count) && parseFloat(qg_count) > parseFloat(number)) {
+                                layer.msg('旗杆数量不能超过产品数量!', {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        }
+                    }
+                } else {
+                    var size = $("#size").val();
+                }
+                if (!size) {
+                    layer.msg('请填写尺寸!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if (value == 3) {
+                    if (kind2 == 10) {
+                        if (size.split("*")[1] > 200 && size.split("*")[0] > 200) {
+                            layer.msg('旗帜布两边超过200cm需要拼接!', {offset: ['300px', '300px']}, function () {
+                            });
+                        }
+                    }
+                }
+            }
+            if (value == 5) {
+                if ($("#keziSize").val().indexOf("*") != -1) {
+                    layer.msg('请填写正确的尺寸格式!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            if (value == 6) {
+                if ($("#bannerSize").val().indexOf("*") != -1) {
+                    layer.msg('请填写正确的尺寸格式!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if ($("#diySizeCoupon").val() > 160 && $("#bannerSize").val() > 160) {
+                    layer.msg('条幅两边超过160cm需要拼接!', {offset: ['300px', '300px']}, function () {
+                    });
+                }
+                /* if($("#diySizeCoupon").val() > 160){
+                    layer.msg('条幅宽幅超过160cm需要单独报价!',{offset:['300px','300px']},function(){});
+                } */
+                if ($("input[name='ui_tf_qg']:checked").val() == "旗杆") {
+                    var count = $("#count3").val();
+                    var qg_count = $("input[name='zheye']").val();
+                    if (qg_count <= 0) {
+                        layer.msg('请输入旗杆数量!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    } else {
+                        if (parseFloat(qg_count) > parseFloat(count)) {
+                            layer.msg('旗杆数量不能超过产品数量!', {offset: ['300px', '300px']}, function () {
+                            });
+                            return false;
+                        }
+                    }
+                }
+                var craftTiao = [$('input[name="craftTiao"]:checked').val()];
+                if (craftTiao == '双喷') {
+                    if ($("#bannerSize").val() > 500 || $("#diySizeCoupon").val() > 160) {
+                        layer.msg('条幅双喷不能超过50*1.6米!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                // $("#bannerSize").val($("#bannerSize").val()+'*'+$("#width").val())
+            }
+            if (value == 10) {
+                if ($("input[name='switchSize']:checked").val() == "on") {
+                    if ($("#ui_zdy_size").val().split("*")[0] < 20 || $("#ui_zdy_size").val().split("*")[1] < 20) {
+                        layer.msg('帆布最小尺寸20*20cm!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if ($("#ui_zdy_size").val().split("*")[0] > 140 && $("#ui_zdy_size").val().split("*")[1] > 140) {
+                        layer.msg('帆布尺寸超过140cm需要拼接!', {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                }
+            }
+            if (value == 0) {
+                if (size.split("*")[1] < 10 || size.split("*")[0] < 10) {
+                    layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸10*10CM!", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if ((size.split("*")[1] > 120 && size.split("*")[0] > 120)) {
+                    layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过120*120CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                    });
+                }
+            }
+            if (value == 1) {
+                if ($("select[name='kind2Value'] option:selected").val() == 8) {
+                    if ($("#size").val().split("*")[0] < 4 || $("#size").val().split("*")[1] < 4) {
+                        layer.msg('静电贴最小尺寸4*4cm!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if (($("#size").val().split("*")[0] > 500 || $("#size").val().split("*")[1] > 58) && $("#size").val().split("*")[0] > 58 || $("#size").val().split("*")[1] > 500) {
+                        layer.msg('静电贴最大尺寸500*58cm!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                } else if ($("select[name='kind2Value'] option:selected").val() != 24) {
+                    if (size.split("*")[1] < 10 || size.split("*")[0] < 10) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸20*20CM!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if ((size.split("*")[1] > 120 || size.split("*")[0] > 150) && (size.split("*")[0] > 120 || size.split("*")[1] > 150)) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过150*150CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                }
+            }
+            if (value == 2) {
+                if (size.split("*")[1] < 20 || size.split("*")[0] < 20) {
+                    layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸20*20CM!", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if ((size.split("*")[1] > 150 || size.split("*")[0] > 150) && (size.split("*")[0] > 150 || size.split("*")[1] > 150)) {
+                    layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过150*150CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                    });
+                }
+                if ($("select[name='kind2Value'] option:selected").val() == 24 && $("input[name='dengxType']:checked").val() == 0 && $("input[name='switchSize']:checked").length > 0) {
+                    if (size.indexOf(",") > 0) {
+                        layer.msg("尺寸格式不正确!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if ((size.split("*")[1] < 60 || size.split("*")[0] < 30) && (size.split("*")[0] < 60 || size.split("*")[1] < 30)) {
+                        layer.msg("最小尺寸60*30CM!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+            }
+            if (value == 3) {
+                if ($("select[name='kind2Value'] option:selected").val() == 5) {
+                    if (size.split("*")[1] < 10 || size.split("*")[0] < 10) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸10*10CM!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if ((size.split("*")[1] > 150 || size.split("*")[0] > 150) && (size.split("*")[0] > 150 || size.split("*")[1] > 150)) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过150*150CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                } else if ($("select[name='kind2Value'] option:selected").val() == 2 || $("select[name='kind2Value'] option:selected").val() == 6 || $("select[name='kind2Value'] option:selected").val() == 8) {
+                    if (size.split("*")[1] < 20 || size.split("*")[0] < 20) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸20*20CM!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if ((size.split("*")[1] > 150 && size.split("*")[0] > 150)) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过150*150CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                } else if ($("select[name='kind2Value'] option:selected").val() == 11 || $("select[name='kind2Value'] option:selected").val() == 13) {
+                    if (size.split("*")[1] < 20 || size.split("*")[0] < 20) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸20*20CM!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if ((size.split("*")[1] > 300 || size.split("*")[0] > 300)) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过300*300CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                }
+
+            }
+
+            if (value == 6) {
+                if ($("select[name='kind2Value'] option:selected").val() == "旗帜布") {
+                    let diySizeCoupon = 50;
+                    if ($("input[name='ui_tf_size']:checked").val() == "on") {
+                        diySizeCoupon = $("#diySizeCoupon").val()
+                    }
+                    if (diySizeCoupon < 17 || $("#bannerSize").val() < 17) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最小尺寸17*17CM!", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    if (diySizeCoupon > 200 && $("#bannerSize").val() > 200) {
+                        layer.msg($("select[name='kind2Value'] option:selected").html() + "最大尺寸超过200*200CM需要拼接!", {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+                }
+            }
+            var kindData = {
+                0: "制度牌", 1: "室内写真", 2: "户外写真",
+                3: "布", 4: "展架", 5: "刻字", 6: "条幅",
+                7: "贡缎布", 8: "锦旗", 9: "号码布", 10: "帆布", 11: "灯箱"
+            };
+            // 获取选中单选框和下拉框的值
+            var kind = $('input[name="kindValue"]:checked').val();
+            var number = $("#number").val();
+            $.ajax({
+                url: "${path}/getProductPrice",
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    var data = result.data.proList;
+                    // !条幅 && !贡缎布
+                    if (value != 6 && value != 7) {
+                        if (value != 4 && value != 5) {
+                            var size = $("#size").val();
+                            if (value == 2 && $("#kind2Value option:checked").text() == "户外写真可移白胶、黑胶") {
+                                if (size.split("*")[0] < 10 || size.split("*")[1] < 10) {
+                                    layer.msg("户外写真可移白胶、黑胶最小尺寸 10*10cm", {offset: ['300px', '300px']}, function () {
+                                    });
+                                    return false;
+                                }
+                            }
+                        } else if (value == 5) {
+                            var size = $("#keziSize").val();
+                            if (size > 60) {
+                                layer.msg("【刻字】单边尺寸不能超过60 cm", {offset: ['300px', '300px']}, function () {
+                                });
+                                return false;
+                            }
+                        } else {
+                            var size = ''
+                        }
+                        if (value != 5) {
+                            var kind2 = $("#kind2Value option:checked").text();
+                        } else {
+                            var kind2 = ''
+                        }
+                        // 制度牌
+                        var craftList = "";
+                        if (value == 0) {
+                            if (kind2 != "背胶单裱3mmPVC(户内高清)") {
+                                var arr = [];
+                                $("input:checkbox[name='craft']:checked").each(function (i) {
+                                    // 没有被禁用的工艺加到arr中
+                                    if (!$(this).is(':disabled')) {
+                                        arr.push($(this).val());
+                                    }
+                                });
+                                var craftBu = [$('input[name="craftBu"]:checked').val()];
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + size + 'cm(同款内容)\n' + "工艺 :" + arr + "\n";
+                                craftList = craftBu + arr;
+                            } else {
+                                var span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'cm(同款内容)\n';
+                            }
+                        } else if (value == 1) { //室内写真
+                            if (kind2 == "pp纸(室内)") {
+                                var craftBu = [$('input[name="craftPPZhi"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "直喷PVC") {
+                                var craftBu = [$('input[name="craftPPZhi"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "软膜") { // 软膜
+                                var craftBu = [$('input[name="craftRuanMo"]:checked').val()];
+                                craftList = craftBu
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "静电贴") {
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - 模切 -' + $(".zdt_yin input:checked").val() + ' - ' + size + 'cm(同款内容)\n';
+                            } else {
+                                var span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'cm(同款内容)\n';
+                            }
+                        } else if (value == 2) { //户外写真
+                            if (kind2 == "户外写真灯片") {
+                                var craftBu = [$('input[name="craftJingcai"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "摆摊软膜灯箱") {
+                                var craftBu = [$('.dengxiang input[name="craft"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else {
+                                var span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'cm(同款内容)\n';
+                            }
+                        } else if (value == 3) { //布
+                            if (kind2 == "喷绘布") {
+                                var craftBu = [$('input[name="craftPenHuiBu"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "写真布") {
+                                var craftBu = [$('input[name="craftJingcai"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "双喷布") {
+                                var craftBu = [$('input[name="craftBu"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "油画布") {
+                                var craftBu = [$('input[name="craftJingcai"]:checked').val()];
+                                craftList = craftBu;
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "旗帜布") {
+                                var craftBu = [$('input[name="craftqz"]:checked').val()];
+                                craftList = craftBu;
+                                if ($("input[name='craftBu']:checked").val() == "双喷") {
+                                    craftBu += "双喷";
+                                }
+                                if ($("input[name='ui_qzb_qg']:checked").val() == "旗杆") {
+                                    craftBu += ",旗杆(" + $("input[name='zheye']").val() + "根)";
+                                }
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else if (kind2 == "桌布") {
+                                var craftBu = [$('input[name="craftZb"]:checked').val()];
+                                kind2 = $("#zbKind option:checked").val() + kind2;
+                                craftList = craftBu
+                                var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + craftBu + ' - ' + size + 'cm(同款内容)\n';
+                            } else {
+                                var span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'cm(同款内容)\n';
+                            }
+                        } else {
+                            var span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'cm(同款内容)\n';
+                            if (value == 8) {// 8:锦旗
+                                var size = "";
+                                var kind2 = $("#ui_jq_gy option:checked").text();
+                                var jqType = $("#ui_qz_name option:checked").text();
+                                if (jqType == "彩旗") {
+                                    size = $("#ui_cq_size option:checked").text();
+                                    span_result = jqType + '--' + size + 'cm(同款内容)\n';
+                                } else {
+                                    size = $("#ui_jq_size option:checked").text();
+                                    span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'cm(同款内容)\n';
+                                }
+                            } else if (value == 9) {//9:号码布
+                                var size = $("#ui_hmb_size option:checked").text();
+                                var kind2 = $("#ui_hmb_gy option:checked").text();
+                                span_result = kindData[kind] + '-' + kind2 + ' - ' + size + 'mm(同款内容)\n';
+                            } else if (value == 10) {//10:帆布
+                                if ($("input[name='switchSize']:checked").val() == "on") {
+                                    size = $("#ui_zdy_size").val();
+                                } else {
+                                    size = "100*45";
+                                }
+                                var fb_name = $("#ui_fb_name option:selected").text();
+                                var craft = [];
+                                $("input:checkbox[name='craft']:checked").each(function (i) {
+                                    // 没有被禁用的工艺加到arr中
+                                    if (!$(this).is(':disabled')) {
+                                        craft.push($(this).val());
+                                    }
+                                });
+                                if (craft == "封边" || craft == "打孔") {
+                                    craft = craft + "绳子";
+                                }
+
+                                span_result = kindData[kind] + '-' + fb_name + '-' + craft + ' - ' + size + 'cm(同款内容)\n';
+                                if ($("input[name='switchSize']:checked").val() != "on") {
+                                    span_result += "(特惠款)";
+                                }
+                            }
+
+                        }
+                        let dengxType = $("input[name='dengxType']:checked").val();
+                        let unit = "个";
+                        if (dengxType == 1 && value == 2 && kind2 == "摆摊软膜灯箱") {
+                            unit = "套"
+                        }
+
+
+                        if ($("#ui_des").css("display") != "none") {
+                            let numberType = $("#desType option:selected").text();
+                            span_result += "款数:" + number + "-" + numberType + "\n";
+                        }
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + unit + ",共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                    } else if (value == 6) { // 条幅
+                        var size = $("#bannerSize").val();
+                        var width = $("#width option:checked").text();
+                        if ($("input[name='ui_tf_size']:checked").val() == "on") {
+                            width = $("#diySizeCoupon").val() + "cm宽幅";
+                        }
+                        var kind2 = $("#bannerKind option:checked").text();
+                        var craftTiao = [$('input[name="craftTiao"]:checked').val()];
+                        if ($("input[name='ui_tf_qg']:checked").val() == "旗杆") {
+                            craftTiao += ",旗杆(" + $("input[name='zheye']").val() + "根)"
+                        }
+                        if (width == "50cm宽幅") {
+                            if (size <= 300 && size > 200) {
+                                craftTiao += "(特惠款)";
+                            } else if (size == 500) {
+                                craftTiao += "(特惠款)";
+                            }
+                        }
+                        var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + size + 'cm * ' + width + ' - ' + craftTiao + '\n';
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + "条,共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            data[i].kindLabel = "条幅"
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                    } else if (value == 7) { // 贡缎布
+                        var size = $("#stinClothSize").val();
+                        var kind2 = $("#satinClothKind option:checked").text();
+                        if ($("input[name='ui_gdb_qg']:checked").val() == "旗杆") {
+                            kind2 += ",旗杆(" + $("input[name='yaheng']").val() + "根)"
+                        }
+                        var span_result = kindData[kind] + ' - ' + kind2 + ' - ' + size + 'cm' + '\n';
+                        for (let i = 0; i < data.length; i++) {
+                            span_result += number + '款 各' + data[i].count + "条,共" + data[i].price + "元" + '\n'
+                            data[i].number = number;
+                            data[i].kindLabel = "条幅"
+                            let providePrices = data[i].providePrices;
+                            if (providePrices && providePrices.length > 0) {
+                                for (let item in providePrices) {
+                                    span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                                }
+                            }
+                        }
+
+                    }
+
+                    if (value == 10) {
+                        data[0].kindLabel = "帆布";
+                    }
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+
+                    var count = $("input[name='count']").val();
+
+                    count += "个";
+                    if (kind == 4) {
+                        var sizeIndex = kind2.indexOf("cm");
+                        size = kind2.substring(sizeIndex - 6, sizeIndex);
+                        kind2 = kind2.substring(0, sizeIndex - 6);
+                    } else if (kind == 5) {
+                        size += "*0";
+                        count = $("#count2").val() + "个字";
+                    } else if (kind == 6) {
+                        var width = $("#width").val();
+                        width = width.substring(0, 2);
+                        size = $("#bannerSize").val() + "*" + width;
+                        craftList = $("input[name='craftTiao']:checked").val();
+                        count = $("#count3").val() + "条";
+                    } else if (kind == 7) {
+                        count = $("#count4").val() + "张";
+                        craftList = "";
+                    } else if (kind == 9) {
+                        size += "mm";
+                    } else if (kind == 10) {
+                        craftList = $("input[name='craft']:checked").val();
+                        kindData[kind] = "领淘帆布-" + kindData[kind];
+                    }
+                    if (kind2 == "高透贴") {
+                        kind2 += "-" + $("input[name='craftGtt']:checked").val();
+                    }
+                    getRemark(kindData[kind], size, count, kind2, number, craftList, "");
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            },/*{
+							field : 'wangwang',
+							align : "center",
+							width : '16%',
+							title : '折扣价',
+							templet : function(d) {
+								if(d.kindLabel == "帆布" || d.kindLabel == "条幅"){
+									return Math.ceil(d.price)
+								}
+								return Math.ceil(d.price * 0.95)
+							} 
+						},{
+							field : 'wangwang',
+							align : "center",
+							width : '19%',
+							title : '跳楼价',
+							templet : function(d) {
+								if(d.kindLabel == "帆布" || d.kindLabel == "条幅"){
+									return Math.ceil(d.price);
+								}
+								return Math.ceil(d.price * 0.93)
+							} 
+						},*/{
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+
+</script>
+</html>

+ 259 - 0
src/main/webapp/views/priceView/slq.jsp

@@ -0,0 +1,259 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h1">手拉旗</h1> <span style="color:red;font-weight:700;"></span>
+        <hr>
+        <form class="layui-form">
+            <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="手拉旗"/>
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="领鸿">领鸿</option>
+                    </select>
+                </div>
+            </div>
+            <p>
+                材质
+            </p>
+            <div class="layui-form-item">
+                <select name="kindValue" id="kindValue" lay-filter="kindValue" class="select" lay-search>
+                    <option value=""></option>
+                    <option value="1">春亚布</option>
+                    <option value="2">贡缎布</option>
+                </select>
+            </div>
+            <p>
+                宽度
+            </p>
+            <div class="layui-form-item">
+                <select name="width" id="width" class="select">
+                    <option value="17">17cm</option>
+                    <option value="24">24cm</option>
+                </select>
+            </div>
+            <p>
+                长度(CM/厘米)
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入长度" name="size" id="size" class="layui-input" autocomplete="off">
+            </div>
+            <p>
+                数量(个)
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="count" class="layui-input" id="count">
+            </div>
+            <p>
+                款数
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                       class="layui-input" lay-verify="number">
+            </div>
+            <p>
+                客户旺旺
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                       class="layui-input">
+            </div>
+            <hr>
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div" style="margin-left:50px;">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+
+        //建造实例
+        ins = carousel.render({});
+        var html = " ";
+        var remark = " ";
+        // 清空轮播图
+        $("#carousel").empty();
+        $("#remark").empty();
+        $.ajax({
+            url: "${pageContext.request.contextPath}/getImgs",
+            type: "GET",
+            data: {
+                proTypeValue: $("#proTypeValue").val(),
+            },
+            success: function (result) {
+                for (let i = 0; i < result.length; i++) {
+                    // 只留一个remark
+                    remark = "";
+                    html += '<div><img style="width:' + result[0].imgWidth + 'px" src="' + result[i].imgUrl + '"></div>';
+                    remark += '<div><span>' + result[i].remark + '<span/></div>';
+                }
+                $("#carousel").append(html);
+                // 如果没有说明,就不显示null
+                if (remark.indexOf("null") < 0) {
+                    $("#remark").append(remark);
+                }
+                // 如果没有轮播图就隐藏
+                if (result.length == 0) {
+                    document.getElementById("test1").style.display = "none";   //隐藏
+                } else {
+                    document.getElementById("test1").style.display = "block";   //显示
+                    ins.reload({
+                        elem: '#test1',
+                        width: result[0].imgWidth,  //设置容器宽度
+                        height: result[0].imgHeight
+                    });
+                }
+            }
+        });
+
+        // 点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+            var number = $("#number").val();
+            var length = $("#size").val();
+            var width = $("#width option:selected").val();
+            var count = $("#count").val();
+            var kind = $("#kindValue option:selected").text();
+            var craft = $("input[name='craft']:checked").val();
+            if (!length) {
+                layer.msg('请填写长度!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (length > 100) {
+                layer.msg('最大长度100cm!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (!count) {
+                layer.msg('请填写数量!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            $.ajax({
+                url: "${path}/getProductPrice",
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    var data = result.data.proList;
+                    if ((length == 70 && width == 24) || (length == 50 && width == 17)) {
+                        kind += "(特价)";
+                    }
+                    var span_result = '手拉旗 - ' + kind + '-' + length + '*' + width + ' CM (同款内容)\n';
+                    for (let i = 0; i < data.length; i++) {
+                        span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元" + '\n'
+                        data[i].number = number;
+                        let providePrices = data[i].providePrices;
+                        if (providePrices && providePrices.length > 0) {
+                            for (let item in providePrices) {
+                                span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                            }
+                        }
+                    }
+
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '16%',
+                                title: '折扣价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '19%',
+                                title: '跳楼价'
+                            }, {
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+</script>
+</html>

+ 1835 - 0
src/main/webapp/views/priceView/stickers.jsp

@@ -0,0 +1,1835 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+         pageEncoding="UTF-8" %>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title>Insert title here</title>
+    <%@include file="/views/common.jsp" %>
+</head>
+<!-- 不干胶 -->
+<style>
+    .layui-carousel-ind ul {
+        display: none
+    }
+</style>
+<body>
+<div class="big_box">
+    <div class="left_div">
+        <h1 class="h2">不干胶</h1>
+        </br></br>
+        <span style="color:red;font-size:14px">
+        使用方法:选择对应的产品种类。输入正确的尺寸、数量后点击“计算”出价格(自动复制);
+        </span>
+        <form class="layui-form">
+            <p>
+                地址
+            </p>
+            <input type="text" name="address" class="layui-input"/>
+            <p>
+                车间
+            </p>
+            <div class="layui-form-item">
+                <div class="layui-form-item">
+                    <select class="select" name="plantName">
+                        <option value="艾印">艾印</option>
+                        <option value="艾印">即客</option>
+                        <option value="欣海信">欣海信</option>
+                        <option value="彩印通">彩印通</option>
+                    </select>
+                </div>
+            </div>
+            <div class="layui-form-item">
+                <%--                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="常用种类" title="常用种类">--%>
+                <!-- <input type="radio" lay-filter="stickerKind" name="stickerKind" value="少数量"  title="少数量(100个以内)"> -->
+                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="专版打印" title="专版打印">
+                <%--                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="封口贴" title="封口贴">--%>
+                <%--                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="插旗" title="插旗">--%>
+                <%--                <input type="radio" lay-filter="stickerKind" name="stickerKind" value="双面印刷不干胶" title="双面印刷不干胶">--%>
+            </div>
+        </form>
+        <form class="layui-form" id="kindValueForm">
+            <div class="layui-form-item kindValueRadio">
+                <p>
+                    品种
+                </p>
+                <select name="kindValue" lay-filter="kindValue1" id="kindValue1" class="select" lay-search>
+                    <option value=""></option>
+                    <option value="0">铜板纸不干胶</option>
+                    <option value="1">pvc不干胶</option>
+                    <option value="2">透明不干胶</option>
+                    <option value="3">牛皮纸</option>
+                    <option value="5">哑金不干胶</option>
+                    <option value="6">哑银不干胶</option>
+                    <option value="7">书写纸不干胶</option>
+                    <option value="银平光">银平光</option>
+                    <option value="拉丝金">拉丝金</option>
+                    <option value="拉丝银">拉丝银</option>
+                    <option value="美纹纸">美纹纸</option>
+                    <option value="PP合成纸">PP合成纸</option>
+                    <%--                    <option value="格底珠光膜">格底珠光膜</option>--%>
+                    <option value="易碎纸不干胶">易碎纸不干胶</option>
+                    <option value="8">刚古水纹超白</option>
+                    <option value="10">红底散金</option>
+                    <option value="11">布纹纸超白</option>
+                    <option value="12">珠光超白</option>
+                    <option value="13">10C静电膜</option>
+                    <option value="15">树纹纸</option>
+                    <option value="16">草香纸/大地纸</option>
+                </select>
+            </div>
+            <div class="kindValueSelect" style="display: none">
+                <div class="layui-form-item">
+                    <p>
+                        品种
+                    </p>
+                    <select name="kindValue" lay-filter="kindValue" id="kindValue" class="select" lay-search>
+                        <option value=""></option>
+                        <option value="0">铜板纸不干胶</option>
+                        <option value="1">pvc不干胶</option>
+                        <option value="2">透明不干胶</option>
+                        <option value="3">牛皮纸</option>
+                        <option value="5">哑金不干胶</option>
+                        <option value="6">哑银不干胶</option>
+                        <option value="7">书写纸不干胶</option>
+                        <option value="亮金">亮金</option>
+                        <option value="亮银">亮银</option>
+                        <option value="珠光冰白纸">珠光冰白纸</option>
+                        <option value="美纹纸">美纹纸</option>
+                        <option value="红洒金">红洒金</option>
+                        <option value="布纹纸超白">布纹纸超白</option>
+                        <option value="刚古水纹超白">刚古水纹超白</option>
+                        <option value="银平光">银平光</option>
+                        <%--                        <option value="金平光">金平光</option>--%>
+                        <option value="拉丝金">拉丝金</option>
+                        <option value="拉丝银">拉丝银</option>
+                        <option value="易碎纸不干胶">易碎纸不干胶</option>
+                        <!-- <option value="静电贴">静电贴</option> -->
+                        <option value="PP合成纸">PP合成纸</option>
+                        <option value="飘金超白不干胶">飘金超白不干胶</option>
+                        <option value="草香纸">草香纸/大地纸</option>
+                        <option value="树纹纸">树纹纸</option>
+                        <option value="白散金">白散金</option>
+                        <option value="美纹纸散金">美纹纸散金</option>
+                    </select>
+                </div>
+            </div>
+            <div class="kindValueSelect2" style="display: none">
+                <div class="layui-form-item">
+                    <p>
+                        品种
+                    </p>
+                    <select name="kindValue" lay-filter="kindValue2" id="kindValue2" class="select" lay-search>
+                        <option value=""></option>
+                        <option value="封口贴铜版纸不干胶">封口贴铜纸板不干胶</option>
+                    </select>
+                </div>
+            </div>
+            <div class="kindValueSelect3" style="display: none">
+                <div class="layui-form-item">
+                    <p>
+                        品种
+                    </p>
+                    <select name="kindValue" lay-filter="kindValue1" id="kindValue3" class="select" lay-search>
+                        <option value=""></option>
+                        <option value="铜版纸不干胶">铜纸板不干胶</option>
+                        <option value="250克白卡纸对裱">250克白卡纸对裱</option>
+                    </select>
+                </div>
+            </div>
+        </form>
+        <form class="layui-form" id="stickersForm">
+            <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="0">
+            <div class="ui_normal">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="格式:长*宽" name="size" id="size" class="layui-input"
+                           lay-verify="required" autocomplete="off">
+                </div>
+                <div class="layui-form-item ui_guaguasize" style="display: none;">
+                    <p>
+                        刮刮膜尺寸(MM/毫米)
+                    </p>
+                    <select name="size1" id="size1" class="select">
+                        <option value="6*18">6*18 mm</option>
+                    </select>
+                </div>
+                <p>
+                    数量(个)
+                </p>
+                <div class="layui-form-item" id="ui_normal">
+                    <select name="count" id="count" class="select">
+                        <option value="500">500</option>
+                        <option value="1000">1000</option>
+                        <option value="2000">2000</option>
+                        <option value="3000">3000</option>
+                        <option value="5000">5000</option>
+                        <option value="10000">10000</option>
+                        <option value="20000">20000</option>
+                        <option value="30000">30000</option>
+                        <option value="40000">40000</option>
+                        <option value="50000">50000</option>
+                        <option value="60000">60000</option>
+                        <option value="70000">70000</option>
+                        <option value="80000">80000</option>
+                        <option value="90000">90000</option>
+                        <option value="100000">100000</option>
+                    </select>
+                </div>
+                <div class="layui-form-item" id="ui_print" style="display: none;">
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="count" id="printCount"
+                           class="layui-input">
+                </div>
+
+                <div class="layui-form-item" id="ui_des" style="display:none;">
+                    <p>
+                        设计内容
+                    </p>
+                    <select name="desType" lay-filter="desType" id="desType" class="select" lay-search>
+                        <option value=""></option>
+                        <option value="1">改序号</option>
+                        <option value="2">改名字</option>
+                        <option value="3">改二维码</option>
+                        <option value="4">改图片</option>
+                        <option value="5">改内容模板相同</option>
+                        <option value="6" selected>改内容模板完全不同</option>
+                    </select>
+                </div>
+            </div>
+            <div class="ui_tk" style="display: none;">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="radio" name="size" id="ui_size" lay-filter="size" value="8*2" title="8*2"
+                           checked="checked">
+                </div>
+                <p>
+                    数量(张) <span class="switchCount"></span>
+                </p>
+                <div class="count">
+                    <div class="layui-form-item">
+                        <select name="count" id="selectCount" class="select">
+                            <option value="1000">1000</option>
+                            <option value="2000">2000</option>
+                            <option value="3000">3000</option>
+                            <option value="5000">5000</option>
+                            <option value="10000">10000</option>
+                            <option value="20000">20000</option>
+                        </select>
+                    </div>
+                </div>
+            </div>
+            <div class="ui_cq" style="display: none;">
+                <p>
+                    尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
+                </p>
+                <div class="layui-form-item">
+                    <input type="text" placeholder="格式:长*宽" name="size" id="ui_cqSize" class="layui-input"
+                           lay-verify="required" autocomplete="off">
+                </div>
+                <div class="layui-form-item ui_guaguasize2" style="display: none;">
+                    <p>
+                        刮刮膜尺寸(MM/毫米)
+                    </p>
+                    <select name="size1" id="size1" class="select">
+                        <option value="6*18">6*18 mm</option>
+                    </select>
+                </div>
+                <div class="layui-form-item ui_toothpick" style="display: none;">
+                    <p>
+                        牙签尺寸(CM/厘米)
+                    </p>
+                    <select name="toothpick_size" id="toothpick_size" class="select">
+                        <option value="6.5">6.5 CM</option>
+                        <option value="10">10 CM</option>
+                        <option value="12">12 CM</option>
+                    </select>
+                </div>
+                <p>
+                    数量(张)
+                </p>
+                <div class="count">
+                    <div class="layui-form-item">
+                        <select name="count" id="selectCount" class="select">
+                            <option value="500">500</option>
+                            <option value="1000">1000</option>
+                            <option value="2000">2000</option>
+                            <option value="3000">3000</option>
+                            <option value="5000">5000</option>
+                            <option value="10000">10000</option>
+                            <option value="20000">20000</option>
+                            <option value="30000">30000</option>
+                            <option value="40000">40000</option>
+                            <option value="50000">50000</option>
+                        </select>
+                    </div>
+                </div>
+            </div>
+            <div class="ui_sm" style="display: none">
+                <%@include file="../product/stickersdouble.jsp" %>
+            </div>
+            <p>
+                款数
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
+                       class="layui-input" lay-verify="number">
+            </div>
+            <p>
+                客户旺旺
+            </p>
+            <div class="layui-form-item">
+                <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
+                       class="layui-input">
+            </div>
+            <hr>
+        </form>
+        <form class="layui-form" id="craftForm">
+            <p>
+                工艺
+            </p>
+            <div class="layui-form-item">
+                <input type="radio" name="craftQie" calss="moqie" value="模切" lay-skin="primary" title="模切"
+                       checked="checked"/>
+                <span class="caiqie">
+                    <input type="radio" name="craftQie" calss="moqie" value="裁切" lay-skin="primary" title="裁切"/>
+                </span>
+                <span class="meiwenzhiQie" style="display:none"><input type="radio" name="craftQie" class="bumoqie"
+                                                                       value="不模切" lay-skin="primary"
+                                                                       title="不模切"></span>
+                <span class="cha_fm">
+				    	|&nbsp;&nbsp;&nbsp;&nbsp;
+                   <input type="radio" name="craftMo" lay-filter="craftMo" value="覆哑膜" title="覆哑膜" checked="checked">
+                </span>
+                <span class="fm">
+				    	|&nbsp;&nbsp;&nbsp;&nbsp;
+                    <input type="radio" name="craftMo" lay-filter="craftMo" value="覆亮膜" title="覆亮膜" class="liangmo"
+                           checked="checked">
+                    <span class="yamo"><input type="radio" name="craftMo" lay-filter="craftMo" value="覆哑膜"
+                                              title="覆哑膜"></span>
+                </span>
+                <span class="yb">
+				     	|&nbsp;&nbsp;&nbsp;&nbsp;
+				      	<input type="radio" name="yinbai" class="yinbai_un" value="不印白" title="不印白" checked
+                               lay-filter="ui_type">
+				      	<input type="radio" name="yinbai" value="印白墨" title="印白墨" lay-filter="ui_type">
+				    </span>
+                <span class="ui_guagua">
+				     	|&nbsp;&nbsp;&nbsp;&nbsp;
+				      	<input type="checkbox" name="craft" value="配刮刮膜" title="配刮刮膜" lay-filter="ui_type">
+				      	<input type="checkbox" name="craft" value="粘刮刮膜" title="粘刮刮膜" lay-filter="ui_type">
+				    </span>
+            </div>
+            <div class="layui-form-item pf">
+                <span style="float:left;margin-top:12px">排废 : </span>
+                <input type="checkbox" name="craftPai" value="半排废" title="半排废" lay-filter="craftPai">
+                <input type="checkbox" name="craftPai" value="全排废" title="全排废" lay-filter="craftPai">
+            </div>
+            <div class="layui-form-item n_mq" style="display: flex">
+                <input type="checkbox" value="内部模切" id="nmq" title="内部模切" lay-filter="nmq">
+                <span class="n_mq_input" style="display: none">
+                     <span style="margin-top:12px;flex-shrink: 0">个数 : </span>
+                    <input type="text" placeholder="请输入整数" autocomplete="off" name="n_mq_num" value="0"
+                           class="layui-input" style="width: 70px">
+                     <span style="margin-top:12px;flex-shrink: 0">尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>  </span>
+                    <input type="text" placeholder="尺寸" autocomplete="off" name="n_mq_size"
+                           class="layui-input">
+                </span>
+            </div>
+            <div class="layui-form-item tj">
+                <span style="float:left;margin-top:12px">烫金 : </span>
+                <input type="checkbox" name="craftTang" lay-filter="switch" class="pvcHide tang" value="纯烫金" title="纯烫金"
+                       lay-skin="primary">
+                <input type="checkbox" name="craftTang" lay-filter="switch" class="tang" value="彩色印刷+烫金/银"
+                       title="彩色印刷+烫金/银" lay-skin="primary">
+            </div>
+            <div class="layui-form-item at">
+                <span style="float:left;margin-top:10px">凹凸 : </span>
+                <input type="checkbox" name="aotu" lay-filter="switch" value="印1色" title="印1色" class="aotu"
+                       lay-skin="primary">
+                <input type="checkbox" name="aotu" lay-filter="switch" value="加凹凸" title="加凹凸" class="aotu"
+                       lay-skin="primary">
+                <input type="checkbox" name="aotu" lay-filter="switch" value="印2色" title="印2色" class="yayinHide aotu"
+                       lay-skin="primary">
+                <input type="checkbox" name="aotu" lay-filter="switch" value="纯烫金" title="纯烫金" class="yayinHide aotu"
+                       lay-skin="primary">
+                <!--<input type="checkbox" name="aotu" lay-filter="switch" value="印2色+凹凸" title="印2色+凹凸" class="aotu" lay-skin="primary">-->
+            </div>
+            <hr class="layui-bg-orange">
+        </form>
+        <form class="layui-form cq" style="display: none;">
+            <p>
+                工艺
+            </p>
+            <div class="layui-form-item yq">
+					<span class="ui_craftShua">
+						|&nbsp;&nbsp;&nbsp;&nbsp;
+                        <span class="peishua">
+						    <input type="radio" name="craftShua" value="配牙签" title="配牙签">
+                        </span>
+			      		<input type="radio" name="craftShua" value="粘牙签" title="粘牙签" checked>
+					</span>
+
+                <span class="ui_guagua2">
+				     	|&nbsp;&nbsp;&nbsp;&nbsp;
+				      	<input type="checkbox" name="craft" value="配刮刮膜" title="配刮刮膜" lay-filter="ui_type">
+				      	<input type="checkbox" name="craft" value="粘刮刮膜" title="粘刮刮膜" lay-filter="ui_type">
+				    </span>
+            </div>
+        </form>
+        <form class="layui-form normal" style="display: none;">
+            <p>
+                工艺
+            </p>
+            <div class="layui-form-item">
+                <input type="radio" name="craftTang" value="激凸" title="激凸" checked lay-filter="radio_craftTang">
+                <input type="radio" name="craftTang" value="烫金" title="烫金" lay-filter="radio_craftTang">
+                <input type="radio" name="craftTang" value="浮雕烫金" title="浮雕烫金" lay-filter="radio_craftTang">
+                <input type="radio" name="craftTang" value="彩色印刷" title="彩色印刷" lay-filter="radio_craftTang">
+            </div>
+        </form>
+        <form class="layui-form ui_sm" style="display: none;">
+            <p>
+                工艺
+            </p>
+            <div class="layui-form-item">
+                <input type="radio" name="craftMo" value="亮膜" title="亮膜" checked>
+                <input type="radio" name="craftQie" value="双面印刷" title="双面印刷" checked>
+                <input type="radio" name="craftshua" value="模切(切穿排废)" title="模切(切穿排废)" checked>
+            </div>
+        </form>
+        <form class="layui-form">
+            <div class="layui-form-item">
+                <button class="layui-btn" lay-submit="" lay-filter="acount_btn" id="queryCondBtn">计算</button>
+                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
+            </div>
+            <h2>计算结果-
+                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
+                        onclick="copyResult()">点击复制
+                </button>
+            </h2>
+            <div>
+                <textarea rows="13" cols="75" id="span_result" readonly="readonly"></textarea>
+                <%@include file="../acountExpressFee.jsp" %>
+            </div>
+            <!--<h2>下单备注-<button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult" onclick="copyBz()">点击复制</button></h2>
+            <div>
+                <textarea rows="5" cols="75" id="bz_result" readonly="readonly"></textarea>
+            </div>-->
+            <div>
+                <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
+            </div>
+        </form>
+    </div>
+    <div class="right_div">
+        <div class="layui-carousel" id="test1">
+            <div carousel-item id="carousel"></div>
+            <br>
+            <div id="remark" style="font-size:20px;color:red"></div>
+        </div>
+    </div>
+</div>
+</body>
+<!-- <script src="../../js/acountExpressFee.js" charset="utf-8"></script> -->
+<%@include file="/views/copyResult.jsp" %>
+<script>
+    layui.use(['element', 'table', 'form', 'carousel'], function () {
+        var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
+        var carousel = layui.carousel;
+        var table = layui.table;
+        var element = layui.element;
+        var kValue;
+
+        // 监听回车键,如果敲了回车,调用点击‘计算’
+        $(document).keydown(function (e) {
+            if (e.keyCode === 13) {
+                $("#queryCondBtn").trigger("click");
+            }
+        });
+
+        //输入框的值改变时触发
+        $("#size").on("input", function (e) {
+            var size = e.delegateTarget.value
+            //获取input输入的值
+            if ($("#kindValue1").val() == "易碎纸不干胶") {
+                if (e.delegateTarget.value.indexOf(".") != -1) {
+                    layer.msg('【易碎纸不干胶】报价请输入整数尺寸!', {offset: ['300px', '300px']}, function () {
+                    });
+                }
+            }
+            if ($("#kindValue1").val() == "美纹纸" && (stickerKind == '' || stickerKind != '专版打印')) {
+                if ((size.split("*")[0] > 9 || size.split("*")[1] > 5.4) && (size.split("*")[0] > 5.4 || size.split("*")[1] > 9)) {
+                    $(".meiwenzhiQie").show();
+                } else {
+                    $(".meiwenzhiQie").hide();
+                }
+            }
+        });
+        $("#number").on("input", function (e) {
+            var number = e.delegateTarget.value;
+            if ($("input[name='stickerKind']:checked").val() == "专版打印" && number > 1) {
+                $("#ui_des").show();
+            } else {
+                $("#ui_des").hide();
+            }
+        });
+        //建造实例
+        ins = carousel.render({
+            /* elem: '#test1', 
+            width: '700px',  //设置容器宽度
+            height: '700px', //设置容器高度
+            arrow: 'none', //始终不显示箭头和点击按钮
+            anim: 'updown' //切换动画方式,可从各个方向滚动 */
+        });
+        var stickerKind = ""
+        var TJValue = ""
+        var kindvalue = ""
+        // 选择不干胶种类--默认常用种类,切换的时候清空产品种类
+        form.on('radio(stickerKind)', function (stickerKindData) {
+            // 切换按钮清空产品种类
+            $("#kindValueForm")[0].reset();
+            // 切换按钮工艺恢复
+            $("#craftForm")[0].reset();
+            // 产品种类的值
+            stickerKind = stickerKindData.value
+            // 切换的时候清空烫金选中(不生效)
+            //$('input[class = lessCount]').prop('checked', false);
+            //$('input[class = pvcHide]').prop('checked', false);
+
+            $(".ui_guagua").hide();
+            $(".ui_guagua2").hide();
+            $(".ui_guagua").prop('disabled', 'disabled');
+            $(".ui_guagua2").prop('disabled', 'disabled');
+            $("input[name='craft']").prop('checked', false);
+            $(".ui_guaguasize").hide();
+            $(".ui_guaguasize2").hide();
+            $(".ui_toothpick").hide();
+            $(".pf").hide();
+            $(".n_mq").hide();
+            $('.pf input').prop("checked", false);
+            $('.n_mq input').prop("disabled", true);
+            $(".caiqie").hide();
+            $(".fm input[value='覆亮膜']").attr("checked", "checked");
+            $(".ui_cq select[name='count']").empty().append(`                            <option value="500">500</option>
+                            <option value="1000">1000</option>
+                            <option value="2000">2000</option>
+                            <option value="3000">3000</option>
+                            <option value="5000">5000</option>
+                            <option value="10000">10000</option>
+                            <option value="20000">20000</option>
+                            <option value="30000">30000</option>
+                            <option value="40000">40000</option>
+                            <option value="50000">50000</option>`)
+            if (stickerKind == "常用种类") {
+                // 切换为品种单选框
+                $(".kindValueRadio").show();
+                $(".kindValueRadio").find(":input").attr("disabled", false);
+                $(".ui_normal").show();
+                $(".ui_normal").find(":input").attr("disabled", false);
+                $(".ui_tk").hide();
+                $(".ui_tk").find(":input").attr("disabled", true);
+                $(".kindValueSelect").hide();
+                $(".kindValueSelect").find(":input").attr("disabled", true);
+                $(".kindValueSelect2").hide();
+                $(".kindValueSelect2").find(":input").attr("disabled", true);
+                $(".kindValueSelect3").hide();
+                $(".kindValueSelect3").find(":input").attr("disabled", true);
+                $("#craftForm").show();
+                $(".pf").show();
+                $(".n_mq").show();
+                $('.n_mq input').prop("disabled", false);
+                $("#ui_print").hide();
+                $("#ui_normal").show();
+                $("#ui_print").find(":input").attr("disabled", true);
+                $(".cq").hide();
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $("#ui_des").hide();
+                $(".ui_sm").hide();
+                $(".ui_sm").find(":input").attr("disabled", true);
+                $(".tj").show();
+                $(".at").show();
+            } else if (stickerKind == "专版打印") {
+                // 少数量、专版打印的时候,切换为品种下拉框
+                $(".kindValueSelect").show();
+                $(".kindValueSelect").find(":input").attr("disabled", false);
+                $(".ui_normal").show();
+                $(".ui_normal").find(":input").attr("disabled", false);
+                $(".ui_tk").hide();
+                $(".ui_tk").find(":input").attr("disabled", true);
+                $(".kindValueRadio").hide();
+                $(".kindValueRadio").find(":input").attr("disabled", true);
+                $(".kindValueSelect2").hide();
+                $(".kindValueSelect2").find(":input").attr("disabled", true);
+                $(".kindValueSelect3").hide();
+                $(".kindValueSelect3").find(":input").attr("disabled", true);
+                $("#craftForm").show();
+                $("#ui_normal").hide();
+                $("#ui_print").show();
+                $("#ui_normal").find(":input").attr("disabled", true);
+                $(".cq").hide();
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".normal").hide();
+                $('.normal input').prop("checked", false);
+                if ($("#number").val() > 1) {
+                    $("#ui_des").show();
+                }
+                $(".ui_sm").hide();
+                $(".ui_sm").find(":input").attr("disabled", true);
+                $(".tj").hide();
+                $(".at").hide();
+                $(".n_mq").show();
+                $('.n_mq input').prop("disabled", false);
+            } else if (stickerKind == "封口贴") {
+                $(".kindValueSelect2").show();
+                $(".kindValueSelect2").find(":input").attr("disabled", false);
+                $(".ui_tk").show();
+                $(".ui_tk").find(":input").attr("disabled", false);
+                $(".kindValueSelect").hide();
+                $(".kindValueSelect").find(":input").attr("disabled", true);
+                $(".kindValueRadio").hide();
+                $(".kindValueRadio").find(":input").attr("disabled", true);
+                $(".kindValueSelect3").hide();
+                $(".kindValueSelect3").find(":input").attr("disabled", true);
+                $(".ui_normal").hide();
+                $(".ui_normal").find(":input").attr("disabled", true);
+                $("#craftForm").hide();
+                $(".cq").hide();
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".normal").hide();
+                $('.normal input').prop("checked", false);
+                $("#ui_des").hide();
+                $(".ui_sm").hide();
+                $(".ui_sm").find(":input").attr("disabled", true);
+            } else if (stickerKind == "插旗") {//插旗
+                $(".kindValueSelect3").show();
+                $(".kindValueSelect3").find(":input").attr("disabled", false);
+                $(".ui_tk").hide();
+                $(".ui_tk").find(":input").attr("disabled", true);
+                $(".kindValueSelect").hide();
+                $(".kindValueSelect").find(":input").attr("disabled", true);
+                $(".kindValueRadio").hide();
+                $(".kindValueRadio").find(":input").attr("disabled", true);
+                $(".kindValueSelect2").hide();
+                $(".kindValueSelect2").find(":input").attr("disabled", true);
+                $(".ui_normal").hide();
+                $(".ui_normal").find(":input").attr("disabled", true);
+                $("#craftForm").hide();
+                $(".cq").show();
+                $(".ui_cq").show();
+                $(".ui_cq").find(":input").attr("disabled", false);
+                $(".yq").show();
+                $(".yq").find(":input").attr("disabled", false);
+                $(".normal").hide();
+                $('.normal input').prop("checked", false);
+                $("#ui_des").hide();
+                $(".ui_sm").hide();
+                $(".ui_sm").find(":input").attr("disabled", true);
+                //$(".ui_guagua2").show();
+                $(".ui_toothpick").show();
+
+                //$(".ui_guagua2").removeAttr('disabled');
+                form.render();
+            } else {//双面印刷不干胶
+                $(".kindValueSelect3").hide();
+                $(".kindValueSelect3").find(":input").attr("disabled", false);
+                $(".ui_tk").hide();
+                $(".ui_tk").find(":input").attr("disabled", true);
+                $(".kindValueSelect").hide();
+                $(".kindValueSelect").find(":input").attr("disabled", true);
+                $(".kindValueRadio").hide();
+                $(".kindValueRadio").find(":input").attr("disabled", true);
+                $(".kindValueSelect2").hide();
+                $(".kindValueSelect2").find(":input").attr("disabled", true);
+                $(".ui_normal").hide();
+                $(".ui_normal").find(":input").attr("disabled", true);
+                $("#craftForm").hide();
+                $(".cq").hide();
+                $(".ui_cq").hide();
+                $(".ui_cq").find(":input").attr("disabled", true);
+                $(".yq").hide();
+                $(".yq").find(":input").attr("disabled", false);
+                $(".normal").hide();
+                $('.normal input').prop("checked", false);
+                $("#ui_des").hide();
+                $(".ui_sm").show();
+                $(".ui_sm").find(":input").attr("disabled", false);
+            }
+            form.render();//必须写
+        });
+
+        function getContent() {
+            let craft = $("input[name='craft']:checked").val()
+            let TJValue = $("input[name='craftTang']:checked").val()
+            let aotu = $("input[name='aotu']:checked").val()
+            let stickerKind = $("input[name='stickerKind']:checked").val()
+
+            let html = "预计发货时间:<br>";
+
+            if (stickerKind == '专版打印') {
+                html += "广东:(15点前上传系统当天发货,15点后上传系统隔天发货) 中通 顺丰;<br>江苏:(15点前上传系统当天发货,15点后上传系统隔天发货) 申通 顺丰;";
+                if (kindvalue == 5 || kindvalue == "亮金" || kindvalue == "刚古水纹超白" || kindvalue == "银平光" || kindvalue == "金平光" || kindvalue == "飘金超白不干胶" || kindvalue == "草香纸" || kindvalue == "树纹纸" || kindvalue == "白散金" || kindvalue == "美纹纸散金") {
+                    html = "预计发货时间:<br>广东:(14点前上传系统当天发货,14点后上传系统隔天发货) 中通 圆通 顺丰;";
+                }
+                if (kindvalue == 2) {
+                    html += "<br>广东:透明白墨3天发货  中通 顺丰";
+                }
+
+                if (TJValue == "纯烫金") {
+                    html = "预计发货时间:<br>广东:纯烫金(2-3天发货) 申通 顺丰;"
+                }
+            } else if (stickerKind == '双面印刷不干胶') {
+                html += "广州:(3-4天发货) 中通 顺丰";
+            } else {
+                if (kindvalue == "0") {
+                    if (TJValue == "纯烫金") {
+                        html += "广东:(18点前上传系统隔天发货) 中通 圆通 顺丰;<br>福建:(18点前上传系统隔天发货) 圆通 顺丰;"
+                    } else if (TJValue == "印2色+烫金/银") {
+                        html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                    } else if (TJValue == "彩色印刷+烫金/银") {
+                        html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                    } else {
+                        html += "广东:数量500-1000张(顺丰14点前当天发货  普通快递16点前当天发货) 中通 圆通 顺丰;<br>江苏:(3-4天发货) 韵达  顺丰;"
+                    }
+                    if (!!craft && ("配刮刮膜" == craft || "粘刮刮膜" == craft)) {
+                        html = "预计发货时间:<br> ";
+                        if ("配刮刮膜" == craft) {
+                            if (TJValue == "纯烫金") {
+                                html += "广东:(18点前上传系统隔天发货) 中通 圆通 顺丰;"
+                            } else if (TJValue == "印2色+烫金/银") {
+                                html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                            } else if (TJValue == "彩色印刷+烫金/银") {
+                                html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                            } else {
+                                html += "广东:(16点前上传系统当天发货,16点后上传系统隔天发货) 中通 圆通 顺丰;"
+                            }
+                        }
+                        if ("粘刮刮膜" == craft) {
+                            if (TJValue == "纯烫金") {
+                            } else if (TJValue == "印2色+烫金/银") {
+                            } else if (TJValue == "彩色印刷+烫金/银") {
+                            } else {
+                                html += "广东:(4-5天发货) 中通 圆通 顺丰;"
+                            }
+                        }
+
+                    }
+                } else if (kindvalue == "1") {
+                    if (TJValue == "纯烫金") {
+                        html += "广东: 覆亮膜+纯烫金(18点前上传系统隔天发货)<br>广东:覆哑膜+纯烫金 (5-6天发货) 中通 圆通 顺丰;"
+                    } else if (TJValue == "印2色+烫金/银") {
+                        html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                    } else if (TJValue == "彩色印刷+烫金/银") {
+                        html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                    } else {
+                        html += "广东:覆亮膜 (15点前上传系统的当天发货,15点后上传系统的隔天发货);<br>广东:覆哑膜 (2-3天发货);"
+                    }
+                } else if (kindvalue == "2") {
+                    if (TJValue == "纯烫金") {
+                        html += "广东: 覆亮膜+纯烫金(18点前上传系统正常隔天发货)<br>广东: 覆哑膜+纯烫金 (5-6天发货) 中通 圆通 顺丰;"
+                    } else if (TJValue == "印2色+烫金/银") {
+                        html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                    } else if (TJValue == "彩色印刷+烫金/银") {
+                        html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                    } else {
+                        html += "广东:透明亮膜(15点上传的当天发货,15点过后的隔天发);<br>广东:透明哑膜(2-3天发货);<br>广东:透明亮膜/哑膜印白(3-4天发货)"
+                    }
+                } else if (kindvalue == "3") {
+                    html += "广东:(3天发货) 中通 圆通 顺丰"
+                } else if (kindvalue == "5") {
+                    if (aotu == "印1色" || aotu == "印2色") {
+                        html += "广东:(3-4天发货) 中通 顺丰"
+                    } else if (aotu == "加凹凸") {
+                        html += "福建:(3-4天发货) 圆通 顺丰"
+                    } else {
+                        html += "广东:(3-4天发货) 中通 顺丰"
+                    }
+                } else if (kindvalue == "6") {
+                    if (aotu == "印1色") {
+                        html += "广东:(3天发货) 中通 顺丰"
+                    } else if (aotu == "加凹凸") {
+                        html += "福建:(3-4天发货) 圆通 顺丰"
+                    } else {
+                        html += "广东:(3天发货) 中通 顺丰"
+                    }
+                } else if (kindvalue == "7") {
+                    html += "广东:(3天发货) 中通 顺丰"
+                } else if (kindvalue == "银平光" || kindvalue == "金平光" || kindvalue == "拉丝金" || kindvalue == "拉丝银" || kindvalue == "PP合成纸" || kindvalue == "13") {
+                    html += "广东:(2-3天发货) 中通 顺丰"
+                } else if (kindvalue == "美纹纸" || kindvalue == "8" || kindvalue == "10" || kindvalue == "11" || kindvalue == "12") {
+                    html += "河南:(1-2天发货) 中通 顺丰"
+                } else if (kindvalue == "格底珠光膜" || kindvalue == "易碎纸不干胶") {
+                    html += "河南:(2-3天发货) 中通 顺丰"
+                } else if (kindvalue == "15" || kindvalue == "16") {
+                    if (TJValue == "激凸") {
+                        html += "湖南:(4-5天发货)中通 顺丰"
+                    }
+                    if (TJValue == "烫金") {
+                        html += "湖南:(3-4天发货)中通 顺丰"
+                    }
+                    if (TJValue == "浮雕烫金") {
+                        html += "湖南:(4-5天发货)中通 顺丰"
+                    }
+                    if (TJValue == "彩色印刷") {
+                        html += "广东:(2天发货) 中通 顺丰"
+                    }
+                } else if (kindvalue == "铜版纸不干胶") {
+                    html += "广东:配牙签(16点前上传系统当天发货,16点后上传系统隔天发货) 中通 圆通 顺丰;<br>广东:粘牙签(4-5天发货) 中通 圆通 顺丰;"
+                    if (!!craft && ("配刮刮膜" == craft || "粘刮刮膜" == craft)) {
+                        html = "预计发货时间:<br> ";
+                        if ("配刮刮膜" == craft) {
+                            if (TJValue == "纯烫金") {
+                                html += "广东:(18点前上传系统隔天发货) 中通 圆通 顺丰;"
+                            } else if (TJValue == "印2色+烫金/银") {
+                                html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                            } else if (TJValue == "彩色印刷+烫金/银") {
+                                html += "广东:(5-6天发货) 中通 圆通 顺丰"
+                            } else {
+                                html += "广东:(16点前上传系统当天发货,16点后上传系统隔天发货) 中通 圆通 顺丰;"
+                            }
+                        }
+                        if ("粘刮刮膜" == craft) {
+                            if (TJValue == "纯烫金") {
+                            } else if (TJValue == "印2色+烫金/银") {
+                            } else if (TJValue == "彩色印刷+烫金/银") {
+                            } else {
+                                html += "广东:(4-5天发货) 中通 圆通 顺丰;"
+                            }
+                        }
+
+                    }
+                } else if (kindvalue == "250克白卡纸对裱") {
+                    html += "广东:(3-4天发货) 中通 圆通 顺丰;"
+                }
+            }
+            return html;
+        }
+
+        form.on('radio(radio_craftTang)', () => {
+            var content = getContent(kindvalue);
+            $("#remark").empty();
+
+            $("#remark").append('<div><span>' + content + '<span/></div>');
+            getProductImage(kValue)
+        })
+        form.on('checkbox(craftPai)', (data) => {
+            let yinbai = $("input[name='yinbai']:checked").val();
+            if (yinbai == '印白墨') {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('[排废 - 印白墨]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                return false;
+            }
+            if ($("input[name='craftTang']:checked").length > 0) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('[排废 - 烫金]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                return false;
+            }
+            if ($("input[name='craftPai']:checked").length > 1) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('[半排废 - 全排废]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                return false;
+            }
+        })
+        form.on('checkbox(nmq)', (data) => {
+            if (data.elem.checked) {
+                $(".n_mq_input").css("display", "flex")
+                $(".n_mq_input input").prop("disabled", false);
+            } else {
+                $(".n_mq_input").hide()
+                $(".n_mq_input input").prop("disabled", true);
+            }
+            getProductImage(kValue)
+        })
+        // 牛皮纸/特殊不干胶没有覆膜按钮组
+        form.on('select(kindValue1)', function (data) {
+            kindvalue = data.value
+            // 没切换“少数量”的时候默认禁用少数量的下拉框,(防止提交表单)
+            $(".kindValueSelect").find(":input").attr("disabled", true);
+            $(".pf").hide();
+            $(".n_mq").hide();
+            $('.pf input').prop("checked", false);
+            $('.n_mq input').prop("disabled", true);
+            // A级、PVC、透明
+            if (data.value == 0 || data.value == 1 || data.value == 2) {
+                $(".tj").show();
+                $(".tj").find(":input").attr("disabled", false);
+            } else {
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", true);
+            }
+            if (data.value == 0 || data.value == 1 || data.value == 2
+                || data.value == "拉丝金" || data.value == "拉丝银" || data.value == "格底珠光膜"
+                || data.value == "PP合成纸") {
+                $(".fm").show();
+                $(".fm").find(":input").attr("disabled", false);
+            } else {
+                $(".fm").hide();
+                $(".fm").find(":input").attr("disabled", true);
+            }
+            // PVC、透明没有覆哑膜
+            if (data.value == 1 && $("input[name='stickerKind']:checked").val() == "常用种类") {
+                $(".nofm").find(":input").attr("disabled", false);
+            } else {
+                $(".nofm").find(":input").attr("disabled", true);
+                $('input[class = liangmo]').prop('checked', true);
+            }
+            // 哑金哑银
+            if (data.value == 5 || data.value == 6) {
+                // 常规种类凹凸不禁用
+                $(".at").find(":input").attr("disabled", false);
+                $(".at").show();
+                $('.at').removeAttr('disabled');
+                // 哑银不要‘印2色’凹凸
+                if (data.value == 6) {
+                    // 切换的时候清空凹凸--‘印2色’选中
+                    $('input[class = yayinHide]').prop('checked', false);
+                    $('.yayinHide').prop('disabled', 'disabled');
+                } else {
+                    $('.yayinHide').removeAttr('disabled');
+                }
+            } else {
+                $(".at").hide();
+                $('.at').prop('disabled', 'disabled');
+            }
+            // 透明不干胶带白墨工艺
+            if (data.value == 2 || data.value == 13) {
+                // 复选框的disabled
+                $(".yb").show();
+                $(".yb").find(":input").attr("disabled", false);
+                /* $('.yb').removeAttr('disabled'); */
+            } else {
+                $(".yb").hide();
+                $(".yb").find(":input").attr("disabled", true);
+                /* $('.yb').prop('disabled', 'disabled'); */
+            }
+            // 默认 禁用【彩色印刷+烫金/银】长短边输入框,禁止提交
+            $(".sizeTang").find(":input").attr("disabled", true);
+
+            if (data.value == "0") {
+                $(".ui_guagua").show();
+                $(".ui_guagua").removeAttr('disabled');
+            } else {
+                $(".ui_guagua").hide();
+                $(".ui_guagua").prop('disabled', 'disabled');
+                $(".ui_guaguasize").hide();
+            }
+
+            $(".peishua").show();
+            $(".peishua").find(":input").attr("disabled", false);
+            $(".cha_fm").hide();
+            $(".cha_fm").find(":input").attr("disabled", true);
+            $(".caiqie").hide();
+            $(".ui_cq select[name='count']").empty().append(`                            <option value="500">500</option>
+                            <option value="1000">1000</option>
+                            <option value="2000">2000</option>
+                            <option value="3000">3000</option>
+                            <option value="5000">5000</option>
+                            <option value="10000">10000</option>
+                            <option value="20000">20000</option>
+                            <option value="30000">30000</option>
+                            <option value="40000">40000</option>
+                            <option value="50000">50000</option>`)
+            if (data.value == "铜版纸不干胶") {
+                $(".ui_guagua2").show();
+                $(".ui_guagua2").removeAttr('disabled');
+
+            } else if (data.value == "250克白卡纸对裱") {
+                $(".fm input").removeAttr('checked');
+                $(".ui_guagua2").hide();
+                $(".caiqie").show();
+                $(".cha_fm").show();
+                $(".cha_fm").find(":input").attr("disabled", false);
+                $(".peishua").hide();
+                $(".peishua").find(":input").attr("disabled", true);
+                $("input[name='craft']").prop('checked', false);
+                $(".cha_fm input").prop('checked', true);
+                $(".ui_guagua2").prop('disabled', 'disabled');
+                $(".ui_cq select[name='count']").empty().append(`                            <option value="500">500</option>
+                            <option value="1000">1000</option>
+                            <option value="2000">2000</option>
+                            <option value="3000">3000</option>
+                            <option value="5000">5000</option>
+                            <option value="10000">10000</option>
+                            <option value="20000">20000</option>`)
+            } else {
+                $(".ui_guagua2").hide();
+                $("input[name='craft']").prop('checked', false);
+                $(".ui_guagua2").prop('disabled', 'disabled');
+                $(".ui_guaguasize2").hide();
+                $(".ui_toothpick").hide();
+            }
+
+            if (data.value == "美纹纸") {
+                $(".meiwenzhiQie").show();
+            } else {
+                $(".meiwenzhiQie").hide();
+                // 切换按钮工艺恢复
+                $("#craftForm")[0].reset();
+            }
+
+            if (data.value == "15" || data.value == "16") {
+                $(".normal").show();
+                $("#craftForm").hide();
+                $(".normal").find(":input").attr("disabled", false);
+            } else {
+                $(".normal").hide();
+                $("#craftForm").show();
+                $('.normal input').prop("checked", false);
+            }
+            if (data.value == 0 || data.value == 1 || data.value == 2 || data.value == 3) {
+
+                $(".pf").show();
+                $(".n_mq").show();
+                $('.n_mq input').prop("disabled", false);
+            }
+            if (data.value == 7) {
+                $(".n_mq").show();
+                $('.n_mq input').prop("disabled", false);
+            }
+            if (data.value == "PP合成纸") {
+                $("#craftForm").show();
+            }
+            if (data.value == "合成纸不干胶") {
+                $("#craftForm").hide();
+                $(".pf").hide();
+                $(".n_mq").hide();
+                $('.n_mq input').prop("disabled", true);
+            }
+            form.render();//必须写
+
+            var content = getContent(kindvalue);
+
+
+            var html = " ";
+            var remark = " ";
+            if ($("input[name='stickerKind']:checked").val() == "插旗") {
+                var kind = "14";
+            } else if ($("input[name='stickerKind']:checked").val() == "双面印刷不干胶") {
+                var kind = "双面印刷不干胶";
+            } else {
+                var kind = $("#kindValue1").val();
+            }
+            // 清空轮播图
+            $("#remark").empty();
+            remark += '<div><span>' + content + '<span/></div>';
+            $("#remark").append(remark);
+            kValue = kind
+            getProductImage(kValue)
+        });
+        form.on('select(kindValue2)', (data) => {
+            kindvalue = data.value
+
+            var content = "预计发货时间:<br>广东:数量500-1000张(顺丰14点前当天发货  普通快递16点前当天发货) 中通 圆通 顺丰;<br>江苏:(3-4天发货) 韵达 顺丰;";
+
+            var html = " ";
+            var remark = " ";
+            // 清空轮播图
+            $("#remark").empty();
+            remark += '<div><span>' + content + '<span/></div>';
+            $("#remark").append(remark);
+            kValue = $("#kindValue2").val()
+            getProductImage(kValue)
+        })
+        // 少数量
+        form.on('select(kindValue)', function (data) {
+            kindvalue = data.value
+            let value = data.value;
+            var content = getContent()
+            var html = " ";
+            var remark = " ";
+            // 清空轮播图
+            $("#carousel").empty();
+            $("#remark").empty();
+            remark += '<div><span>' + content + '<span/></div>';
+            $("#remark").append(remark);
+            kValue = $("#kindValue").val()
+            getProductImage(kValue)
+            $(".cha_fm").hide();
+            $(".cha_fm").find(":input").attr("disabled", true);
+            if (data.value == 0 || data.value == 2) {
+                // 5.11:专版打印没有烫金工艺了,全部禁用、隐藏
+                // 5.18:专版打印恢复烫金工艺
+                // 8.24:专版打印禁用烫金工艺
+                // 2024.07.22:专版打印没有烫金工艺了,全部禁用、隐藏
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", false);
+                $(".fm").show();
+                $(".fm").find(":input").attr("disabled", false);
+                $('.tang').prop('disabled', 'disabled');
+                // $(".tang").each(function (index, value) {
+                //     if (index == 0) {
+                //         $(this).prop("disabled", false);
+                //     }
+                // })
+            } else if (data.value == 1) {
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", true);
+            } else {
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", true);
+                $(".fm").hide();
+                $(".fm").find(":input").attr("disabled", true);
+            }
+            $(".nofm").find(":input").attr("disabled", true);
+            $('input[class = liangmo]').prop('checked', true);
+            if (data.value == 5 || data.value == 6) {
+                $(".at").show();
+                $('.at').removeAttr('disabled');
+            } else {
+                $(".at").hide();
+                $('.at').prop('disabled', 'disabled');
+            }
+            // 透明不干胶带白墨工艺
+            if (data.value == 2) {
+                // 复选框的disabled
+                $(".yb").show();
+                $(".yb").find(":input").attr("disabled", false);
+                /* $('.yb').removeAttr('disabled'); */
+            } else {
+                $(".yb").hide();
+                $(".yb").find(":input").attr("disabled", true);
+                /* $('.yb').prop('disabled', 'disabled'); */
+            }
+            // 切换按钮工艺重置
+            $("#craftForm")[0].reset();
+            /* // 根据选择的产品种类、展示烫金工艺
+            if(data.value == 0 || data.value == 2){
+                $('.lessCount').prop('disabled', 'disabled');
+            }else if(data.value == 1){
+                $('.pvcHide').prop('disabled', 'disabled');
+            }else  */
+            if (data.value == 5 || data.value == 6) {
+                //少数量的时候不带凹凸
+                $(".at").hide();
+                // 禁用,防止表单提交
+                $(".at").find(":input").attr("disabled", true);
+                // 专版打印切换回常规的时候,写这个凹凸工艺取消禁用(上面是用这个取消)
+                $('.at').prop('disabled', 'disabled');
+            }
+            if (data.value == "PP合成纸") {
+                $("#craftForm").show();
+                $(".fm").show();
+                $(".fm").find(":input").attr("disabled", false);
+            }
+            $(".n_mq").hide();
+            $('.n_mq input').prop("disabled", true);
+            if (data.value == 0 || data.value == 1 || data.value == 2 || data.value == 3 || data.value == 7) {
+
+                $(".n_mq").show();
+                $('.n_mq input').prop("disabled", false);
+            }
+
+            // 默认 禁用【彩色印刷+烫金/银】长短边输入框,禁止提交
+            $(".sizeTang").find(":input").attr("disabled", true);
+            form.render();//必须写
+        });
+
+        form.on('checkbox(switch)', function (data) {
+            if (data.elem.checked) {
+                TJValue = data.value
+                if ($("input[name='craftPai']:checked").length > 0) {
+                    $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                    $(data.elem).prop("checked", false);
+                    layer.msg('[排废 - 烫金]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+            } else {
+                TJValue = ""
+            }
+
+            var content = getContent(kindvalue, TJValue);
+
+            var html = " ";
+            var remark = " ";
+
+            // 清空轮播图
+            $("#remark").empty();
+            remark += '<div><span>' + content + '<span/></div>';
+            $("#remark").append(remark);
+            kValue = $("#kindValue1").val()
+            getProductImage(kValue);
+            // 根据选中情况,禁用“长短边”输入框
+            if (TJValue == "彩色印刷+烫金/银") {
+                if (stickerKind != '专版打印') {
+                    $(".sizeTang").find(":input").attr("disabled", false);
+                } else { // 少数量的时候,禁用烫金版尺寸
+                    $(".sizeTang").find(":input").attr("disabled", true);
+                }
+            } else {
+                $(".sizeTang").find(":input").attr("disabled", true);
+            }
+
+            // 烫金只能选1个
+            var tang = $(".tang:checked").length;
+            if (tang > 1) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('烫金只能选[ 1 ]项!', {
+                    offset: ['300px', '300px']
+                }, {icon: 5});
+                return false;
+            }
+            // 凹凸只能选1个
+            var aotu = $(".aotu:checked").length;
+            if (aotu > 1) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('凹凸只能选1项!', {
+                    offset: ['300px', '300px']
+                }, {icon: 5});
+                return false;
+            }
+            // 印白只能选1个
+            var yinbai = $(".yinbai:checked").length;
+            if (yinbai > 1) {
+                $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
+                $(data.elem).prop("checked", false);
+                layer.msg('印白只能选1项!', {
+                    offset: ['300px', '300px']
+                }, {icon: 5});
+                return false;
+            }
+        })
+        form.on('radio(ui_type)', function (data) {
+            if (data.elem.checked) {
+                if ($("input[name='craftPai']:checked").length > 0) {
+                    $(".yinbai_un").click();
+                    form.render()
+                    layer.msg('[排废 - 印白墨]不能同时选择!', {offset: ['300px', '300px']}, {icon: 5});
+                    return false;
+                }
+            }
+            getProductImage(kValue);
+        });
+        form.on('radio(craftMo)', function (data) {
+            var content = getContent();
+            $("#remark").empty();
+            if (kindvalue == "0" && data.value == "覆哑膜") {
+                content = "广东: (2-3天发货) 中通 圆通 顺丰;<br>江苏:(3-4天发货) 韵达  顺丰;"
+            }
+            $("#remark").append('<div><span>' + content + '<span/></div>');
+            getProductImage(kValue);
+        });
+        form.on('checkbox(ui_type)', function (data) {
+            if ($("input[name='craft']:checked").length > 1) {
+                $(data.elem).prop("checked", false);
+                layer.msg('刮刮膜只能选1项!', {
+                    offset: ['300px', '300px']
+                }, {icon: 5});
+                form.render();//必须写
+                return false;
+            }
+            if ($("input[name='craft']:checked").length > 0) {
+                $(".ui_guaguasize").show();
+                $(".ui_guaguasize2").show();
+
+            } else {
+                $(".ui_guaguasize").hide();
+                $(".ui_guaguasize2").hide();
+
+            }
+
+            $("#remark").empty();
+            var content = getContent(kindvalue, TJValue);
+            let remark = '<div><span>' + content + '<span/></div>';
+            $("#remark").append(remark);
+            getProductImage(kValue);
+        })
+
+        function getProductImage(value) {
+            let data = {proTypeValue: $("#proTypeValue").val(), kindValue: value}
+            let craft = $("input[name='craft']:checked").val();
+            let craftTang = $("input[name='craftTang']:checked").val();
+            let yinbai = $("input[name='yinbai']:checked").val();
+            let craftMo = $("input[name='craftMo']:checked").val();
+            let aotu = $("input[name='aotu']:checked").val();
+            let nmq = $("#nmq:checked").val();
+            if (data.kindValue == '拉丝金' || data.kindValue == '拉丝银' || data.kindValue == '15') {
+                delete data.craftValue
+            }
+            if (!!craft) {
+                data.craftValue = 'guaguamo';
+            }
+            if (yinbai == '印白墨') {
+                data.craftValue = '印白墨';
+            }
+            if (data.proTypeValue == 0 && data.kindValue == 1) {
+                if (craftMo == '覆亮膜') {
+                    data.craftValue = '覆亮膜';
+                    if (craftTang) {
+                        data.craftValue = 0;
+                    }
+                }
+                if (craftMo == '覆哑膜') {
+                    data.craftValue = '覆哑膜';
+                    if (craftTang) {
+                        data.craftValue = 1;
+                    }
+                }
+                if (craftTang == '纯烫金') {
+                    data.craftValue = '纯烫金';
+                }
+            }
+            if (data.proTypeValue == 0 && data.kindValue == 16) {
+                if (craftTang != '浮雕烫金') {
+                    data.craftValue = craftTang;
+                }
+            }
+            if (data.proTypeValue == 0 && data.kindValue == 15) {
+                data.craftValue = craftTang;
+            }
+            if (data.proTypeValue == 0 && data.kindValue == 0) {
+                if (craftMo == '覆亮膜') {
+                    data.craftValue = '覆亮膜';
+                    if (!!craft) {
+                        data.craftValue = 'guaguamo';
+                    }
+                    if (craftTang) {
+                        data.craftValue = 0;
+                    }
+                }
+                if (craftMo == '覆哑膜') {
+                    data.craftValue = '覆哑膜';
+                    if (!!craft) {
+                        data.craftValue = 'guaguamo';
+                    }
+                    if (craftTang) {
+                        data.craftValue = 1;
+                    }
+                }
+                if (craftTang == '纯烫金') {
+                    if (craftMo == '覆亮膜') {
+                        data.craftValue = 2;
+                    }
+                    if (craftMo == '覆哑膜') {
+                        data.craftValue = 3;
+                    }
+                }
+            }
+            if (data.proTypeValue == 0 && data.kindValue == 2) {
+                if (craftMo == '覆亮膜') {
+                    data.craftValue = '覆亮膜';
+                    if (yinbai == '印白墨') {
+                        data.craftValue = 4;
+                    }
+                    if (craftTang) {
+                        data.craftValue = 0;
+                    }
+                }
+                if (craftMo == '覆哑膜') {
+                    data.craftValue = '覆哑膜';
+                    if (yinbai == '印白墨') {
+                        data.craftValue = 5;
+                    }
+                    if (craftTang) {
+                        data.craftValue = 1;
+                    }
+                }
+                if (craftTang == '纯烫金') {
+                    if (craftMo == '覆亮膜') {
+                        data.craftValue = 2;
+                    }
+                    if (craftMo == '覆哑膜') {
+                        data.craftValue = 3;
+                    }
+                }
+            }
+            if (data.proTypeValue == 0 && (data.kindValue == 5 || data.kindValue == 6)) {
+                delete data.craftValue
+                if (aotu) {
+                    data.craftValue = aotu;
+                }
+            }
+            if (nmq) {
+                data.craftValue = "内部模切";
+            }
+
+            $.ajax({
+                url: "${pageContext.request.contextPath}/getImgs",
+                type: "GET",
+                data,
+                success: function (result) {
+                    $("#carousel").empty();
+                    let html;
+                    if (result.length > 0) {
+                        for (let i = 0; i < result.length; i++) {
+                            html += '<div><img style="width:' + result[0]?.imgWidth + 'px" src="' + result[i]?.imgUrl + '"></div>';
+                        }
+
+                        $("#carousel").append(html);
+                        // 如果没有轮播图就隐藏
+                        document.getElementById("test1").style.display = "block";   //显示
+                        ins.reload({
+                            elem: '#test1',
+                            width: result[0]?.imgWidth,  //设置容器宽度
+                            height: result[0]?.imgHeight
+                        });
+                    }
+
+                }
+            });
+        }
+
+        //点击计算,计算价格
+        form.on('submit(acount_btn)', function (data) {
+            var stickerKind = [$('input[name="stickerKind"]:checked').val()];
+            var count = $("#count").val();
+            if (stickerKind == '少数量') {
+                if (count > 100) {
+                    layer.msg("[ 少数量 ] 请报100以下", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                var kindValue = $("#kindValue").val()
+            } else if (stickerKind == '常用种类') {
+                var kindValue = $("#kindValue1").val()
+            } else if (stickerKind == '专版打印') {
+                var kindValue = $("#kindValue").val()
+            } else if (stickerKind[0] == '插旗') {
+                var kindValue = $("#kindValue3").val()
+            } else {
+                var kindValue = $("#kindValue2").val()
+            }
+
+            var craftMo = [$('input[name="craftMo"]:checked').val()];
+            var aotu = [$('input[name="aotu"]:checked').val()];
+            var tangjin = [$('input[name="craftTang"]:checked').val()];
+            var yinbai = [$('input[name="yinbai"]:checked').val()];
+            var size = $("#size").val();
+            var number = $("#number").val();
+
+            if (kindValue == "封口贴铜版纸不干胶") {
+                size = $("#ui_size").val();
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", true);
+                $(".fm").hide();
+                $(".fm").find(":input").attr("disabled", true);
+                $(".yb").hide();
+                $(".yb").find(":input").attr("disabled", true);
+                $(".at").hide();
+                $(".at").find(":input").attr("disabled", true);
+            } else if (stickerKind == "插旗") {
+                size = $("#ui_cqSize").val();
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", true);
+                $(".fm").hide();
+                $(".fm").find(":input").attr("disabled", true);
+                $(".yb").hide();
+                $(".yb").find(":input").attr("disabled", true);
+                $(".at").hide();
+                $(".at").find(":input").attr("disabled", true);
+            } else if (stickerKind == "双面印刷不干胶") {
+                size = $("#ui_doubleSize").val();
+                $(".tj").hide();
+                $(".tj").find(":input").attr("disabled", true);
+                $(".fm").hide();
+                $(".fm").find(":input").attr("disabled", true);
+                $(".yb").hide();
+                $(".yb").find(":input").attr("disabled", true);
+                $(".at").hide();
+                $(".at").find(":input").attr("disabled", true);
+            }
+
+            let TJValue = $("input[name='craftTang']:checked").val()
+
+            if (kindValue == "15" || kindValue == "16") {
+                if (size.split("*")[0] < 2 || size.split("*")[1] < 2) {
+                    layer.msg("树纹纸/草香纸不干胶尺寸不能小于2*2 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if (kindValue == "16" && TJValue == "彩色印刷") {
+                    if ((size.split("*")[0] > 42 || size.split("*")[1] > 28) && (size.split("*")[0] > 28 || size.split("*")[1] > 42)) {
+                        layer.msg("草香纸不干胶-彩色印刷尺寸不能超过42*28 cm", {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+            } else if (size.split("*")[0] < 1 || size.split("*")[1] < 1) {
+                layer.msg("不干胶尺寸不能小于1*1 cm", {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+
+            if (kindValue == "5") {
+                /* if(aotu == "" && stickerKind != "专版打印"){
+                    layer.msg("请选择凹凸工艺",{offset:['300px','300px']},function(){});
+                    return false;
+                } */
+
+                if ((size.split("*")[0] > 40 || size.split("*")[1] > 27) && (size.split("*")[0] > 27 || size.split("*")[1] > 40)) {
+                    layer.msg("哑金不干胶尺寸不能超过39*27 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            if (kindValue == "美纹纸" && stickerKind == '常用种类') {
+                if ((size.split("*")[0] > 42 || size.split("*")[1] > 28.5) && (size.split("*")[0] > 28.5 || size.split("*")[1] > 42)) {
+                    layer.msg("【美纹纸】尺寸不能超过42*28.5 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if ((size.split("*")[0] < 2 || size.split("*")[1] < 2)) {
+                    layer.msg("【美纹纸】尺寸不能小于2 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            if (kindValue == "13" && stickerKind == '常用种类') {
+                if ((size.split("*")[0] > 57 || size.split("*")[1] > 57) && (size.split("*")[0] > 57 || size.split("*")[1] > 57)) {
+                    layer.msg("【10C静电膜】尺寸不能超过57*57 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            if (kindValue == "6") {
+                if ((size.split("*")[0] > 42 || size.split("*")[1] > 38) && (size.split("*")[0] > 38 || size.split("*")[1] > 42)) {
+                    layer.msg("哑银不干胶尺寸不能超过42*38 cm", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+            if ((size.split("*")[0] > 100 || size.split("*")[1] > 70) && (size.split("*")[0] > 70 || size.split("*")[1] > 100)) {
+                layer.msg("不干胶尺寸不能超过100*70 cm", {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if ($("#kindValue1").val() == "易碎纸不干胶" && $("#size").val().indexOf(".") != -1) {
+                layer.msg('【易碎纸不干胶】报价请输入整数尺寸!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (stickerKind[0] != "插旗" && stickerKind[0] != "双面印刷不干胶") {
+                if (!stickerKind[0]) {
+                    layer.msg('请选择品种!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if (!kindValue[0]) {
+                    layer.msg('请选择品种!', {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            } else {
+                if ($("input[name='craftShua']:checked").val() == "粘牙签") {
+                    // if ((size.split("*")[0] > 12 || size.split("*")[1] > 5) && (size.split("*")[1] > 12 || size.split("*")[0] > 5)) {
+                    //     layer.msg('粘牙签最大尺寸12*5!', {offset: ['300px', '300px']}, function () {
+                    //     });
+                    //     return false;
+                    // }
+                }
+            }
+            if (stickerKind[0] == "插旗" && kindValue == "250克白卡纸对裱") {
+                if ((size.split("*")[0] < 1 || size.split("*")[1] < 1)) {
+                    layer.msg("插卡-250克白卡纸对裱不能小于10*10MM", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+                if ((size.split("*")[0] > 9 || size.split("*")[1] > 9)) {
+                    layer.msg("插卡-250克白卡纸对裱不能大于90*90MM", {offset: ['300px', '300px']}, function () {
+                    });
+                    return false;
+                }
+            }
+
+            if (kindValue != 0 && kindValue != 1 && kindValue != 2 && kindValue != "拉丝金"
+                && kindValue != "拉丝银" && kindValue != "格底珠光膜" && kindValue != "PP合成纸") {
+                craftMo = ""
+            }
+            if (kindValue != 5 && kindValue != 6) {
+                aotu = ""
+            }
+            if (kindValue != 0 && kindValue != 1 && kindValue != 2) {
+                tangjin = ""
+            }
+            if (kindValue != 2) {
+                yinbai = ""
+            }
+            if (stickerKind == "少数量" || stickerKind == "专版打印") {
+                if (kindValue == 5 || kindValue == 6) {
+                    aotu = ""
+                }
+                if (kindValue == "拉丝金" || kindValue == "拉丝银" || kindValue == "PP合成纸") {
+                    craftMo = ""
+                }
+                if (number > 1) {
+                    if ($("#desType option:selected").val() == "" || $("#desType option:selected").val() == null) {
+                        layer.msg('请选择设计内容!', {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                }
+                // 专版打印没有烫金工艺了,全部禁用了
+                // tangjin = ""
+            }
+            let n_moq_num = $('input[name="n_mq_num"]').val()
+            let n_moq_size = $("input[name='n_mq_size']").val()
+            let nmq = $("#nmq:checked").val();
+            if (nmq == '内部模切' && n_moq_num == 0) {
+                layer.msg('请输入内模切个数!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (n_moq_num > 0 && n_moq_size == "") {
+                layer.msg('请输入内模切尺寸!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            if (n_moq_num > 0 && n_moq_size.indexOf("*") == -1) {
+                layer.msg('请输入内模切正确尺寸!', {offset: ['300px', '300px']}, function () {
+                });
+                return false;
+            }
+            // if (n_moq_num > 0 && ($('input[name="craft"]:checked').length > 0 || $('input[name="craftPai"]:checked').val() || $('input[name="aotu"]:checked').val() || $('input[name="craftTang"]:checked').val() || $('input[name="yinbai"]:checked').val() != "不印白")) {
+            //     layer.msg('内模切只能有覆膜工艺!', {offset: ['300px', '300px']}, function () {
+            //     });
+            //     return false;
+            // }
+            if (n_moq_num > 0) {
+                let main_size = size.split("*");
+                let moq_size = n_moq_size.split("*");
+
+                let max_number = Math.max(Math.floor(main_size[0] * 10 / (moq_size[0] * 10 + 2)) * Math.floor(main_size[1] * 10 / (moq_size[1] * 10 + 2)), Math.floor(main_size[1] * 10 / (moq_size[0] * 10 + 2)) * Math.floor(main_size[0] * 10 / (moq_size[1] * 10 + 2)))
+                if (max_number < n_moq_num) {
+                    layer.msg('内模切尺寸超出范围!', {offset: ['300px', '300px']})
+                    return false;
+                }
+            }
+
+
+            var kindData = {
+                0: "铜板纸不干胶",
+                1: "pvc不干胶",
+                2: "透明不干胶",
+                3: "牛皮纸",
+                5: "哑金不干胶",
+                6: "哑银不干胶",
+                7: "书写纸不干胶",
+                8: "刚古水纹超白",
+                9: "封口贴",
+                10: "红底散金",
+                11: "布纹纸超白",
+                12: "珠光超白",
+                13: "10C静电膜",
+                15: "树纹纸",
+                16: "草香纸/大地纸"
+            };
+            var kind = kindData[kindValue];
+            if (!kind) {
+                if (!kindValue) {
+                    kind = stickerKind;
+                } else {
+                    kind = kindValue;
+                }
+            }
+
+            var uri = "${pageContext.request.contextPath}/getProductPrice";
+            $.ajax({
+                url: uri,
+                type: "GET",
+                data: $(".big_box form").serialize(),
+                success: function (result) {
+                    if (result.code == 100) {
+                        layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
+                        });
+                        return false;
+                    }
+                    var data = result.data.proList;
+                    var craftList = "";
+                    let craft_list = []
+                    let span_result = "为回馈新老客户,本店特别推出精品不干胶贴纸 ; 加金牌设计师免费为您进行一对一设计,加胶加膜\n";
+                    if (data[0].kindLabel == "铜版纸不干胶") {
+                        if (craftMo != "") {
+                            craft_list.push(craftMo)
+                        }
+                        if (aotu != "") {
+                            craft_list.push(aotu)
+                        }
+                        if (tangjin != "") {
+                            craft_list.push(tangjin)
+                        }
+                        craftList = craftMo + aotu + tangjin;
+                    } else if (kindValue == "13") {
+                        span_result = "";
+                        craft_list.push("模切");
+                        if ($("input[name='yinbai']:checked").val() != "") {
+                            craft_list.push($("input[name='yinbai']:checked").val());
+                        }
+                    } else if (kindValue == "15" || kindValue == "16") {
+                        span_result = "";
+                        if ($("input[name='craftTang']:checked").val() != "") {
+                            craft_list.push($("input[name='craftTang']:checked").val());
+                        }
+                    } else if (stickerKind == "双面印刷不干胶") {
+                        span_result = "";
+                        if ($(".ui_sm input[name='craftQie']:checked").val() != "") {
+                            craft_list.push($(".ui_sm input[name='craftQie']:checked").val());
+                        }
+                        if ($(".ui_sm input[name='craftshua']:checked").val() != "") {
+                            craft_list.push($(".ui_sm input[name='craftshua']:checked").val());
+                        }
+                        if ($(".ui_sm input[name='craftMo']:checked").val() != "") {
+                            craft_list.push($(".ui_sm input[name='craftMo']:checked").val());
+                        }
+                    } else {
+                        span_result = "";
+                        if (stickerKind == "插旗") {
+                            craftMo = "模切-" + $("input[name='craftShua']:checked").val();
+                            craft_list.push("模切")
+                            if ($("input[name='craftShua']:checked").val() != "") {
+                                craft_list.push($("input[name='craftShua']:checked").val());
+                            }
+                        } else if (stickerKind == "双面印刷不干胶") {
+                            craftMo = "模切-覆哑膜";
+                            craft_list.push("模切-覆哑膜")
+                        }
+                        if (kindValue == "0") {
+                            if ($("input[name='craft']:checked").val() != null) {
+                                yinbai = $("input[name='craft']:checked").val() + ":6*18毫米";
+                                craft_list.push(yinbai)
+                            }
+                        }
+                        var yaqian = ''
+                        if (stickerKind == "插旗") {
+                            if ($("input[name='craft']:checked").val() != null) {
+                                yinbai = $("input[name='craft']:checked").val() + ":6*18毫米";
+                            }
+                            yaqian = $("select[name='toothpick_size'] option:selected").val() + '厘米';
+                            craft_list.push(yaqian)
+                        }
+                        craft_list.push(...yinbai)
+                        craft_list.push(...craftMo)
+                        craft_list.push(...aotu)
+                        craft_list.push(...tangjin)
+                        craftList = craftMo + aotu + tangjin + yinbai;
+                    }
+                    if ($("input[name='craftPai']:checked").val() != "") {
+                        craft_list.push($("input[name='craftPai']:checked").val())
+                    }
+                    if (nmq == '内部模切' && n_moq_num > 0) {
+                        craft_list.push("内部模切")
+                    }
+                    span_result += kind + ' - ' + size + "厘米 - " + craft_list.join("-") + '\n';
+
+                    if (stickerKind == "专版打印") {
+                        let numberType = $("#desType option:selected").text();
+                        span_result += "款数:" + number + "-" + numberType + "\n";
+                    }
+                    for (let i = 0; i < data.length; i++) {
+                        data[i].number = number;
+                        span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元。" + '\n'
+                        let providePrices = data[i].providePrices;
+                        if (providePrices && providePrices.length > 0) {
+                            for (let item in providePrices) {
+                                span_result += providePrices[item].name + ":" + providePrices[item].price + "元。共" + Number(data[i].price + providePrices[item].price).toFixed(2) + '\n'
+                            }
+                        }
+
+                    }
+
+                    /*layer.msg("插旗(牙签)不是粘好出货哦!",{offset:['300px','300px']},function(){});*/
+                    span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
+                    $("#span_result").val(span_result);
+                    if (stickerKind == "封口贴") {
+                        count = $("#selectCount option:selected").val();
+                    } else if (stickerKind == "专版打印") {
+                        count = $("#printCount").val();
+                    }
+                    if (stickerKind != "插旗" && stickerKind != "双面印刷不干胶") {
+                        kind = kind.replace("不干胶", " ");
+                    }
+                    getRemark("不干胶", size, count + "个", kind, number, craftList, "");
+                    //计算完自动复制文本
+                    var e = document.getElementById("span_result");//对象是content
+                    if (e.value != "") {
+                        e.select();//选择对象
+                        document.execCommand("Copy");//执行浏览器复制命令
+                    }
+
+                    if ((${ sessionScope.USER_SESSION.role.contains('1010')})) {
+                        layer.msg('要加设计费!', {offset: ['300px', '300px']}, function () {
+                        });
+                    }
+
+                    //生成表格
+                    table.render({
+                        elem: '#priceTable',
+                        even: true, //隔行变色
+                        data: data, // 赋值已知数据
+                        width: 500,
+                        cols: [[
+                            {
+                                field: 'number',
+                                width: '12%',
+                                align: "center",
+                                title: '款数'
+                            }, {
+                                field: 'count',
+                                width: '16%',
+                                align: "center",
+                                title: '数量'
+                            }, {
+                                field: 'price',
+                                width: '16%',
+                                align: "center",
+                                title: '报价'
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '16%',
+                                title: '折扣价',
+                                templet: function (d) {
+                                    /* if(d.kindLabel == "铜版纸不干胶"){
+                                        return Math.ceil(d.price)
+                                    }
+                                    else if(d.kindLabel == "铜版纸不干胶3"){
+                                        return Math.floor(d.price * 0.95)
+                                    } */
+                                    return Math.ceil(d.price)
+                                }
+                            }, {
+                                field: 'wangwang',
+                                align: "center",
+                                width: '19%',
+                                title: '跳楼价',
+                                templet: function (d) {
+                                    /*if(d.kindLabel == "铜版纸不干胶"){
+                                        if(d.count <= 10000){
+                                            return Math.ceil(d.price * 0.88)
+                                        }
+                                    } else if(d.kindLabel == "A级铜版纸不干胶2"){
+                                        return Math.floor(d.price * 0.85)
+                                    } */
+                                    return Math.ceil(d.price)
+                                    /* else if(d.kindLabel == "铜版纸不干胶3"){
+                                        return Math.floor(d.price * 0.93)
+                                    }else{
+                                        return Math.ceil(d.price * 0.88)
+                                    } */
+                                }
+                            }, {
+                                field: 'weight',
+                                width: '21%',
+                                align: "center",
+                                title: '重量(kg)'
+                            }
+                        ]],
+                        done: function () {
+                        }
+                    });
+                }
+            });
+            return false;
+        });
+    });
+</script>
+</html>

Some files were not shown because too many files changed in this diff