新增铜版纸汤镭射银价格

Cette révision appartient à :
2025-10-13 10:52:24 +08:00
Parent 2729347d90
révision 8207377e6e
6 fichiers modifiés avec 227 ajouts et 54 suppressions
+76 -19
Voir le fichier
@@ -1413,7 +1413,18 @@ public class ProductService {
prices.put("芳怡", new int[]{1245, 1245, 2274, 3904, 5353, 7300, 8428, 9792, 11172, 12534, 13914, 15292});
}
double zhekou = 1;
int min = getNum(length, width);
if (min == 1) {
zhekou = 1;
} else if (min == 2) {
zhekou = 0.83;
} else if (min == 3) {
zhekou = 0.8;
} else {
zhekou = 0.75;
}
int[] base_price = prices.get(kind);
for (int i = 0; i < counts.length; i++) {
if (counts[i] < dto.getCount()) {
@@ -1431,7 +1442,7 @@ public class ProductService {
getCraft(dto, priceList, null, null, 0);
// 根据位数重新算价格
for (Product product : priceList) {
product.setPrice(Math.ceil(product.getPrice() * min));
product.setPrice(Math.ceil(product.getPrice() * min * zhekou));
}
// 根据款数重新算价格
for (Product product : priceList) {
@@ -1466,10 +1477,22 @@ public class ProductService {
// 报的数量需要多少张大纸
// 需要多少张大纸 = 数量 * 款数 /每张做多少个 ===总数量/每张多少个
int num = (int) Math.ceil(count * number / max);
double zhekou = 1;
int min = getNum(length, width);
if (min == 1) {
zhekou = 1;
} else if (min == 2) {
zhekou = 0.83;
} else if (min == 3) {
zhekou = 0.8;
} else {
zhekou = 0.75;
}
price = fixPrice + (num - 5 > 0 ? num - 5 : 0) * zhang;
Product dto2 = new Product();
dto2.setCount(count);
dto2.setPrice(price + addPrice);
dto2.setPrice(Math.ceil((price + addPrice) * zhekou));
priceList.add(dto2);
getCraft(dto, priceList, null, null, 0);
} else if ("素芸".equals(kind)) {
@@ -1477,7 +1500,7 @@ public class ProductService {
double[] prices = {};
prices = new double[]{144, 272, 528, 660, 1280, 2560, 3840, 6400, 12800};
if (craft_list.contains("击凸") || craft_list.contains("压凹") || (craft_list.contains("单面烫金") || craft_list.contains("双面烫金"))) {
if (craft_list.contains("击凸") || craft_list.contains("压凹") || (craft_list.contains("单面烫金") || craft_list.contains("双面烫金") || craft_list.contains("烫镭射银"))) {
prices = new double[]{214, 362, 658, 810, 1530, 3060, 4590, 7650, 15300};
}
if (craft_list.contains("圆角")) {
@@ -1486,10 +1509,10 @@ public class ProductService {
if (craft_list.contains("圆角") && (craft_list.contains("击凸") || craft_list.contains("压凹"))) {
prices = new double[]{216, 366, 666, 820, 1550, 3100, 4600, 7800, 15500};
}
if (craft_list.contains("圆角") && (craft_list.contains("单面烫金") || craft_list.contains("双面烫金"))) {
if (craft_list.contains("圆角") && (craft_list.contains("单面烫金") || craft_list.contains("双面烫金") || craft_list.contains("烫镭射银"))) {
prices = new double[]{216, 366, 666, 820, 1550, 3100, 4600, 7800, 15500};
}
if (craft_list.contains("异形模切") && (craft_list.contains("单面烫金") || craft_list.contains("双面烫金"))) {
if (craft_list.contains("异形模切") && (craft_list.contains("单面烫金") || craft_list.contains("双面烫金") || craft_list.contains("烫镭射银"))) {
prices = new double[]{214, 362, 658, 810, 1530, 3060, 4590, 7650, 15300};
}
if (craft_list.contains("异形模切") && (craft_list.contains("击凸") || craft_list.contains("压凹"))) {
@@ -1513,6 +1536,9 @@ public class ProductService {
if (craft_list.contains("双面烫金")) {
rate = rate * 1.8;
}
if (craft_list.contains("双面烫镭射银")) {
rate = rate * 1.8;
}
dto2 = new Product();
dto2.setCount(count_list[i]);
dto2.setPrice(Math.ceil(prices[i] * rate));
@@ -1656,7 +1682,18 @@ public class ProductService {
return priceList;
} else {
// 产品位数
double zhekou = 1;
int min = getNum(length, width);
if (min == 1) {
zhekou = 1;
} else if (min == 2) {
zhekou = 0.83;
} else if (min == 3) {
zhekou = 0.8;
} else {
zhekou = 0.75;
}
priceList = productMapper.getThanPrice(dto);
@@ -1691,7 +1728,7 @@ public class ProductService {
}
// 根据位数重新算价格
for (Product product : priceList) {
product.setPrice(Math.ceil(product.getPrice() * min));
product.setPrice(Math.ceil(product.getPrice() * min * zhekou));
}
// 根据款数重新算价格
for (Product product : priceList) {
@@ -3455,7 +3492,7 @@ public class ProductService {
product.setWeight(df.format(wei * product.getCount() * number));
}
}
if (number > 1 && width * length * 10000 < 40 * 50) {
if (number > 1 && width != null && length != null && width * length * 10000 < 40 * 50) {
if (("0".equals(kind) && "0".equals(kind2)) || ("1".equals(kind) && ("1".equals(kind2) || "3".equals(kind2) || "8".equals(kind2) || "15".equals(kind2))) || "2".equals(kind)) {
double desFee = 0;
@@ -4041,6 +4078,25 @@ public class ProductService {
case "杯垫":
// 单个产品的面积
area = length * width / 10000;
carft_list = dto.getCraft() != null ? Arrays.asList(dto.getCraft()) : new ArrayList<>();
double rate = 1;
if ("烫黄金".equals(kind2)) {
if (carft_list.contains("单面烫黄金")) {
kind2 = "单面烫黄金";
}
if (carft_list.contains("双面烫黄金")) {
kind2 = "双面烫黄金";
}
}
if ("烫镭射银".equals(kind2)) {
if (carft_list.contains("单面烫镭射银")) {
kind2 = "单面烫镭射银";
}
if (carft_list.contains("双面烫镭射银")) {
kind2 = "双面烫镭射银";
}
rate = 1.2;
}
// 300克
if ("3".equals(kind)) {
// 异形模切价格
@@ -4069,10 +4125,11 @@ public class ProductService {
}
}
} else if ("6".equals(kind)) {
priceList = new PriceUtils().tags600Price(dto, kind, kind2, area, count);
// for (Product product : priceList) {
// product.setPrice(Math.floor(product.getPrice() * 1.3));
// }
for (Product product : priceList) {
product.setPrice(Math.ceil(product.getPrice() * rate));
}
} else if ("10".equals(kind) || "11".equals(kind)) {
int[] count_list = {50, 100, 200, 500, 1000};
double[] jitu = {};
@@ -4935,13 +4992,13 @@ public class ProductService {
}
if ("3".equals(dto.getKind())) {
prices = new double[][]{
{91, 158, 210, 234, 514},
{91, 158, 210, 234, 514},
{100, 168, 230, 242, 542},
{100, 168, 230, 251, 550},
{110, 175, 250, 275, 564},
{91, 158, 234, 514},
{91, 158, 234, 514},
{100, 168, 242, 542},
{100, 168, 251, 550},
{110, 175, 275, 564},
};
count_list = new int[]{10, 20, 30, 40, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000};
count_list = new int[]{10, 20, 40, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000};
}
if ("4".equals(dto.getKind())) {
prices = new double[][]{
@@ -6295,16 +6352,16 @@ public class ProductService {
if ("特种纸名片".equals(dto.getProTypeValue()) && craftList.contains("异形模切") && !craftList.contains("单面烫金") && !craftList.contains("双面烫金")) {// 200-500张按照原有的价格乘以3倍 1000-5000张按照原有的价格乘以2.4倍 5000-10000张按照原有的价格乘以2倍
for (Product product : priceList) {
if (200 <= product.getCount() && product.getCount() <= 500) {
product.setPrice(Math.ceil(product.getPrice() * 3));
product.setPrice(Math.ceil(product.getPrice() * 1.9));
}
if (500 < product.getCount() && product.getCount() <= 1000) {
product.setPrice(Math.ceil(product.getPrice() * 2.6));
product.setPrice(Math.ceil(product.getPrice() * 2.3));
}
if (1000 < product.getCount() && product.getCount() <= 5000) {
product.setPrice(Math.ceil(product.getPrice() * 2.4));
}
if (5000 < product.getCount() && product.getCount() <= 10000) {
product.setPrice(Math.ceil(product.getPrice() * 2));
product.setPrice(Math.ceil(product.getPrice() * 2.5));
}
}
}
+18
Voir le fichier
@@ -1004,6 +1004,15 @@ public class PriceUtils {
{764, 764, 877, 991, 1014, 1105, 1219, 1301, 1310, 1423, 1651, 2038, 2406, 2470, 3494, 5314, 9295},
{1495, 1495, 1716, 1937, 1981, 2158, 2379, 2538, 2555, 2776, 3218, 3970, 4686, 4810, 6799, 10335, 18070}
};
} else if ("单面烫镭射银".equals(kind2)) {
prices = new int[][]{
{190, 190, 221, 252, 258, 283, 315, 338, 340, 372, 435, 539, 641, 658, 938, 1438, 2530},
{195, 195, 226, 257, 263, 288, 319, 343, 345, 377, 439, 544, 646, 663, 943, 1443, 2535},
{315, 350, 366, 413, 418, 456, 504, 535, 538, 585, 681, 845, 1001, 1027, 1459, 2229, 3913},
{468, 468, 538, 608, 622, 678, 748, 799, 805, 876, 1016, 1254, 1482, 1521, 2152, 3276, 5733},
{764, 764, 877, 991, 1014, 1105, 1219, 1301, 1310, 1423, 1651, 2038, 2406, 2470, 3494, 5314, 9295},
{1495, 1495, 1716, 1937, 1981, 2158, 2379, 2538, 2555, 2776, 3218, 3970, 4686, 4810, 6799, 10335, 18070}
};
} else if ("击凸".equals(kind2) || "压凹".equals(kind2)) {
prices = new int[][]{
{196, 196, 229, 261, 268, 295, 326, 350, 352, 385, 450, 560, 665, 684, 976, 1496, 2635},
@@ -1022,6 +1031,15 @@ public class PriceUtils {
{1118, 1528, 1754, 1982, 2028, 2210, 2438, 2602, 2620, 2846, 3302, 4076, 4812, 4940, 6988, 10628, 18590},
{2194, 2990, 3432, 3874, 3962, 4316, 4758, 5076, 5110, 5552, 6436, 7940, 9372, 9620, 13598, 20670, 36140}
};
} else if ("双面烫镭射银".equals(kind2)) {
prices = new int[][]{
{270, 380, 442, 504, 516, 566, 630, 676, 680, 744, 870, 1078, 1282, 1316, 1876, 2876, 5060},
{278, 390, 452, 514, 526, 576, 638, 686, 690, 754, 878, 1088, 1292, 1326, 1886, 2886, 5070},
{460, 630, 732, 826, 836, 912, 1008, 1070, 1076, 1170, 1362, 1690, 2002, 2054, 2918, 4458, 7826},
{682, 936, 1076, 1216, 1244, 1356, 1496, 1598, 1610, 1752, 2032, 2508, 2964, 3042, 4304, 6552, 11466},
{1118, 1528, 1754, 1982, 2028, 2210, 2438, 2602, 2620, 2846, 3302, 4076, 4812, 4940, 6988, 10628, 18590},
{2194, 2990, 3432, 3874, 3962, 4316, 4758, 5076, 5110, 5552, 6436, 7940, 9372, 9620, 13598, 20670, 36140}
};
} else if ("单面烫黄金+凹凸".equals(kind2)) {
prices = new int[][]{
{239, 239, 279, 321, 329, 361, 403, 433, 435, 477, 559, 698, 830, 853, 1222, 1877, 3310},
+88 -26
Voir le fichier
@@ -27,6 +27,14 @@
#color_type .layui-form-select .layui-edge {
right: 20px;
}
#leishe_type .layui-form-select .layui-edge {
right: 20px;
}
#huangjin_type .layui-form-select .layui-edge {
right: 20px;
}
</style>
<body>
<div class="big_box">
@@ -106,31 +114,52 @@
工艺
</p>
<div class="layui-input-block">
<input type="radio" name="craftQie" lay-filter="craftQie" value="异形模切" title="异形模切" checked>
|&nbsp;&nbsp;&nbsp;
<span style="display: none">
<input type="radio" id="non" name="craftMo" lay-filter="craftMo" la value="不覆膜"
title="不覆膜"/>
</span>
<span>
<input type="radio" id="double" name="craftMo" lay-filter="craftMo" la value="双面覆哑膜"
title="双面覆哑膜" checked/>
</span>
|&nbsp;&nbsp;&nbsp;
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="无" title="无" checked>
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="单面烫黄金" title="单面烫黄金">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="双面烫黄金" title="双面烫黄金">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="击凸" title="击凸">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="压凹" title="压凹">
<input type="radio" name="kind2Value" value="单面烫黄金+凹凸" title="单面烫黄金+凹凸">
<div class="layui-input-block">
<span style="float:left;margin-top:10px">裁切 </span>
<input type="radio" name="craftQie" lay-filter="craftQie" value="异形模切" title="异形模切" checked>
<span id="color_type" class="layui-inline" style="display: none;width: 100px">
<select name="craft" class="select" disabled>
<option value="无色" selected>无色</option>
<option value="有色">有色</option>
<option value="有色加凹凸">有色加激凸/有色加压凹</option>
</select>
</span>
</div>
<div class="layui-input-block">
<span style="float:left;margin-top:10px">覆膜 </span>
<span style="display: none">
<input type="radio" id="non" name="craftMo" lay-filter="craftMo" la value="不覆膜"
title="不覆膜"/>
</span>
<span>
<input type="radio" id="double" name="craftMo" lay-filter="craftMo" la value="双面覆哑膜"
title="双面覆哑膜" checked/>
</span>
</div>
<div class="layui-input-block">
<span style="float:left;margin-top:10px">特殊工艺 </span>
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="无" title="无" checked>
<span id="leishe_layout">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="烫镭射银" title="烫镭射银">
<span id="leishe_type" class="layui-inline" style="display: none;width: 150px">
<select name="craft" class="select" disabled>
<option value="单面烫镭射银" selected>单面烫镭射银</option>
<option value="双面烫镭射银">双面烫镭射银</option>
</select>
</span>
</span>
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="烫黄金" title="烫黄金">
<span id="huangjin_type" class="layui-inline" style="display: none;width: 150px">
<select name="craft" class="select" disabled>
<option value="单面烫黄金" selected>单面烫黄金</option>
<option value="双面烫黄金">双面烫黄金</option>
</select>
</span>
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="击凸" title="击凸">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="压凹" title="压凹">
<input type="radio" name="kind2Value" value="单面烫黄金+凹凸" title="单面烫黄金+凹凸">
<span id="color_type" class="layui-inline" style="display: none;width: 100px">
<select name="craft" class="select" disabled>
<option value="无色" selected>无色</option>
<option value="有色">有色</option>
<option value="有色加凹凸">有色加激凸/有色加压凹</option>
</select>
</span>
</div>
</div>
</div>
<div class="layui-form-item fixcount" id="fixcount" style="display: none">
@@ -232,6 +261,16 @@
$("#tangcolor").hide();
$("#yaao").prop("checked", true);
$("#size").val("").prop("readonly", false);
$("#leishe_layout").hide();
$("#leishe_layout").find(":input").attr("disabled", true);
$("#leishe_layout").find("select").attr("disabled", true);
$("#leishe_type").hide();
$("#leishe_type").find("select").attr("disabled", true);
$("#huangjin_type").hide();
$("#huangjin_type").find("select").attr("disabled", true);
$("#color_type").hide();
$("#color_type").find("select").attr("disabled", true);
$("input[name='kind2Value'][value='无']").prop("checked", true);
if (kindValueData.value == 10 || kindValueData.value == 11) {
$(".fixcount").show();
$(".fixcount").find(":input").attr("disabled", false);
@@ -263,6 +302,9 @@
$('#non').prop('checked', false);
$('#non').parent('span').hide();
$("#double").parent('span').show();
$("#leishe_layout").show();
$("#leishe_layout").find(":input").attr("disabled", false);
$("#leishe_layout").find("select").attr("disabled", false);
}
}
}
@@ -313,6 +355,20 @@
$("#color_type").hide();
$("#color_type").find("select").attr("disabled", true);
}
if (at == '烫镭射银') {
$("#leishe_type").show();
$("#leishe_type").find("select").attr("disabled", false);
} else {
$("#leishe_type").hide();
$("#leishe_type").find("select").attr("disabled", true);
}
if (at == '烫黄金') {
$("#huangjin_type").show();
$("#huangjin_type").find("select").attr("disabled", false);
} else {
$("#huangjin_type").hide();
$("#huangjin_type").find("select").attr("disabled", true);
}
form.render();
})
@@ -458,9 +514,15 @@
}
var data = result.data.proList;
if ("无" != kind2Value) {
arr.push(kind2Value)
if (kind2Value == "击凸" || kind2Value == "压凹") {
arr.push($("select[name='craft'] option:selected").val())
arr.push($("#color_type select[name='craft'] option:selected").val())
} else if (kind2Value == '烫镭射银') {
arr.push($("#leishe_type select[name='craft'] option:selected").val())
} else if (kind2Value == '烫黄金') {
arr.push($("#huangjin_type select[name='craft'] option:selected").val())
} else {
arr.push(kind2Value)
}
}
var span_result = '杯垫 - ' + kindValueData[kindValue] + ' - ' + size + '厘米\n'
+32 -9
Voir le fichier
@@ -21,6 +21,10 @@
#ccolor_type .layui-form-select .layui-edge {
right: 20px;
}
#leishe_type .layui-form-select .layui-edge {
right: 20px;
}
</style>
<body>
<div class="big_box">
@@ -197,14 +201,23 @@
特殊工艺:
<input type="checkbox" name="craft" lay-filter="mianka" value="击凸" title="击凸" disabled>
<input type="checkbox" name="craft" lay-filter="mianka" value="压凹" title="压凹" disabled>
<div id="color_type" class="layui-inline" style="display: none;width: 200px">
<select name="craft" class="select" disabled>
<option value="无色" selected>无色</option>
<option value="有色">有色</option>
<option value="有色加凹凸">有色加激凸/有色加压凹</option>
</select>
</div>
<input type="checkbox" name="craft" lay-filter="mianka" value="烫镭射银" title="烫镭射银" disabled>
<div id="leishe_type" class="layui-inline" style="display: none;width: 200px">
<select name="craft" class="select" disabled>
<option value="单面烫镭射银" selected>单面烫镭射银</option>
<option value="双面烫镭射银">双面烫镭射银
<option>
</select>
</div>
</div>
<div id="color_type" class="layui-inline" style="display: none;width: 200px">
<select name="craft" class="select" disabled>
<option value="无色" selected>无色</option>
<option value="有色">有色</option>
<option value="有色加凹凸">有色加激凸/有色加压凹</option>
</select>
</div>
</div>
<br/>
<input type="checkbox" name="craft" lay-filter="mianka" value="单面烫金" title="单面烫金">
@@ -490,12 +503,12 @@
}
}
);
const requiredCrafts = ["击凸", "压凹", "单面烫金", "双面烫金"];
const requiredCrafts = ["击凸", "压凹", "单面烫金", "双面烫金", "烫镭射银"];
const allExist = requiredCrafts.filter(craft => craft_list.includes(craft));
if (allExist.length > 1) {
$(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
$(data.elem).prop("checked", false);
layer.msg("击凸 - 压凹 - 单面烫金 - 双面烫金不能同时选择", {offset: ['300px', '300px']}, function () {
layer.msg("击凸 - 压凹 - 单面烫金 - 双面烫金 - 烫镭射银不能同时选择", {offset: ['300px', '300px']}, function () {
});
return false;
}
@@ -549,6 +562,13 @@
$("#tang_type").hide();
$("#tang_type").find("select").attr("disabled", true);
}
if (craft_list.indexOf("烫镭射银") > -1) {
$("#leishe_type").show();
$("#leishe_type").find("select").attr("disabled", false);
} else {
$("#leishe_type").hide();
$("#leishe_type").find("select").attr("disabled", true);
}
console.log(craft_list)
form.render();
})
@@ -734,6 +754,9 @@
if ($(this).val() == "单面烫金" || $(this).val() == "双面烫金") {
let tangColor = $("#tang_type select[name='craft'] option:selected").val();
arrs.push($(this).val().replace("烫金", "") + tangColor);
} else if ($(this).val() == "烫镭射银") {
let tangColor = $("#leishe_type select[name='craft'] option:selected").val();
arrs.push(tangColor);
} else if ($(this).val() == "打码") {
is_dama = true;
arrs.push($(this).val() + ma_num + "个");
+4
Voir le fichier
@@ -40,6 +40,10 @@ class="layui-input" value="吊牌"> -->
<div class="layui-form-item">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="无" title="无" checked="checked">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="单面烫黄金" title="单面烫黄金">
<span id="leishe_layout">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="单面烫镭射银" title="单面烫镭射银">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="双面烫镭射银" title="双面烫镭射银">
</span>
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="击凸" title="击凸">
<input type="radio" name="kind2Value" lay-filter="kind2Value" value="压凹" title="压凹">
<span id="tcolor_type" class="layui-inline" style="display: none;width: 100px">
+9
Voir le fichier
@@ -558,6 +558,15 @@
$(".craft_lius checkbox[name='craft']").attr("disabled", false);
form.render();
} else {
$("input[name='kind2Value'][value='无']").prop('checked', true);
$("#leishe_layout").hide();
$("#leishe_layout").find(":input").attr("disabled", true);
$("#tcolor_type").hide();
$("#tcolor_type").find(":input").attr("disabled", true);
if (kindValueData.value == 6) {
$("#leishe_layout").show();
$("#leishe_layout").find(":input").attr("disabled", false);
}
$(".addOrCut").show();
$('input[class = Count]').prop('checked', false);
$(".switchCount").hide();